jspm 0.17 beta
guybedford
released this
25 Jan 11:07
·
798 commits
to main
since this release
Available via npm install jspm@beta
.
For usage instructions, see the jspm 0.17 beta guide.
Breaking Changes in jspm 0.17
- When updating to jspm 0.17, jspm 0.16 projects will run through an automated upgrade process.
defaultJSExtensions
is now disabled and cannot be enabled for this version of jspm. Package configuration is now the primary mechanism for ensuring adefaultExtension
.config.js
is now calledjspm.config.js
and works alongside a new separatejspm.browser.js
config filejspm install github:x/y
now installs into the default aliasy
notx/y
- Registry API changes (with backwards compatibility warnings):
- The
build
hook has been renamed toprocessPackage
taking new arguments (https://github.com/jspm/jspm-cli/blob/0.17/docs/registry-api.md#processpackage-packageconfig-packagename-packagedir-optional) packageFormat
has been renamed topackageNameFormats
using wildcard syntax over regular expressions (https://github.com/jspm/jspm-cli/blob/0.17/docs/registry-api.md#static-packagenameformats)
- The
- By default transpilers are plugins, with the init process providing the standard plugins for Traceur, Babel and TypeScript.
jspm dl-loader babel
is no longer supported and this command only downloads the loader files. - The GitHub registry will always download the git tree tag or branch directly instead of checking for uploaded release archive assets. As a result GitHub API credentials are no longer necessary.
- All overrides are all checked in to the package.json file to guarantee reproducibility.
jspm setmode remote
has been disabled until the jspm registry can be upgraded to the 0.17 version.
Additional Features
- New dynamic package configuration system - package files are no longer modified at all on download, with SystemJS configuration managing the npm compatibility layer.
- New linking workflow
- Peer dependency support
- New configuration file interface to fully retain existing style and properties
- Support for server-side npm installs
- npm registry endpoint supports custom module formats
- Local project configured as a package itself with init prompt handling
- Babel 6 plugin (https://github.com/systemjs/plugin-babel)
- Traceur plugin (https://github.com/systemjs/plugin-traceur)
- Automatic Rollup optimizations for jspm build (systemjs/builder#442)