v0.9.0 - Windows Support
This new version does not contain any breaking change.
This release contains many internal refactorings not surfaced to the user (and therefore not part of the release notes) but contributing to the effort of making the platform more stable overall.
This release brings Electrode Native to Windows 🎉 !
It is now be possible to install and use Electrode Native on Windows and Linux in addition to Mac.
The only restriction is the run-ios
command that is disabled on Linux and Windows platforms. All other ern
commands are available on these platforms.
This release marks the initial one for Windows / Linux (linux was already somewhat supported), therefore some bugs might still be present. Do not hesitate to open an issue to let us know of any bugs you might face on these platforms.
Improvements
APIs
- [Android] Add proper API implementation project generation along with API implementation project Container injection support. Remaining vague for now, but this is a big one. We are waiting for iOS to be on parity to announce it in more details and update our Getting Started guide with some more magic ! Looking forward to Electrode Native 0.10.0 to reveal more about this exciting feature. #210 #221
Container
-
[iOS]
addProject
plugin injection directive now allow adding projects that have aFramework
target (in addition to project having a static lib (.a
) target). #224 -
[Android] A Maven publisher is not required anymore. It is now possible to use GitHub publisher only for Android Container publication #180
-
The
replaceInFile
plugin injection configuration directive now does a global replace (i.e it replaces all occurences matching a string and not only the first match) #199
Commands
-
The
create-miniapp
,create-api
andcreate-api-impl
commands are now checking if the name used for the project npm package already exists in npm registry to avoid name collisions upon publication #181 -
It is now possible to provide extra JavaScript dependencies to be added to the MiniApps Composite project created through
start
command. It can be useful to pass in some development dependencies that otherwise wouldn't be included, becausedevDependencies
of MiniApps are not part of the MiniApps Composite. #183 -
A new option flag,
--usePreviousEmulator/-u
can be passed torun-ios
andrun-android
commands to use the same emulator that was used on previous run of the command and bypass emulator selection prompt. If this option is not provided, the emulator selection prompt will still be shown. #207
New features
Container
-
[iOS] Add new
addFrameworkSearchPath
plugin injection directive. #224 -
[iOS] Add new plugin injection directive
addFrameworkReference
to allow injecting external Frameworks references in a Container #182
Commands
- Introduce
cauldron regen-container
command. This command can be used to trigger the generation and publication of a new Container version for a native application version stored in the Cauldron. This command can be useful during development, or in case a Container generation failed (maybe because of an invalid plugin configuration). It allows triggering container generation even if there is no state change to the Container (no MiniApp(s) added/removed/updated and/or no Dependency(ies) added/removed/updated) #191
Platform
-
All shell commands executed via shelljs are now logged in
trace
log level. (by defaultern
log level is set toinfo
. Log level can be changed throughern --log-level <level>
). #204 -
Spinners are now disabled for
debug
andtrace
log level as they are not adding any valuable log information and pollute the log output. #201
Thanks
Kudos to all external contributors to this version (code, doc or bug reports) 👏
@sachinjha1
@wbowlin
@anthonywebb
@caoyangs
@swashcap
@jyaunches
@minsoe
@kevinlho
@briviere