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

Clarify why `meteor publish-for-arch` for your own architecture is necessary #3961

Closed
Sanjo opened this Issue Mar 18, 2015 · 8 comments

Comments

Projects
None yet
4 participants
@Sanjo
Contributor

Sanjo commented Mar 18, 2015

This is a user experience issue. Make it clear why you have to run meteor publish-for-arch for your own architecture and that you should do it on the build machine.

Cited @glasser for why to use the build machine for your own architecture from #3951 (comment).

To encourage people to use build machines which have a carefully chosen architecture (glibc, etc) which we've chosen to maximize the span of machines that the binaries will work on.

I think that you should communicate this in the build-for-arch message that comes after meteor publish. Until now I just used my own Macbook to build for my architecture. Also at first it was not clear that you have to build for you own architecture with meteor publish-for-arch again and why this necessary. It seemed redundant to me.

@aldeed

This comment has been minimized.

Contributor

aldeed commented Mar 19, 2015

👍

@glasser

This comment has been minimized.

Member

glasser commented Mar 24, 2015

I mean, the message already says "pre-configured to support older versions of MacOS and Linux" and then says "For more information on binary ABIs and consistent builds, see: https://github.com/meteor/meteor/wiki/Build-Machines" which has a whole section called "Why is it important to use pre-configured build machines? Why shouldn't I just publish from my laptop?"

I'm not sure how much clearer we can be without including the entire wiki page on the output of the command!

@glasser glasser closed this Mar 24, 2015

@aldeed

This comment has been minimized.

Contributor

aldeed commented Mar 24, 2015

@glasser, at the risk of sounding stupid, it took me a couple days of confusion to realize that you were no longer doing the build for the local machine arch. It's confusion about the change in the way it works, not about the way it works.

I think the current message is fine, but for people who have been doing it for a long time and don't necessarily expect it to change, it would have been nice to have "IMPORTANT!!! WE DIDN'T ACTUALLY BUILD ANYTHING JUST NOW. YOU MUST RUN PUBLISH-FOR-ARCH FOR EVERY OS, INCLUDING THIS ONE!" :)

@glasser glasser reopened this Mar 25, 2015

@glasser

This comment has been minimized.

Member

glasser commented Mar 25, 2015

OK, I see your point here. Can you suggest a specific wording change that will help, without making the already long message much longer? (I don't think we really need to include the reason why here, but making it more explicit what happened does seem good.

The convincing argument here is just that it's not super obvious that it didn't publish the build for your current arch, not that there's a change in Meteor's behavior... It's important to call out changes, but we don't want the message to forever contain stuff that is only relevant to the minority of users who will have been using Meteor since pre-1.0 days!

@aldeed

This comment has been minimized.

Contributor

aldeed commented Mar 26, 2015

Maybe expand this

This package contains binary code and must be built on multiple architectures.

To this

You're not done publishing! This package contains binary code and must now be built for every possible architecture. This must be done on the Meteor-provided build servers.

@aaronjudd

This comment has been minimized.

aaronjudd commented Mar 26, 2015

@aldeed thanks for feeling stupid before me. I wish it was meteor publish --arch-all that just took care of builds automatically - if a binary is detected, and leaving the option to manually publish on each arch...

Obviously, I really shouldn't be publishing manually anyways, but when you have a lot of packages to publish - this can get a bit tedious.

@glasser glasser closed this in 43b1c30 Mar 27, 2015

@glasser

This comment has been minimized.

Member

glasser commented Mar 27, 2015

Hopefully this is better!

@aldeed

This comment has been minimized.

Contributor

aldeed commented Mar 27, 2015

Seems like an improvement to me. Thanks!

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