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

Use prebuild-install as dependency #148

Closed
piranna opened this issue Dec 11, 2016 · 6 comments
Closed

Use prebuild-install as dependency #148

piranna opened this issue Dec 11, 2016 · 6 comments

Comments

@piranna
Copy link
Member

piranna commented Dec 11, 2016

Since prebuild-install package is a stripped-down version of prebuild just to download and install the images, use it as dependency instead of having two codes for the download step that would became divergent in the future and lead to problems by having two different versions.

@lgeiger
Copy link
Member

lgeiger commented Dec 11, 2016

I didn't know about prebuild-install and instead tried to reduce the package size of prebuild in #144

That said I really like the idea of having two separate modules. Though I think we should make them exclusive.
One for handling the downloading, the other only handling the developer part. I think this would be clearer for users instead of having two tools doing the same thing.

In fact prebuild and prebuild-install have already diverged a bit since the latest release.

Hence it may make sense to maintain them in the same repo despite shipping two different npm packages. Tools like Lerna help with managing such monorepos.

I'm happy to make PRs for this.

@piranna
Copy link
Member Author

piranna commented Dec 11, 2016

That said I really like the idea of having two separate modules. Though I think we should make them exclusive.

I would agree on that, I only asked about having it as dependency just to don't break backwards compatibility up to some degree.

Hence it may make sense to maintain them in the same repo despite shipping two different npm packages.

I think it makes sense to have them as two independent projects as they are currently being done, the only common place is the "protocol", that's mostly just targz files published as github releases, no more...

@lgeiger
Copy link
Member

lgeiger commented Dec 11, 2016

I think it makes sense to have them as two independent projects as they are currently being done, the only common place is the "protocol", that's mostly just targz files published as github releases, no more...

I thought they share a lot of code in util.js but that's not the case. The easiest thing it probably to keep them separate.

@lgeiger
Copy link
Member

lgeiger commented Dec 29, 2016

I see two possibilities for reducing the effort of maintaining prebuild and prebuild-install:

  1. Remove all install and download related code from prebuild and advice users to use prebuild-install as a dependency and prebuild only for generating the prebuilts. This will significantly (approx. 10MB) reduce the download size of the prebuilt module.

  2. Keep the current functionality and use prebuilt-install to handle the downloading.

I'm in favor of the first option since it doesn't introduce duplicated functionality, is easier to maintain and promotes a cleaner workflow for users.

What do you think?

@piranna
Copy link
Member Author

piranna commented Dec 29, 2016

What do you think?

+1000 to first option (prebuild and prebuild-install as independent but inter-related modules), specially for the cleaner wofkflow argument.

@ralphtheninja
Copy link
Member

Remove all install and download related code from prebuild and advice users to use prebuild-install as a dependency and prebuild only for generating the prebuilts. This will significantly (approx. 10MB) reduce the download size of the prebuilt module.

Agreed.

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

No branches or pull requests

3 participants