Skip to content

Releases: ionic-team/ionic-framework

3.6.1

07 Sep 20:33
Compare
Choose a tag to compare

3.6.1 (2017-09-07)

Upgrade Instructions

[email protected] is a drop-in replacement for 3.6.0. To install it, please run:

npm install -g ionic@latest
npm install @ionic/[email protected] --save-dev
npm install [email protected] --save

Bug Fixes

  • generators: Update documentation URLs for templates (475b722)
  • navigation: check existence of done transition callback (#12640) (0a6bb3b)
  • navigation: ensure secondaryId always has a string value (#12641) (1069505)
  • navigation: fix popTo signature and make usage uniform (3187375)
  • slider: guard the processing of _slides (b809665), closes #12791

3.6.0

27 Jul 19:34
Compare
Choose a tag to compare

Upgrade Instructions

ionic-angular 3.6.0 requires developer's to update to the latest version of the Ionic CLI and @ionic/app-scripts.

To upgrade, please run

npm install -g ionic@latest
npm install @ionic/app-scripts@latest --save-dev
npm install ionic-angular@latest --save

Notes

The URL when using deep linking is shortened and improved in this release. Due to a limitation in our nav system, if you're using ion-tabs and have a tab name that matches a segment, meaning you have a tab name of schedule and a segment of schedule, there could potentially be issues. To mitigate these issues, make sure you set the tabUrlPath property on the ion-tab and give it a unique name. This limitation will require an API change to fix so it will be resolved in ionic-angular 4.x.

The upgrades include necessary changes to generators that add back lazy loading functionality, as well as an improved way of generating component/directives/and pipes.

New Generators

The release adds back the functionality to generate lazy loaded pages.
To generate a lazy loaded page, run:

ionic g page <Page-Name>

This will include a .module.ts file in the page directory created. If you do not want to generate a lazy loaded page, you can run:

ionic g page <Page-Name> --no-module

This will also generate lazy loaded tabs as well, accepting the --no-module flag as well to disable it.

For pipes/components/components, we now generate a shared common module for each of these.

So running:

ionic g component music-card

Will create a components/components.module.ts file that declares and exports the music-card component.
We think that this will allow developers to get up and running with custom components much faster and will less overhead.

Bug Fixes

  • list: remove margin of MD buttons in ion-item-options (#12263) (97f9522)
  • nav: make call to setPages return the promise so if it rejects it doesn't get lost (de0f9d5)
  • navigation: account for race conditions in developer's code (4596dbe)
  • navigation: fix bug where that occurred when tab identifier and segment had the exact same string (add0c4e)
  • navigation: fix null pointer exceptions that would occur when destroying a nav controller while its transitioning (584afd0)
  • navigation: reduce urls to minimum set of fields (a8ceee4)

Features

  • generators: refactor generators (400aa54)

3.5.3

14 Jul 17:23
Compare
Choose a tag to compare

3.5.3 (2017-07-14)

Bug Fixes

  • app: restore getActiveNav api (2d49e10)

3.5.2

13 Jul 14:50
Compare
Choose a tag to compare

Upgrade Instructions

[email protected] is a drop-in replacement for 3.5.1. To install it, simply run npm install [email protected] --save --save-exact.

We have released a new version of our build process for ionic-angular apps, @ionic/app-scripts in conjunction with this release of ionic-angular. While it's not a required update, we recommend it because we have greatly improved the developer experience. Incremental, or update builds while developing are much faster now. We've also added scope hoisting for better start-up performance on production builds.

To upgrade to @ionic/app-scripts, run the following command:

rm -rf node_modules
npm install @ionic/[email protected] --save --save-exact

After installing the update, you'll need to make a minor change to the src/index.html file to include a new <script> tag for build/vendor.js. The reason for this breaking change in @ionic/app-scripts is for faster builds. By separating out the node_modules dependencies into a vendor.js file, the incremental build is faster.

...
<body>

  <!-- Ionic's root component and where the app will load -->
  <ion-app></ion-app>

  <!-- cordova.js required for cordova apps -->
  <script src="cordova.js"></script>

  <!-- The polyfills js is generated during the build process -->
  <script src="build/polyfills.js"></script>

  <!-- The vendor js is generated during the build process
       and includes all files in the node_modules directory -->
  <script src="build/vendor.js"></script>

  <!-- The bundle js is generated during the build process -->
  <script src="build/main.js"></script>

</body>
...

If you're customizing @ionic/app-scripts, we recommend you review the changelog, and update any of your configs accordingly.

Notes

3.5.2 is the same as 3.5.1. We had a small publishing error.

Bug Fixes

  • navigation: fix swipe-to-go-back (04e78d8)
  • navigation: mark as not transitioning on success in addition to '_transitionFinish', provide no (48b3243)
  • navigation: navs can have n child navs instead of just one (fce4422)
  • navigation: restore getActiveChildNav method to maintain old API, add deprecation notice (d22d77b)
  • navigation: ts2.4 compatibility (08be9dc), closes #12233 #12235
  • select: not activated on enter in input field (ad25cd1), closes #12202
  • sliding-item: ionSwipe event is fired (#12157) (b5aa304), closes #12146
  • tabs: have tabs behavior match nav when navigating back/forth via the url (3f39e14)

Features

  • navigation: support for named ion-nav/ion-tabs to improve url in the short term (486bff0)

3.5.1

13 Jul 14:33
Compare
Choose a tag to compare

See the 3.5.2 release. We had a publishing error.

3.5.0

28 Jun 16:53
Compare
Choose a tag to compare

3.5.0 (2017-06-28)

Steps to Upgrade

ionic-angular should be set to version 3.5.0.

npm install [email protected] --save --save-exact

Notes

There were major improvements made to navigation in this release of ionic-angular. Specifically, we updated Ionic to support a concept of n root navigation elements, instead of just one. This will enable first-class url support for things split-pane. Before 3.5.0, only one section of the screen could be represented in the URL. With these changes, multiple sections can be represented. Another large change was improving the behavior surrounding browser behaviors, such as the back-and-forward buttons, as well as refresh. In general, Ionic should work much more intuitively in a web browser now.

As a result of these improvements, if you're using deep linking, the urls of the application will be different with 3.5.0 than they were with previous Ionic releases. The URLs will likely change again in the near future with the next round of navigation improvements too. For now, we don't recommend using href attributes in the application. Using the navPush and navPop directives is a better option for now while URL support is being built-out.

Bug Fixes

  • navigation: add isTab check to getSegmentsFromNav (f39c381)
  • navigation: fallback to name if component does not exist on segment (30f69c8)
  • select: _inputUpdated should not be called manually (8dc08f9)
  • select: floating label (e3a8d27), closes #12068
  • tabs: use segment if it exists even if component exists (016b90d)

3.4.2

16 Jun 17:22
Compare
Choose a tag to compare

3.4.2 (2017-06-16)

Bug Fixes

  • rtl: use multi direction in order to override the default ltr (548e182)

3.4.1

16 Jun 16:17
Compare
Choose a tag to compare

3.4.1 (2017-06-16)

Bug Fixes

  • themes: change default app-direction (ce92be0)

3.4.0

15 Jun 14:34
Compare
Choose a tag to compare

3.4.0 (2017-06-15)

Steps to Upgrade

ionic-angular should be set to version 3.4.0 in the package.json dependency list. The latest @angular release 4.1.3 is also supported. Feel free to update apps by updating the package.json dependencies to match below.

"dependencies": {
  "@angular/common": "4.1.3",
  "@angular/compiler": "4.1.3",
  "@angular/compiler-cli": "4.1.3",
  "@angular/core": "4.1.3",
  "@angular/forms": "4.1.3",
  "@angular/http": "4.1.3",
  "@angular/platform-browser": "4.1.3",
  "@angular/platform-browser-dynamic": "4.1.3",
  "@ionic-native/core": "3.12.1",
  "@ionic-native/splash-screen": "3.12.1",
  "@ionic-native/status-bar": "3.12.1",
  "@ionic/storage": "2.0.1",
  "ionic-angular": "3.4.1",
  "ionicons": "3.0.0",
  "rxjs": "5.4.0",
  "sw-toolbox": "3.6.0",
  "zone.js": "0.8.12"
},
"devDependencies": {
  "@ionic/app-scripts": "1.3.7",
  "typescript": "2.3.4"
}

Bug Fixes

Features

  • background-position: add background position support for rtl (#11946) (305c306)
  • loading: add enableBackdropDismiss to Loading (#11937) (d0ae810), closes #7975
  • loading: add margin start variable (#11980) (3e0d43e)
  • rtl: add transform and transform-origin support for rtl (#11649) (2273fb5)
  • rtl: optimize the new mixins for smaller bundle, ltr separation (#11635) (f0c6948)
  • rtl: support flipped svg background images on rtl (#11945) (f4452b5)
  • slides: support centering slides and using decimal numbers (e3c60c5), closes #10361

Performance Improvements

3.3.0

24 May 14:49
Compare
Choose a tag to compare

3.3.0 (2017-05-24)

Steps to Upgrade

ionic-angular now supports the latest @angular (4.1.2), and typescript (2.3.3) versions. Feel free to update apps by updating the package.json dependencies to match below:

"dependencies": {
  "@angular/common": "4.1.2",
  "@angular/compiler": "4.1.2",
  "@angular/compiler-cli": "4.1.2",
  "@angular/core": "4.1.2",
  "@angular/forms": "4.1.2",
  "@angular/http": "4.1.2",
  "@angular/platform-browser": "4.1.2",
  "@angular/platform-browser-dynamic": "4.1.2",
  "@ionic-native/core": "3.6.1",
  "@ionic-native/splash-screen": "3.6.1",
  "@ionic-native/status-bar": "3.6.1",
  "@ionic/storage": "2.0.1",
  "ionic-angular": "3.3.0",
  "ionicons": "3.0.0",
  "rxjs": "5.1.1",
  "sw-toolbox": "3.6.0",
  "zone.js": "0.8.10"
},
"devDependencies": {
  "@ionic/app-scripts": "1.3.7",
  "typescript": "2.3.3"
}

Another optional step is to remove the src/declarations.d.ts file. This is a legacy file introduced early with ionic-angular projects to improve compatibility between TypeScript and third-party libraries. Due to improvements in TypeScript, this file is no longer necessary. By removing this file, the TypeScript compiler will be able to provide more accurate error messages for import statements.

Bug Fixes

Features

  • icon: add flip/unflip for icon on rtl (#11634) (7bdfaac)
  • rtl: add rtl margin, padding, position and border-radius (#11342) (a30379b)