New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update @oclif/core to 1.21.0 to fix the dependency installation issue in the fixture app #879
Conversation
Thanks for your contribution! Depending on what you are working on, you may want to request a review from a Shopify team:
|
Note that in the past we've explicitly reverted a version upgrade due to concerns about breaking changes in oclif (which prompted my PR to oclif that you mentioned). I think we'd discussed adding some high-level tests (likely some kind of golden master) to gain more confidence that the breaking changes haven't broken anything. Is it a good idea to change that approach now? |
Breaking changes can and will happen in the packages we depend on. I'd say that we trust them on this one and gain confidence through some manual testing, and if it turns out breaking-changes in minor versions becomes a norm in |
Coverage report
Test suite run success863 tests passing in 435 suites. Report generated by 🧪jest coverage report action from 9d46583 |
ade8e9b
to
d0804c2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works on my machine! 👩💻
I'm a bit hesitant to say "YOLO" given we've been burned on this in the past... but I also see that most of their commits are dependabot upgrades anyway, and hopefully we're tophatting enough that we'll notice any new bugs.
I would like to see if we can have some kind of golden master testing for future reference. Even if nothing is really broken, small things can change in these upgrades and it would be good at least to be made aware of those changes.
9b265da
to
9d46583
Compare
WHY are these changes introduced?
dev
andbuild
install dependencies by default. When they do, they use the lockfile in the project directory to determine the package manager to use. Because thefixture
project is part of the repository workspace, there's no PNPM lockfile and therefore tries to install dependencies there withnpm
leading to the following error reported by @amcaplan:WHAT is this pull request doing?
Until we can have a discussion around the responsibilities of the CLI and the future of the
--skip-dependencies-install
flag, I'm configuringdev.yml
to set the environmentSHOPIFY_FLAG_SKIP_DEPENDENCIES_INSTALLATION: 1
and disable that functionality while working in the monorepo because it's not necessary.Setting the variable is not sufficient because the version of
@oclif/core
that we are using only uses the environment variables for flags that represent options. Therefore I'm updating the version of@oclif/core
to have @amcaplan's fix oclif/core#536.How to test your changes?
Try to create a new app and interact with it. Also try the commands against the main fixture app.
Measuring impact
How do we know this change was effective? Please choose one:
Checklist
dev
ordeploy
have been reflected in the internal flowchart.