We just published the 2.6.0 release of Warp 10. Discover the Macro Value encoder and all the details in this post.
On Wednesday, May the 27th of 2020, nearly two months after the release of the 2.5.0, we published the 2.6.0 release of Warp 10. A lot of new features and functions as well as some optimizations and few bug fixes come with this new release.
|Discover the latest version of Warp 10.|
Upgrading to 2.6.0
With the 2.6.0 release, we modified the bash script to start Warp 10 as well as the WarpConfig class it calls to get some configuration values. If you have already a pre-2.6.0 instance running, use this procedure to migrate to 2.6.0.
- Fetching data with boundaries larger than
max.encoder.sizenow returns the expected result.
- The same goes with non-0 boundaries in conjunction with
- Fetching without timespan and a Metaset now works as expected.
An incredible new feature of this new release 2.6.0 is the addition of Macro Value Encoder. It simply allows you to send a macro name and a value to the
/update endpoint of your Warp 10 instance, which will apply the macro to the value and store the result. In practice, you can use it to transform or encode your values in a specific way, for instance using Protocol Buffers or Arrow. More on that in an upcoming blog post.
You can now configure the Accelerator to use default strategies for reads, writes and deletes. In the in-memory configuration file, you can set
nopersist. You can, for instance, read by default in the cache only unless a call to
ACCEL.PERSIST is done before.
Store and Directory can be accessible in the UDP and TCP plugins scripts, like it is in the HTTP plugin scripts. If you want them to be accessible, don't forget to set
egress.clients.expose = true in your configuration file.
Since 2.1.0, it is possible to override the configuration defined in the configuration files by environment variables and system properties. This can now be disabled by the configuration keys
warp10.nosys. Likewise, when expanding variables, failures can be ignored with
New Docker image
As we noticed Warp 10 use on ARM devices is increasing, we now provide a multi-arch Docker image supporting AMD64, ARM64 and ARMv7.
You can now deploy Warp 10 even quicker than before for your embedded devices or your DIY projects on Raspberry Pi for instance.
New and Updated Functions
We have added a new set of functions to support Elliptic-Curve Cryptography:
If you need to compress lists of longs, you can now use the
VARINT-> functions. They make use of the varint encoding which can greatly reduce the number of bytes needed to represent such lists.
Most Math functions now work on lists. Unary functions can be applied to each element of the list:
Binary functions can be applied to each element of a list and a single value:
MULTPLYEXACT. Associative functions can also be applied to a single list:
Four new conversion functions allow you to manipulate geocells and GeoShapes:
For wrapping multi-value GTSs, you can now use
WRAPMV! which is the uncompressed version of
WRAPMV in the same way
[! is the uncompressed version of
[ in the GTS input format.
You can now apply
ASREGS directly to a macro, which is equivalent to
DUP VARS ASREGS.
To get the size of a PGraphics or PImage object, you can use the new
UNLIST works on Lists and
UNMAP works on Maps, we added
UNSET which works on Sets.
Warp 10 now boots faster than before, thanks to an optimization where the JVM is only launched once to read the configuration files before running Warp 10.
List creation in WarpScript is now faster and less memory hungry by avoiding a needless copy.
The parsing of hexadecimal data on
/update should be faster thanks to the use of
charAt instead of
Stay close, we'll soon write a post about the Macro value encoder.
Warp 10 2.6.0
Learn how to embed Java library or C code in a WarpScript/FLoWS function to enlarge the WarpLib function corpus.
Ever wonder how to perform HTTP requests from WarpScript? Depending on your needs, here are 3 ways to achieve it.
SHM is a Warp 10 extension that allow to keep data in RAM. It speeds up data scientist job!