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

--only-deps flag to `stack build` #310

Closed
mboes opened this Issue Jun 15, 2015 · 9 comments

Comments

Projects
None yet
3 participants
@mboes
Contributor

mboes commented Jun 15, 2015

For CI, it's useful to distinguish build dependencies from building project packages. Granted, in principle with Stackage the dependency building part of the build should not fail, but there might be combinations of flags for which it could, and it's useful to have the build time for the project counted separately from the build time for the rest.

Also, Travis CI now supports caching. With --only-deps, we could in theory builds the deps once, then have Travis cache that, then in subsequent runs it won't be necessary to rebuild the deps.

@snoyberg snoyberg added this to the First stable release (0.1.0.0?) milestone Jun 15, 2015

@snoyberg

This comment has been minimized.

Contributor

snoyberg commented Jun 15, 2015

Huh, interesting. I'm excited to check out the caching support.

@mboes

This comment has been minimized.

Contributor

mboes commented Jun 15, 2015

@snoyberg

This comment has been minimized.

Contributor

snoyberg commented Jun 15, 2015

Oh, it's the same caching I saw last time, which won't work on non-container builds (where container builds don't allow you to run sudo). That's disappointing.

Given that, I don't see any urgency on this feature, so deferring to later milestone.

@snoyberg snoyberg modified the milestones: Later improvements, First stable release (0.1.0.0?) Jun 15, 2015

@mboes

This comment has been minimized.

Contributor

mboes commented Jun 15, 2015

well, but do we need sudo? If we build stack from source, then build deps from source, and cache that, then this could significantly speed up the build process for most people.

Alternatively install the stack binary in a non-global location.

@snoyberg

This comment has been minimized.

Contributor

snoyberg commented Jun 15, 2015

I'm thinking about system libraries like gmp and zlib. I suppose we could put them in a user location and then LD_LIBRARY_PATH to make them available... that feels like a bad thing to do on a CI system though.

@radix

This comment has been minimized.

Contributor

radix commented Jun 15, 2015

gmp and zlib should already be installed on the travis nodes, so it shouldn't be necessary, right?

@snoyberg

This comment has been minimized.

Contributor

snoyberg commented Jun 15, 2015

I thought they weren't, but I haven't tested. I guess that's what we really need: a test project to try this out on. Someone wanna take a stab at it?

@mboes

This comment has been minimized.

Contributor

mboes commented Jun 15, 2015

snoyberg added a commit that referenced this issue Jun 16, 2015

@snoyberg

This comment has been minimized.

Contributor

snoyberg commented Jun 16, 2015

--only-snapshot flag added. @mboes confirmed?

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