Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Publishing package within project fails with stacktrace. #3676

Closed
cunneen opened this issue Feb 8, 2015 · 12 comments
Closed

Publishing package within project fails with stacktrace. #3676

cunneen opened this issue Feb 8, 2015 · 12 comments

Comments

@cunneen
Copy link

cunneen commented Feb 8, 2015

I got an error publishing a package, whose folder was located inside my meteor project. Cloning my repository to a folder on my Desktop allowed me to publish it.

I've noticed that the publish script seems to traverse the parent folder of the package being published. I've no idea why it should do this, but I suspect this to be the cause of the problem (I have a lot of local packages).

Transcript:

Mikes-MacBook-Air:signaturepad mikecunneen$ nvm use 0.10.33
Now using node v0.10.33
Mikes-MacBook-Air:signaturepad mikecunneen$ meteor logout
Logged out.                                   
Mikes-MacBook-Air:signaturepad mikecunneen$ meteor login
Username: cunneen
Password:                                     

Logged in as cunneen. Thanks for being a Meteor developer!
Mikes-MacBook-Air:signaturepad mikecunneen$   
Mikes-MacBook-Air:signaturepad mikecunneen$ meteor publish --create

/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/dev_bundle/lib/node_modules/fibers/future.js:173
                        throw(ex);
                              ^
Error: no pluginProviderPackageMap on isopack?
    at Error (<anonymous>)
    at bundleSource (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/package-client.js:286:11)
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/package-client.js:675:26
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:352:18
    at [object Object]._.extend.withValue (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/fiber-helpers.js:115:14)
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:345:34
    at [object Object]._.extend.withValue (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/fiber-helpers.js:115:14)
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:343:23
    at [object Object]._.extend.withValue (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/fiber-helpers.js:115:14)
    at Object.enterJob (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:317:26)
    at Object.exports.publishPackage (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/package-client.js:674:16)
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/commands-packages.js:422:21
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:264:13
    at [object Object]._.extend.withValue (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/fiber-helpers.js:115:14)
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:257:29
    at [object Object]._.extend.withValue (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/fiber-helpers.js:115:14)
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:255:18
    at [object Object]._.extend.withValue (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/fiber-helpers.js:115:14)
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:246:23
    at [object Object]._.extend.withValue (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/fiber-helpers.js:115:14)
    at Object.capture (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/buildmessage.js:245:19)
    at Object.main.captureAndExit (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/main.js:257:29)
    at Command.main.registerCommand.name [as func] (/Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/commands-packages.js:418:8)
    at /Users/mikecunneen/.meteor/packages/meteor-tool/.1.0.40.7hh5tw++os.osx.x86_64+web.browser+web.cordova/meteor-tool-os.osx.x86_64/tools/main.js:1300:23

Mikes-MacBook-Air:signaturepad mikecunneen$ cd ~/Desktop/meteor-signature-pad/
Mikes-MacBook-Air:meteor-signature-pad mikecunneen$ meteor publish --create
Published cunneen:signature-pad@1.0.0.        

@awatson1978
Copy link
Contributor

+1
Having run into this problem a few times now. It would be really great to be able to publish from within the /packages directory. Is this description sufficient for a reproduction, or does MDG need something more detailed?

@glasser
Copy link
Contributor

glasser commented Feb 10, 2015

This is supposed to work. Please provide a full reproduction as described in: https://github.com/meteor/meteor/wiki/Contributing-to-Meteor#reporting-a-bug-in-meteor Without a way to replicate your problem, we can't debug and fix it.

@glasser
Copy link
Contributor

glasser commented Mar 4, 2015

OK, I see what's going on here.

I think this is a crash that happens only when you're running inside an app (as you mentioned), and the publish command doesn't have to rebuild the package because you've run some command that built it (eg just meteor) since the last time you've changed it.

(I think if you had tried to make a minimal reproduction as suggested in https://github.com/meteor/meteor/wiki/Contributing-to-Meteor#reporting-a-bug-in-meteor you may have figured that out.)

Looking into fixing it now.

@glasser
Copy link
Contributor

glasser commented Mar 4, 2015

Aha, and it also only happens if you have a mobile platform in your app.

@glasser glasser closed this as completed in 9c210f8 Mar 4, 2015
@raix
Copy link
Contributor

raix commented Mar 4, 2015

Christ, we just spent hours on merging all core packages into one repo - we thought it was clever to place them in a packages folder in a meteor QA app - Making it easier for new comers and first time contributors to get started on the cfs project.

Having each package in separate repos makes it impossible to maintain and track issue + cfs with all it's minor packages becomes hard to get an overview (much like on the iron:router)

I was getting the no pluginProviderPackageMap on isopack? error when trying to publish - bummer, we haven't added any mobile platforms yet - but that would have been the next step, having the automated QA run tests on multiple devices.

cc @aldeed submodule the packages folder?

@raix
Copy link
Contributor

raix commented Mar 4, 2015

@aldeed: maybe I'll just add it to the publish script - move .meteor to temp folder while publishing...

@aldeed
Copy link
Contributor

aldeed commented Mar 4, 2015

@raix, I think next Meteor release is coming soon so maybe we just workaround with a script like you say until this fix is released.

@glasser
Copy link
Contributor

glasser commented Mar 4, 2015

For a workaround, you can do rm -rf .meteor/local/isopacks before the publish.

I'm surprised to hear that people are seeing this issue in apps with no cordova platforms though!

@raix
Copy link
Contributor

raix commented Mar 4, 2015

Ok, thanks @glasser - it's a plain app for now https://github.com/CollectionFS/Meteor-CollectionFS
(will removing isopachs have any affect on the app if running?)

@glasser
Copy link
Contributor

glasser commented Mar 4, 2015

Ok, I'm surprised that you can trigger the bug that way, but ok.

The isopack directory is just a cache so you should be fine.

@glasser
Copy link
Contributor

glasser commented Mar 4, 2015

Ah, I think the bug could also happen if you run publish two times in a row without running a non-publish command in the middle. (The bug happens if there is a cached version of the isopack which was built with cordova unibuilds (which are always included in publish commands), which is either because the last command was in a cordova-ified app, or because the last command was a publish command.)

@raix
Copy link
Contributor

raix commented Mar 4, 2015

Ok, makes sense (had one successful publish)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants