Release notes for Martini Runtime v1.1.0
Martini Runtime v1.1.0 was released on April 30, 2020. This version covers the following issues:
Stories
- MR-2401 - Introduce SpringMethods to add and remove Spring context files
- MR-2584 - Add method to TrackerMethods to delete old documents
- MR-3515 - Add the ability to add a timeout duration for service invokes
- MR-3808 - Add big data examples
- MR-3905 - Add connection methods for Redis and Mongo for Groovy usage
- MR-4238 - Create Redis listener endpoint
- MR-4256 - Add HTTP filter endpoint
- MR-4431 - Add method to MartiniMethods to get package object
- MR-4583 - Add replace existing option when downloading API schemas from marketplace
- MR-4621 - Add Gloop converter for all throttling and monitoring service parameters
- MR-4629 - Add a Gloop converter that handles String to Path conversion and vice versa
- MR-4715 - Add methods for Gloop and MongoDB to use transactions
- MR-4925 - Add one-liner for modifying error code and response format in ad-hoc Gloop
- MR-4984 - Add one-liner to retrieve the current user
- MR-4999 - Add ability to get endpoint on MartiniMethods one-liner
- MR-5001 - Add the ability to delay scheduler endpoint invoke for simple repeating
- MR-5058 - Support refactoring across package dependencies
- MR-5084 - Allow service from parent package to be used as endpoint service
- MR-5085 - Allow service from parent package to be used as start up and shutdown service
- MR-5093 - Introduce more one-liners in SolrMethods
- MR-5130 - Allow package to inherit Solr cores from parent packages
- MR-5134 - Allow package to inherit cache from parent package
- MR-5160 - Create Gloop converter for Java 8 date API
- MR-5165 - Add redis support to package caches.conf
- MR-5169 - Add endpoint to send ad-hoc messages to redis channels
- MR-5218 - Ability to retrieve multiple body parts in email endpoint
- MR-5243 - Expose a new search core one-liner under SolrMethods
- MR-5257 - Introduce a way to remove a Solr core from a package via SolrMethods
- MR-5344 - Re-introduce tracker update document methods
- MR-5375 - Add Apache Avro support
- MR-5445 - Create Gloop converter for ThrottlingFact
Improvements
- MR-1616 - Include line numbers from scripts when a script eval throws an exception
- MR-3142 - Allow Gloop REST API service generated from Swagger/Postman organized by namespace
- MR-4075 - Add notification when adding new logger on server admin UI
- MR-4432 - Implement find references for core services
- MR-4551 - Show inner static class of Groovy service in service picker
- MR-4584 - Support version names of API schemas in package names
- MR-4696 - Organize Swagger to Gloop service generation by tags
- MR-4780 - Improve license properties naming on web UI
- MR-4898 - Move Flux API operations in API Explorer to a different tag
- MR-4919 - Include response models when generating Gloop services from postman collection
- MR-4950 - Add Retry-After header when a request is throttled
- MR-4992 - Remove throws exception on getPackageProperties one-liner signature
- MR-5007 - Exclude Gloop templates from generated swagger spec
- MR-5081 - Remove UserGroupsMethods.deleteGroup(ID) one-liner
- MR-5089 - Indicate which broker configuration is used during startup
- MR-5106 - Validate the input and output of the invoked service on invoke Gloop step
- MR-5131 - Update warning message when basic auth is not enabled
- MR-5142 - Allow user to specify whether they want to gracefully shutdown a scheduler service
- MR-5151 - Add package event string on startup and shutdown services
- MR-5270 - Make Solr cores configurable
- MR-5275 - Move generated Gloop model to target directory
- MR-5288 - Handle exceptions thrown in Solr REST API
- MR-5337 - Support different filter types for HTTP filter endpoints
- MR-5342 - Organize OpenAPI to Gloop service generation by tags
- MR-5343 - Organize Postman to Gloop service generation by tags
- MR-5373 - Improve error message when setting non-existing field in Solr services in examples package
- MR-5443 - Make override.properties optional
Bugs
- MR-4280 - Selected search item resets upon reloading page
- MR-4337 - Cannot delete file when indexing is in progress on another package
- MR-4892 - Deletion of invoke document in monitor does not reflect on Solr index
- MR-4895 - API explorer not showing operations for Groovy RequestMapping if no RequestMethod is specified
- MR-4899 - Can't view operation in API Explorer when Groovy source file is in default package
- MR-4921 - Unable to index xls and docx files on tracker
- MR-4997 - Throttling/monitoring rules of group is not showing in associated user
- MR-5008 - Missing time received property in the output of searchTracker one-liner
- MR-5010 - Hidden Groovy method shows up in navigator
- MR-5015 - Gloop API operation returns 404 when base path doesn't have a leading slash
- MR-5027 - Generating a WSDL with security produces invalid WSDL
- MR-5064 - Sending Flux events from child packages does not trigger running Flux
- MR-5075 - MonitorMethods.searchMonitor returns all invocation documents when more than two users are specified in the user filter
- MR-5076 - Tracker does not show geolocation
- MR-5079 - Invalid classloader used by ActiveMQObjectMessage
- MR-5082 - Date parameters are not properly processed by the Gloop MongoDB service
- MR-5121 - Incorrect message when restarting via web UI
- MR-5122 - Compiling Groovy class with inner enum and field that has no access modifier produces a faulty class
- MR-5123 - Gloop API with empty body response in the schema returns 404 instead of the defined responseCode
- MR-5129 - Invoking of SOAP operation using HttpMethods.soap doesn't give an output
- MR-5144 - Gloop REST API returns a 406 response when an invalid auth token is provided
- MR-5146 - FeatureNotSupported exception when running MartiniMethods package operations
- MR-5147 - Invoking services on examples package Solr directory in browser throws 'Failed to instantiate' error
- MR-5150 - Missing TrackerMethods that accepts a string parameter for file name
- MR-5166 - Cannot change password anymore after changing password on access control
- MR-5175 - Unable to find package when triggering Flux services
- MR-5176 - FeatureNotSupported thrown when resolving a service
- MR-5177 - Cannot shutdown instance if a package is stuck at startup
- MR-5178 - NoSuchMethodError thrown when using Google Cloud Pub/Sub library
- MR-5179 - FileMethod.resourceStream() returns incorrect exception message
- MR-5186 - MultipleCompilationErrorsException thrown when replacing a running Martini package with an external JAR
- MR-5198 - Calendar rate limiting not properly reset counter at the required time
- MR-5216 - Saving Groovy class causes Spring related errors
- MR-5242 - Gloop model to Solr schema not working with enum properties
- MR-5263 - Exception thrown in FTP client when file name has less than 3 characters
- MR-5284 - $trackerId returns null when used as a parameter in a service invoked in a URL Alias endpoint
- MR-5346 - Cannot start FTP Server endpoint due to an exception
- MR-5356 - Newly created package with startup/shutdown service does not get indexed
- MR-5357 - API Explorer does not show ESB APIs when viewed as Active User
- MR-5361 - Downloading GeoIP database via admin UI throws an error
- MR-5412 - Modifying an endpoint of core package returns old value
- MR-5422 - Solr API throws not found in schema error for special field names
- MR-5426 - Out of memory exception on embedded ActiveMQ with heavy request load
Tasks
- MR-3156 - Rename properties property in tracker document Gloop model
- MR-4249 - Move queries directory to data directory
- MR-4944 - Improve HttpMethods javadoc
- MR-4951 - Rename STOMP endpoint /esbws to /martini-ws
- MR-4958 - Simplify endpoints examples
- MR-4967 - Rename ESBGroovyCompilerConfig.groovy to MartiniGroovyCompilerConfig.groovy
- MR-4987 - Prevent query strings from being added to path elements of a REST API
- MR-5060 - Remove service-level invoke permissions
- MR-5110 - Update/deprecate one-liners that declare unused exceptions
- MR-5111 - Update/deprecate VfsMethods.writeFile which has an unused bufferSize parameter
- MR-5137 - Standardize property key conventions
- MR-5143 - Automatically migrate files in
queries
todata/queries
directory - MR-5287 - Change Groovy objects default instantiation to reflection instead of Spring factory
- MR-5295 - Include io.toro.martini.tracker.Tracker on javadoc
- MR-5347 - Create javadoc for LettuceRedisDataSource return types and parameters
- MR-5348 - Create javadoc for MongoDbDataSource return types and parameters
- MR-5352 - Upgrade libraries and fix vulnerabilities