Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/haskell/Cabal. Pull mirroring updated .
  1. Jul 18, 2024
  2. Jul 06, 2024
  3. Jun 25, 2024
  4. Apr 30, 2024
  5. Apr 18, 2024
    • sheaf's avatar
      Introduce SetupHooks · c5f99331
      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)
      c5f99331
  6. Mar 01, 2024
    • Matthew Pickering's avatar
      Allow using different Cabal library versions for `cabal-install` tests with custom setup. · 716b109c
      Matthew Pickering authored
      The idea here is to pass a `--package-db` flag to `cabal-install` which
      contains just `Cabal` and `Cabal-syntax` of the specific version. This
      allows `cabal-install` tests to use the in-tree `Cabal` version,
      something which you can easily run into and get very confused about when
      writing tests.
      
      There are a few options which can be passed to `cabal-tests` executable
      to control which Cabal library you will test against.
      
      1. --boot-cabal-lib specifies to use the Cabal library bundled with the
         test compiler, this is the default and existing behaviour of the
         testsuite.
      2. --intree-cabal-lib=<root_dir> specifies to use Cabal and Cabal-syntax
         from a specific directory, and `--test-tmp` indicates where to put
         the package database they are built with.
      3. --specific-cabal-lib=<VERSION> specifies to use a specific Cabal
         version from hackage (ie 3.10.2.0) and installs the package database
         into --test-tmp=<DIR>
      
      The end result is that changes in the Cabal library can be tested with
      cabal-install tests in the testsuite.
      
      There have been a number of confusing issues with people writing tests
      for changes in the Cabal library which never ran because of
      cabal-install tests always used the boot Cabal library (see #9425
      for one).
      
      Fixes #9681
      716b109c
  7. Jan 08, 2024
  8. Jul 11, 2023
  9. Apr 17, 2023
  10. Apr 13, 2023
  11. Sep 04, 2022
  12. May 02, 2022
  13. Mar 27, 2022
  14. Mar 16, 2022
  15. Mar 15, 2022
  16. May 02, 2021
    • Emily Pillmore's avatar
      Update CI for cabal-install and cabal-install-solver · bf8dff54
      Emily Pillmore authored
      * Changes needed for GenValidate and release.py to
        accommmodate new solver dependency
      * Bumps bootstrap plans to modern GHC versions
      * Update `validate.sh` and `release.py` to accommodate new solver dep.
      * Update `Makefile` targets
      bf8dff54
  17. Oct 13, 2020
    • Oleg Grenrus's avatar
      Move tests from Cabal to Cabal-tests package · 579bff0c
      Oleg Grenrus authored
      The are various motivation points:
      - I'm not aware anyone third party running Cabal tests (maybe nixpkgs?)
      - No need to do gen-extra-source-files, as Cabal-tests is not distributed
      - No multiple rebuilds of Cabal-QuickCheck, Cabal-tree-diff
      - Slightly smaller Cabal sdist (which is quite big still)
      579bff0c
  18. Jul 22, 2020
  19. Jun 02, 2020
  20. Apr 13, 2020
  21. Dec 29, 2019
  22. Dec 25, 2019
  23. Dec 18, 2019
  24. Dec 11, 2019
  25. Dec 10, 2019
  26. Nov 07, 2019
    • Dale Wijnand's avatar
      validate.sh: Allow using short-version ghc binaries, like ghc-8.6 · a6ada849
      Dale Wijnand authored
      Previously this would work until CABAL_TESTSUITE_BDIR was needed, at
      which point it would fail because it looked for things under
      .../ghc-8.6/... while cabal v2-build actually put them in
      .../ghc-8.6.5/...
      
      Hard-coding "ghc" is unfortunate, but I didn't know if there was an easy
      way to avoid it.  I also didn't want to over-complicate it, until it was
      necessary.
      
      validate.sh isn't tested in CI so...
      [ci skip]
      a6ada849
  27. Nov 06, 2019
    • Dale Wijnand's avatar
      validate.sh: Fix cabal-plan invocation · c0e41763
      Dale Wijnand authored
      In recent versions of cabal-plan the --builddir= flag has become a
      non-global flag; i.e. it needs to be placed after the sub-command rather
      than before.
      
      `validate.sh` isn't tested in CI so...
      [ci skip]
      c0e41763
  28. Jul 06, 2019
  29. Mar 09, 2019
  30. Mar 03, 2019
Loading