* NIFI-5302 Added Support for Client Credentials Flow with OIDC
- Added JwtDecoder implementation supporting delegation based on Issuer
* NIFI-5302 Added Client Credentials Grant Type section to OIDC docs
* NIFI-5302 Replaced deprecated OkHttp3ClientHttpRequestFactory
This closes#8644.
- Updated Controller.py main function to join non-daemon threads avoiding RuntimeError on Python 3.12
- Replaced deprecated find_module method with find_spec
- Updated documentation to include support for Python 3.12
Signed-off-by: Joseph Witt <joewitt@apache.org>
- Moved nifi-hive-test-utils to nifi-iceberg-test-utils
- Removed nifi-hive-bundle and include-hive3 profile
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>
This closes#8588.
* NIFI-11443 Routed Python Framework Logging to SLF4J
- Changed Python logging to use standard output stream
- Adjusted Python logging format for simplified processing
- Updated PythonProcess to pipe standard error and standard output streams to reader
- Added Log Reader command with Virtual Thread for each Python Process
- Removed Python log properties from NiFi Properties configuration
Fixed issue in NiFiPythonGateway that stems from the fact that the thread adding an object to the JavaObjectBindings was not necessarily the thread removing them. The algorithm that was in place assumed that the same thread would be used, in order to ensure that an object could be unbound before being accessed. The new algorithm binds each new object to all active method invocations and only unbinds the objects after all method invocations complete, regardless of thread. Additionally, found that many method calls could create new proxies on the Python side, just for getter methods whose values don't change. This is very expensive, so introduced a new @Idempotent annotation that can be added to interface methods such that we can cache the value and avoid the expensive overhead.
This closes#8456
Signed-off-by: David Handermann <exceptionfactory@apache.org>
- Added Spring Security PKCE OAuth2 Request Customizer to standard Resolver
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>
This closes#8324.
- Added some Use Case docs for Python processors and updated Runtime Manifests to include Python based processors as well as Use Case/MultiProcessorUseCase documentation elements. Refactored/cleaned up some of the Python code and added unit tests.
- Added python-unit-tests profile and enabled on Ubuntu and macOS GitHub workflows
This closes#8253
Signed-off-by: David Handermann <exceptionfactory@apache.org>
- Updated Expression Language Guide to note the available system property providing the current framework version according to the Framework NAR version
This closes#8101
Signed-off-by: David Handermann <exceptionfactory@apache.org>
- Added nifi-framework-status-history-shared module for common components
- Added include-questdb build profile for including the QuestDB NAR
- Upgraded QuestDB from 7.2 to 7.3.7 for NIFI-12435
Signed-off-by: Bence Simon <bsimon@apache.org>
This closes#8141
Documented difference between Active Threads in Status bar versus as shown by Node in Cluster Summary
This closes#7978
Signed-off-by: David Handermann <exceptionfactory@apache.org>
Created new python processors for text embeddings, inserting into Chroma, querying Chroma, querying ChatGPT, inserting into and querying Pinecone. Fixed some bugs in the Python framework. Added Python extensions to assembly. Also added ability to load dependencies from a requirements.txt as that was important for making the different vectorstore implementations play more nicely together.
Excluded nifi-python-extensions-bundle from GitHub build because it requires Maven to use unpack-resources goal, which will not work in GitHub because it uses mvn compile instead of mvn install
- ParseDocument
- ChunkDocument
- PromptChatGPT
- PutChroma
- PutPinecone
- QueryChroma
- QueryPinecone
NIFI-12195 Added support for requirements.txt to define Python dependencies
This closes#7894
Signed-off-by: David Handermann <exceptionfactory@apache.org>
- Removed support for Year field in Cron Expressions
- Changed numeric Day of Week field from starting with 1 to starting with 0
- Removed Quartz and C3P0 from Notice files
This closes#7951
Signed-off-by: Mike Moser <mosermw@apache.org>
- Moved Hadoop and Parquet NARs to include-hadoop
- Moved HBase NARs to include-hbase
- Moved Kudu NAR to include-kudu
- Moved Solr NAR to include-solr
This closes#7942.
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>
- Replaced Groovy implementation with Java classes
- Added StandardEncryptConfig and RegistryEncryptConfig command implementations
- Added FileTransformer interface with implementations for configuration files
- Changed -A to -u for output authorizers.xml when targeting Registry
- Removed --newFlowProvider option not used
- Removed --translateCli option
- Removed --decrypt option
Signed-off-by: Joe Gresock <jgresock@gmail.com>
This closes#7901.
* NIFI-12206 Refactored Flow History using JetBrains Xodus
- Replaced H2 Database Engine with JetBrains Xodus for persistent storage of FlowConfigurationHistory
- Added EntityStoreAuditService implementation using Xodus PersistentEntityStore
- Removed nifi.h2.url.append from properties
- Created NIFI-12203 to evaluate issues with flow comparison surfaced in JoinClusterWithDifferentFlow
This closes#7661
Signed-off-by: David Handermann <exceptionfactory@apache.org>