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

Flag to constraint solver to a closed set of packages #2568

Closed
hvr opened this issue May 1, 2015 · 0 comments · Fixed by #5475
Closed

Flag to constraint solver to a closed set of packages #2568

hvr opened this issue May 1, 2015 · 0 comments · Fixed by #5475

Comments

@hvr
Copy link
Member

hvr commented May 1, 2015

Right now, cabal install can't be easily limited to use only an explicit set of packages (like e.g. the packages from the Haskell Platform) for constructing an install-plan, as you'd have to opt-out explicitly by adding --constraint "$PKG < 0" flags for each package you want to exclude from the install-plan.

As already mentioned in #2566 (comment) a more convenient opt-in way for limiting/filtering the set of packages the Cabal solver is allowed to consider for constructing install plans would be useful to have for me. After briefly discussing this with @kosmikus, here's a suggestion for how to model this in the UI:

Introduce a new CLI flag like e.g. --only-explicit-packages (modulo bikeshed), which has the effect of excluding all packages not explicitly mentioned by any --constraint (or in constraint: lines as created by cabal freeze) or as a cabal install goal.

/cc @kosmikus

quasicomputational added a commit to quasicomputational/cabal that referenced this issue Jul 31, 2018
Previously, even with freeze files, there was no good way to instruct
cabal-install to avoid pulling in extra, unconstrained
packages. `--only-explicit-packages` forces the solver to stay within
the set of packages that are either explicit goals, or which are
explicitly constrained in configuration files or via the
`--constraint` flag.

Closes haskell#2568.
quasicomputational added a commit to quasicomputational/cabal that referenced this issue Jul 31, 2018
Previously, even with freeze files, there was no good way to instruct
cabal-install to avoid pulling in extra, unconstrained
packages. `--require-explicit-packages=all` forces the solver to stay
within the set of packages that are either explicit goals, or which
are explicitly constrained in configuration files or via the
`--constraint` flag.

Closes haskell#2568.
quasicomputational added a commit to quasicomputational/cabal that referenced this issue Aug 4, 2018
Previously, even with freeze files, there was no good way to instruct
cabal-install to avoid pulling in extra, unconstrained
packages. `--require-explicit-packages=all` forces the solver to stay
within the set of packages that are either explicit goals, or which
are explicitly constrained in configuration files or via the
`--constraint` flag.

Closes haskell#2568.
quasicomputational added a commit to quasicomputational/cabal that referenced this issue Aug 6, 2018
This restricts the solver to a closed set of packages.

Previously, even with freeze files, there was no good way to instruct
cabal-install to avoid pulling in extra, unconstrained
packages. `--reject-unconstrained-dependencies=all` forces the solver
to stay within the set of packages that are either local packages,
explicit goals, or which are explicitly constrained in configuration
files or via the `--constraint` flag

Closes haskell#2568.
quasicomputational added a commit that referenced this issue Aug 6, 2018
This restricts the solver to a closed set of packages.

Previously, even with freeze files, there was no good way to instruct
cabal-install to avoid pulling in extra, unconstrained
packages. `--reject-unconstrained-dependencies=all` forces the solver
to stay within the set of packages that are either local packages,
explicit goals, or which are explicitly constrained in configuration
files or via the `--constraint` flag

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

Successfully merging a pull request may close this issue.

3 participants