Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix release task now that NPM is part of the build
Note: this commit looks super weird becuase git. I'm moving the entire NPM section to the part where we actually push the gems/npm package for the reasons below. That's not how the git diff looks though. When we release Rails we run `rake prep_release` which calls `update_versions`. This was updating the NPM version as well. But when we would later run `rake install` to test the installed gem `update_versions` gets called again which causes the install to fail because NPM sees the version is the same as the last run and refuses to continue. If you forget to stash this will then cause the push to RubyGems to fail because `update_versions` is called again and then NPM will not continue because it thinks the version hasn't been changed even though it has. The correct solution would be to not update the NPM verion if it matches the version already in the file but after an hour I could not find a simple way to use NPM to read the current version. Honestly that's not the best way to do it either because say you forget to update something else and then the script thinks it's already been updated. With that in mind I think the best solution is to not update the NPM version until right before we are going to push to NPM because then that won't cause the push to RubyGems to fail.
- Loading branch information
297e262
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.
cc/ @rafaelfranca I believe this will fix the issue I had with releasing to RubyGems and NPM. We should just update the version and push to NPM at the same time. Note the diff looks super weird but what I did was move the entire NPM section down to under
gem push
.But now im wondering if this will leave a dirty tree and
rake all:push
will fail 😕297e262
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.
I think it is fine for now. Let's test in the next release and see if it will leave a dirty tree. Thanks