Skip to content

18.0.0

Compare
Choose a tag to compare
@FrozenPandaz FrozenPandaz released this 03 Feb 04:57
26a815c

18.0.0 (2024-02-03)

Nx 18 introduces Project Crystal 💎, a significant shift towards making Nx more transparent and easy to understand! Learn more here!. This is now enabled by default where avaialble and is the reason why we decided to mark it as a major version.

Note: Though this is a major version, there are no removals of previous deprecations. Any deprecations which were previously scheduled for Nx 18 are now scheduled for Nx 19 which will still be coming out around April 2024.

🚀 Features

  • angular: add generator to convert targets to use the esbuild-based application executor (#21333)
  • core: don't clear NX_BASE or NX_HEAD (#20125)
  • core: log to guide users to show details after project generation (#21350)
  • core: improve nx connect success message (#21295)
  • core: add support for loading .ts files using ESM (#21268)
  • core: support --use-agents and --no-agents (#21472)
  • core: enable project crystal by default (#21403)
  • core: move distribution to beginning of generated ci workflows (#21483)
  • core: add migration to disable adding plugins automatically in existing workspaces (#21508)
  • core: add log lines grouping for GH Actions (#21357)
  • core: add fallback flow to nx init when no plugins are detected (#21538)
  • core: improve the commented dte message on ci-workflows (#21524)
  • core: add e2e to ci workflows (#21487)
  • devkit: improving error handeling read target options (#20336)
  • devkit: add loadConfigFile function for plugins to use (#21511)
  • linter: add error and warning statistics (#18313)
  • linter: add option for @nx/dependency-checks to update workspace dependencies using local file paths (#20157)
  • nextjs: upgrade Next.js 14.0.3 (#20334)
  • nx-dev: more logos & announcement banner (#21444)
  • react-native: add useTransformReactJSX babel config to generators (#19170)
  • react-native: upgrade react native to 0.73 (#20896)
  • vite: allow passing path to custom tsconfig file when skipTypeCheck is false (#19784)

🩹 Fixes

  • nestjs lib generator pass skipPackageJson flag to js lib generator (#20442)
  • angular: fix dev-server validation for esbuildMiddleware (#21413)
  • angular: should not log invalid extension includedScripts (#21441)
  • angular: handle indexHtmlTransformer option in dev-server correctly (#21520)
  • bundling: consider index/folder imports in manual file resolution (#19030)
  • core: remove misleading message at front of error (#21443)
  • core: new generator not skipping package installation (#17927)
  • core: include typescript package when calculating project hashes (#21285)
  • core: do not append node_module paths in run-script executor (#21445)
  • core: update axios to address CVE-2023-45857 (#20493)
  • core: Add missing migration from playwright (#21448)
  • core: always remove cursor reset in terminal output for Windows (#21467)
  • core: do not run pty in run-script when we're not TTY (#21496)
  • core: target defaults should be able to apply to multiple targets with the same executor (#21438)
  • core: nx build --graph file.json should work in subdirectories (#19858)
  • core: Update Nx Welcome to include nx show project (#21509)
  • core: handle negative patterns better when specified in pnpm-workspaces (#19983)
  • core: module federation migration for project with no targets (#21536)
  • core: remove the full workspace path with node_modules from the path env variable when running run-scripts (#21532)
  • core: do not watch temporary vite files (#21514)
  • core: target defaults from specifier should not be clobbered by name based target defaults (#21539)
  • core: fix missing nxCloud error message on ci workflows (#21564)
  • core: handle spaces when launching nxFork (#21571)
  • expo: set port for e2e (#21559)
  • graph: repair externalApiService usage broken after refactor (#21422)
  • graph: fix expand when using external api (#21433)
  • graph: don't show open config button on nx.dev & refactor tooltips (#21463)
  • graph: fix openen project details with expanded target from external api (#21548)
  • js: allow inlined libs without imports (#20649)
  • js: package type is module should emit esm (#21473)
  • linter: remove extend of @angular-eslint/recommended--extra config (#18465)
  • linter: restore rules to match previous @typescript-eslint/recommended (#21424)
  • linter: make target default migrations a bit more robust (#21446)
  • linter: make eslint mandatory dependency (#21406)
  • linter: ensure flat config generator works for pcv3 plugin (#21485)
  • linter: remove reportUnusedDisableDirectives for flat config (#21405)
  • linter: prevent dep-checks leaking when used outside nx (#21404)
  • misc: prevent ts-node from reading tsconfig when registering transpiler (#21381)
  • misc: set $schema in nx.json generated during nx init (#21455)
  • misc: use caret for semver version (#18140)
  • module-federation: ensure the static remotes env var is used for task hashing #21390 (#21414, #21390)
  • module-federation: ensure incorrect tsconfig path mappings are not used #21391 (#21416, #21391)
  • nest: exclude react-specific packages when generating nx nest monorepo (#21153)
  • nest: ensure dependencies are installed when generating nest libraries (#21534)
  • nextjs: Add missing support swc for custom server (#21401)
  • nextjs: lazy load plugin import (#21426)
  • nextjs: nextjs standalone playwright linting (#21555)
  • nextjs: vite workspace libs (#21553)
  • nuxt: change nuxi to nuxt (#21484)
  • nx-dev: fix hero text typo (#20937)
  • nx-dev: remove unmatched bracket. updates warning description (#19481)
  • nx-dev: launch week agenda minor fixes (#21419)
  • nx-dev: typos on launch-nx website (#21552)
  • react: import SupportedStyles type from correct path (#20239)
  • react: setup-ssr generator should not read the graph for a project that doesnt exist (#21522)
  • react: extensions - vite e2e test (#21530)
  • react: app generator should handle crystal workspaces (#21537)
  • react-native: Application generator failing (#21507)
  • release: skip lock file update if yarn classic (#21489)
  • testing: fix config references to js files (#21018)
  • testing: add support for generating and loading cypress config in ESM format (#21471)
  • vite: prevent vite:build copying package.json when generatePackageJson false (#19780)
  • vite: deep file resolution in nx-tsconfig-paths.plugin.ts (#21513)
  • vue: do not add @vue/tsconfig dependency (#19873)
  • webpack: correctly handle data URIs with escaped quotes in style… (#20988)
  • webpack: fix webpack plugin issues and e2e tests (#21531)

❤️ Thank You