Upgrading to 1.6.1 - @babel/runtime fails to install


#1

Upgrading to 1.6.1 from 1.6.0.1 on win10. Installed 1.6.1 using chocolately. Then I updated app to 1.6.1 as well.
When I run app I get prompt to install babel runtime. When I try to install @babel/runtime I get an error that latest version not found. I am able to install babel-runtime (the prior 6.x version), but when I run app I again get prompted to install @babel/runtime.

I note that error msg has ‘@babel/runtime’ in install cmd whereas it should be ‘babel-runtime’. [This I presumed incorrectly as it transpired based on npm’s failure to install @babel/runtime]

I deleted meteor/local and node_modules to see if that would fix things but no joy.

c:\mercurial\repos\myapp>meteor npm install --save babel-runtime
+ babel-runtime@6.26.0
updated 1 package in 20.555s

c:\mercurial\repos\myapp>meteor
[[[[[ c:\mercurial\repos\myapp ]]]]]

=> Started proxy.
=> Started MongoDB.
W20180129-18:17:59.680(0)? (STDERR) c:\mercurial\repos\myapp\.meteor\local\build\programs\server\boot.js:475
W20180129-18:17:59.937(0)? (STDERR) }).run();
W20180129-18:17:59.939(0)? (STDERR)    ^
W20180129-18:17:59.941(0)? (STDERR)
W20180129-18:17:59.943(0)? (STDERR) Error: The @babel/runtime npm package could not be found in your node_modules
W20180129-18:17:59.944(0)? (STDERR) directory. Please run the following command to install it:
W20180129-18:17:59.947(0)? (STDERR)
W20180129-18:17:59.949(0)? (STDERR)   meteor npm install --save @babel/runtime

#2

Your npm install command should be exactly as the error message mentions:

meteor npm install --save @babel/runtime

Read here for more details.


#3

I tried that but got this error msg. Is it possible that it cant find latest cause its a beta version?

c:\meteor\myapp>meteor npm install --save @babel/runtime
npm ERR! code E404
npm ERR! 404 Not Found: @babel/runtime@latest

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\myuser\AppData\Roaming\npm-cache\_logs\2018-01-29T19_10_08_271Z-debug.log

#4

How does your package.json look like after install @babel/runtime?


#5

My package.json dependencies are below. I have tried adding @babel/runtime using version 7.0.0-beta38 prior to attempting to install it but it didnt make any difference in that install still failed.

...
  },
  "dependencies": {
    "babel-runtime": "^6.26.0",
    "bcrypt": "^1.0.3",
    "bson": "^1.0.4",
    "contact-form": "0.0.4",
    "js-sharing-buttons": "^2.0.0",
    "shopify-buy": "^0.7.1",
    "shopify-promise": "0.0.5",
    "simpl-schema": "^1.4.1"
  },
...

#6

I think you want:

    "@babel/runtime": "^7.0.0-beta.36",

for Meteor 1.6.1


#7

After update, my package.json looks like this:

"dependencies": {
    "@babel/runtime": "^7.0.0-beta.36",
    "babel-runtime": "^6.26.0",
  },

which looks weird but it works since the @ introduces a namespace. Did you manually replace your babel-runtime entry with the new one?


#8

I added @babel/runtime to package.json but I still get error.

"dependencies": {
    "@babel/runtime": "^7.0.0-beta.36",
    "babel-runtime": "^6.26.0",
c:\meteor\myapp>meteor npm install --save @babel/runtime
npm ERR! code E404
npm ERR! 404 Not Found: @babel/runtime@^7.0.0-beta.36

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\myuser\AppData\Roaming\npm-cache\_logs\2018-01-30T15_57_37_053Z-debug.log

#9

As you’ve already added the correct entry in your package.json, all you need to do is

meteor npm install

#10

Tried that but get same error


c:\meteor\myapp>meteor npm install
npm ERR! code E404
npm ERR! 404 Not Found: @babel/runtime@^7.0.0-beta.36

npm ERR! A complete log of this run can be found in:

#11

What does the log say? Maybe it can’t reach the npm registry? Any errors whe installing any other npm package?


#12

Log snippet below. I also had previously done a rm -fr node_modules followed by a meteor npm install - that completed without error.

18 silly saveTree     +-- lodash.foreach@4.5.0
18 silly saveTree     `-- lodash.without@4.4.0
19 verbose stack Error: 404 Not Found: @babel/runtime@^7.0.0-beta.36
19 verbose stack     at fetch.then.res (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\pacote\lib\fetchers\registry\fetch.js:42:19)
19 verbose stack     at tryCatcher (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\bluebird\js\release\util.js:16:23)
19 verbose stack     at Promise._settlePromiseFromHandler (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\bluebird\js\release\promise.js:512:31)
19 verbose stack     at Promise._settlePromise (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\bluebird\js\release\promise.js:569:18)
19 verbose stack     at Promise._settlePromise0 (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\bluebird\js\release\promise.js:614:10)
19 verbose stack     at Promise._settlePromises (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\bluebird\js\release\promise.js:693:18)
19 verbose stack     at Async._drainQueue (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\bluebird\js\release\async.js:133:16)
19 verbose stack     at Async._drainQueues (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\bluebird\js\release\async.js:143:10)
19 verbose stack     at Immediate.Async.drainQueues (C:\Users\myuser\AppData\Local\.meteor\packages\meteor-tool\1.6.1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\bluebird\js\release\async.js:17:14)
19 verbose stack     at runCallback (timers.js:789:20)
19 verbose stack     at tryOnImmediate (timers.js:751:5)
19 verbose stack     at processImmediate [as _immediateCallback] (timers.js:722:5)
20 verbose cwd c:\meteor\myapp
21 verbose Windows_NT 10.0.14393
22 verbose argv "C:\\Users\\myuser\\AppData\\Local\\.meteor\\packages\\meteor-tool\\1.6.1\\mt-os.windows.x86_64\\dev_bundle\\bin\\node.exe" "C:\\Users\\myuser\\AppData\\Local\\.meteor\\packages\\meteor-tool\\1.6.1\\mt-os.windows.x86_64\\dev_bundle\\lib\\node_modules\\npm\\bin\\npm-cli.js" "install"
23 verbose node v8.9.4
24 verbose npm  v5.6.0
25 error code E404
26 error 404 Not Found: @babel/runtime@^7.0.0-beta.36
27 verbose exit [ 1, true ]

#13

I thinks its a proxy problem. Its going to my employer’s nexus. Not sure how to get around it though? Setting proxy values as detailed in below post doesnt work neither does setting proxy values in package.json.


#14

What should be the registry value in C:\Users<muuser>.npmrc?

I tried this but got json parse error
registry=https://skimdb.npmjs.com/registry


#15

I have

registry=http://registry.npmjs.org/
prefix=C:\Program Files (x86)\Nodist\bin

#16

It fails with same registry value as you have.
I dont have the NoDist folder in Program Files [(x86)] - what is this?


#17

That seems to be where things installed with npm -g or meteor npm g get put. I suspect it’s created when you use one of those commands, so you can probably delete that line from the .npmrc file.


#18

Reverted to v 1.6.0.1. My app works again. Will likely upgrade reluctantly in future :–((


#19

This isn’t going to help, but I just went through your issue with my code. I took a small 1.6.0.1 app, then:

> meteor update

Changes to your project's package version selections from updating the release:

autoupdate                 upgraded from 1.3.12 to 1.4.0
babel-compiler*            upgraded from 6.24.7 to 7.0.0
babel-runtime              upgraded from 1.1.1 to 1.2.0
boilerplate-generator      upgraded from 1.3.0 to 1.4.0
callback-hook              upgraded from 1.0.10 to 1.1.0
check                      upgraded from 1.2.5 to 1.3.0
ddp-client                 upgraded from 2.2.0 to 2.3.1
ddp-common                 upgraded from 1.3.0 to 1.4.0
ddp-server                 upgraded from 2.1.1 to 2.1.2
diff-sequence              upgraded from 1.0.7 to 1.1.0
dynamic-import             upgraded from 0.2.1 to 0.3.0
ecmascript                 upgraded from 0.9.0 to 0.10.0
ecmascript-runtime-client  upgraded from 0.5.0 to 0.6.0
es5-shim                   upgraded from 4.6.15 to 4.7.0
http                       upgraded from 1.3.0 to 1.4.0
id-map                     upgraded from 1.0.9 to 1.1.0
meteor                     upgraded from 1.8.0 to 1.8.2
meteor-base                upgraded from 1.2.0 to 1.3.0
minifier-css               upgraded from 1.2.16 to 1.3.0
minifier-js                upgraded from 2.2.2 to 2.3.1
minimongo                  upgraded from 1.4.0 to 1.4.3
modules                    upgraded from 0.11.0 to 0.11.3
modules-runtime            upgraded from 0.9.0 to 0.9.1
mongo                      upgraded from 1.3.1 to 1.4.2
ordered-dict               upgraded from 1.0.9 to 1.1.0
promise                    upgraded from 0.10.0 to 0.10.1
random                     upgraded from 1.0.10 to 1.1.0
reload                     upgraded from 1.1.11 to 1.2.0
retry                      upgraded from 1.0.9 to 1.1.0
server-render              added, version 0.3.0
shim-common                added, version 0.1.0
socket-stream-client       added, version 0.1.0
standard-minifier-css      upgraded from 1.3.5 to 1.4.0
standard-minifier-js       upgraded from 2.2.3 to 2.3.1
url                        upgraded from 1.1.0 to 1.2.0
webapp                     upgraded from 1.4.0 to 1.5.0


* These packages have been updated to new versions that are not backwards
compatible.
example: updated to Meteor 1.6.1.

Changes to your project's package version selections from updating package versions:

babel-runtime              upgraded from 1.2.0 to 1.2.2
blaze                      upgraded from 2.1.8 to 2.3.2
blaze-html-templates       upgraded from 1.0.4 to 1.1.2
caching-compiler           upgraded from 1.1.9 to 1.1.11
caching-html-compiler      upgraded from 1.0.6 to 1.1.2
ecmascript-runtime-client  upgraded from 0.6.0 to 0.6.1
es5-shim                   upgraded from 4.7.0 to 4.7.3
jquery                     upgraded from 1.11.10 to 1.11.11
modules-runtime            upgraded from 0.9.1 to 0.9.2
mongo                      upgraded from 1.4.2 to 1.4.3
spacebars                  upgraded from 1.0.12 to 1.0.15
spacebars-compiler         upgraded from 1.1.1 to 1.1.3
templating                 upgraded from 1.2.14 to 1.3.2
templating-compiler        added, version 1.3.3
templating-runtime         added, version 1.3.2
templating-tools           upgraded from 1.1.1 to 1.1.2
ui                         upgraded from 1.0.11 to 1.0.13
> meteor run
=> Started MongoDB.
W20180201-10:04:37.588(0)? (STDERR) C:\Users\rfallows\meteor\example\.meteor\local\build\programs\server\boot.js:475
W20180201-10:04:37.764(0)? (STDERR) }).run();
W20180201-10:04:37.768(0)? (STDERR)    ^
W20180201-10:04:37.770(0)? (STDERR)
W20180201-10:04:37.771(0)? (STDERR) Error: The @babel/runtime npm package could not be found in your node_modules
W20180201-10:04:37.774(0)? (STDERR) directory. Please run the following command to install it:
W20180201-10:04:37.775(0)? (STDERR)
W20180201-10:04:37.783(0)? (STDERR)   meteor npm install --save @babel/runtime
W20180201-10:04:37.784(0)? (STDERR)
W20180201-10:04:37.790(0)? (STDERR)     at babel-runtime.js (packages\babel-runtime.js:25:9)
W20180201-10:04:37.795(0)? (STDERR)     at fileEvaluate (packages\modules-runtime.js:343:9)
W20180201-10:04:37.798(0)? (STDERR)     at require (packages\modules-runtime.js:238:16)
W20180201-10:04:37.803(0)? (STDERR)     at packages\babel-runtime.js:132:15
W20180201-10:04:37.804(0)? (STDERR)     at packages\babel-runtime.js:139:3
W20180201-10:04:37.806(0)? (STDERR)     at C:\Users\rfallows\meteor\example\.meteor\local\build\programs\server\boot.js:
411:36
W20180201-10:04:37.816(0)? (STDERR)     at Array.forEach (<anonymous>)
W20180201-10:04:37.817(0)? (STDERR)     at C:\Users\rfallows\meteor\example\.meteor\local\build\programs\server\boot.js:
220:19
W20180201-10:04:37.822(0)? (STDERR)     at C:\Users\rfallows\meteor\example\.meteor\local\build\programs\server\boot.js:
471:5
W20180201-10:04:37.827(0)? (STDERR)     at Function.run (C:\Users\rfallows\meteor\example\.meteor\local\build\programs\s
erver\profile.js:510:12)
=> Exited with code: 1

Which is what you were seeing?

Then I did:

> meteor npm i --save @babel/runtime
npm notice created a lockfile as package-lock.json. You should commit this file.
+ @babel/runtime@7.0.0-beta.39
added 3 packages and removed 1 package in 5.536s
> meteor run
=> Started proxy.

=> Started MongoDB.
I20180201-10:10:44.001(0)? Hello, World
=> Started your app.

=> App running at: http://localhost:3000/
   Type Control-C twice to stop.

Note, that I followed the on-screen instructions to do meteor npm i --save @babel/runtime - which is exactly what the release notes say to do.

So, my update seemed to go through the same initial breaking steps as yours, but after following the directions, it’s now updated and working correctly.


#20

@robfallows Thx for trying out my scenario. These are exactly the steps I followed. Except that I get this error

c:\meteor\myapp>meteor npm install --save @babel/runtime
npm ERR! code E404
npm ERR! 404 Not Found: @babel/runtime@latest

Appears to be related to (nexus) registry lookup. I can see that @babel/runtime is missing from my company’s nexus. Not sure if I have access to upload it independently but I think if it was available in the corporate nexus that would fix the issue. Although even when I switch registry value to registry=http://registry.npmjs.org/ in .npmrc I still get errors.

Not sure what else could be causing the issue?