max-mapper / max-mapper/open-prs

figure out better stream abstractions

Open
#2 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
26
Forks
3
PR merge metrics
No merged PRs in 30d

Description

for an explanation of this module see the intro here: https://github.com/maxogden/open-prs#open-prs

main plumbing code is here: https://github.com/maxogden/open-prs/blob/master/index.js#L12-L45a

things I want to do better:

  • find a good module for doing multiple readables pipe -> single writable

(e.g. merging streams) https://github.com/maxogden/open-prs/blob/master/index.js#L40-L43

  • find a way to do better parallelism

take this stream for example: https://github.com/maxogden/open-prs/blob/master/index.js#L26-L38

it is a single stream that spawns many child streams and emits their data through itself.

I want to parallelize it, but doing so would require tracking all parallel tasks so that the parent stream knew when to end, which will add a bunch of code. maybe theres a module that handles this nicely?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the module introduction and the plumbing in index.js lines 12-45, especially the stream sections at lines 26-38 and 40-43. Investigate how multiple readables could feed one writable and how parallel child streams would signal completion. Done would require an agreed abstraction or module choice and a defined approach for parallel task tracking, but the issue does not specify acceptance criteria.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
cli
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
18/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.