Meteor 1.3 *early beta* now available

The build time is great now compared to before!! Great work!!

3 Likes

I just upgraded an app that didnā€™t use ecmascript and it just gave me a blank screen with absolutely no hint as to whatā€™s wrong. If itā€™s intentional that all apps now require ecmascript then you should get some kind of warning if ecmascript isnā€™t in the packages file.

The deploy on meteor free hosting fails using meteor 1.3 .
Logs:

WARNING Error: Cannot find module ā€˜aws-sdkā€™

Nevermind, its related to this issue : https://github.com/meteor/meteor/issues/6022

Okay, this is currently a bit problematic: I want to do file upload and have them working fineā€¦ save for the directory the files should go into.

All the examples I found make use of Meteor.chroot - however, this variable is simply undefined in my build and I have not found where to get the proper application root directory from.

Either I end up in the absolute root (as in: ā€œ/ā€) or I end up in the build directory.

Can you not do process.env.PWD (server only) to get the root directory?

Edit: Does this belong in this topic?

Forgot to mention itā€™s when I upgrade to 1.3 beta 8

@manuel can you file a GitHub issue for that problem? I was able to reproduce the white screen, though it is definitely not our intention that ecmascript should be mandatory for 1.3 apps!

Update: this problem should be fixed in the next release by this commit.

2 Likes

Do you still want me to create the ticket?

Does 1.3 have any Typescript definition files?

P.S. Related to Typescript definitions: https://github.com/typings/typings

Hi guys,

I found a bug in Meteor 1.3 when using NPM 3ā€™s flat dependency folder systemā€¦ I replicated the system here:

It happens when you have this:

npm -v
3.x.x

Then when you type this, it works

rm -Ir -f node_modules
npm install
node server/main.js

but it doesnā€™t work when you try this:

rm -Ir -f node_modules
npm install
meteor

It works again though when you do thisā€¦

rm -Ir -f node_modules
npm install --legacy-bundling
meteor

tl;dr;
It seems sinon installs util, and eslint installs inherits, when you use multiparty, it tries to use util.inherits which tries to get code from inherits but inherits tries to export util.inherits. Hence, circular dependency, making util.inherits null.

Explanation at the git repo.

1 Like

Iā€™ve encountered the same bug, @benjamn @avital

Yeah, I quick-fixed mine by doing post-install in package.json by removing util module inside the node_modules folder. This forces meteor to use the global nodeā€™s util. But it feels ā€œhackyā€.

Okay, I just tried to deploy a ā€œproductionā€ version to my own server (running Linux). Because Iā€™m developing under Windows, the workflow (probably convolutedā€¦) is as follows:

a) pull the latest version from Github
b) run meteor build tarfile
c) wait for the building process to finish
d) copy the tarfile over to the server directory und untar it there
e) start the server by env PORT=80 MONGO_URL=mongodb://localhost:27017/DBname ROOT_URL=http://www.my-site.com forever start main.js (though replacing forever start with a simple node will yield the same, just not permanently)

Normally, the site now runs.

With the current beta.8 I get this:

module.js:340
    throw err;
          ^
Error: Cannot find module 'fibers'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/var/www/nawi/bundle/programs/server/boot.js:1:75)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

@rhywden you might need to install some npm dependencies for the server:

cd bundle/programs/server
npm install

If you open the package.json file in that directory, youā€™ll see that fibers is one of the dependencies.

Okay, tried that (promptly had to update node to a later version, though).

It then threw an error:

/var/www/nawi/bundle/programs/server/node_modules/fibers/fibers.js:16
        throw new Error('`'+ modPath+ '.node` is missing. Try reinstalling `node                                                                      -fibers`?');
        ^

Error: `/var/www/nawi/bundle/programs/server/node_modules/fibers/bin/linux-x64-v                                                                      8-4.5/fibers.node` is missing. Try reinstalling `node-fibers`?
    at Object.<anonymous> (/var/www/nawi/bundle/programs/server/node_modules/fib                                                                      ers/fibers.js:16:8)
    at Module._compile (module.js:410:26)
    at Object.Module._extensions..js (module.js:417:10)
    at Module.load (module.js:344:32)
    at Function.Module._load (module.js:301:12)
    at Module.require (module.js:354:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/var/www/nawi/bundle/programs/server/boot.js:1:75)
    at Module._compile (module.js:410:26)
    at Object.Module._extensions..js (module.js:417:10)

So, I tried a simple node install fibers in the /programs/server directory. After that I got this:

/var/www/nawi/bundle# env PORT=80 MONGO_URL=mongodb://localhost:27017/DBname ROOT_URL=http://www.my-site.com node  main.js
/var/www/nawi/bundle/programs/server/node_modules/fibers/future.js:267
                                                throw(ex);
                                                ^

Error: Module did not self-register.
    at Error (native)
    at Object.Module._extensions..node (module.js:435:18)
    at Module.load (module.js:344:32)
    at Function.Module._load (module.js:301:12)
    at Module.require (module.js:354:17)
    at require (internal/module.js:12:17)
    at bindings (/var/www/nawi/bundle/programs/server/npm/npm-bcrypt/node_modules/bcrypt/node_modules/bindings/bindings.js:74:15)
    at Object.<anonymous> (/var/www/nawi/bundle/programs/server/npm/npm-bcrypt/node_modules/bcrypt/bcrypt.js:3:35)
    at Module._compile (module.js:410:26)
    at Object.Module._extensions..js (module.js:417:10)

Okay, solved that one. I blame lack of sleep.

The message, when I initally tried to run the whole thing, said: ā€œYou need node-v0.10.41 or laterā€

I then grabbed the LTS version. Which obviously was the mistake - with node-v0.10.42 itā€™s all good now.

Damn. Maybe a short hint in the future as to which branch of this whole Node version mess to grab for shortbus people like me? :slightly_smiling:

A simple hello world app with React and FlowRouter is giving me this error with beta8:

Error running template: Error: Meteor code must always run within a Fiber. Try wrapping callbacks that you pass to non-Meteor libraries with Meteor.bindEnvironment. at Object.Meteor._nodeCodeMustBeInFiber (packages/meteor/dynamics_nodejs.js:9:1) at [object Object]._.extend.get (packages/meteor/dynamics_nodejs.js:21:1) at Object.Tracker.autorun (packages/kadira:flow-router-ssr/server/plugins/ssr_data.js:51:29) at [object Object].Blaze.View.autorun (packages/blaze/view.js:209:1) at [object Object].<anonymous> (packages/blaze/builtins.js:157:1) at fireCallbacks (packages/blaze/view.js:279:1) at Object.Tracker.nonreactive (packages/tracker/tracker.js:589:1) at packages/blaze/view.js:276:1 at Object.Blaze._withCurrentView (packages/blaze/view.js:538:1) at Object.Blaze._fireCallbacks (packages/blaze/view.js:275:1)
Is working fine with beta6.

Do you want me to file an issue in Github?

This project uses Meteor 1.3-beta.10, which isn't available on Windows.
To work with this app on all supported platforms, use meteor 
update --release METEOR@1.2.1 to pin this app to the newest Windows-compatible release.

Heheā€¦

Check this issue: https://github.com/kadirahq/flow-router/issues/522

I seeā€¦ so itā€™s the same bug. Cheers!