Closed kellyselden closed 5 years ago
There is a valid tarball at that URL (just downloaded it locally to confirm).
This is very confusing. I just reran again to make sure and got the same error. https://travis-ci.org/kellyselden/ember-async-action-container/jobs/370742585
Did some debugging (with @kategengler) and this seems like an npm bug. Basically, the ember-source@3.1.1
published tag (which your addon was already using due to ~3.1.1
in its package.json) and the current release tarball are exactly the same (sha512 integrity checksum matches), and npm
is getting confused and pruning out the newly installed package.
woah that explains it! since it was a brand new addon.
We can "fix" it by retriggering the CI build for the release branch (because the tarball would generate and have a very small difference if only in timestamps from 3.1.1)...
Kinda sucks though 😭
yeah. Can we mitigate in ember-try that says "if shas match, no-op"? at least until npm fixes.
There are a few possible mitigations:
node_modules
before attempting the npm install
after updating the package.jsonnode_modules/<specific packages configured in ember-try config>
after updating the package.jsonnpm prune
after ember-try has npm install
'ed with the new depsI think the second seems the most likely to succeed...
Thoughts @kategengler ?
I like the second, but think that is what it originally did, and moved to prune for some reason.
On Tue, Apr 24, 2018 at 6:15 PM Robert Jackson notifications@github.com wrote:
There are a few possible mitigations:
- remove node_modules before attempting the npm install after updating the package.json
- remove node_modules/<specific packages configured in ember-try config> after updating the package.json
- allow disabling npm prune after ember-try has npm install'ed with the new deps
I think the second seems the most likely to succeed...
Thoughts @kategengler https://github.com/kategengler ?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/emberjs/ember.js/issues/16580#issuecomment-384097206, or mute the thread https://github.com/notifications/unsubscribe-auth/AAbHOp1fpCqiRH5pamKlbD9UDBcNoU2pks5tr6P8gaJpZM4TiVXA .
Since we have an open PR to avoid the problem, let's labeled this with has PR
Perhaps we can close this once the PR is merged? What do you think? @Panman8201 @kategengler @kellyselden @rwjblue
@yininge Which PR is for this? I haven't seen one
@kategengler sorry it is my bad. I saw an issue and thought it is a PR.
FWIW, I think that @kategengler and I figured out a more general possible solution here. Hopefully one of us has time to implement in the next week or two. 😩
We believe we've fixed this by changing the way Ember publishes builds to s3 (for use in ember-try among other places.
@kellyselden Can you confirm this is fixed?
I haven't seen it for a while.
FWIW, I seen this twice and it fixes itself after the next release. So it would be tough to say now, without it being an issue with 3.6.1 (current release).
Agreed @Panman8201. If folks do see it again, please feel free to chime in here or open up a new issue...
Hi there, unfortunately I'm discovering this at the moment when trying to deploy an Ember application to Netlify.
Version-Info ember version --verbose && npm --version
ember-cli: 3.8.0-beta.1
http_parser: 2.8.0
node: 10.15.0
v8: 6.8.275.32-node.45
uv: 1.23.2
zlib: 1.2.11
ares: 1.15.0
modules: 64
nghttp2: 1.34.0
napi: 3
openssl: 1.1.0j
icu: 62.1
unicode: 11.0
cldr: 33.1
tz: 2018e
os: darwin x64
6.7.0
Dependencies:
"devDependencies": {
"@ember-decorators/babel-transforms": "^5.1.2",
"@ember/optional-features": "^0.6.3",
"babel-eslint": "^10.0.1",
"broccoli-asset-rev": "^2.7.0",
"ember-auto-import": "^1.2.19",
"ember-bind-helper": "^0.3.2",
"ember-cli": "github:ember-cli/ember-cli",
"ember-cli-app-version": "^3.2.0",
"ember-cli-babel": "^7.1.0",
"ember-cli-dependency-checker": "^3.0.0",
"ember-cli-eslint": "^4.2.3",
"ember-cli-fastboot": "^2.0.4",
"ember-cli-htmlbars": "^3.0.0",
"ember-cli-htmlbars-inline-precompile": "^1.0.3",
"ember-cli-inject-live-reload": "^1.8.2",
"ember-cli-markdown-resolver": "^0.1.3",
"ember-cli-showdown": "^4.4.4",
"ember-cli-sri": "^2.1.1",
"ember-cli-stylus": "^1.0.7",
"ember-cli-template-lint": "^1.0.0-beta.1",
"ember-cli-uglify": "^2.1.0",
"ember-decorators": "^5.1.2",
"ember-export-application-global": "^2.0.0",
"ember-load-initializers": "^1.1.0",
"ember-maybe-import-regenerator": "^0.1.6",
"ember-prism": "^0.4.0",
"ember-qunit": "^3.4.1",
"ember-resolver": "^5.0.1",
"eslint-plugin-ember": "^5.2.0",
"loader.js": "^4.7.0",
"prember": "^1.0.2",
"prettier": "^1.16.4",
"qunit-dom": "^0.8.0",
"sparkles-component": "^1.3.0",
"sparkles-decorators": "^0.0.6"
},
As soon as Netlify installs the dependencies and runs ember build -e production
I get the error.
I can also reproduce this locally by removing my node_modules, running npm install
and starting the development server.
I tried adding
"ember-source": "https://s3.amazonaws.com/builds.emberjs.com/canary/shas/e7a144b1bf432769383c3360bbcc44a68e2b9522.tgz"
explicitly as a dependency but that did not work either.
The only way to get the deployment working is by running
npm install ember-source && ember build -e production
instead of just
ember build -e production
...but that doesn't feel quite right. :/
https://travis-ci.org/kellyselden/ember-async-action-container/jobs/370742585#L2660
I think the 3.1.1 tarball failed to publish again.