This project is mirrored from https://github.com/haskell/Cabal.
Pull mirroring updated .
- Apr 19, 2024
-
-
This makes `withShorterPathForNewBuildStore` fit more nicely into the rest of the testing infrastructure. * Move `withShorterPathForNewBuildStore` to `TestM` monad * Move responsibility for passing `--store-dir` to `cabalGArgs` function * Move `findDependencyInStore` into `TestM`, and remove requirement to pass path to store directory. * Introduce `testStoreDir` function which returns the store location (and honours `withShorterPathForNewBuildStore`) * Migrate tests which use `withShorterPathForNewBuildStore`.
-
- Apr 18, 2024
-
-
mergify[bot] authored
update idna per dependabot / CVE-2024-3651
-
Brandon S. Allbery authored
-
mergify[bot] authored
Setup hooks
-
sheaf authored
This commit introduces a new build-type, Hooks. A package using this build type should provide a SetupHooks.hs module which exports a value `setupHooks :: SetupHooks`. This is intended to replace the Custom setup type. This allows Cabal to have finer-grained information about the build, instead of having an opaque Setup executable to invoke. Tests include: - error when returning an invalid component diff in a per-component pre-configure hook - error when declaring pre-build rules whose dependency graph contains cycles - error when we cannot find a dependency of a pre-build rule - warning when there are pre-build rules that are declared but never demanded - correctness tests for SetupHooks, e.g. that pre-build rules are run in dependency order (see the `SetupHooksRuleOrdering` test)
-
sheaf authored
This commit splits off the file monitoring types from cabal-install into the Cabal library, so that they can be referred to in pre-build rules for SetupHooks. This will allow package authors with Hooks build-type to monitor files and directories specified by globbing.
-
sheaf authored
This commit exposes installFileGlob as a generally useful part of the API which users might want to call, e.g. in their custom Setup scripts.
-
mergify[bot] authored
add squash+merge for backports
-
Brandon S. Allbery authored
-
- Apr 17, 2024
-
-
mergify[bot] authored
Add tests for #9799
-
Rodrigo Mesquita authored
Add tests for #9799 about freeze qualifying all packages with 'any' constraint scope.
-
mergify[bot] authored
Show abbreviated mixed versions with suffix
-
- Apr 16, 2024
-
-
mergify[bot] authored
Update cabal-install to allow time 1.14
-
Brandon S. Allbery authored
Note that #9848 covers Cabal and Cabal-syntax already.
-
mergify[bot] authored
GitLab CI: Shake up available platforms
-
Bryan R authored
* Use `arch` explicitly in both jobs. I don't know why x86_64 is the default, and I don't like it. * Stop using brew. This means a toolchain needs to already be installed where CI is run. This is the case today, although it's a bit fragile and I'll probably revisit it. * Use a matrix build to clean up the yml. * Use GHC 9.8.2 to work around GHC#24050
-
Bryan R authored
-
Bryan R authored
-
Bryan R authored
-
Tom Smeding authored
* Add a warning when an env file is created https://github.com/haskell/cabal/issues/6481#issuecomment-1934909998 * Formatting * Improve wording of warning message * Only show warning if --package-env not given * Improve message and its formatting * Formatting
-
- Apr 15, 2024
-
-
mergify[bot] authored
CI: stop validating GHC 7
-
andreas.abel authored
Changes: - bump GHC_FOR_RELEASE to 9.4.8 - bump action versions - uniform quoting style - satisfy actionlint - fix order: setup Haskell before cache restore (uses setup.haskell-outputs) - use `--ignore-project` in `cabal install hackage-repo-tool` - use GHC_FOR_RELEASE also in validate-old-ghcs - closes #8858: deleted comment - closes #9858 by dropping container and using ghcup to setup ghcs GHCs that do not install on ubuntu-22.04 with GHCup are dropped, meaning we only keep GHC 8.0.2 and up.
-
andreas.abel authored
This reverts commit a90d44ff.
-
Phil de Joux authored
- Use independent package name in doctest - Add changelog entry - Still use showOption when linked - Typo, package is cabal-install-solver - Rename showIsOrVs to showOptions - Add linked doctests for showOptions
-
- Apr 14, 2024
-
-
fendor authored
* Redesign 'cabal path' command to account for projects Previously, `cabal path` was only able to query from the global configuration file, e.g., `~/.cabal/config` or the XDG equivalent. Adding support for cabal project is a huge boost to usability. We take the foundations and turn them into `cabal v2-path` which takes project configuration, such as `cabal.project` into account. Note, the command is still named `cabal path`, but for the sake of disambiguation, we refer to this new iteration of the command as `cabal v2-path`. In addition, we add support for multiple output formats, such as key-value pairs and json. The key-value pair output prints a line for each queried key and its respective value: key1: value2 key2: value2 If only a single key is queried, we print only the value, for example: value1 The json output format is versioned by the cabal-install version which is part of the json object. Thus, all result objects contain at least the key "cabal-install-version". We expand the `cabal v2-path` to also produce information of the compiler that is going to be used in a `cabal build` or `cabal repl` invocation. To do that, we rebuild the install plan and query for the configured compiler program. This is helpful for downstream tools, such as HLS, to figure out the GHC version required to compile a project with. We also add an exhaustive test suite for 'cabal path' cmd We test that each query honours cabal.project files, cli parameters, and is composable with the other query flags. We extend the test output normalisers for ghc compiler location and cabal-install version, as the 'cabal path' command outputs the exact ghc and ghc-pkg location. In addition, the json output format is versioned on the cabal-install version. Currently, we query the cabal-install version on each test normalisation run. This might be unnecessary expensive, and could be avoided by introducing a 'cabalProgram' that specifies how the program version can be found. This way, we can cache the version query. Add '--cache-home' flag thats shows the cabal's cache root Rename '--cache-dir' to the more correct '--remote-repo-dir'. * Update 'cabal path' documentation * Add changelog.d entry --------- Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
- Apr 13, 2024
-
-
mergify[bot] authored
docs: correct references to location of global store
-
Adam Gundry authored
-
- Apr 12, 2024
-
-
mergify[bot] authored
Update setupMinCabalVersionConstraint for GHC 9.10
-
f-a authored
-
Mario authored
* Registered the NamedDefaults language extension * Added changelog and Vim configuration lines * Updated the expected hashes --------- Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
- Apr 11, 2024
-
-
fendor authored
Only use -Werror in validate
-
- Apr 09, 2024
-
-
Rodrigo Mesquita authored
-
- Apr 08, 2024
-
-
mergify[bot] authored
Remove unused packages
-
- Apr 07, 2024
-
-
mergify[bot] authored
testsuite: Add some unit tests for #9466 #9467
-
Matthew Pickering authored
These tests check how the setup qualified scope interacts with the stanza flags (specified on the top-level and with the any qualifier)
-
Matthew Pickering authored
These tests check how constraints interact with the --independent-goals flag.
-
Matthew Pickering authored
This adds two tests for issue #9467
-
- Apr 06, 2024
-
-
mergify[bot] authored
Update Cabal-syntax for bootstrap
-
Phil de Joux authored
-
Phil de Joux authored
-