Skip to content

Releases: paulomtts/grafo

v0.3.5

Choose a tag to compare

@paulomtts paulomtts released this 25 Sep 18:26
f7e9217

Runtime dependencies are now empty; dev and docs tools moved to dependency groups (dev, docs). Ruff lint fixed (main was already red on the unpinned ruff version).

v0.3.4

Choose a tag to compare

@paulomtts paulomtts released this 06 Feb 02:47

Changes

  • Executor: Enqueue nodes only when all parents have completed (check all(e.is_set() for e in child._parent_events) before enqueuing). Removes in-run parent wait and its timeout.
  • Node: Execution timeout now applies to the node's own run:
    • _run(): coroutine wrapped in asyncio.wait_for(..., timeout=self._timeout).
    • _run_yielding(): producer appends to _aggregated_output and puts on queue; consumer enforces deadline and cancels producer on timeout.
  • Tests: test_run_timeout (run timeout), test_yielding_timeout (yielding timeout), test_error asserts len(executor.errors) == 1.

Enh: Small Code Improvements & Improved Docs

Choose a tag to compare

@paulomtts paulomtts released this 22 Jan 01:44

Many corrections and improvements to the docs.

Enh: AUTO forwarding, forwarding signature checks & improved docs

Choose a tag to compare

@paulomtts paulomtts released this 21 Jan 18:01

Refactor: improve forwarding API with forward parameter and AUTO inference

BREAKING CHANGE: Rename forward_as parameter to forward in Node.connect()

  • Replace forward_as with forward for clearer API naming
  • Add Node.AUTO for automatic parameter inference when child has single eligible parameter
  • Add ForwardingParameterError for invalid parameter forwarding
  • Add AutoForwardError for ambiguous AUTO forwarding scenarios
  • Simplify on_before_forward callback API: can be passed directly or as tuple
  • Improve parameter validation: check parameter existence at connect-time
  • Update callback signature: on_before_forward receives forwarded value as positional or keyword-only forward_data
  • Update all documentation and examples to reflect new API
  • Expand test coverage for new features and edge cases

Feat: documentation

Choose a tag to compare

@paulomtts paulomtts released this 20 Jan 04:33

Added a comprehensive documentation (thanks Claude!).

Minor Version Bump

Choose a tag to compare

@paulomtts paulomtts released this 23 Dec 01:09
  • Added type validation for node outputs
  • Improved testing coverage & code
  • TreeExecutor now accepts a single generic type

Hotifx: .get_leaves() type signature

Choose a tag to compare

@paulomtts paulomtts released this 31 Jul 01:30
v0.2.36

fix: .get_leaves() type signature

Minor Improvements

Choose a tag to compare

@paulomtts paulomtts released this 31 Jul 01:26
  • A few optimizations around how the number of workers is setup in the TreeExecutor
  • Initial number of workers is now setup correctly for multi-root trees
  • Some properties of TreeExecutor are now acessible

Fix: version number

Choose a tag to compare

@paulomtts paulomtts released this 28 Jul 19:34
v0.2.34

fix: version number

Hotfix: .output typing issues

Choose a tag to compare

@paulomtts paulomtts released this 28 Jul 19:33
v0.2.33

fix: .output type