...
- Schema Navigation - making it easier to work with large schemas
- S3 File Adaptor - read and write files from AWS S3 buckets
- Kitewheel Graph API Consumes XML - the graph API will now accept and parse XML
- Hub
- Cross-Engine Visual Testing
- Template Synchronizaton Control - for OEM partners Synchronisation Control
There were a number of other bug fixes and minor improvements made during this release. We hope you like it.
Schema Navigation
One of the most common issues that our users have raised is the ability to easily find schema items once the schema grows to any level of complexity. We often encounter this within real projects where finding the correct schema elements, particularly if there are siblings with the same children, can lead to confusion. We have heard your pain and this is the first improvement in the user interface - we have many more planned.
The Schema now has a Filter Schema search input box at the top directly below the Schema action buttons. Anything you type in there will be used for a substring search on any of the records or element names in your schema. Single or multiple words can be used and all of the words are searched separately . (for example, filtering by using 'email twitter' will return all values that container either email OR twitter OR both).
Schema elements are now shown with vertical indicators to help with deciding the child level:
...
- Highlight all parents that match - whilst leaving their children expanded
- Highlight all children that match - whilst leaving parents expanded if they match, or collapsing them if they don't do not and just showing show the path
Any schema elemented already selected (and thereby able to be used by a node or adaptor as a data source) remains selected
The Twitter status schema is sufficiently large and complex to demonstrate all of these actions:
- The word "tweet" has been typed into the schema search box
- The top-level schema element "tweet" was already highlighted selected in the schema, and remains selected in addition to being highlighted
- The child fields "retweet_count" and "retweeted" have been highlighted along with the parent field "retweeted" status
...
The File Connector provides a Test Connection button consistent with the other connection types.
Creating a File Adaptor
To create a file adaptor (for reading or writing), select the File option from among the adaptor types when creating a new item
Writing a File to an S3 Bucket
...
- XML elements become JSON arrays
- XML attributes becomes "$" object with fields
- XML body text becomes "_" when there are attributes
- All element names are flattened to lowercase
- Attribute names are not flattened
XML posted to API | JSON in Schema | Note | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| An empty element produces an object with an empty field value. | ||||||||||||||
|
| An empty child element is turned into an array value with a single empty value. | ||||||||||||||
|
| A collection of child elements with simple values is transformed into an array of values. | ||||||||||||||
|
| A collection of child elements with attributes and simple or non-existent values are transformed to an array of objects. Note that the attributes are held in the special "$" attribute of the object they refer to. | ||||||||||||||
|
| Similar to above but this demonstrates that the attribute names are not flattened. | ||||||||||||||
|
| Invalid XML leads to an error message which |
Kitewheel Hub Front-End Performance
...
One of the most important benefits that we expect is an overall performance improvement in the application itself. Benchmark tests show that React 16 is about 20% faster in the browser. Also the actual package itself is smaller. This should lead to faster load times and a more responsive experience for all.
If for some reason the Kitewheel hub application gets into an unexpected state then you might see an image that looks like this. A reload of the page will usually allow you to continue without encountering other problems.
If you do see an error message like this then there is usually a meaningful error that we have printed in the browser console. If you know how to get to your browser console then please send us a screenshot of what you see to support@kitewheel.com as this will make it easier for us to diagnose the problem.
As part of this upgrade we have improved the color chooser to make it easier to use and to interact better with the local operating system. This is an example of the color chooser used to add some color when creating a tag:
...
On Windows the operating system color choose will bring up the Windows color chooser:
Cross-Engine Visual Testing
Template Sync Control
...
Kitewheel has supported remote engine stacks for some while. However it was not previously possible to perform visual testing with a remote stack. In this release we have enabled visual testing for remote stacks.
A remote engine stack is any engine configuration that is not the default engine configuration for the Kitewheel Hub. This includes dedicated production stacks within the Kitewheel AWS environment but also in remote AWS and Azure environments that are managed by Kitewheel. Remote engine stacks are used for production workloads to provide dedicated throughput and security for connection to on-premise or other cloud environments. If you are interested in using a remote stack for these purposes please speak to your Kitewheel account manager.
Template Synchronisation Control
In this release we have improved the way that templates synchronise between different Kitewheel and dedicated partner OEM hubs. This makes the process more robust and gives a much finer level of control on how templates and managed graphs are distributed.
Bug Fixes
- [KIT-1246] - Update Migration Strategy for Engine / Reporting DB to avoid potential database locks
- [KIT-1317] - Custom engine group settings for environment disappear on a version restore
- [KIT-1330] - Page freeze (shows error boundary display) on organizations admin if navigating immediately after login
Story
- [KIT-949] - S3 Storage Adaptor: write, read (possibly) and no listen
- [KIT-1053] - Upgrade to React 16
- [KIT-1166] - Give the user manual control over where Graphs/Templates are synced to
- [KIT-1196] - Kitewheel Hub needs the concept of an "Organization Operator" user
- [KIT-1230] - Add Google Analytics to Hub
- [KIT-1240] - Cross Engine Visual Testing
- [KIT-1241] - Schema Enhancements
- [KIT-1249] - Logging system overhaul implementation (metrics, trace)