Skip to content

Release Notes

Alex Vigdor edited this page Mar 1, 2019 · 10 revisions

Groovity Release Notes

2.0.4 - February 28, 2019

  • Fixes #41 - change elasticsearch dateRange implementation to use scroll API to avoid race condition
  • Fixes #42 - add test and fix for writing escaped output to string
  • Fixes #43 - change order of operations to protect Minify tag buffer from overflow in error conditions
  • Closes #44 - suppress repetitive stack trace logging in data factory watch
  • Fixes #45 - use delete body to submit scroll_id to elasticsearch to solve 413 responses with large scroll_ids in the path; requires adding support for delete body to http tag

2.0.2 - January 15, 2019

  • Fixes #40 - fix intermittent trait loading issues by moving compiler verification earlier
  • Memory data source clears stored objects on destroy
  • Add length check before parsing CORS Origin port

2.0.1 - November 26, 2018

  • Fixes #36 - support for Elasticsearch 6.x
  • Fixes #37 - address model transform edge cases
  • Closes #38 - safe access to Shared models during data-service updates
  • Closes #39 - speed up builds

2.0.0 - October 3, 2018

  • Closes #32 - improve groovity-elasticsearch to support complex JSON format queries and hit/aggregation processing
  • Closes #33 - add statistics gathering for async, accept and await tags to improve visibility into multithreaded performance
  • Closes #34 - file data source improved to perform write and rename for atomic updates
  • Closes #35 - new groovity-data-service module offers general purpose REST API for groovity-data types
  • resolve issues building Groovity under Windows
  • add Referent interface to make it easier for Java code to test whether an object carries a pointer

2.0.0-rc.21 - August 27, 2018

  • Fixes #27 - make docs API more resilient
  • Closes #28 - add EnvConfigurator to allow picking up conf values from environment variables
  • Closes #29 - add AsyncChannelObserver API to allow automatic tracking and closing of static async channels to remove boilerplate destruction
  • Closes #30 - add ‘on’ and ‘emit’ tags to simplify and align server-side programming model for groovity-events
  • Closes #31 - When HTTP session is closed (by timeout or invalidation), close associated websocket connections
  • Add GroovityObserver API, replaces both GroovityVisitor and GroovityScriptClassListener with extended functionality
  • Refactor groovity-servlet and groovity-portal to use GroovityObservers for reduced processing
  • Add ScheduleObserver for scripting simple repetitive background activities
  • improve post-unit-test cleanup

2.0.0-rc.20 - June 26, 2018

  • Fixes #17 - add support for InputStream, File, HttpEntity and DataSource to Hash and Hmac tags; Attachment implements DataSource for compatibility
  • Closes #18 - devolve Attachment to map without implementation details in AttachmentCollector to keep stored metadata clean
  • Fixes #19 - treat CharSequence, byte[], File and InputStream attributes on calls as well-formed entities regardless of type, add unit test showing fix applies to JSON strings
  • Closes #20 - improve data attachment support with md5 hash and store-time reconciliation
  • Fixes #21 - apply entity content type header to request in http tag to ensure boundary parameter is set
  • Fixes #22 - change trait loading behavior and jetty scan config to address errors in maven builds when run without clean
  • Fixes #23 - file data source allows type to define XML as a serialization format, and defaults to explicit JSON instead of relying on default write tag behavior
  • Closes #24 - broadcast change events on data store and delete using offer(channel:'/data/changes')
  • Closes #25 - add '/data/transfer' async channel for moving data and attachments between types using offer(channel:'/data/transfer’)
  • Fixes #26 - add test case and patch to convert NaN and Infinity to null values when serializing to JSON
  • Add java.io and java.net to packages excluded from devolution during serialization
  • Add preStore() extension point to Stored trait for stacking data reconciliation/diff logic
  • Improve type conversion and recognition
  • Convert portal to use groovity-error-page

2.0.0-rc.19 - April 20, 2018

  • Closes #3 - implement store and delete for http data sources with standard REST semantics
  • Fixes #12 - fix npm build and npm/browser cross-compatibility of groovity-events-client js module
  • Closes #14 - add ModelTemplateWriter to support template-based serialization of Models
  • Fixes #15 - moves WebSocket and Ws tag to standalone module so core groovity can startup without javax websocket api
  • Fixes #16 - remove startup check to allow groovity run on only packaged compiled scripts
  • Make type conversion more reliable for numbers, dates and strings, log type conversion errors
  • Speed up XML parsing by avoiding intermediate translation step

2.0.0-rc.18 - April 10, 2018

  • Fixes #8 - strip default port from URLs before http request, use more reliable logic for generating host for signature string, resolves issues with servlet-admin in AWS
  • Fixes #9 - http tag now applies Content-Type charset to entity for reliable encoding
  • Fixes #10 - http tag now generates XML body from arbitrary object models when Content-Type is xml derivative
  • Fixes #11 - change configurator order of precedence so that system properties override file properties for application config

2.0.0-rc.17 - April 2, 2018

  • Fixes #1 - add test of watch by ID to elasticsearch stressWatch, translate ID to clause for date range query to address 400 error, clean up baseurl after test run
  • Closes #2 - add support and unit tests for @XmlSchema and @XmlNs annotations to control namespace prefixes when writing XML, and for passing custom prefixes to write tag and ModelWriter as a map of prefix to uri
  • Closes #4 - add support and test for applying @ModelSkip on a class with a String[] of property names
  • Closes #5 - moved release related plugins to maven release profile for simpler, faster dev builds
  • Closes #6 - transpile groovity-events using npm+babel for IE11 compatibility, set up to publish groovity-events.js to npmjs

2.0.0-rc.16 - March 26, 2018

  • initial public open-source release