@flun/nodejs-mobile-gyp 1.1.3 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/CHANGELOG.md +23 -26
  2. package/LICENSE +9 -4
  3. package/README.md +291 -229
  4. package/addon.gypi +1 -1
  5. package/bin/node-gyp.js +15 -6
  6. package/gyp/README.md +5 -3
  7. package/gyp/data/win/large-pdb-shim.cc +1 -1
  8. package/gyp/gyp +1 -1
  9. package/gyp/gyp.bat +1 -1
  10. package/gyp/gyp_main.py +1 -1
  11. package/gyp/pylib/gyp/MSVSNew.py +1 -1
  12. package/gyp/pylib/gyp/MSVSProject.py +1 -1
  13. package/gyp/pylib/gyp/MSVSSettings.py +1 -1
  14. package/gyp/pylib/gyp/MSVSToolFile.py +1 -1
  15. package/gyp/pylib/gyp/MSVSUserFile.py +1 -1
  16. package/gyp/pylib/gyp/MSVSUtil.py +1 -1
  17. package/gyp/pylib/gyp/MSVSVersion.py +1 -1
  18. package/gyp/pylib/gyp/__init__.py +1 -1
  19. package/gyp/pylib/gyp/common.py +1 -1
  20. package/gyp/pylib/gyp/easy_xml.py +1 -1
  21. package/gyp/pylib/gyp/flock_tool.py +1 -1
  22. package/gyp/pylib/gyp/generator/analyzer.py +1 -1
  23. package/gyp/pylib/gyp/generator/android.py +1 -1
  24. package/gyp/pylib/gyp/generator/cmake.py +1 -1
  25. package/gyp/pylib/gyp/generator/compile_commands_json.py +1 -1
  26. package/gyp/pylib/gyp/generator/dump_dependency_json.py +1 -1
  27. package/gyp/pylib/gyp/generator/eclipse.py +1 -1
  28. package/gyp/pylib/gyp/generator/gypd.py +1 -1
  29. package/gyp/pylib/gyp/generator/gypsh.py +1 -1
  30. package/gyp/pylib/gyp/generator/make.py +23 -12
  31. package/gyp/pylib/gyp/generator/msvs.py +3 -3
  32. package/gyp/pylib/gyp/generator/ninja.py +1 -1
  33. package/gyp/pylib/gyp/generator/xcode.py +1 -1
  34. package/gyp/pylib/gyp/input.py +1 -1
  35. package/gyp/pylib/gyp/mac_tool.py +1 -1
  36. package/gyp/pylib/gyp/msvs_emulation.py +1 -1
  37. package/gyp/pylib/gyp/ninja_syntax.py +1 -1
  38. package/gyp/pylib/gyp/simple_copy.py +1 -1
  39. package/gyp/pylib/gyp/win_tool.py +1 -1
  40. package/gyp/pylib/gyp/xcode_emulation.py +5 -5
  41. package/gyp/pylib/gyp/xcode_ninja.py +1 -1
  42. package/gyp/pylib/gyp/xcodeproj_file.py +1 -1
  43. package/gyp/pylib/gyp/xml_fix.py +1 -1
  44. package/gyp/pylib/packaging/LICENSE +1 -1
  45. package/gyp/pylib/packaging/LICENSE.APACHE +1 -1
  46. package/gyp/pylib/packaging/LICENSE.BSD +1 -1
  47. package/gyp/pylib/packaging/__init__.py +1 -1
  48. package/gyp/pylib/packaging/_elffile.py +1 -1
  49. package/gyp/pylib/packaging/_manylinux.py +1 -1
  50. package/gyp/pylib/packaging/_musllinux.py +1 -1
  51. package/gyp/pylib/packaging/_parser.py +1 -1
  52. package/gyp/pylib/packaging/_structures.py +1 -1
  53. package/gyp/pylib/packaging/_tokenizer.py +1 -1
  54. package/gyp/pylib/packaging/markers.py +1 -1
  55. package/gyp/pylib/packaging/metadata.py +1 -1
  56. package/gyp/pylib/packaging/requirements.py +1 -1
  57. package/gyp/pylib/packaging/specifiers.py +1 -1
  58. package/gyp/pylib/packaging/tags.py +1 -1
  59. package/gyp/pylib/packaging/utils.py +1 -1
  60. package/gyp/pylib/packaging/version.py +1 -1
  61. package/lib/Find-VisualStudio.cs +1 -1
  62. package/lib/build.js +17 -17
  63. package/lib/clean.js +3 -3
  64. package/lib/configure.js +21 -18
  65. package/lib/create-config-gypi.js +9 -9
  66. package/lib/download.js +4 -4
  67. package/lib/find-node-directory.js +10 -10
  68. package/lib/find-python.js +14 -14
  69. package/lib/find-visualstudio.js +20 -20
  70. package/lib/install.js +23 -22
  71. package/lib/list.js +2 -2
  72. package/lib/log.js +2 -2
  73. package/lib/node-gyp.js +37 -11
  74. package/lib/process-release.js +14 -14
  75. package/lib/rebuild.js +2 -2
  76. package/lib/remove.js +3 -3
  77. package/lib/util.js +72 -71
  78. package/package.json +3 -2
  79. package/src/win_delay_load_hook.cc +1 -1
package/CHANGELOG.md CHANGED
@@ -1,34 +1,31 @@
1
1
  # 变更日志
2
2
 
3
- ## [1.1.3] - 2026-10-20 13:55
4
- ### 修复
5
- - 一些细节优化
6
-
7
- ## [1.1.2] - 2026-09-28 21:49
8
-
9
- ### 修复
10
-
11
- - **action 目标的路径分隔符**:`make.py` 中 `self.output` 由 `ComputeOutput` 产出,Windows 上带反斜杠(如 `$(obj).target\../node-addon-api\foo.stamp`),导致 `sh` 把 `\.` 当转义、目录不存在。现统一转正斜杠;非 Windows 平台为 no-op。
12
-
13
- ## [1.1.1] - 2026-09-28 09:23
3
+ ## [1.2.0] - 2026-11-02 16:05
4
+ ### 新增
5
+ - 帮助文本重写为中文三层结构:`用法:` 为 0 级,`命令:`/`选项:` 缩进 2,各条目缩进 4;
6
+ 命令含别名 `ls`/`rm`,选项简写在前、完整写法置于行尾注释;末尾仅输出版本号行;
7
+ - 无参数、`help`、`-h`、`--help` 均打印完整帮助并以 exit 0 退出;
8
+ - 帮助文本按语义着色:`用法:` 用 `chalk.blueBright`,分组名用 `chalk.cyan`,命令与选项名用 `chalk.cyanBright`,
9
+ 说明文字用 `chalk.gray`,末尾版本号用 `chalk.hex('#B8860B')`;非 TTY 下自动关闭颜色,不向管道泄漏 ANSI;
10
+ - 未知命令提示着色:错误标记用 `chalk.red`,命令名用 `chalk.yellow`;
14
11
 
15
12
  ### 修复
16
-
17
- - **Windows 路径分隔符**:gyp 生成的 Makefile 中,`Absolutify` 与 `self.output` 产出的路径带 Windows 反斜杠(如 `src\bufferutil.o`),导致 `sh` / `sed` / `make` 解析失败。现在统一转成正斜杠;该改动在非 Windows 平台上是 no-op。
18
- - **`mkdir` 目标路径**:`mkdir -p "$(dir $@)"` 在 Windows 上因路径尾部反斜杠被 `sh` 当转义符,导致目录未创建、编译器无法写产物。新增 `slashpath` 辅助函数,把路径转正斜杠后再传给 `mkdir`。
19
- - **超长路径依赖**:Windows 下 Makefile 会因 gypi 依赖路径超过 260 字符而报 `No rule to make target`。现在过滤掉 `node_modules` 中的此类依赖——仅影响 Makefile 自动重新生成,不影响编译。
13
+ - 未知命令改为输出 `✗ 未知命令: xxx` + 一个空行 + 完整帮助,并以 exit 1 退出;
14
+ 此前未知参数不报错,静默继续;
15
+ - `-h` 此前被忽略,现作为帮助入口;该行为变更可能影响依赖旧行为的脚本;
16
+ - 帮助文本命令区与选项区说明列错位:命令区原补到显示列 17,选项区 23,现统一补到 23;
17
+ 补白改为按显示宽度计算,中日韩全角字符按 2 列计,此前按码元计导致含中文的选项名整体左移;
18
+ - `package.json` 的 `dependencies` 补声明 `chalk`;`lib/node-gyp.js` 已引用该模块,
19
+ 此前未声明,从 npm 安装后缺少依赖会导致 `--help` 直接报错;
20
20
 
21
21
  ### 文档
22
+ - `lib/` 下 12 个 js 去除 BOM;`维护.md`、`package.json`、`lib/util.js` 换行符由 CRLF 改为 LF;
22
23
 
23
- 全面核对并修正 README,消除前后矛盾、过时表述与硬编码:
24
+ ## [1.1.4] - 2026-10-24 09:20
25
+ ### 优化
26
+ - 项目标点已改为以英文标点为主;
27
+ - 行宽改为以 123 为主,部分超宽表格改为了列表;
24
28
 
25
- - **系统要求**:
26
- - iOS 构建前置工具从「Command Line Tools」修正为「**完整 Xcode**」——`xcodebuild` 必须完整 Xcode,CLT 单独不够;
27
- - Visual Studio 从「仅 VS2026」放宽为「**VS2019 / VS2022 / VS2026**」——VS2017 及更早受 Node 版本上限限制,故不在支持范围;VS2026 为已验证版本;
28
- - Android NDK 从「27.x」修正为「**23–27**」,与实测验证范围一致;
29
- - Git for Windows 的说明从「提供 `sh.exe` / `printf` / `xargs`」扩写为「**自带整套 MSYS2 POSIX 工具集**」,避免读者低估其必要性。
30
- - **自动探测**:
31
- - 「无需手动配置」改为「**无需手动指定路径**(前提:工具已安装)」,区分「必须安装」与「位置自动定位」;
32
- - 「POSIX shell(`sh.exe`)」项改为「**Git for Windows 的 `usr/bin` 目录**(以 `sh.exe` 是否存在作为判据)」,与实际探测逻辑一致。
33
- - **顶部引言**:适用范围从仅官方 `nodejs-mobile` 改为「官方及兼容的社区发行版(如 OpenFlun/nodejs-mobile)」。
34
- - 修正若干失效链接。
29
+ ## [1.1.3] - 2026-10-20 13:55
30
+ ### 修复
31
+ - 一些细节优化
package/LICENSE CHANGED
@@ -1,12 +1,17 @@
1
1
  ISC 许可证 (ISC License)
2
2
 
3
- 版权所有 (c) 2026, flun <open@flun.top>
3
+ Copyright (c) 2026, flun <open@flun.top>
4
4
 
5
- 特此免费授予任何获得本软件及相关文档文件(“软件”)副本的人,不受限制地处理本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售本软件副本的权利,并允许向其提供本软件的人这样做,但须满足以下条件:
5
+ 特此免费授予任何获得本软件及相关文档文件("软件")副本的人,不受限制地处理本软件的权利,
6
+ 包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售本软件副本的权利,
7
+ 并允许向其提供本软件的人这样做,但须满足以下条件:
6
8
 
7
9
  上述版权声明和本许可声明应包含在本软件的所有副本或重要部分中;
8
10
 
9
- 本软件按“原样”提供,不作任何形式的明示或暗示的保证,包括但不限于适销性、特定用途的适用性和不侵权的保证;在任何情况下,作者或版权持有人均不对因本软件或本软件的使用或其他交易而产生的任何索赔、损害或其他责任负责,无论是合同之诉、侵权之诉还是其他行为之诉;
11
+ 本软件按"原样"提供,不作任何形式的明示或暗示的保证,
12
+ 包括但不限于适销性、特定用途的适用性和不侵权的保证;
13
+ 在任何情况下,作者或版权持有人均不对因本软件或本软件的使用或其它交易而产生的
14
+ 任何索赔、损害或其它责任负责,无论是合同之诉、侵权之诉还是其它行为之诉;
10
15
 
11
16
  ---
12
17
 
@@ -26,4 +31,4 @@ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
26
31
  ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
27
32
  WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
28
33
  ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
29
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
34
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.