<div dir="ltr"><div>I'm going to be out of the office this week, but before I go offline I want to share a prototype since it's functional. This prototype for DeclarativeVersion which is an asyncio based pipeline. It's mostly functional. Check out the code.</div><div><br></div><div>pulp code: <a href="https://github.com/pulp/pulp/compare/master...bmbouter:introducing-asyncio-stages?expand=1">https://github.com/pulp/pulp/compare/master...bmbouter:introducing-asyncio-stages?expand=1</a></div><div><br></div><div>pulp_file code:  <a href="https://github.com/pulp/pulp_file/compare/master...bmbouter:introducing-asyncio-stages">https://github.com/pulp/pulp_file/compare/master...bmbouter:introducing-asyncio-stages</a></div><div><br></div><div>It's almost done, but I ran out of time before pto. Currently it doesn't unassociate content units from the repo version correctly.</div><div><br></div><div>Since it's asyncio it likely will be very high performing although I haven't formally benchmarked it yet. Also it allows the plugin writer to rearrange and modify the pipeline using the reusable stages.<br></div><div><br></div><div>Any comments or ideas are welcome. I recommend focusing on the high-level only since the code still needs some obvious polish (and the last mirroring feature).<br></div><div><br></div><div>Cheers,</div><div>Brian<br></div></div>