Skip to content

Allow multiple assets to be updated from same node#244

Open
sneakers-the-rat wants to merge 1 commit into
mainfrom
issue-200
Open

Allow multiple assets to be updated from same node#244
sneakers-the-rat wants to merge 1 commit into
mainfrom
issue-200

Conversation

@sneakers-the-rat

@sneakers-the-rat sneakers-the-rat commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

Fix: #200

Previously, it was only possible to have one asset dependency mapping per node. However nodes can emit multiple signals, and the same signal might be used to update multiple assets (not exactly sure when this would be useful, but it's a logical implication of the spec and should work).

Simple enough change, using a nested dict to keep the external lookups quick (O(1) is node relevant to the update, as used in the zmq runner) - alternative considered was using NodeSignal() as the key but that requires allocating a tuple on every lookup.

added dependency_assets cached prop to get the set of assets with dependencies since the dependencies dict is no longer 1:1 count of assets in the value field.


📚 Documentation preview 📚: https://noob--244.org.readthedocs.build/en/244/

@coveralls

coveralls commented Jul 6, 2026

Copy link
Copy Markdown

Coverage Status

coverage: 84.583% (-0.006%) from 84.589% — issue-200 into main

@codspeed-hq

codspeed-hq Bot commented Jul 6, 2026

Copy link
Copy Markdown

Merging this PR will degrade performance by 13.55%

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

❌ 1 (👁 1) regressed benchmark
✅ 7 untouched benchmarks
⏩ 8 skipped benchmarks1

Performance Changes

Mode Benchmark BASE HEAD Efficiency
👁 Simulation test_kitchen_sink_process[ZMQRunner-testing-kitchen-sink] 2.8 ms 3.2 ms -13.55%

Comparing issue-200 (ad058b1) with main (5c236d7)

Open in CodSpeed

Footnotes

  1. 8 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@sneakers-the-rat

Copy link
Copy Markdown
Collaborator Author

perf regression is fake news, genuinely hate that thing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

support updating multiple assets from same node

2 participants