Releases: ionic-team/ionic-app-scripts
2.1.3
v2.1.3 chore(changelog): 2.1.3 changelog
2.1.2
v2.1.2 chore(changelog): 2.1.2 changelog
2.1.1
2.1.0
2.0.2
Upgrading
Make sure you fllow the instructions below for upgrading from 1.x
to 2.x
. In the 2.0.2
release, we had to make a small change to the optimization
config. If you override this config, please review the change and update your config accordingly.
Bug Fixes
- sass: fix potential null pointer, though it really should never happen (427e556)
- webpack: don't output deptree.js, this requires a minor tweak to the optimization config if you have it customized (785e044)
- webpack: upgrade to webpack 3.2.0 to fix some bugs within Webpack surrounding the ModuleConcatenationPlugin (f85ade0)
2.0.1
Upgrading from 1.x
If you're upgrading directly from 1.3.12
or earlier, make sure you review the changelog for 2.0.0
and follow the instructions. There were some very updates you'll need to make to your app.
If you're customizing the build process and have a dependency that utilized [email protected]
, it may be best to add an explicit devDependency
on [email protected]
to the project's package.json
file. There have been a couple reports of non-standard 3rd party dependencies causing trouble with the webpack
version.
Bug Fixes
- generators: no module by default (#1096) (dfcaefa)
- http-server: revert change for path-based routing since it broke proxies (065912e)
- sass: use webpack/rollup modules for non-optimized build, use optimization data for prod/optimized buids (0554201)
- serve: fix cached file issue by only using the webpack module concat plugin for prod builds, make sure you update custom configs (feea7fe)
- webpack: webpack in-memory output file system was breaking some plugins (574da39)
2.0.0
Breaking Changes
In order to speed up the bundling process, we have separated node_modules
code into a new, generated file called vendor.js
. This means that on every change, ionic-angular
, @angular
, etc won't need to be processed by webpack
🎉
This means that src/index.html
must be modified to include a new vendor script tag <script src="build/vendor.js"></script>
. This new script tag must be placed above the main.js
script tag. For example,
...
<body>
<!-- Ionic's root component and where the app will load -->
<ion-app></ion-app>
<script src="cordova.js"></script>
<!-- The polyfills js is generated during the build process -->
<script src="build/polyfills.js"></script>
<!-- all code from node_modules directory is here -->
<script src="build/vendor.js"></script>
<!-- The bundle js is generated during the build process -->
<script src="build/main.js"></script>
</body>
...
Another side effect of this change is if you are overriding the webpack
configuration, you will want to update your custom configuration based on the new default configuration. The main changes to the config are adding the ModuleConcatenationPlugin
for scope hoisting for significantly faster apps, and adding the common chunks plugin for the vendor.js
bundle.
See commits e14f819 and 141cb23 for the specifics of the webpack.config.js
change.
Bug Fixes
- config: updated polyname env variable to match convention and fix typo with it (d64fcb1)
- lint: improve linting performance (106d82c)
- sass: dont try to process invalid directories (8af9430)
- sass: fix a bug when calling sass task in stand alone fashion (54bf3f6)
Features
- dev-server: add support for path-based routing (2441591)
- webpack: add scope hoisting to webpack, update sass to read scss files from disk (e14f819)
- webpack: use a vendor bundle to minimize code that needs re-bundling and source map generation (141cb23)
- webpack: webpack 3.1.0 holy speed upgrade! (a3bde4a)
1.3.12
1.3.11
v1.3.11 chore(package): remove peer dependencies as they cause more problems …
1.3.10
v1.3.10 1.3.9