-
Notifications
You must be signed in to change notification settings - Fork 842
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
Custom resolvers download external dependencies for each project using them #4198
Comments
That's indended, since external dependencies can change outside of stack's control they are always downloaded to the project's local snapshot. |
I'm confused. I thought "snapshotting" dependencies to have them unchanged from the moment on is the purpose of the custom snapshot. I have a list of git URLs and revisions in the resolver configuration, so every time I download them I should get same code... Could you provide more details on what could prevent stack from working properly in a case like this? |
https://www.fpcomplete.com/blog/2017/07/stacks-new-extensible-snapshots#custom-snapshots
But they aren't "shared in the package cache" 😞
But local paths are prohibited:
And now I wonder: why can't I take responsibility of maintaining sources unchanged if |
Sorry, I missread the issue, my bad. |
Oh. Let me know if I can be of assistance. |
I may sound like a broken record soon, but: this is being addressed by the pantry refactoring. It's not quite ready for testing, but the (By "not quite ready for testing," I mean that I haven't implemented the repo cloning code yet 😄.) |
This is a duplicate of #3551 |
Let's close in favor of #3551, since that one's the original. |
I want to build an custom resolver snapshot with a bunch of packages (all of them, actually 😟) from my local GIT repository. The download is fine (although I'd prerfer a shallow one), but instead of having a
STACK_ROOT
full of compiled packages I end up with eachSTACK_ROOT
-using project download a compile all the packages for themselves, wasting build time and space.Steps to reproduce
lts-12.4-extra.yaml
stack new exam --resolver=../lts-12.4-extra.yaml
cd exam
andstack build
it.(Optionally) Repeat 1 & 2 to make a few instances using the resolver.
Expected
Package source gets downloaded into
~/.stack/downloaded/...
to be shared across all the packages.Actual
Package source gets downloaded into
.stack-work/downloaded/...
of each package using the custom snapshot.Stack version
Method of installation
The text was updated successfully, but these errors were encountered: