RxJS 7 Modules/Types/Package Structure Epic
Open
Nobody has claimed this yet.
8.x
- Dominant language
- TypeScript
- Stars
- 31.7k
- Forks
- 3k
- PR merge metrics
- No merged PRs in 30d
Description
There's been a smattering of issues around our package structure, locating types, pulling in the proper versions, etc.
- Ensure ESM users are getting ES2015/ESM build (must be 8.x)
- Ensure CJS users are getting CJS build
- Ensure those that want ES5 (whomever they are?) are getting ES5 build (not supported in 8.x)
- Ensure it works with the latest Angular-CLI
- Ensure it works with the latest Create React App
- Ensure it works with Vite/Vue builds
- Ensure it works generally with Rollup/Webpack
- (Somehow) ensure it works with Stackblitz
- Make sure people don't end up with two versions of RxJS in mixed environments, if possible. (e.g.
import { Observable as Observable1 } from 'rxjs'; require('rxjs').Observable === Observable1) Again, I'm not even sure this is possible - Figure out some sort of way to test this in CI so it doesn't happen again.
- Figure out if there are any Electron issues
Related Issues:
- #6321 ESM version is never used
- #6786 Make sure whatever we output from Nx/whatever for 8.x meets the above requirements.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading related issues #6321 and #6786, then inspect the RxJS 8.x package and build configuration. Define reproducible checks for ESM, CJS, ES5, Angular CLI, Create React App, Vite, Rollup, Webpack, StackBlitz, Electron, and mixed-version usage; done requires those checks and CI coverage.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angular, electron, javascript, react, rollup, typescript, vite, webpack
- Domain
- build-system, testing-qa, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100