Replies: 1 comment 1 reply
-
We have had some recent discussions in the Node-API team meeting on adding an API which would allow you to I think
might be a bit too much, but adding flags you could set through the API to opt-in in specific cases were that made sense might handle most of the specific cases where it needed. Is an API that accepted a set of flags you could set to opt-in to behavior along the lines of what you had in mind? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Currently Node-API offers a relatively 'coarse-grained' API version support based on version number.
Whenever we want to add or modify functionality we must add a new function.
The new function must be initially be part of experimental version, and then after some time become part of the official version.
What if we need to modify behavior of existing function to fix a bug and existing code depends on the buggy behavior?
What if we want to do broad improvements that may accidently change behavior of several functions?
Currently it is not possible because it changes the ABI contract.
Any broad changes or bug fixes may break ABI contract and thus causing issues for Node-API users.
Many other big systems face similar issues.
For example, the CMake often adds new features and modifies/deprecates old functionality.
C++ evolves as a language and it evolves its standard library.
How are they doing it and keeping their users happy?
These systems use fine-grained feature support in addition to the coarse-grained versions.
What if we implement the same approach in the Node-API?
See PR #42463 for how this proposal might work.
Beta Was this translation helpful? Give feedback.
All reactions