Conversation
|
@gedu is attempting to deploy a commit to the Callstack Team on Vercel. A member of the Team first needs to authorize it. |
🦋 Changeset detectedLatest commit: c5df67f The changes in this PR will be included in the next version bump. This PR includes changesets to release 6 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
Heads-up: I pushed one extra commit here, Shared That conventional direction now reports as Tests pin both directions, including the byte-identical legacy message for the error case. |
|
hey thanks for the pr, I haven't had a chance to get to this yet but I will soon. Thanks for your patience 🙏 |
The problem
host and remotes live in separate repos, get upgraded at different times, and nothing checks that shared versions still agree. A package bumped on one side, or a native module only the host ships, shows up as a crash in production.
This is the first piece of tooling for that: at build time, Re.Pack can emit a JSON file describing what the container actually contains. Each repo emits its own manifest next to its container bundle, so for a host consuming a remote from another repo, the other side's manifest is just a fetch away from the same origin.
Two commands consume it:
npx react-native federation-manifestreads a manifest from a file, a build directory or a URLnpx react-native federation-doctorcompares a host against its remotes and fails with a non-zero exit code on shared version drift, singleton/eager mismatches, or native modules a remote uses that the host does not list, so it can gate a release pipelineI landed emission and the consumers together so there is something runnable in the first review, rather than a file format on its own.
manifest: trueto either plugin