fix(verify): pack the client core alongside react for a workspace checkout - #203
Merged
Conversation
…ckout The client SDK repo is becoming an npm workspace that publishes @seamless-auth/client next to @seamless-auth/react, and the react tarball depends on the client one. Packing only the root of such a checkout produces the private root package, and installing the react tarball alone goes to the registry for a client version that is not published yet. The harness reads workspaces from the checkout's package.json, packs both packages when it finds one, and the react image installs every tarball in one npm install so the dependency resolves from the sibling file. A checkout that predates the workspace is packed as before.
6 tasks
13 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Prerequisite for the client SDK workspace conversion (fells-code/seamless-auth-react, mobile track fells-code/seamless-templates#40).
seamless verify --localbuilds and packs the local@seamless-auth/reactcheckout and installs the tarball into the react image. That checkout is becoming an npm workspace publishing a framework-agnostic@seamless-auth/clientnext to@seamless-auth/react, and the react tarball depends on the client one. Against such a checkout the harness would pack the private root package, and installing the react tarball alone would go to the registry for a client version that is not published yet.packLocalReactSdkreadsworkspacesfrom the checkout'spackage.json; when present it packs-w @seamless-auth/client -w @seamless-auth/react, otherwise it packs the root as before./tmp/sdk/*.tgzin onenpm install, so react's client dependency resolves from the sibling tarball.@seamless-auth/reactreadspackages/react/package.jsonin a workspace.No behaviour change for a pre-workspace checkout, so this can merge ahead of the SDK change; the reusable
verify-conformance.ymlis consumed@main, which is what the SDK repo's conformance run needs.Test plan
npm run coverage: 1003 passing, coverage 99.39 / 96.73 / 99.46 / 99.39-wpack plus react version line for a workspace checkout