-
Notifications
You must be signed in to change notification settings - Fork 0
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
Update node-gyp to 10.0.1 #2
Update node-gyp to 10.0.1 #2
Conversation
PR-URL: nodejs/node-gyp#2092 Reviewed-By: Rod Vagg <rod@vagg.org>
only supported on Node.js 10+ Closes: #2084 PR-URL: nodejs/node-gyp#2123 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
PR-URL: nodejs/node-gyp#2105 Reviewed-By: Rod Vagg <rod@vagg.org>
PR-URL: nodejs/node-gyp#2133 Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Christian Clauss <cclauss@me.com>
Makes npm warn users if they are using an unsupported Node version. Refs: nodejs/node-gyp#2123 PR-URL: nodejs/node-gyp#2153 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Rod Vagg <rod@vagg.org>
PR-URL: nodejs/node-gyp#2150 Reviewed-By: Rod Vagg <rod@vagg.org>
PR-URL: nodejs/node-gyp#2156 Reviewed-By: Christian Clauss <cclauss@me.com>
Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> PR-URL: nodejs/node-gyp#2165
Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> PR-URL: nodejs/node-gyp#2165
Co-authored-by: Christian Clauss <cclauss@me.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Christian Clauss <cclauss@me.com> PR-URL: nodejs/node-gyp#2167
This isn't needed, and was probably copy-pasted from windows-build-tools' README.md, which has since been changed to drop the `--production` flag from the install instructions. PR-URL: nodejs/node-gyp#2206 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Christian Clauss <cclauss@me.com> Reviewed-By: Rod Vagg <rod@vagg.org>
Co-authored-by: Christian Clauss <cclauss@me.com> Co-authored-by: Matias Lopez <imatlopez@gmail.com> PR-URL: nodejs/node-gyp#2210 Closes: #2127 Closes: #2209
PR-URL: nodejs/node-gyp#2218 Reviewed-By: Christian Clauss <cclauss@me.com> Reviewed-By: Matias Lopez <imatlopez@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
From python: [3.6, 3.7, 3.8] --> python: [3.6, 3.8, 3.9] because if things work on Python 3.6 and 3.8 then they should work on 3.7. https://www.python.org/downloads/release/python-390/ PR-URL: nodejs/node-gyp#2230 Reviewed-By: Shelley Vohr <shelley.vohr@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: nodejs/node-gyp#2229 Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By: Rod Vagg <rod@vagg.org>
Closes: nodejs/node-gyp#2236 PR-URL: nodejs/node-gyp#2238 Reviewed-By: Christian Clauss <cclauss@me.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Myles Borins <myles.borins@gmail.com>
PR-URL: nodejs/node-gyp#2240 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: nodejs/node-gyp#2239 Reviewed-By: Christian Clauss <cclauss@me.com>
PR-URL: nodejs/node-gyp#2235 Reviewed-By: Christian Clauss <cclauss@me.com>
Refs: https://github.com/nodejs/gyp-next/releases/tag/v0.6.2 PR-URL: nodejs/node-gyp#2241 Reviewed-By: Rod Vagg <rod@vagg.org>
PR-URL: nodejs/node-gyp#2244 Reviewed-By: Rod Vagg <rod@vagg.org>
PR-URL: nodejs/node-gyp#2285 Reviewed-By: Richard Lau <rlau@redhat.com>
PR-URL: nodejs/node-gyp#2281 Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
PR-URL: nodejs/node-gyp#2284 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Christian Clauss <cclauss@me.com>
PR-URL: nodejs/node-gyp#2293 Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
PR-URL: nodejs/node-gyp#2318 Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
PR-URL: nodejs/node-gyp#2322 Refs: nodejs/node#36902 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Rod Vagg <rod@vagg.org>
BREAKING CHANGE: `node-gyp` now supports node `^16.14.0 || >=18.0.0`
BREAKING CHANGE: All internal functions have been coverted to return promises and no longer accept callbacks. This is not a breaking change for users but may be breaking to consumers of `node-gyp` if you are requiring internal functions directly.
BREAKING CHANGE: the `Gyp` class exported is now created using ECMAScript classes and therefore might have small differences to classes that were previously created with `util.inherits`.
* chore: misc test fixes * Sort test runs by os first * Use cross-env for test env var * Try sorting matrix params * Make FAST_TEST the default and rename to FULL_TEST * Separate helper functions to not need to export test obj in files
* feat!: use package.json files to limit which files are published Fixes: #2372 * Use npmignore instead of package.json#files * Add update-gyp.py to npmignore * Add install to pack test * Use output var for pack dir * Move existing .gitignore entries to .npmignore * Sort git and npm ignores * Update and cleanup workflows
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
The `findAccessibleSync()` function is in the local `util` module instead of Node.js' builtin `util` module.
@jaimecbernardo Thanks a lot for this, and great to see you collaborating again. I tried out using this update via the
This happened for |
Thanks for the update and for giving it a try. |
Yes. I can try on another nodejs-mobile project for iOS that I have locally. |
I've been using it on nodejs-mobile-cordova, so maybe there's something different in react-native that triggers the lint? I'll give react-native a try too. |
I've just given a nodejs-mobile-react-native a try, with the nodejs-mobile-gyp override and a nodejs-project running sqlite3 (with a node-pre-gyp override as well). I've been able to run this well on android and confirmed sqlite3 is running on Android. (did have to delete a folder named "root" from one of the node_modules in nodejs-project because it doesn't work well copying on Android runtime, but that was the only weird hack to get it to not fail at runtime). I've got no iOS device to test, though :( Regarding nodejs-mobile-react-native experience, WOW, I don't remember ever having such a pleasant experience with this beast 😄 You really did a number here. Great work! |
I tried using this updated nodejs-mobile-gyp now on iOS (on Manyverse, which is open source, easy to reproduce), and got a native addon compilation error which I believe originates from nodejs-mobile-gyp. However, one of the native addons (bufferutil) successfully compiled, while the other (leveldown-nodejs-mobile) didn't:
I ran the build native scripts for Android and those succeeded though. So it seems iOS specific. CLICK to see full log here
Thank you! I have more plans for nodejs-mobile to improve the developer experience (e.g. regarding native addons). |
Hi @staltz 👋🏾🐻 |
Will do. For some reason I saw your message only now, that's why there was silence. |
Confirmed it's working. Thanks for the patches and the patience! |
Hi @staltz ,
Creating this PR to update the base version of nodejs-mobile-gyp to match node-gyp 10.0.1 (latest release). Main motivator is really that nodejs-mobile-gyp doesn't work with Python3, that's shipped by default everywhere now. node-gyp upstream has that fixed for ages, it seems.
I've tested this nodejs-mobile-gyp for Android in nodejs-mobile-cordova, but I'm on an Android only scenario for now and don't really have the means to test iOS. Is there some change you can test for your iOS use cases as well? Thank you.
I've been consuming this updated version by overriding a dependency of a dependency as needed. I assume the same can be done for testing it with nodejs-mobile-react-native as well.
Here's what I'm adding to package.json.
For seeing actual differences between upstream 10.0.1 and this new branch, JaneaSystems/nodejs-mobile-gyp@upstream-v10.0.1...merge-node-gyp-10.0 is a better way of seeing those.
If all is well, thinking it'd be nice upping the nodejs-mobile-gyp version to 0.4.0 and releasing to npm. (or 10.0.1, really, since it's mirroring that one)
Thoughts?
For merging, it's best for a merge commit, to facilitate future updates.