JET v6.1.0 Release Notes

14 January 2019

To view Release Notes from a prior release of JET, select the specific below

These release notes cover the following topics:

Things you need to know first

  • If you are new to JET, you will find the custom element syntax intuitive and natural to use when working in your HTML code.

  • In addition to Web Components, JET supports other component types that help component producers and consumers manage sets of Web Components with common dependencies upon a set of shared development resources, including: related Components, JavaScript base and utility classes, CSS files, icons, translation bundles, etc. JET Component Packs, or JET Packs define versioned sets of JET Web Components that can be managed, packaged, and delivered as a whole. JET Reference Components define a versioned external 3rd party library dependency. JET Resource Components define and package resources shared by a set of JET components. To learn more about these new component types, visit the 'JS Docs' concept topic JET Component Types. These new components also define their own set of JSON metadata -- to learn more, visit the 'JS Docs' concept topic JET Pack Metadata.

  • Reminder: Removal of direct Yeoman and Grunt usage. As a continued effort toward abstraction of direct library calls in the JET CLI, the direct use of yeoman and grunt will be removed in the JET v7.0.0 release. A new hooks API was introduced in JET v5.0.0 to allow for customization of tasks and project templates will be supported via the current process of creating custom starter templates that can be referenced as part of the CLI --template=<"url" | "name"> argument.

New Features included in v6.1.0

New UI Components

There are no new components in this release

New Features

  • after_component_build hook is now available for introducing custom code that can handle your built components. An example of this may be packaging of the web component for sharing wih other applications.

  • after_app_create and after_app_restore hooks are now available for use with custom template development. Providing either or both after_app_create and after_app_restore hook code will allow a developer to create a custom template and perform template manipulation after the template has been extracted and JET libraries have been added. These hooks are run one time only during either the create process or duing the restore process.

  • TypeScript definition files are now distributed as part of JET itself. There is no longer a need to run npm install separately to make the TS definitions available. See the TypeScript Docs for more information.

  • Biometric Authentication has been added to the JET FixItFast (FiF) sample application. Using the JET Offline Persistence Toolkit, the ability to login to the FiF sample application is now available. Download the sample app source to review the code and learn from the implementation.

Significant JET changes since 6.0.0

This section lists significant consumer-facing changes that have been made to JET since v6.0.0. Where bugs or ERs were used to track the change, they are included below. The following list does not include changes that are internal implementations, or changes made to samples, demos, or test collateral. It is expected that application code will not need to be modified to uptake v6.1.0.

Component Changes

oj-dialog new dialog-title property

The dialog component has added a 'dialog-title' property for setting the title within the dialog's header slot. Use of the 'title' attribute for setting the dialog's title is deprecated.

API Changes

There are no API changes in minor releases of JET.

Theme Changes

Experimental: CSS Variables

In JET 7.0 we will be deprecating the use of SASS for theming and moving to CSS custom properties, aka CSS Variables. We will still provide a way to preprocess the CSS variables away in order to support IE11. Starting in v6.0.0 we will provide the following so that customers can learn more, keep in mind everything to do with CSS Variables is experimental and there will likely be changes.

  • Directory named pcss with files, this is a sibling of the scss directory we provide for sass files
  • CSS file that uses css variables. These experimental files are with the other out of the box css files JET provides but the file name ends with -cssvars.css, for example code/css/libs/oj/v6.1.0/alta/oj-alta-cssvars.css.
  • In the cookbook there is a switch in the settings dialog to use the css variable version of the css file described above, click the gear icon in the demo toolbar to open the settings dialog.
  • There is a css variable version of theme builder, though it cannot yet be used to build a theme on the client. Go to the 'Learn' tab on the JET website and look for 'CSS Var Theme Builder'.

Framework Changes

oj.js Support Deprecated

Reminder: As of JET 6.0.0, any support for the concatentated JET code library oj.js is deprecated. This file will be removed completely by JET 8.0.0.

Library Changes

There are no dependency changes in minor releases of JET.

Tooling Changes

Removing yeoman and grunt

generator-oraclejet and ojet-cli will remove their support and use of yeoman and grunt in the 7.0.0 release. The ojet CLI will be the only way to use the JET Tooling from that point on.

Known Issues

The following table calls out specific known issues, with workarounds where available.

Category Bug # Description Workaround (if available)
iOS N/A Cordova at this time does not support XCode v10.
This is a known issue reported on GitHub cordova-ios issue #407
iOS N/A JET hybrid mobile apps created using an earlier JET release may have additional spacing at the top of the page when deployed to iOS 11 devices.
Change the viewport meta tag in index.html to the following:
<meta name="viewport" content="viewport-fit=cover, width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1.0, user-scalable=no"/>
iOS ios-sim 210 ios-sim version 5.1.0 may be installed locally by cordova-ios and serving the app to iOS simulator reports:
"Error: Cannot read property 'replace' of undefined"
cd hybrid/platforms/ios/cordova; npm install ios-sim@latest
iOS ios-deploy 275 Deployment to iOS device succeeds, but the app fails to launch and an error is reported in the terminal.
Upgrade to the latest version of ios-deploy (sudo npm install -g ios-deploy) and use a developer signing identity. Otherwise, launch the app manually on the device.
npm npm 16901 npm version 5 does not install the oraclejet module when scaffolding a JET hybrid app and building the app reports:
Warning: ENOENT: no such file or directory, open 'node_modules/oraclejet/package.json' Use --force to continue
It is recommended that you use the LTS version of Node and at least version 6 or greater of npm when working with JET tooling.