Skip to content

Releases: lf-edge/ekuiper

eKuiper 1.4.3 release

03 Mar 06:46
00e72c5
Compare
Choose a tag to compare

Overview

eKuiper 1.4.3 is a maintenance version that fixes several issues.

Fixes

  • Fix edgex source can not subscribe same topics for multiple rules when using share connection problem.
  • Fix edgex source can not connect to mqtt broker problem.
  • Fix mqtt source can not subscribe same topics for multiple rules when using share connection problem.
  • Fix rule hang problem when python plugin has exited.
  • Fix eKuiper can not run in armv7 problem.
  • Fix tdengine plugin crash problem.
  • Fix omitEmpty can not take effect when sendSingle is set problem.
  • Return error when replace stream sql does not match name

Docs

eKuiper 1.4.2 release

17 Jan 10:00
d7457bc
Compare
Choose a tag to compare

Overview

eKuiper 1.4.2 is a minor version that fixes several issues.

Fixes

  • Fix a portable plugin function communication disorder problem

  • Cache isAggregate call result for portable plugin functions

  • Fix parseDynamicProp syntax conflict with mqtt topic that start with $ problem

Docs

eKuiper 1.4.1 release

06 Jan 03:43
Compare
Choose a tag to compare

Overview

eKuiper 1.4.1 fixed several defects and add some properties to stabilize the product . Firstly we provided an official docker image to help portable python plugins' develop and deployment. We also did some clean up work for portable plugins runtime. Secondly we optimized SQL runtime to reduce CPU consumption. Thirdly, We support Object Type for EdgeX so users can define complex value type for devices. For example, user can define the device value in json format. Lastly, we cooperate closely with eKuiper-manager to make the eKuiper UI more easy use.

Features

  • Support Object Type for EdgeX so that users can use complex value type.
  • Support certification based authentication for built-in http source/sink
  • Optimize SQL runtime to reduce CPU consumption

Fixes

  • Avoid panic when call window function in count window
  • Fix anonymous field name duplicate problem
  • Return detailed error message for installation failure in portable plugin
  • Backend support for UI which makes UI more user friendly

Docs

eKuiper 1.4.0 release

02 Dec 08:51
Compare
Choose a tag to compare

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
  • 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

Thanks

eKuiper 1.4.0-beta.1 release

26 Oct 03:50
Compare
Choose a tag to compare
Pre-release

Introduction

As a big milestone, eKuiper v1.4.0 will bring many exciting features into the product. User can start to try some of these features in eKuiper 1.4.0-beta.1. 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 go and python to compose a plugin and the system can be easily extended to more language support. We enable the built-in support of flexible rule pipeline by 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.

Features

  • 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 overwritten via environment variables, please check the doc for more info.
  • Add portable plugin support, user can develop plugins in multiple languages
  • Support source/sink to share connections for mqtt or edgex, please check this for more info
  • Add memory source and sink, please check this for more info

Fixes

  • Mqtt source should stop executing after errors
  • Update tdengine client version to 2.2.0.5

Docs

Thanks

eKuiper 1.4.0-beta.0 release

18 Oct 02:28
Compare
Choose a tag to compare
Pre-release

Introduction

As a big milestone, eKuiper v1.4.0 will bring many exciting features into the product. User can start to try some of these features in eKuiper 1.4.0-beta.0. 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 go and python to compose a plugin and the system can be easily extended to more language support. We enable the built-in support of flexible rule pipeline by 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.

Features

  • 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 overwritten via environment variables, please check the doc for more info.
  • Add portable plugin support, user can develop plugins in multiple languages
  • Support source/sink to share connections for mqtt or edgex, please check this for more info
  • Add memory source and sink, please check this for more info

Fixes

  • Mqtt source should stop executing after errors
  • Update tdengine client version to 2.2.0.5

Docs

Thanks

eKuiper 1.3.1 version

02 Sep 02:40
Compare
Choose a tag to compare

Overview

eKuiper 1.3.1 fixed several defects and add or enable some properties to stabilize the product . Firstly, we fixed some issues on sql runtime and add more unit test coverage. Addtionally, this release also enabled some stream definition options to broader scenarios, such as timestamp, strictValidation. We also introduced messageType and topicPrefix property for edgeX sink to allow publish to edgeX message bus as a device. Lastly, we updated the LF edge workplace invitation address, so new comers can join the LF edge and talk to us in eKuiper channel !

Features

  • Add messageType and topicPrefix property to edgex sink to support to publishing to EdgeX message bus like a device. We also update the doc to elaborate all kinds of edgex sink usage scenario.

Fixes

  • Avoid panic for some function call such as json_path_query when passing nil parameter

  • Remove unnecessary console log prints

  • Set timestamp format property in processing time mode

  • Fix redis plugin issue when using with edgex and release the right plugin

  • Fix config partially missing problem in helm chart

  • Graceful error message when server fails to start

  • Enable strictValidation=false in preprocessor to remove requirement check for all fields

  • Rest sink close body when response parsed to avoid memory leak

  • SQL

    • Fix inner join for multiple values issue
    • Fix cross join issue when one table is null
    • Fix some multiple join issues
    • Add more UT for join operations
    • Fix some alias problem when the alias name is the same as a json field
    • Fix meta(*) does not select all problem when another meta(col) is using in other clauses like where
    • Add nil check for string functions
    • Add runtime check for substring function index to avoid index out of bound panic
    • Fix index expression evaluation problem when the expression is a field ref and did not referred in other SQL clause
    • Make window_start() and window_end() to be non-aggregate function so that they can be used in group by clause

Docs

Thanks

eKuiper 1.3.0 version

12 Aug 02:53
Compare
Choose a tag to compare

Overview

eKuiper 1.3.0 refactors the project to comply to LF edge standard including renaming the module name, project layout and adding copyright statements. We also refactor the build and CI scripts to migrate the docker images and rename the artifacts etc. Moreover, we provide a lot of new features for the SQL runtime and the EdgeX support.

Breaking Changes

  • Project module, layout and package refactor. The plugins must be revised to import the new module of eKuiper and adapt to the package change.
  • Move docker images lfedge organization: lfedge/ekuiper and lfedge/ekuiper-kubernetes-tool
  • Refactor ui meta API

Features

Fixes

  • Refactor sqlite KV store to prevent errors when creating hundreds rules/streams simultaneously
  • Fix influxdb plugin for multiple instances
  • MQTT source: Fix resubscription failure when reconnecting
  • Clean expired checkpoint memory and storage
  • Clean checkpoint store when deleting rule
  • Reduce the docker image size
  • Close dynamic buffer in source node when source node deleted
  • Fix memory leak in httppull source

Docs

  • Updates to rename kuiper to eKuiper
  • Update EdgeX v2 related doc
  • Update EdgeX source tutorial
  • Add tutorial for eKuiper and OpenYurt integration
  • Update plugin devekopment tutorial
  • Update plugin download path
  • Update contributing instruction/issue templates/meeting info

Thanks

  • @tixff provides a fix for the mqtt source
  • @rwadowski provides a fix to refactor sqlite kv store
  • @feng-crazy provides redis sink plugin

eKuiper 1.3.0 beta version

22 Jul 07:37
Compare
Choose a tag to compare
Pre-release

Overview

eKuiper 1.3.0 refactors the project to comply to LF edge standard including renaming the module name, project layout and adding copyright statements. We also refactore the build and CI scripts to migrate the docker images and rename the artifacts etc. We also provide a lot of new features for the SQL runtime and the EdgeX support.

Breaking Changes

  • Project module, layout and package refactor. The plugins must be revised to import the new module of eKuiper and adapt to the package change.
  • Refactor ui meta API

Features

  • Refactor alias mechanism and support more usage scenarios
  • Add window_start() and window_end() function
  • Support message type property for edgeX source to allow connect to message bus directly
  • Support more sink data template function
  • Support shared instance of source
  • Refactor SQL validation to refine aggregate related validation
  • Add copyright statement
  • Rename docker image

Fixes

  • Fix influxdb plugin for multiple instances
  • MQTT source: Fix resubscription failure when reconnecting
  • Clean expired checkpoint memory and storage
  • Clean checkpoint store when deleting rule
  • Reduce the docker image size

Docs

  • Update to rename kuiper to eKuiper
  • Update EdgeX v2 related doc
  • Add tutorial for eKuiper and OpenYurt integration

Thanks

  • @wb.lixinlin provides a fix for the mqtt source

eKuiper 1.2.1 version

25 Jun 05:49
Compare
Choose a tag to compare

Overview

eKuiper 1.2.1 supports EdgeX Ireland and adapts to EdgeX V2 API. This brings some breaking changes. Especially, the commonly used meta Device has now renamed to DeviceName, rules that refer to the meta must be updated with the new name. Additionally, EdgeX binary readings are now supported to read into eKuiper stream. And Kuiper byte data can also be sinked to EdgeX binary reading.

Since the project has joined LF Edge and renamed to eKuiper, we also update the documentations to adopt the new name.

Features

  • EdgeXSource and EdgeXSink support EdgeX V2 API
  • EdgeXSource and EdgeXSink support EdgeX binary readings

Fixes

  • Fix parse error for subtraction operator in some condition
  • Allow short-circuit for logical operation
  • Fix the join calculation problem when joined streams have multiple tuples
  • Fix sink meta API problem when a rule has multiple sinks
  • Build
    • Refactor plugins and tools to submodules
  • Error Message Fixes
    • Refine error messages for get rules API
    • Do not print nil error when closing rule normally
  • Documentation fixes
    • Rename Kuiper to eKuiper
    • Fix incorrect port in CLI/REST examples
    • Fix incorrect translation in the Chinese version windows doc

Thanks

  • @ccb1900 provides a fix for the documentation