Import not needed after "meteor update"


I updated my project to meteor and I hoped that everything will be needed to import.
But there was surprise - every packages, meteor component (Template, Session, Blaze) are working without import (so it’s still global). Why it’s like that? Some backwards compatibility or some thing?


Correct. Check the Guide for more information:

Since this is a new feature introduced in Meteor 1.3, you will find a lot of code online that uses the older, more centralized conventions built around packages and apps declaring global symbols. This old system still works, so to opt-in to the new module system code must be placed inside the imports/ directory in your application. We expect a future release of Meteor will turn on modules by default for all code, because this is more aligned with how developers in the wider JavaScript community write their code.

(My highlighting).


Heh, if we required everything to be imported to update to the new version, literally nobody would do it, including our own Galaxy team.

This is easily enforced using ESLint, though - you can use it to ensure no global variables.