Today’s release of ql.io 0.5 includes the following changes:
- Enable caching on ql.io response. You can add
using headersclause to routes to add arbitrary response headers, as in
return 'hello' via route '/hello' using method get using headers 'Cache-Control' = 'max-age=3600';
- [Experimental] Enable caching of responses from APIs for select statements.
create tablestatements can now include an
expires <interval>clause to specify an interval for caching responses of
selectstatements, as in
create table auto.compute.key on select get from 'http://a.uri.net' ... expires 10;
- Process gzip/deflate encoded responses from upstream servers.
Content-Encodingfor incoming requests and gzip/deflate encode responses.
- Several bug fixes to maintain hierarchical logging of script execution. You can handle events emitted by the engine to log script execution flow. Watch this blog for an example soon.
- Factor out cluster management to a new module cluster2 to support deployments on CloudFoundry and Heroku.
- New URI
/apito navigate tables and routes - see En Route for details.
- Upgrade CodeMirror to 2.22 to resolve some quirks in the console UI.
- Add a page to show all installed npm packages. Try http://
: /deps (or http://localhost:3001/deps).
- Support custom xml2json convertors to enable clients interop with legacy XML APIs.
- Recover shutdown/stop from extraneous pid files.
- Simplify response decoding. In stead of setting encoding on the response, collect buffers into array, and then decode in the default impl of ‘parse response’.
- Removed /in-flight requests api.
- Enable numbers in
inclause and args of udfs
- Export version from each module. You can find version of a module using
- Include version number in
- Support scatter-gather for requests with bodies by adding a
foreach 'param'for the
using bodyTemplatecluase. This allows scripts to batchup POST and PUT requests.
- Support ejs body templates.
- Skip files that don’t end with
- “/ecv” check returns network ip instead of loopback address
- Let the engine allow a monkey patch to parse the response. Useful to process binary formats like avro.