eKuiper 1.4.0 release
Introduction
As a major release, eKuiper v1.4.0 brings many exciting features into the product. We introduce portable
plugin system to ease the development. build and deployment of plugin in addition to the native go plugin. Users can now use both go and python to compose a plugin and the system will be extended to more languages support in the future. We enable the built-in support of flexible rule pipeline by in-memory source and sink. Additionally, we extract a standalone connection layer(mqtt and edgeX now) so that the source, sink or user's plugin can share a connection instance to avoid connection overhead, which is required to connect to secure edgeX message bus.
Features
- Add portable plugin support, user can develop plugins in multiple languages
- portable plugin intrduction
- go sdk
- python sdk
- plugin develop help tool
- Support source/sink to share connections for mqtt or edgeX, please check this for more info
- Support secured edgeX sink by shared connection configuration since edgeX Jakarta, please check this for more info
- Add memory source and sink, please check this for more info
- KV storage implementation is now configurable. Provide redis as an alternative KV storage option in addition to default sqlite, please check the doc for how to configure the storage.
- eKuiper configuration can be overridden via environment variables, please check the doc for more info.
- Support JWT RSA256 Token authentication for rest API
- Support dynamic properties for some sinks such as mqtt sink dynamic topic, rest sink dynamic properties etc. Also export the context function to support dynamic properties so that customized plugin can also use dynamic properties.
- Retry mechanism now works for all sinks
Fixes
-
Mqtt source should stop executing after errors
-
Update tdengine client version to 2.2.0.5
-
Fix certification authentication bug in mqtt and http
-
Clean up the json description files of shipped sources, sinks and functions
-
Fix some SQL syntax validation issue
-
Return more message for get status when error happen
-
EdgeX sink support all type when meta is not specified
Docs
- Rule pipeline
- Portable Plugin
- Fix the typo in plugin management rest api
- Add connectionSelector property for mqtt/edgex source/sink
- Correct data compatibility comparison table
- Use JWT RSA256 Token authentication for rest api
- Add instructions on how to use share connection feature for edgeX Jakarta release
Thanks
- @rwadowski provides redis kv storage
- @rwadowski provides initial memory source/sink type
- @rwadowski provides config eKuiper by env variables