Meteor 1.3 *early beta* now available

Great to see this release! The “normal” npm support is one of the best things coming to Meteor so far. This really helps to get tons of awesome packages available in Meteor (server AND client) without any special (wrapper) workarounds. Love it!

6 Likes

Proper imports instead of globals is going to save me SO much time tracking down “system exited with error 1” when I’m trying to reference a global that doesn’t exist. I should get a real compiler error when I miss an import which is worlds better.

1 Like

I hope to see globals gone as soon as possible. Thank you for taking the logical first step towards that :sunny:

6 Likes

Anyone using Flow Router SSR & React? I am having tons of errors… had to revert back. Also, was having ‘unable to import’ from braintree npm modules.

1 Like

Have no fear, Ben is here!

Known issue, hopefully a fix soon!

1 Like

New release!

To update to the latest beta release, run the following command in your meteor project:

meteor update --release 1.3-modules-beta.4

Bugs fixed in this release:

14 Likes

That was quick! Awesome job!

I’ve gotta say, this is a really good direction for Meteor! I’m developing local NPM packages by npm linking them into my Meteor 1.3-beta.3 app, then if I make any changes to those locally-developed packages Meteor will automatically detect that and reload the client, which is really nice!

8 Likes

Am I right in my understanding that currently (beta.3) any npm package that uses any native node module (like net, tls, path etc) will not be possible to import?
e.g. I create a new project, npm init; npm install --save request then add import request from 'request'; to a server-only block, and get something like

(...) node_modules/request/request.js: could not resolve module "http"

when running meteor?

That looks like this bug:

Fixed in beta.4

Thanks @sashko, I was just scrolling up a bit and noticed and followed the GH bug link. Updating to beta.4, didn’t know it was out yet!

EDIT: Works, fantastic job & excellent timing on the release! :slight_smile:

It seems that Meteor 1.3 includes all style files from local packages. Even when they are not added by addFiles. Why is that?

Example:
I have package which have some .styl files in addFiles and some are just not used. They are in main package folder in for example /packages/my-package Now in 1.2 they are ignored and only those from addFiles are bundled and in 1.3 they are also bundled which is in my opinion wrong, but maybe I don’t have a broader view of something.

I’ll be grateful for all the tips. Thanks.

I’m using our xolvio:backdoor package, which allows you to run arbitrary code on the server using a method. This package is used by Chimp’s server.execute method, which allows tests to run code on the server.

I’d like to require modules at runtime from my tests like this:

server.execute(function() {
  const AccountHolder = require('./account-holder');
  const accountHolder = new AccountHolder();
});

I can’t use import since the code is not top-level of course, and require is undefined.

@benjamn is there a way to use require at runtime in 1.3? Or some other solution for my use-case?

2 Likes

I’ve upgraded to beta4 and my build time is now averaging around the ~9sec. I remember that beta2~3 used to be in the 2-3 sec range. Anyone else noticing this? No hard numbers on beta2 but it’s very noticible compared to using webpack:webpack which I don’t think works with 1.3…

1 Like

1.3 is probably toward the end of February.

According to the meeting notes of 20th Jan:

https://github.com/meteor/guide/blob/master/meeting-notes.md

4 Likes

I’ve got a weird issue: I used meteor create --release 1.3-modules-beta.5 myapp to create a project. In the browser none of the javascript on the template callbacks (onCreated etc) is working, and when I look at the files that were uploaded in the browser under the Sources tab, all my files are prefixed “template.” and contain java code to render the page’s html, rather than the source code for the js file.

E.g. rather than showing my javascript below for my testTemplate.js file

<template name="test_template"> <p> <a href="/">Back</a> <br/> Test template </p> </template>

Instead the template.testTemplate.js file on the browser is reported as:

Template.__checkName("test_template"); Template["test_template"] = new Template("Template.test_template", (function() { var view = this; return HTML.Raw('<p>\n <a href="/">Back</a> <br>\n Test template\n </p>'); }));

I’ve compared everything I can to the latest version of Todos but I can’t work out what’s going on?

@juliancwirko it was a bug that has been fixed. Not sure when the next beta release is though. See https://github.com/meteor/meteor/issues/5999

1 Like

Any chance your browser debugger has source maps turned off?

New release!

To update to the latest beta release, run the following command in your meteor project:

meteor update --release 1.3-modules-beta.5

New features: https://github.com/meteor/meteor/issues/5788#issuecomment-174621057

The Babel 6 upgrade was a pretty substantial change, so please keep an eye out for transform-related bugs!

4 Likes

Thanks for the reply, source maps (Java and CSS) are both enabled. I’m getting the same behaviour in Chrome, IE and FF (all on latest versions). All my other Meteor stuff is running fine, it’s weird.