Cogniflow pipeline engine (C++ core) with a thin Python package wrapper.
Project description
cf-pipeline-engine
The Cogniflow pipeline engine implemented in C++ (compiler, scheduler, runtime).
This folder is structured as a Python package for consistency with the other
cf_* components, even though the core implementation is native C++ and built
via CMake.
Build (CMake)
cmake -S . -B build
cmake --build build
Python package wrapper
The Python package is intentionally thin and provides access to the packaged native engine assets:
cf_pipeline_engine.cf_pipeline_v2_path()cf_pipeline_engine.cf_siggen_path()cf_pipeline_engine.cf_engine_include_path()cf_pipeline_engine.cf_type_registry_path()cf_pipeline_engine.resolve_cf_pipeline_v2_executable()
Published distribution name:
pip install cf-pipeline-engine
The published wheel installs:
bin/cf_pipeline_v2(.exe)bin/cf_siggen(.exe)bin/type_registry.v0.jsoninclude/*.h
Python CLI
The legacy standalone Python wrapper package has been retired. Its CLI surface
now lives in this cf_pipeline_engine package.
Direct invocation remains policy-gated by CF_ALLOW_DIRECT_ENGINE:
CF_ALLOW_DIRECT_ENGINE=1 python -m cf_pipeline_engine.cli \
--pipeline sandcastle/cf_pipeline/cf_pipeline_engine/examples/opcua_fifo_avg_to_duckdb_parquet_triggered.jsonld \
--interval 1 \
--duration 10
Equivalent module entrypoint:
CF_ALLOW_DIRECT_ENGINE=1 python -m cf_pipeline_engine --help
Publishing
cf_pipeline_engine is published with the dedicated Windows workflow:
- Workflow:
.github/workflows/cf_pipeline_engine_windows_publish.yml - Package directory:
sandcastle/cf_pipeline/cf_pipeline_engine - PyPI tag:
cf-pipeline-engine-v<version> - TestPyPI tag:
cf-pipeline-engine-v<version>-test
Local preflight:
powershell -ExecutionPolicy Bypass -File scripts/mimic_windows_python_publish_workflow.ps1 `
-WorkflowFile .github/workflows/cf_pipeline_engine_windows_publish.yml `
-PackageDir sandcastle/cf_pipeline/cf_pipeline_engine `
-PythonExe py `
-PythonVersion 3.13
Queue a dry-run dispatch:
powershell -ExecutionPolicy Bypass -File scripts/queue_windows_python_publish_workflow.ps1 `
-WorkflowFile .github/workflows/cf_pipeline_engine_windows_publish.yml `
-PackageDir sandcastle/cf_pipeline/cf_pipeline_engine `
-PublishTarget testpypi `
-Ref main `
-RequireLocalPass `
-DryRun
OPC UA Demo Pipeline Sink
The existing demo pipeline
examples/opcua_fifo_avg_to_duckdb_parquet_triggered.jsonld now uses
cfsink:DataHiveParquetSinkStep from cf_basic_sinks.
The sink writes through the C++ gatekeeper library cf_datahive_cpp,
producing one committed data hive run with 20 rows (cycle_id 0..19) and no
archive.jsonl.
Run the one-click demo:
.\scripts\fresh_install.ps1 -Clean -RunDemo
Expected output layout after one demo session:
workspace/<data_hive>/opcua_fifo_avg/latest.txtworkspace/<data_hive>/opcua_fifo_avg/runs/<run_id>/manifest.jsonworkspace/<data_hive>/opcua_fifo_avg/runs/<run_id>/tables/measurements/part-*.parquet
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cf_pipeline_engine-0.1.4.tar.gz.
File metadata
- Download URL: cf_pipeline_engine-0.1.4.tar.gz
- Upload date:
- Size: 68.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
24e0d8bc45544c3f1a8811132098602c337ce48e6c2a545e6bea7386be42e0f5
|
|
| MD5 |
85656d59a82329b470f116cf72254a1d
|
|
| BLAKE2b-256 |
06c6f1a75ffd99dd7f7eb80b5e31dd46d5ee2fd7cc2c846eb0c9262ba302658e
|
File details
Details for the file cf_pipeline_engine-0.1.4-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: cf_pipeline_engine-0.1.4-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 351.2 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dbe5cc5d681bf3af251a123742aa0555ea754c8e12040208a162a0461ddc3e3b
|
|
| MD5 |
dbe5478b1b07925c418117ca14d56287
|
|
| BLAKE2b-256 |
dfa47065d90fcc3430479c6710b4c5d9e018a0592b85a7c20a91fe9d111da455
|