+1, thanks for RMing.

I think we should follow the progression of the new NiFi Python API with the MiNiFi C++ 1.0 milestone releases, and when NiFi 2.0 is out, we could release MiNiFi C++ 1.0, and commit to backwards-compatibility to this  API.

I'd exclude the C++ API, and the old MiNiFi C++-style Python and Lua scripting APIs out of the backwards compatibility commitment.

Thanks,
Marton

On 4/16/24 6:41 PM, Pierre Villard wrote:
I'm a +1 with this approach. Being able to use the Python extensions in
MiNiFi cpp is great!

Thanks,
Pierre

Le mar. 16 avr. 2024 à 18:39, Gábor Gyimesi<gamezb...@gmail.com>  a écrit :

Hi community,

I'd like to initiate a discussion about the next release of MiNiFi C++. The
last release was more than seven months ago, and there have been many new
features, bug fixes and stability improvements committed to the development
branch since then: 107 tickets closed, over 122 commits as of today.

I would be happy to take on RM duties for this release.

Notable features and improvements since the 0.15.0 release:

New notable features:
- Added support for using NiFi 2.0 Python processors in MiNiFi C++
   - This also includes several improvements to the previous MiNiFi style
python processors, like additional property options, custom relationships
and virtualenv support
- Added new python based multiplatform bootstrap script
- Added encryption support for sensitive properties in flow configuration
- Releasing Windows installer now can be done (and will be done) under the
Apache license
- Added support for service installation on MacOS
- Added C2 debug command to MiNiFi Controller
- Added support for setting MiNiFi properties from command line
- Added system load average field to C2 and Prometheus metrics
- Added support for manually configuring RocksDB options
- Added custom delimiter property for ListenTCP processor
- Added bandwidth limit properties to InvokeHTTP processor
- Added JSON flow configuration examples

New processors:
- Added PutSmb, FetchSmb and ListSmb processor for SMB networking protocol
support
- Added PushGrafanaLokiGrpc and PushGrafanaLokiREST processors for pushing
logs to Grafana Loki
- Added JoltTransform to use Jolt JSON transformations
- Added SplitText processor
- Added AttributeRollingWindow processor

Changes and improvements:
- Dropped support for disabling peer verification in InvokeHTTP
- Corrupt flow files are now filtered to avoid errors in the flow
- Using administrative yield duration instead of onschedule retry interval
in scheduling adjusting to NiFi's functionality
- Fixed high disk IO usage issue with MergeContent
- Fixed the site-to-site transfer or large files
- Fixed memory leak caused by unused loggers
- Fixed yielding processors to still respect scheduling period

Upgraded dependencies:
- Upgraded OpenSSL to version 3.3.0
- Upgraded AWS SDK to version 1.11.219 with support for new AWS regions
- Upgraded libuvc to version 0.0.7
- Upgraded docker base image to alpine:3.18
- Upgraded Sol2 to version 3.3.0

With the current maturity level of the project and with the support for
NiFi 2.0 style python processors and json flow configuration, I suggest
releasing it as version 1.0.0-M1 milestone release.

Do you agree it is time for a new release? Do you agree with the suggested
version? Are there any blockers that we should definitely include in this
release?

Thanks,
Gabor

Reply via email to