NativeScript 6.40 has a couple cool new things; but better yet it fixes several issues that can will affect your users if you are using 6.3.x lets look at them...
Some of the fixes include instability during android's fragment handling occurred in 6.32, which is worth while. A couple really awesome community PR's, and of course one of my favorite items is the new CSS parser by default and the v8 upgrades...
[UPDATE] The new 6.4.1 Android engine that was just released a day or so after 6.4.0 adds v8 version 8! Which add a lot of cool features (see v8 section)
- NativeScript is got a new much faster CSS parser in v6.3 -- it is now default in 6.4!
- The community (Ryan & Hamdi) and the NativeScript team worked on 3d rotation for a while now; this has now shipped! .rotate-x, .rotate-y, and .rotate-z
- .Fixed background color reset on Tabs
We had even more awesome community PR's this month, a big thank you to the community!
- a fix in ios button textAlignment by Romain Vincent.
- Adding read timeout to http(s) requests by SpurguX
- HTMLView got color, link-color, font-size, font-family properties and some other consistency changes by Kirill Goncharov
- PNPM Support by Martin Guillon
The CLI team has fixed several outstanding bugs; including several webpack hmr issues. This also includes Node 13 and Android API 29 compatibility.
- CLI now cleans up after itself in a corner case where CTRL-C'ing when first starting the build.
- Doctor now will throw error if using Java 13 (NativeScript doesn't support it yet)
- CLI Will now detect and let you know about the breaking issue of including multiple versions of the same plugins or multiple NativeScript core versions.
- Native Metadata filtering, allow Application/Plugins to declare what Metadata they need; to allow smaller metadata and faster startup.
- Snapshot bug fixes
- Ability to set a Webpack config location so you can add custom application rules
- Ability to allow custom platforms building (--env.platform <platform>)
If you didn't read my notice on the last update; I'm creating this new v8 Section, because Android and soon iOS will both be using the same v8 engine. v8 was upgraded to v7.9 (in 6.4.0) and then the awesome v8.0 was slipped into (6.4.1) which adds:
- IC Handlers are now cached properly; giving a ~12% for all IC calls into the C++ runtime.
- OSR Replacement - 5% - 18% speed up.
- Pointer Compression (Saves up to 40% of heap memory) which increased speed on large JS by a few percentage points!
- Optional Chaining
- Null coalescing
- Async WebAssembly issue resolved
- Memory freed on some objects that were being retained
- Upgraded to V8 8.0 (See v8 section)
- Fix for Elevation usage on some API versions
- "FlipRight/flipLeft" transition fixed
- The CLI will warn you if you forget a module.modulemap file in your included .M files
- Project Template is FastLane compatible
- Fixed discarded exceptions
- Safari Inspector now shows startup errors
- A lot more changes to the new v8 version of the iOS runtime that is now in BETA testing to eventually replace the JSCore version... Overall now is the time to test it!
To get updated; you first need to do:
npm i -g nativescript@latest
To update a project; you need to do the following:
tns platform remove android && tns platform add android@latest
tns platform remove ios && tns platform add ios@latest
Latest Core modules:
npm r tns-core-modules --save
npm i tns-core-modules@latest --save
To install Webpack support:
npm i nativescript-dev-webpack@latest --save-dev
To install latest NativeScript Angular plugin
npm i nativescript-angular@latest --save
You will then need to install the actual angular bits; which as of this post v6 is currently supported.
The addition of t additional analytics/tracking to the CLI reminded me; you can disable it permanently; if you value your privacy by doing:
tns usage-reporting disable && tns error-reporting disable