This is an automated email from the ASF dual-hosted git repository. lordgamez pushed a change to branch MINIFICPP-2277 in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git
omit 5b20de2ff Extract python virtualenv setup and move it to PythonCreator omit 9cf8175de Add comment for using quotes on Windows for std::system call omit ec16bd80c Review update omit 57cab2b4e Fix after rebase omit 2e5570f16 Enable virtualenv use and dependency install by default omit f9d49375a MINIFICPP-2277 Add virtualenv support for python processors add 7f37f62f5 MINIFICPP-1797 Python bootstrap (part 1) add ac9579453 MINIFICPP-2313 Fix Grafana Loki issues on Windows add 530e4dc7b MINIFICPP-2283 Create tool to encrypt sensitive properties in config.yml add 260c229fe MINIFICPP-2306 Filter out corrupt flowfiles during startup add 65c0bb743 MINIFICPP-2203 Add support for building Windows MSI without any redistributables included add 6611d508e MINIFICPP-2203 Add support for building Windows MSI without any redistributables included add 1d0ade9a1 MINIFICPP-2317 Fix openssl flag flipped in MINIFICPP-1797 add 60f17527f MINIFICPP-2308 Use zero-terminated strings in python binding interface add 328a5e7d8 MINIFICPP-2224 Drop support for disabling peer verification in InvokeHTTP add ba29f47c4 MINIFICPP-2318 Use libc++ in the clang CI build add 6b19266cb MINIFICPP-2277 Add virtualenv support for python processors add ebf924b3d Enable virtualenv use and dependency install by default add b7f9694c1 Fix after rebase add 45a72543e Review update add bcb62f163 Add comment for using quotes on Windows for std::system call add 7de1f019b Extract python virtualenv setup and move it to PythonCreator add 99359a0ed Review update This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (5b20de2ff) \ N -- N -- N refs/heads/MINIFICPP-2277 (99359a0ed) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. No new revisions were added by this update. Summary of changes: .github/workflows/ci.yml | 334 ++++++++++++--- .github/workflows/gcc13-compat.yml | 2 +- .gitignore | 2 + CMakeLists.txt | 84 ++-- CMakeSettings.json | 94 ---- CONFIGURE.md | 4 + PROCESSORS.md | 2 +- README.md | 42 +- Windows.md | 29 +- bootstrap.sh | 22 +- bootstrap/.gitignore | 3 + bootstrap/cli.py | 154 +++++++ bootstrap/cmake_parser.py | 74 ++++ bootstrap/main.py | 61 +++ bootstrap/minifi_option.py | 60 +++ bootstrap/package_manager.py | 318 ++++++++++++++ bootstrap/py_bootstrap.bat | 26 ++ bootstrap/py_bootstrap.sh | 26 ++ bootstrap/requirements.txt | 6 + bootstrap/system_dependency.py | 58 +++ bstrp_functions.sh | 6 +- centos.sh | 2 +- cmake/Abseil.cmake | 1 + cmake/ArgParse.cmake | 4 +- cmake/BuildTests.cmake | 2 +- cmake/BundledLibArchive.cmake | 22 +- cmake/BundledLibcURL.cmake | 6 +- cmake/MiNiFiOptions.cmake | 52 ++- cmake/PahoMqttC.cmake | 4 +- cmake/prep_for_win_package.cmake | 1 + conf/minifi.properties | 1 + controller/CMakeLists.txt | 3 - docker/test/integration/features/https.feature | 18 - encrypt-config/EncryptConfig.cpp | 116 +++-- encrypt-config/EncryptConfig.h | 38 +- encrypt-config/EncryptConfigMain.cpp | 63 ++- encrypt-config/FlowConfigEncryptor.cpp | 174 ++++++++ .../FlowConfigEncryptor.h | 22 +- encrypt-config/tests/ConfigFileEncryptorTests.cpp | 2 +- extensions/civetweb/CMakeLists.txt | 2 +- extensions/civetweb/tests/CMakeLists.txt | 2 +- extensions/coap/tests/CMakeLists.txt | 2 +- extensions/expression-language/CMakeLists.txt | 2 +- extensions/expression-language/Expression.cpp | 6 +- .../expression-language/tests/CMakeLists.txt | 4 +- .../tests/ExpressionLanguageTests.cpp | 4 +- extensions/grafana-loki/CMakeLists.txt | 18 +- extensions/grafana-loki/PushGrafanaLokiGrpc.cpp | 9 +- .../grafana-loki/tests/MockGrafanaLokiGrpc.h | 10 - .../grafana-loki/tests/PushGrafanaLokiGrpcTest.cpp | 44 +- .../grafana-loki/tests/PushGrafanaLokiRESTTest.cpp | 9 + extensions/http-curl/CMakeLists.txt | 2 +- extensions/http-curl/processors/InvokeHTTP.cpp | 3 +- extensions/http-curl/processors/InvokeHTTP.h | 3 +- extensions/http-curl/tests/CMakeLists.txt | 4 +- extensions/kubernetes/CMakeLists.txt | 2 +- extensions/libarchive/CMakeLists.txt | 4 +- extensions/openwsman/CMakeLists.txt | 2 +- extensions/pcap/CMakeLists.txt | 8 +- extensions/python/PythonDependencyInstaller.cpp | 53 ++- extensions/python/PythonDependencyInstaller.h | 9 +- extensions/python/PythonScriptEngine.cpp | 10 +- extensions/python/PythonScriptEngine.h | 4 +- extensions/python/types/Types.h | 29 +- extensions/rocksdb-repos/CMakeLists.txt | 2 +- extensions/rocksdb-repos/FlowFileRepository.cpp | 76 ++-- extensions/rocksdb-repos/FlowFileRepository.h | 7 + extensions/rocksdb-repos/tests/RepoTests.cpp | 145 +++++-- extensions/sftp/CMakeLists.txt | 2 +- extensions/sftp/tests/CMakeLists.txt | 4 +- extensions/sql/tests/SQLTestController.h | 2 +- extensions/sql/tests/SQLTestPlan.h | 2 +- .../standard-processors/tests/CMakeLists.txt | 4 +- libminifi/CMakeLists.txt | 4 +- libminifi/include/FlowFileRecord.h | 2 +- libminifi/include/core/FlowConfiguration.h | 2 +- libminifi/include/core/ProcessGroup.h | 2 + libminifi/include/core/StreamManager.h | 7 +- .../core/controller/ControllerServiceNode.h | 1 + .../include/core/flow/AdaptiveConfiguration.h | 2 + libminifi/include/core/flow/FlowSerializer.h | 5 +- libminifi/include/core/json/JsonFlowSerializer.h | 6 +- .../include/core/repository/FileSystemRepository.h | 33 +- libminifi/include/core/yaml/YamlFlowSerializer.h | 6 +- libminifi/include/properties/Configuration.h | 1 + libminifi/src/Configuration.cpp | 1 + libminifi/src/core/ProcessGroup.cpp | 8 + .../src/core/controller/ControllerServiceNode.cpp | 18 +- libminifi/src/core/flow/AdaptiveConfiguration.cpp | 6 + .../src/core/flow/StructuredConfiguration.cpp | 2 +- libminifi/src/core/json/JsonFlowSerializer.cpp | 35 +- .../src/core/repository/FileSystemRepository.cpp | 37 +- libminifi/src/core/yaml/YamlFlowSerializer.cpp | 35 +- libminifi/test/flow-tests/CMakeLists.txt | 2 +- libminifi/test/keyvalue-tests/CMakeLists.txt | 4 +- libminifi/test/unit/JsonFlowSerializerTests.cpp | 131 +++++- libminifi/test/unit/YamlFlowSerializerTests.cpp | 56 ++- msi/MergeModulesFeature.xml | 3 + msi/VSRedistributablesComponent.xml | 13 + msi/VSRedistributablesFeature.xml | 3 + msi/WixWin.wsi | 472 --------------------- msi/{WixWinMergeModules.wsi => WixWin.wsi.in} | 25 +- nanofi/CMakeLists.txt | 2 +- run_shellcheck.sh | 2 +- win_build_vs.bat | 16 +- 105 files changed, 2200 insertions(+), 1169 deletions(-) delete mode 100644 CMakeSettings.json create mode 100644 bootstrap/.gitignore create mode 100644 bootstrap/cli.py create mode 100644 bootstrap/cmake_parser.py create mode 100644 bootstrap/main.py create mode 100644 bootstrap/minifi_option.py create mode 100644 bootstrap/package_manager.py create mode 100644 bootstrap/py_bootstrap.bat create mode 100755 bootstrap/py_bootstrap.sh create mode 100644 bootstrap/requirements.txt create mode 100644 bootstrap/system_dependency.py create mode 100644 cmake/prep_for_win_package.cmake create mode 100644 encrypt-config/FlowConfigEncryptor.cpp copy extensions/python/PythonConfigState.h => encrypt-config/FlowConfigEncryptor.h (57%) create mode 100644 msi/MergeModulesFeature.xml create mode 100644 msi/VSRedistributablesComponent.xml create mode 100644 msi/VSRedistributablesFeature.xml delete mode 100644 msi/WixWin.wsi rename msi/{WixWinMergeModules.wsi => WixWin.wsi.in} (97%) mode change 100755 => 100644 win_build_vs.bat