Replies: 1 comment 4 replies
-
Hey, thanks for raising this.
You're not the only one and we are planning to address this more concretely this quarter.
This has been well underway - we are actually running some tests from Node.js test suite - you can see it here: https://github.com/denoland/deno/blob/main/tests/node_compat/config.jsonc. Admittedly, it's barely ~20% of all tests available in Node and we have some plans to improve it - mainly by running these tests out-of-band, in a separate repository so we can always run all tests and report which ones are actually broken and which ones are now passing. And obviously a frontend page will be added as well to keep track of the status based on Deno release.
We also have another project called |
Beta Was this translation helpful? Give feedback.
-
While officially you say that there's Node compatibility, some things are not implemented.
That's fine to me, but it makes it hard for me to decide on whether Deno is a good idea for us.
I'd love to convert our whole codebase, but I am worried that I'll be stuck really late in the process due to incompatibility with some less known library that I need.
I gave Bun a shot. Was really surprised how much is missing compatibility-wise. A colleague even had a Blue Screen of Death while installing packages. They have a similar marketing strategy where they advertise compatibility.
I think this fear could be addressed, and that it could be huge for Deno. I really believe in Deno long term, and I want it to succeed.
My suggestion
What if you started openly working on getting Node's test suite to pass using Deno?
You could even publish a page nightly with GitHub Pages or something similar, which could show the percentage of tests passing, so someone could track Node compatibility over time in a more accurate and confident manner.
Right now you do indeed display which features of which module isn't supported, but what's supported isn't necessarily one-to-one with what actually works. I used many Bun APIs for instance that they said were supported, but due to bugs, it ended up not actually working with particular libraries etc.
Beta Was this translation helpful? Give feedback.
All reactions