Skip to content

Releases: NativeScript/nativescript-cli

v9.1.1

Choose a tag to compare

@github-actions github-actions released this 31 Aug 19:25

9.1.1 (2026-08-31)

Bug Fixes

  • pnpm installs hang forever - close stdin, harden the pnpm backend (#6139) (4efb483)

v9.1.1-dev.1

v9.1.1-dev.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 31 Aug 19:10

9.1.1-dev.1 (2026-08-31)

Bug Fixes

  • recognize .npmrc array-valued hoist keys; make stdio test TTY-independent (e66504f)

v9.1.1-dev.0

v9.1.1-dev.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 31 Aug 04:53

9.1.1-dev.0 (2026-08-31)

Bug Fixes

  • pnpm installs hang forever - close stdin, harden the pnpm backend (a6ab285)

v9.1.0

Choose a tag to compare

@github-actions github-actions released this 27 Aug 20:28

9.1.0 (2026-08-27)

Bug Fixes

  • bun does not require symlink (#6119) (ecdf4a5)
  • bundler: ensure vite server starts up before allowing connections via cli (5f776b3)
  • bundler: fail when the configured bundler package is missing (0f02a25)
  • bundler: resolve the configured bundler package and pass buildPath (#6127) (6176de0)
  • bundler: vite double restart (f9c1fac)
  • clean: refuse to delete outside the project directory (58f9ac2)
  • config: never lose a config edit when prettier is unavailable (2eefffe)
  • config: read default exports wrapped in assertions or parentheses (754fa94)
  • copy Vite output for production builds (7a2efaf)
  • definitions: align conflicting service typings and declare conformance (8992b24)
  • definitions: drop the duplicate buildPath declaration (be62153)
  • deprecated uuid (#6057) (c1f5fc3)
  • di: register zero-parameter arrow factories without annotate() (b49cf0e)
  • di: share the injection context across duplicated CLI copies (b52b8e0)
  • doctor: point repository metadata at the monorepo (ddd39b8)
  • gracefully fail when node module can't be found (#6037) (d1930d3)
  • handle spm packages internal to cli (#6098) (745f3a8)
  • hooks: gate in-process hooks with the TypeScript parser instead of esprima (93641e5)
  • hooks: honor arg forwarding from every middleware in the chain (e46e697)
  • ios: framework check for dynamic lib (#6032) (d88337c)
  • ios: let the app's xcconfig win over a plugin's, and warn on discarded settings (#6091) (1b5cabd)
  • ios: verify livesync payload delivery on physical devices and stop swallowing upload errors (#6058) (90fe969)
  • misleading dual nativescript.config warning when reading plugin configs (#6122) (5fa07dc)
  • options: resolve options declared with an array of aliases (0549b1c)
  • options: revive unknown-option validation as a staged warning (6502f13)
  • options: validate the timeout option's value (353ec6b)
  • platform: type the project services by the data they accept (8a7c3ec)
  • prevent redundant restarts on rapid changes and recover from app crashes in watch mode (#6036) (0acfb4a)
  • project: drop the duplicate getBuildRelativeDirectoryPath (344d570)
  • reprepare iOS plugins on cleanup (#6035) (2c8928b)
  • resolve compiled output from dist in bin and postinstall (#6095) (77fed31)
  • security: update CLI network and git dependencies (#6084) (f5154ac)
  • stop the pack guard from blocking the release script (cb3fb8d)
  • vite: build/prepare handling for the bundle (2fde79c)
  • xcconfig: improve conflict handling during file merge (bcec7bb)
  • yok: keep a registered command when a subcommand would shadow it (880f952)
  • yok: record hierarchical subcommands on registerCommand (c6c794a)

Features

  • 9.1 migrate (#6138) (259ca2f)
  • add skipNative option to PrepareData and Options classes (#6033) (bfb7a4c)
  • allow custom vite dist folder name (8eed4de)
  • allow proper adb reverse debug sessions (addc32e)
  • analytics: move tracking to the GA4 measurement protocol (1a3c1f0)
  • android: --gradleFlavor to build a product flavor (#6133) (0c9860c)
  • android: support android-37 SDK targets (842c6be)
  • android: support for android-36.1 SDK targets (#6011) (4c7f69f)
  • android: support for user-configured start arguments with emulators (#6038) (69ac96d)
  • apple: doctor issue with asdf (#6062) (a273145)
  • apple: improve support for watchos projects (#5993) (5404ebb)
  • apple: support team signing on Swift macro SPM targets (#6060) (c2d4a69)
  • bundler: allow vite to auto increment port availability when in use ([#6126](https://github.com/NativeScri...
Read more

v9.1.0-rc.0

v9.1.0-rc.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 25 Aug 20:50

9.1.0-rc.0 (2026-08-25)

Bug Fixes

  • bun does not require symlink (#6119) (ecdf4a5)
  • bundler: fail when the configured bundler package is missing (0f02a25)
  • bundler: resolve the configured bundler package and pass buildPath (#6127) (6176de0)
  • clean: refuse to delete outside the project directory (58f9ac2)
  • config: never lose a config edit when prettier is unavailable (2eefffe)
  • config: read default exports wrapped in assertions or parentheses (754fa94)
  • definitions: align conflicting service typings and declare conformance (8992b24)
  • definitions: drop the duplicate buildPath declaration (be62153)
  • di: register zero-parameter arrow factories without annotate() (b49cf0e)
  • di: share the injection context across duplicated CLI copies (b52b8e0)
  • doctor: point repository metadata at the monorepo (ddd39b8)
  • handle spm packages internal to cli (#6098) (745f3a8)
  • hooks: gate in-process hooks with the TypeScript parser instead of esprima (93641e5)
  • hooks: honor arg forwarding from every middleware in the chain (e46e697)
  • ios: let the app's xcconfig win over a plugin's, and warn on discarded settings (#6091) (1b5cabd)
  • misleading dual nativescript.config warning when reading plugin configs (#6122) (5fa07dc)
  • options: resolve options declared with an array of aliases (0549b1c)
  • options: revive unknown-option validation as a staged warning (6502f13)
  • options: validate the timeout option's value (353ec6b)
  • platform: type the project services by the data they accept (8a7c3ec)
  • project: drop the duplicate getBuildRelativeDirectoryPath (344d570)
  • resolve compiled output from dist in bin and postinstall (#6095) (77fed31)
  • stop the pack guard from blocking the release script (cb3fb8d)
  • xcconfig: improve conflict handling during file merge (bcec7bb)
  • yok: keep a registered command when a subcommand would shadow it (880f952)
  • yok: record hierarchical subcommands on registerCommand (c6c794a)

Features

  • analytics: move tracking to the GA4 measurement protocol (1a3c1f0)
  • android: --gradleFlavor to build a product flavor (#6133) (0c9860c)
  • android: support android-37 SDK targets (842c6be)
  • apple: doctor issue with asdf (#6062) (a273145)
  • bundler: allow vite to auto increment port availability when in use (#6126) (bc25957)
  • cli: delegate to a project-local nativescript install (3785152)
  • commands: defineCommand - typed declarative commands via an ICommand adapter (#6101) (2f81d7f)
  • di: add contracts for the core service tranche (7079d1a)
  • di: add InjectionToken for non-class dependencies (e1af90e)
  • di: token-based dependency injection behind the Yok facade (phase 1) (#6099) (dfae38d)
  • doctor: support android-37 and minor-versioned SDK platform directories (65a3b01)
  • extensions: nativescript.commands map - per-command lazy loading for extensions (#6102) (9322fdc)
  • hooks: defineHook - typed hook authoring with ctx payload/wrap/fail/skip (#6100) (ef68d67)
  • ios: pass a Swift Package authorization provider to xcodebuild (0783cea)
  • project: project config buildPath option for custom build directory (#6131) (c1e3d13)
  • support vitest unit tests (#6123) (9737223)

Performance Improvements

  • download bundletool on demand instead of vendoring it (#6097) (1eae2f6)

@nativescript/doctor@2.0.18

Choose a tag to compare

2.0.18 (2026-08-25)

2.0.18 (2026-08-25)

Bug Fixes

  • add api32 as supported (70671ca)
  • clear all deprecated dependencies (#5858) (d9bced3)
  • doctor: check for python3 instead of python (f21156c)
  • doctor: improve target and sdk compatibility detection on <8.2 (#5648) (fa257dd)
  • doctor: point repository metadata at the monorepo (ddd39b8)
  • remove python six requirement (#5785) (25ae1f0)
  • setup docs links (#5762) (b229fdf)
  • update wording to pip3 (f4d39ad)
  • vulnerability reports in our dependencies (7099052)

Features

  • add android 35 support (#5811) (abc7ab4)
  • add config to help menu (#5916) (f81499d)
  • android: api level 36 + start up emulator with unknown target versions (#5842) (de2cb8c)
  • android: support for android-36.1 SDK targets (#6011) (4c7f69f)
  • apple: doctor issue with asdf (#6062) (a273145)
  • doctor: add android-33 to supported sdks (b8f15a0)
  • doctor: add sdk 34 support (6ef8665)
  • doctor: more informative android compile SDK messages (#5697) (cfaa882)
  • doctor: support android-37 and minor-versioned SDK platform directories (65a3b01)
  • replace chalk/ansi-colors/glob with Node.js built-ins (#5853) (e562267)

Performance Improvements

v9.0.7

Choose a tag to compare

@github-actions github-actions released this 11 Aug 17:31

9.0.7 (2026-08-11)

Bug Fixes

  • test: pin @nativescript/unit-test-runner to the 4.x line (5479007)

v9.1.0-alpha.17

v9.1.0-alpha.17 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 07 Aug 23:54

9.1.0-alpha.17 (2026-08-07)

Bug Fixes

  • bun does not require symlink (#6119) (ecdf4a5)
  • config: never lose a config edit when prettier is unavailable (2eefffe)
  • config: read default exports wrapped in assertions or parentheses (754fa94)
  • di: register zero-parameter arrow factories without annotate() (b49cf0e)
  • di: share the injection context across duplicated CLI copies (b52b8e0)
  • doctor: point repository metadata at the monorepo (ddd39b8)
  • handle spm packages internal to cli (#6098) (745f3a8)
  • hooks: gate in-process hooks with the TypeScript parser instead of esprima (93641e5)
  • hooks: honor arg forwarding from every middleware in the chain (e46e697)
  • ios: let the app's xcconfig win over a plugin's, and warn on discarded settings (#6091) (1b5cabd)
  • options: resolve options declared with an array of aliases (0549b1c)
  • options: revive unknown-option validation as a staged warning (6502f13)
  • options: validate the timeout option's value (353ec6b)
  • resolve compiled output from dist in bin and postinstall (#6095) (77fed31)
  • stop the pack guard from blocking the release script (cb3fb8d)
  • yok: keep a registered command when a subcommand would shadow it (880f952)
  • yok: record hierarchical subcommands on registerCommand (c6c794a)

Features

  • analytics: move tracking to the GA4 measurement protocol (1a3c1f0)
  • apple: doctor issue with asdf (#6062) (a273145)
  • cli: delegate to a project-local nativescript install (3785152)
  • commands: defineCommand - typed declarative commands via an ICommand adapter (#6101) (2f81d7f)
  • di: token-based dependency injection behind the Yok facade (phase 1) (#6099) (dfae38d)
  • extensions: nativescript.commands map - per-command lazy loading for extensions (#6102) (9322fdc)
  • hooks: defineHook - typed hook authoring with ctx payload/wrap/fail/skip (#6100) (ef68d67)

Performance Improvements

  • download bundletool on demand instead of vendoring it (#6097) (1eae2f6)

v9.1.0-alpha.16

v9.1.0-alpha.16 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 28 Jul 20:50

9.1.0-alpha.16 (2026-07-28)

Bug Fixes

  • ios: let the app's xcconfig win over a plugin's, and warn on discarded settings (#6091) (1b5cabd)

Features

v9.1.0-alpha.15

v9.1.0-alpha.15 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 23 Jul 20:39

9.1.0-alpha.15 (2026-07-23)

Bug Fixes

  • bundler: ensure vite server starts up before allowing connections via cli (5f776b3)
  • bundler: vite double restart (f9c1fac)
  • copy Vite output for production builds (7a2efaf)
  • deprecated uuid (#6057) (c1f5fc3)
  • gracefully fail when node module can't be found (#6037) (d1930d3)
  • ios: framework check for dynamic lib (#6032) (d88337c)
  • ios: verify livesync payload delivery on physical devices and stop swallowing upload errors (#6058) (90fe969)
  • prevent redundant restarts on rapid changes and recover from app crashes in watch mode (#6036) (0acfb4a)
  • reprepare iOS plugins on cleanup (#6035) (2c8928b)
  • security: update CLI network and git dependencies (#6084) (f5154ac)
  • vite: build/prepare handling for the bundle (2fde79c)

Features

  • add skipNative option to PrepareData and Options classes (#6033) (bfb7a4c)
  • allow custom vite dist folder name (8eed4de)
  • allow proper adb reverse debug sessions (addc32e)
  • android: support for android-36.1 SDK targets (#6011) (4c7f69f)
  • android: support for user-configured start arguments with emulators (#6038) (69ac96d)
  • apple: improve support for watchos projects (#5993) (5404ebb)
  • apple: support team signing on Swift macro SPM targets (#6060) (c2d4a69)
  • cli managed vite process, seamless and easier to work with (82f6cec)
  • custom platform specific runtimePackageName (#6039) (6be03b8)
  • improve ux on swift package resolutions (#6064) (1344dc2)
  • ios: improve spm build logs, clarity and size reporting (#6085) (3f5461f)
  • ios: manage generated modulemaps in CLI-controlled directory instead of node_modules (#6063) (4cc5ba1)
  • ios: support Swift package macros (#6059) (7976333)
  • ios: swift package clarity while installing and time formatting (#6082) (e027862)