Blackwattle (WattleFlow Extension Layer)
Blackwattle — bridges to many engines, patterns over Apache, opt-in, audit-aware, reference flows that scale.
⚠ This is not a zero-trust package
wattleflowandwattleflow-workfloware zero-trust distributions: their transitive import closure is the standard library plus each other. Blackwattle is deliberately outside that boundary. It is the extension layer, and it exists to reach third-party subsystems — databases, message brokers, OCR engines, NLP models, cloud APIs.The components shipped here are reference implementations over existing open-source subsystems, not audited software supply chain. Every optional dependency you install is a supply-chain decision, and auditing it is yours.
The dependency arrow points one way only:
blackwattle → wattleflow-workflow → wattleflow. Neither of the other two has blackwattle in its dependency graph, which is the one claim a security reviewer needs to check.
| Characteristic | Value |
|---|---|
| Version | |
| License | |
| Python Compatibility | |
| Maturity | Beta — deliberately below the Production/Stable carried by core and workflow |
| Required dependencies | wattleflow-workflow only, which brings wattleflow transitively |
| Optional dependencies | Ten named extras, none installed by default — see below |
| Documentation | Wattleflow Documentation |
Blackwattle
Blackwattle is the extension layer of the WattleFlow framework: it carries the
specializations for heterogeneous sources and sinks — connections, drivers,
processors, pipelines, documents, strategies, blackboards — plus the compliance
layer, built on the design patterns defined in wattleflow and the generic
implementations in wattleflow-workflow.
Its modular, horizontally scalable architecture integrates pipelines to and from heterogeneous subsystems, enabling flexible and efficient workflow orchestration.
Installation
A bare install pulls nothing unvetted — only wattleflow-workflow and, through
it, wattleflow. Every third-party integration is opt-in by name:
pip install blackwattle
Each specialization lazy-loads its third-party library at call time, so a module whose extra is not installed fails where it is used, not on import of the package.
pip install wattleflow-workflow[blackwattle]does not work yet. That is the documented installation contract (DR-PRC-002§Ugovor), but the[blackwattle]extra has not been declared inwattleflow-workflow— it is an aspiration, not a working command. Use the direct form above until the extra exists.
Optional dependency groups
pip install "blackwattle[sql,documents]"
| Extra | Brings | Notes |
|---|---|---|
security |
cryptography | Connection and credential handling |
sql |
psycopg2-binary, SQLAlchemy | See the psycopg2-binary caveat in pyproject.toml |
search |
elasticsearch, opensearch-py, pysolr | |
streaming |
kafka-python-ng, pyspark, pyarrow | pyspark needs a JVM |
cloud |
boto3, paramiko, requests, requests-kerberos, requests-ntlm, websockets | Kerberos/NTLM need system GSSAPI/krb5 headers |
data |
pandas, fastavro, rdflib, pyarrow | |
documents |
python-docx, pypdf, pdfminer.six, PyMuPDF, Pillow, pytesseract, tika, extract-msg | See the licence warning below. pytesseract needs the tesseract binary; tika needs a JVM |
nlp |
spacy, stanza, flair, gliner, transformers, torch, wordfreq | Multi-gigabyte; several need runtime model downloads pip does not manage |
media |
anthropic, youtube-transcript-api, yt-dlp | |
all |
everything except nlp |
Breadth without a model runtime |
Licence warning —
documents. PyMuPDF is AGPL-3.0 (or commercial). It is an optional dependency and not vendored, so it does not change the Apache-2.0 terms of this distribution — but if you install this extra and redistribute the result, you inherit AGPL obligations. Decide that deliberately.
Key Features
| Key Feature | Characteristic |
|---|---|
| Modular Architecture | Designed for extensibility and maintainability. |
| Code Reusability | Facilitates development by encouraging the reuse of framework components. |
| Explicit Trust Boundary | The unvetted surface is isolated in this package and opt-in per extra, so the framework core stays auditable. |
| Scalable and Clear | Suitable for both small and enterprise-level workflow orchestration. |
Documentation
Comprehensive documentation will be available at the Git Hub.
Contributing
We welcome contributions! Please check our GitHub repository for guidelines.
License
Blackwattle is licensed under the Apache 2.0 License. See the LICENSE file for more details.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
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 blackwattle-0.0.1-py3-none-any.whl.
File metadata
- Download URL: blackwattle-0.0.1-py3-none-any.whl
- Upload date:
- Size: 699.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e7e052f1fd23033d06b38aca1167c07a7bf77331bb365d110c528e051462705
|
|
| MD5 |
92385d92452719b4d16e37b6a6af1a90
|
|
| BLAKE2b-256 |
8161d9204bf9d9235e58c5482624b2e69c454ef1372b334127871aa847b0bf9d
|