Releases: Chaffelson/nipyapi
Add Parameter Context Support...
- Add support for Parameter Contexts in parameters.py with appropriate tests and fixtures
- Add greedy control support to canvas.get_processor_type
- Improve get by ID behavior to correctly return None when an invalid ID is submitted (previously raised a 404)
- Add utils.enforce_min_version to improve controls when a feature is not available in older versions of NiFi as Parameter Contexts were only introduced in 1.10.0
Update release process in devnotes.rst with additional checks
Rework error raising to provide raise_from support inline with newer Python best practices, added future to requirements.txt in support of this for Py2 and Py3 intercompatibility
Add checks to canvas.create_processor for correct user submissions
Add canvas.get_controller_type to fetch a single controller type, previously only a listing option was provided
Minor test case and style improvements
Add refresh default to canvas.update_process_group
Add convenience methods to parameters.py to assign and remove a Parameter Context to a Process Group, with appropriate tests
Minor coding style improvements
NiFi-Registry 0.5.0 and Bugfixes
- Updated NiFi-Registry Client to 0.5.0
- It is now possible to have group level policies applied instead of just user
- Corrected security.bootstrap_policies for Registry Proxy commands
- Updated docker helper versions to latest
- Implemented utils.rest_exceptions to wrap normal Rest exception raising
- Modified Linting ignore list to remove noise
- Linting fixes for relevant complaints
- Corrected Exception testing to reflect tidied up exception raising
- Version pegging changes to continue support for Py2 and Py3 until deprecation of Py2 in 2020
NiFi-1.8.0 NiFi-Registry-0.3.0 Controller and Connections
Updated NiFi client for 1.8.0
Updated NiFi-Registry client for 0.3.0
Added Controller Service Management (experimental)
Added Connections Management (experimental)
New Project Logo! Kindly provided by KDoran
Fixed several bugs around how the special root Process Group is handled when listing all Project Groups for various methods
- Various backwards compatibility improvements for handling calls going back to NiFi-1.1.2
- Various speedups for NiFi-1.7+ using descendants functionality to recurse the canvas
- Ability for various methods to specify a Process Group to use as the parent instead of always using root
- Better username/password handling in security.py and config.py
- Support for global ssl_verify squashing in config.py
- Added swagger for 1.8.0 to project resources against potential future validation requirements
- Added versioned deployment convenience functions for finding sensitive and invalid processors, should make it easier to update properties when importing to a new canvas
- Added summary options to several calls to return simple objects suitable for quick processing rather than full objects that need to be parsed
- Added utils.infer_object_label_from_class to make it easier to create connections between objects
- Updated compound methods like delete_process_group to also handle connections and controllers elegantly if requested
- Various codestyle and testing improvements
Python3.7 support and SDLC improvements
- Added steps to fdlc demo to show sensitive and invalid processor testing and behavior during deployment
- Added list_sensitive_processors and list_invalid_processors to nipyapi.canvas
- Added simple caching capability for certain calls to nipyapi.config
- Added placeholder tests for new functionality against next refactoring and integration run
- Missing assertion test in get_process_group_status
- deprecated use of tests_require setup.py as current best-practice
- Update ruamel.yaml to support Python 3.7 with passing tests
- Added test for docker image already present to avoid excessive downloading
- Added option to recurse from a given pg_id, rather than always from root, to several canvas functions
- Added default verify_ssl and ssl error squashing to config for user convenience
- Added filter option to specify whether exact or greedy matching should be used, still greedy by default
- Added hard logout when changing endpoint to ensure tokens are refreshed
- Updated tests
- updating travis to build all branches
- Fix travis for Python 3.7 testing support
- Fix edge case in delete process group where templates stop the revision from being refreshed
- Fixed test case to decode string correctly in old python versions
- Fixed race condition in test where not all processors started before test executes
- bugfix for missing status value in Processor DTO
- Updating pylint to ignore import errors on standard packages
- added logging to docker image control
- Bump version: 0.10.3 → 0.11.0
- Install requirements reset
NiFi-1.7.1 and NiFi-Registry-0.2.0 support
Key Changes
- Reworked NiFi-Registry pytest setup to support multiple versions
- Changed schedule_processor to use component. rather than status. tests as they are more reliable
- Swtiched Docker configs to use explicit versions instead of latest for more consistent behavior across environents
Version Changes
- Deprecated testing against NiFi-1.5.0 due to host headers issue - recommend users to upgrade to at least NiFi-1.6.0
- Deprecated testing against NiFi-1.4.0 as superfluous
- Added testing for NiFi-1.7.1 and NiFi-Registry-0.2.0
Updated NiFi client to 1.6.0 release
Potentially Breaking Changes
Users should check the updated documentation and ensure their tests pass as expected
- Several NiFi client API calls were inconsistently CamelCase'd and have been renamed in the upstream NiFi release, I have honoured those changes in this release. If you use them please check your function names if you get an error
New Features
- Added functionality to Deploy a versioned flow to the canvas. This was an oversight from the 0.8.0 release. Function is creatively named ./versioning/deploy_flow_version
Other Notes
- Updated the Issue Template to also ask how urgent the problem is so we can priortise work
- Where possible we have switched to using the Apache maintained Docker containers rather than our own, there should be no impact to this unless you were relying on some edge part of our test compose files