FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

doc: add blurb about implications of ABI stability by gabrielschulhof · Pull Request #22508 · nodejs/node · GitHub

/ node Public

doc: add blurb about implications of ABI stability - #22508

Closed
gabrielschulhof wants to merge 3 commits into
nodejs:masterfrom
gabrielschulhof:abi-stability-implications
Closed

doc: add blurb about implications of ABI stability#22508
gabrielschulhof wants to merge 3 commits into
nodejs:masterfrom
gabrielschulhof:abi-stability-implications

Conversation

Copy link
Copy Markdown
Contributor

Mention that ABI stability can be achieved only by linking to ABI-
stable parts of Node.js and to other libraries which are ABI-stable.

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • documentation is changed or added
  • commit message follows commit guidelines

Mention that ABI stability can be achieved only by linking to ABI-
stable parts of Node.js and to other libraries which are ABI-stable.

Copy link
Copy Markdown
Collaborator

Comment thread doc/api/n-api.md Outdated

Although N-API provides an ABI stability guarantee, other parts of Node.js do
not, and any external libraries used from the addon may not. In particular,
neither of the following Node.js APIs provides an ABI stability guarantee:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

I think this wording is a bit misleading – we do have ABI stability guarantees, but we follow semver rather than not allowing any breakage.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Good point - sorry!

mscdex Aug 24, 2018
edited
Loading

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

How about instead (s/neither/none/, s/Node.js//, s/provides/provide/):

In particular, none of the following APIs provide an ABI stability guarantee:

mscdex commented Aug 24, 2018

Copy link
Copy Markdown
Contributor

Perhaps this could be combined with #22237 or vice versa?

Comment thread doc/api/n-api.md
#include <node_object_wrap.h>
#include <node_perf_common.h>
#include <node_platform.h>
#include <node_version.h>

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Only node_buffer.h, node_version.h, node_object_wrap.h and node.h (+ N-API) are real public API. I’ll open a PR to put the others behind NODE_WANT_INTERNALS.

Comment thread doc/api/addons.md Outdated
or [Native Abstractions for Node.js][] APIs, the functions available
in the N-API are used.

Creating and maintaining an add-on that benefits from the ABI stability

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

add-on -> addon for consistency with the rest of the doc.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Actually, I'll just go ahead and make that change myself since I'm right here...

lpinca left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

LGTM with comments addressed.

Copy link
Copy Markdown
Contributor Author

@mscdex I believe there's a difference between this ABI compatibility note and the one in #22237, in that herein we deal with ABI compatibility across major versions of Node.js, whereas in the other we deal with ABI compatibility within a major version of Node.js.

Copy link
Copy Markdown
Contributor Author

@addaleax I have updated the text to reflect your comments.

mhdawson left a comment
edited
Loading

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

LGTM - once linter is green...

Copy link
Copy Markdown
Member

BridgeAR added the author ready PRs that have at least one approval, no outstanding review comments, and a CI started. label Aug 31, 2018

Copy link
Copy Markdown
Contributor Author

Comment thread doc/api/n-api.md Outdated

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

typo: libraries

gabrielschulhof force-pushed the abi-stability-implications branch from d331e95 to 7ba8ae4 Compare September 3, 2018 13:39

Copy link
Copy Markdown
Contributor Author

gabrielschulhof commented Sep 3, 2018
edited
Loading

Copy link
Copy Markdown
Contributor Author

Landed in 7033fc7.

gabrielschulhof pushed a commit to gabrielschulhof/node that referenced this pull request Sep 3, 2018
Mention that ABI stability can be achieved only by linking to ABI-
stable parts of Node.js and to other libraries which are ABI-stable.

PR-URL: nodejs#22508
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
gabrielschulhof deleted the abi-stability-implications branch September 3, 2018 15:33
targos pushed a commit that referenced this pull request Sep 3, 2018
Mention that ABI stability can be achieved only by linking to ABI-
stable parts of Node.js and to other libraries which are ABI-stable.

PR-URL: #22508
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
targos pushed a commit that referenced this pull request Sep 6, 2018
Mention that ABI stability can be achieved only by linking to ABI-
stable parts of Node.js and to other libraries which are ABI-stable.

PR-URL: #22508
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author ready PRs that have at least one approval, no outstanding review comments, and a CI started. doc Issues and PRs related to the documentations.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants


Back | FazBrowse Home | New Git URL