Meteor 1.9 is out

Bcrypt doesn’t build with 1.9 :frowning: I had to revert back to 1.8.x until I can find a solution.

2 Likes

What is the process that a version goes through to become recommended ?

You probably just need to update the version of bcrypt you’re using in package.json

2 Likes

Great job on the new version.

For those using apollo there was some difficulties to update (at least for me) but Ben solved it on github with a new apollo package. Easiest way to fix it:

meteor remove apollo
meteor update
meteor add apollo
2 Likes

Sorry but Meteor 1.9 seems a bit rushed and not tested in it’s entire system to me as we have at least two major issues!

  1. We do get a transaction aborted issue that is replicable and doesn’t happen on Meteor 1.8.3 - this is obviously on the same code base and data.

MongoError: Transaction 1 has been aborted. .meteor/packages/promise/.0.11.2.76ph0.tuy1og++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/meteor-promise/fiber_pool.js:43:40 .meteor/packages/promise/.0.11.2.76ph0.tuy1og++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/meteor-promise/promise_server.js:56:12) .meteor/packages/promise/.0.11.2.76ph0.tuy1og++os+web.browser+web.browser.legacy+web.cordova/npm/node_modules/meteor-promise/fiber_pool.js:43:40

  1. Meteor 1.9 is dramatically slower

While I don’t cover the specific times for MongoDb operations only, when our app performs it usual MongoDb heavy operations (meaning over 100 operations for a single call from frontend) I do see the following dramatic differences in timings (total runtime!)

This is directly from out logging file, same functions are called (both 1.8.3 and 1.9 produce the same results at least - hence “notMatching”):

Meteor 1.8.3:

notMatching in 2705ms
notMatching in 2838ms
notMatching in 2634ms
notMatching in 2532ms
notMatching in 3860ms
notMatching in 2743ms
notMatching in 3447ms
notMatching in 3266ms
notMatching in 3253ms
notMatching in 2667ms

Meteor 1.9 (1st run):
notMatching in 11606ms
notMatching in 9879ms
notMatching in 8560ms
notMatching in 9868ms
notMatching in 7038ms
notMatching in 10011ms
notMatching in 9913ms
notMatching in 8486ms
notMatching in 4966ms
notMatching in 6141ms

Meteor 1.9 (2nd run):
notMatching in 9280ms
notMatching in 7824ms
notMatching in 4732ms
notMatching in 6573ms
notMatching in 15214ms
notMatching in 8195ms
notMatching in 7930ms
notMatching in 6177ms
notMatching in 10416ms
notMatching in 11796ms

While this is calling a 3rd party API and surely is influencing the overall times please note that this happens at US night time (the server is in the US and over 70% of the 3rd party users are from the US).

But the whole app feels sluggish, from the time it takes between clicking on a card (which starts the whole backend function) until the animation starts (which is send from backend to frontend confirming that the backend is working on it).

Is there something wrong with Fibers?

My update process from 1.8.3 was really smooth:

meteor update # the core to 1.9
meteor update --all-packages # all yet non-updated packages
rm -rf ./node_modules # remove modules
meteor npm outdated # check outdated npm packages
meteor npm install --save <...> # install all outdated
meteor # boom - it's running

No issues at all. I also had a very smooth update from 1.8.1 to 1.8.3 after all packages and npm modules were up to date.

5 Likes

We’ve not updated but I did see @koenlav comment on this issue which might be related to your problem. See this comment also

Thanks Mark for highlighting this. Seems related indeed.

Andreas

For who is using DDP-Apollo, I just made sure it also works with Meteor 1.9. (Or with node 12 to be more specific).

The latest version is 2.2.0. Enjoy!

5 Likes

@coagmano … it doesn’t work. When upgrading bcrypt to 2.0.0 node-pre-gyp install --fallback-to-build throws error 'cause pre-built binary is not available yet… Fortunately it does not prevent the app to run.

1 Like

@jabid, you need minimum version 3.0.6
See the bcrypt compatibility table:

1 Like

@coagmano I even tried 3.0.7 but it does not work and the issue is widely known bcrypt + node 12.
How did you solve it?

No idea, I updated and everything worked fine. I’m using Meteor 1.9 and "bcrypt": "^3.0.7"

To make sure I just re-installed using meteor npm ci:

> bcrypt@3.0.7 install /Users/fredstark/displayground/dg-cms/src/node_modules/bcrypt
> node-pre-gyp install --fallback-to-build

node-pre-gyp WARN Using needle for node-pre-gyp https download
[bcrypt] Success: "/Users/fredstark/displayground/dg-cms/src/node_modules/bcrypt/lib/binding/bcrypt_lib.node" is installed via remote

So it was able to fetch a pre-build binary from a remote server

Are you making sure to use meteor npm?

1 Like

Absolutely… meteor npm

Hello Everyone,

My name is Wisdom and I am a full stack developer, i have been using django + vue js for a while now not until i found out about Meteor js last week and i absolutely love it. To me, it is the best full stack framework ever created.

But there are some challenges i want to talk about, I have introduced meteor to all my developer friends using React and Angular and they all loved it, but they complained that it lacked enough tutorials and resources to help them get started faster.

They complained that the tutorials out there for Meteor are outdated due to the version changes leading to changes in project file structure unlike react which has a rich community with various tutorials and learning resources for different projects.

I would suggest that this community should help create Project based Courses and tutorials and publish them to youtube or any E-learning platform.

People need to know about this great framework and the only way to make it more popular like react is to create alot of tutorials (youtube), forums, Meteor hackathons e.t.c

Thanks
Wisdom.

12 Likes

After update Meteor to 1.9, do I see that the Cordova version is still 7.1.4, shouldn’t it be 9 (9.0.1) ?
Is it sufficient to update normally or do I have to do other steps ?

Cordova updates are coming in Meteor v.1.10.

2 Likes

im excited for 1.10 to come out

seems more complicated than that. Trying to update bcrypt fails rather verbosely.

@michelfloyd @jabid One thing to watch out for is the bcrypt team haven’t released pre-built binaries for Windows on 3.0.7+ (see github issue). You may need to set a max constraint to 3.0.6 if you are having trouble building from source.

3 Likes