-
Notifications
You must be signed in to change notification settings - Fork 5.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bigger refactors #5858
Comments
Hi Ryan, would love to contribute to Deno and looking at converting cli/js to JavaScript... |
@nnajiabraham Follow discussion and links here: #4750. Not a good first issue, though. |
@nnajiabraham Thanks for the offer - any help is much appreciated. As @nayeemrmn said, this issue is for really involved long term projects. Have a look instead at the issues marked good-first-issue |
Sure thing @ry will take a look at those |
I hope you find a way to keep TypeScript. It is really welcoming experience to open any file and figure out what the objects are without having to debug and relying on a strong understanding of all these objects in order to contribute (maybe add JSDoc everywhere?). It is always a given and takes with typed languages but even languages like Erlang/Elixir require you to add types everywhere if you truly would like a broader range of people to contribute. Otherwise, only a few people will be able to; the rest will open issues and rely on those few people because we lack the understanding, and tools to even feel "confident" that we can give it a try (speaking from inside out). 😞 |
I'm more worried about the message Deno is sending to the JS/TS community by removing TS from its internal. I hope @ry you realize how much influence you have on the JS community. The usage of TS internally should probably be reconsidered, or either properly addressed in a demystified official blog post of some sort. |
Well, most of the runtime isn't written in TypeScript either but that doesn't make it less useful for TS developers. Typescript is a really nice tool for understanding what JavaScript is really doing behind curtains, but that convenience comes at a cost, and as discussed in the document, perhaps the advantages it might bring aren't worth the price in this case, and that's perfectly ok. And in your case and everyone else's that same question must be done at the moment of choosing the tool for building your application, everything comes at a cost. I don't think replacing TypeScript in the internals will discourage the people of using it in the first place, and having a separate file with types as siggested in the document should keep dev experience on a similar level. Not all tools are fit for all jobs, and building a runtime/compiler has more considerations than most applications, but don't let that stop you from using the great tool TypeScript is, specially after all the hard work that has been put into making Deno the great runtime it is now. |
@yordis @CyriacBr @Soremwar I saw that this design doc was being discussed more widely. Most people don't have the context to understand this narrow technical document - it is only applicable to a very particular, very technical situation in the internals of Deno. This is not at all a reflection on the usefulness of TypeScript in general. It's not a discussion about any publicly visible interface in Deno. Deno, of course, will support TypeScript forever. A website or server written in TypeScript is a very very different type of program than Deno - maybe much more so than novice programmers can appreciate - very little of Deno is written in TypeScript. The target audience is the 5 to 10 people who work on this particular internal system. Please don't draw any broader conclusions. |
Hey @ry, am I correct in assuming that refactor is to separate the Deno.* userland API handling from the cli project? If so 👍. I was just noticing that the CLI project includes all the rust and TS code that provides that API, which makes it harder to make a Deno-compatible runtime separate from CLI. Thanks. |
hey @ry |
This makes sense and I respect your judgement on this @ry I noticed this in the design doc:
I see swc is mentioned; wanted to comment that esbuild strips types and bundles, if that's of any interest. Either way, good luck and thank you to the Deno team! |
Closing this issue because it's mostly complete. op crates is still WIP - but I think it's time for a new roadmap. |
.graph
cache file #6080The text was updated successfully, but these errors were encountered: