Features
Source & Sink
* feat: support multiple neuron connection by ngjaying in https://github.com/lf-edge/ekuiper/pull/1643
* feat(io): support zlib compression/decompression in MQTT by ngjaying in https://github.com/lf-edge/ekuiper/pull/1688
* feat(source): support oAuth for httppull by ngjaying in https://github.com/lf-edge/ekuiper/pull/1659
* feat(sink): enable oAuth for rest sink by ngjaying in https://github.com/lf-edge/ekuiper/pull/1662
SQL & Graph
* feat: add coalesce function by Lieoxc in https://github.com/lf-edge/ekuiper/pull/1670
* feat(func): add compress function by ngjaying in https://github.com/lf-edge/ekuiper/pull/1681
* feat(func): add json convert func and bugfix for compress func by ngjaying in https://github.com/lf-edge/ekuiper/pull/1685
* feat(func): add decompress and decode func by ngjaying in https://github.com/lf-edge/ekuiper/pull/1687
* feat(func): add gzip, flate compressor/decompressor by carlclone in https://github.com/lf-edge/ekuiper/pull/1697
Extension
* feat(portable): support conda env for python plugin by ngjaying in https://github.com/lf-edge/ekuiper/pull/1640
* feat(conf): allow to set portable init timeout value by ngjaying in https://github.com/lf-edge/ekuiper/pull/1668
Operation
* feat(conf): Partial data export/import by superrxan in https://github.com/lf-edge/ekuiper/pull/1672
Improvements
* opt: update meta data by ngjaying in https://github.com/lf-edge/ekuiper/pull/1623
* refactor: optimize context template parsing and httppull config by ngjaying in https://github.com/lf-edge/ekuiper/pull/1657
* refactor(io): reconstruct the packages for io connectors by ngjaying in https://github.com/lf-edge/ekuiper/pull/1661
* feat(http): sink template support and doc by ngjaying in https://github.com/lf-edge/ekuiper/pull/1663
Build & CI
* build(deps): bump github.com/prometheus/client_golang from 1.11.0 to 1.11.1 by dependabot in https://github.com/lf-edge/ekuiper/pull/1634
* build(deps): bump golang.org/x/sys from 0.0.0-20210510120138-977fb7262007 to 0.1.0 in /sdk/go/example/mirror by dependabot in https://github.com/lf-edge/ekuiper/pull/1649
* build: Use go workspace and update modules by ngjaying in https://github.com/lf-edge/ekuiper/pull/1652
* build: add kubernetes tools to workspace by ngjaying in https://github.com/lf-edge/ekuiper/pull/1655
Docs
* doc: add more description for switch node by ngjaying in https://github.com/lf-edge/ekuiper/pull/1624
* doc: add tutorial for tfLite plugin by superrxan in https://github.com/lf-edge/ekuiper/pull/1629
* doc: update neuron ekuiper connection guide by ngjaying in https://github.com/lf-edge/ekuiper/pull/1656
* doc: update plugin tutorial doc by Rui-Gan in https://github.com/lf-edge/ekuiper/pull/1678
* doc: add docs for partial export/import api by superrxan in https://github.com/lf-edge/ekuiper/pull/1680
Fixes
* fix: graph api small fixes by ngjaying in https://github.com/lf-edge/ekuiper/pull/1619
* fix(portable): adapt to import data by ngjaying in https://github.com/lf-edge/ekuiper/pull/1620
* fix(portable plugin): support portable plugin load and run when ekuip… by superrxan in https://github.com/lf-edge/ekuiper/pull/1621
* fix(ut): add more ut for rule stream restapi by superrxan in https://github.com/lf-edge/ekuiper/pull/1630
* doc update and fixes by ngjaying in https://github.com/lf-edge/ekuiper/pull/1631
* readme: fix link to quick start by rnovatorov in https://github.com/lf-edge/ekuiper/pull/1632
* doc: fix deadlink and typos in readme by ngjaying in https://github.com/lf-edge/ekuiper/pull/1633
* fix(source): remedy redis source test connection support by ngjaying in https://github.com/lf-edge/ekuiper/pull/1651
* test: add ut for multiple neuron instances by ngjaying in https://github.com/lf-edge/ekuiper/pull/1654
* doc: fix getting started url by wonderl17 in https://github.com/lf-edge/ekuiper/pull/1660
* fix(doc): clarify eKuiper manager installation by ngjaying in https://github.com/lf-edge/ekuiper/pull/1665
* fix(config): add api to get install script by superrxan in https://github.com/lf-edge/ekuiper/pull/1664
* fix(rule): update rule should return topo problem by ngjaying in https://github.com/lf-edge/ekuiper/pull/1666
* fix(filter): window filter must continue running by ngjaying in https://github.com/lf-edge/ekuiper/pull/1667
* fix(doc): fix some problems in the doc by Rui-Gan in https://github.com/lf-edge/ekuiper/pull/1671
* fix(doc): translate the English doc in the plugin overview by Rui-Gan in https://github.com/lf-edge/ekuiper/pull/1674
* fix(portable): better wrong plugin handling by ngjaying in https://github.com/lf-edge/ekuiper/pull/1673
* fix(meta): fix meta json for extensions and internals by ngjaying in https://github.com/lf-edge/ekuiper/pull/1675
* fix(api): add import statusCode response for rest api by superrxan in https://github.com/lf-edge/ekuiper/pull/1679
* fix(fvt): add fvt test for partial export/import rest api by superrxan in https://github.com/lf-edge/ekuiper/pull/1683
* test(ut): add ut for ConfigOperator by Rui-Gan in https://github.com/lf-edge/ekuiper/pull/1686
* fix (function): make aggregate functions return the same value as the SQL for empty Windows by Rui-Gan in https://github.com/lf-edge/ekuiper/pull/1690
* fix(*): fix and optimization of meta and doc by ngjaying in https://github.com/lf-edge/ekuiper/pull/1691
* fix(doc): fix problems in doc by carlclone in https://github.com/lf-edge/ekuiper/pull/1693
* fix(meta): add infux2 and remove file in sink plugin by superrxan in https://github.com/lf-edge/ekuiper/pull/1695
* fix(doc): fix dead links and add compression method by ngjaying in https://github.com/lf-edge/ekuiper/pull/1700
* fix(fvt): add code owners and rename management fvt test by superrxan in https://github.com/lf-edge/ekuiper/pull/1694
* fix(func): latest func should not return current value if condition fails by ngjaying in https://github.com/lf-edge/ekuiper/pull/1706
* fix(meta): unify http oauth key to small case by ngjaying in https://github.com/lf-edge/ekuiper/pull/1707
* fix(funcs): fix math func errors by ngjaying in https://github.com/lf-edge/ekuiper/pull/1709
* chore(io): http oauth validation to tolerate manager default setting by ngjaying in https://github.com/lf-edge/ekuiper/pull/1711
Deprecation
* Deprecate EdgeX source/sink ZeroMQ message bus support, will remove in the next release
New Contributors
* rnovatorov made their first contribution in https://github.com/lf-edge/ekuiper/pull/1632
* dependabot made their first contribution in https://github.com/lf-edge/ekuiper/pull/1634
* wonderl17 made their first contribution in https://github.com/lf-edge/ekuiper/pull/1660
* Lieoxc made their first contribution in https://github.com/lf-edge/ekuiper/pull/1670
* Rui-Gan made their first contribution in https://github.com/lf-edge/ekuiper/pull/1671
* carlclone made their first contribution in https://github.com/lf-edge/ekuiper/pull/1693
**Full Changelog**: https://github.com/lf-edge/ekuiper/compare/1.8.0...1.9.0