+1 this a solid set of features. Looking at the project now you all have made exceptional strides and I think this is a great time to cut a 1.0 release
On Mon, Jul 27, 2026, 4:07 PM Marton Szasz <[email protected]> wrote: > Thanks for initiating the discussion, and taking on the RM role, Martin! > I agree it's time to do 1.0, there are so many exciting new features. > > We've had countless private discussions about release scope and goals > before, so I just want to add my comments to a few changes: > > - Stable C based API: Here we're committing to both API and ABI > stability on minifi-api.h. This is also how compiled extensions using > the new Rust or C++ extension API / bindings will continue to load in > future versions, until the next ABI break, even if they may no longer > build with newer API versions. Extension binaries will finally be > portable between MiNiFi C++ versions on the same platform. > - C++ bindings based on Stable API: The goal here was to make it easy to > port existing extensions to the stable ABI, with minimal code changes. > - Rust bindings based on Stable API: The "reimagined" standard > processors are for testing only, not replacing existing standard > processors. > - Safer Configuration Handling: Modified conf/*.properties files are > loaded like before, but on Windows, the MSI update works best if all > installed files are left unchanged, and the added flexibility can help > config management on Linux too. > - removed ExecutePythonProcessor: In addition to the NiFi Python > processor API, the older MiNiFi C++ Python processor API is still > supported too, when registered separately as a new processor, but it's > no longer possible to run them through the ExecutePythonProcessor > processor. > > I'm not aware of any blockers, let's get the new release out! > > Thanks, > Marton > > On 7/27/26 7:09 PM, Adam Debreceni wrote: > > +1 > > Thank you for RMing! > > > > On Mon, Jul 27, 2026 at 6:31 PM Matt Burgess <[email protected]> > wrote: > > > >> +1 from me, looking forward to this awesome release! Thanks for > >> RM'ing Martin! > >> > >> On Mon, Jul 27, 2026 at 10:50 AM Martin Zink <[email protected]> > >> wrote: > >> > >>> Hey Community, > >>> > >>> I’d like to initiate a discussion about the next release of MiNiFi C++. > >> The > >>> last release was in October, and I believe it is time to officially > >> propose > >>> our *first stable 1.0.0 release*. > >>> > >>> I would be happy to take on RM duties for this release. > >>> > >>> This is a major milestone for the project. The most significant > highlight > >>> is the introduction of a *stable API with a full backward compatibility > >>> guarantee*. This API (written in C) allows developers to write > processors > >>> and controller services in C/C++, Rust, or any FFI-capable language > with > >>> guaranteed ABI compatibility. > >>> > >>> *Notable features and improvements:* > >>> > >>> > >>> - *Stable C API:* A single C header API that allows any FFI-capable > >>> language to interoperate with MiNiFi C++ with minimal overhead. Any > >>> extension built using the API will load with newer MiNiFi builds > >> without > >>> needing to be rebuilt > >>> - *C++ bindings based on Stable API: *GCP, Kafka, Llamacpp > extensions > >> (7 > >>> processors and 1 controller service) have already been ported to > use > >> the > >>> stable API > >>> - *Rust bindings based on Stable API: *We've also implemented the > >> stable > >>> API in Rust and reimagined several standard processors to showcase > it. > >>> There are already new Rust-based extensions in PRs waiting to be > >> merged > >>> - *Revamped Site-to-Site:* Added Zlib compression, optional input > >> ports, > >>> output-port fixes, and robust error handling. > >>> - *Expanded Cloud Auth & Support:* Introduced Azure Credential > >>> Configuration Strategy (Managed/Workload/Default), GCP Application > >>> Default > >>> Credentials, and HTTP proxy controller service support for AWS, > Azure, > >>> and > >>> GCP > >>> - *Python Enhancements:* Python NiFi-API processors can now run in > >>> parallel via @concurrentTasks > >>> - *Safer Configuration Handling:* Runtime configuration files are > no > >>> longer modified directly; overrides now live safely in > *.properties.d/ > >>> - *RunLlamaCppInference* now accepts images alongside text prompts > >>> > >>> Changes and Improvements > >>> > >>> - Record Reader/Writer support has been added to MQTT processors > >>> - AWS S3 now uses the AWS CRT S3 client for improved performance > >>> - RocksDB small-DB memory optimization is now enabled by default > >>> - C2 assets now stream directly to disk with a configurable HTTP > >> timeout > >>> - Python Expression Language (EL) improvements > >>> - Separated state managers for schedule and trigger threads to > avoid > >>> race conditions in stateful processors > >>> - Fixed deadlocks and crashes occurring during concurrent C2 flow > >>> updates and start/stop commands > >>> > >>> Breaking Changes > >>> > >>> - SSL contexts can no longer be loaded from the flow config; users > >> must > >>> use an SSL controller service > >>> - Azure Managed Identity Credentials property has been replaced by > >>> the Credential > >>> Configuration Strategy > >>> - AWS S3 multipart upload behavior may differ slightly due to the > >> switch > >>> to the CRT client > >>> > >>> Removed > >>> > >>> - Unused and unmaintened OpenCV extension (CaptureRTSPFrame and > >>> MotionDetector) > >>> - ExecutePythonProcessor (superseded by NiFi-API Python processors) > >>> - Legacy bootstrap.sh and per-distro shell scripts (use Python > >> bootstrap > >>> or Conan instead). > >>> > >>> Do you agree it is time for our 1.0.0 release? Are there any blockers > or > >>> open PRs that we should definitely include in this release? > >>> > >>> Thanks, > >>> > >>> Martin Zink > >>> [email protected] > >>> >
