Issues with the way Meteor builds local packages

We have meteor applications that share common in-house packages that we develop. Most of our code is in packages for reusability purposes. The packages are located in the source tree along with the apps and METEOR_PACKAGE_DIRS is used to help locate packages. When Meteor builds and application, it first goes through the packages and creates .npm directories in the package directories. My question is why does it modify a directory that is potentially shared by multiple applications instead of leaving the package directories alone and doing the package .npm expansion into the application’s directory.

Expanding .npm into the package’s directory:

  • prevents parallel builds of applications from being done (they all stomp on the same shared directory - the package’s .npm - and cause build failures)

  • different applications using different meteor versions mess up the .npm directories in the package directories that are shared. Combined with the first bullet point, disaster ensues.

Is there any plan to change this? Having all build output go into the application’s directory would resolve both of these issues. It would also make meteor reset really mean reset.