summaryrefslogtreecommitdiff
path: root/libraries/Cabal
Commit message (Collapse)AuthorAgeFilesLines
* Update submodule mtl to 2.3.1, parsec to 3.1.15.1, haddock and Cabal to HEADBodigrim2022-12-081-0/+0
|
* implement proposal 106 (Define Kinds Without Promotion) (fixes #6024)Ross Paterson2022-09-271-0/+0
| | | | includes corresponding changes to haddock submodule
* Bump submodule Cabal to one with liftA2 warnings fixedGeorgi Lyubenov2022-09-081-0/+0
|
* Update submodule Cabal to tag Cabal-v3.8.1.0wip/9.4-foward-fixed-makeDouglas Wilson2022-08-311-0/+0
| | | | closes #21931
* Bump Cabal submoduleBen Gamari2022-06-011-0/+0
| | | | | | To current `master`. (cherry picked from commit fbb59c212415188486aafd970eafef170516356a)
* Bump Cabal submoduleBen Gamari2022-04-061-0/+0
| | | | | | - Disable support for library-for-ghci on Windows as described in #21068. - Teach Cabal to use `ar -L` when available
* Bump Cabal submoduleBen Gamari2022-02-101-0/+0
| | | | | | | | | Adapts GHC to the factoring-out of `Cabal-syntax`. Fixes #20991. Metric Decrease: haddock.Cabal
* Cabal: Update submoduleMatthew Pickering2021-12-291-0/+0
| | | | Closes #20874
* Bump Cabal submoduleBen Gamari2021-11-181-0/+0
|
* Bump Win32 to 2.13.0.0GHC GitLab CI2021-03-261-0/+0
| | | | Bumps Win32 submodule.
* Bump bytestring submodule to 0.11.1.0Ben Gamari2021-03-101-0/+0
|
* Fix array and cleanup conversion primops (#19026)Sylvain Henry2021-03-031-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The first change makes the array ones use the proper fixed-size types, which also means that just like before, they can be used without explicit conversions with the boxed sized types. (Before, it was Int# / Word# on both sides, now it is fixed sized on both sides). For the second change, don't use "extend" or "narrow" in some of the user-facing primops names for conversions. - Names like `narrowInt32#` are misleading when `Int` is 32-bits. - Names like `extendInt64#` are flat-out wrong when `Int is 32-bits. - `narrow{Int,Word}<N>#` however map a type to itself, and so don't suffer from this problem. They are left as-is. These changes are batched together because Alex happend to use the array ops. We can only use released versions of Alex at this time, sadly, and I don't want to have to have a release thatwon't work for the final GHC 9.2. So by combining these we get all the changes for Alex done at once. Bump hackage state in a few places, and also make that workflow slightly easier for the future. Bump minimum Alex version Bump Cabal, array, bytestring, containers, text, and binary submodules
* Bump time submodule to 1.11.1Ben Gamari2020-11-221-0/+0
| | | | | | Also bumps directory, Cabal, hpc, time, and unix submodules. Closes #18847.
* Bump Cabal, hsc2hs, directory, process submodulesBen Gamari2020-09-301-0/+0
| | | | Necessary for recent Win32 bump.
* Bump submodulesBen Gamari2020-09-231-0/+0
| | | | | | * Bump bytestring to 0.10.12.0 * Bump Cabal to 3.4.0.0-rc3 * Bump Win32 to 2.10.0.0
* Bump Win32 submodule to 2.9.0.0Ben Gamari2020-09-171-0/+0
| | | | Also bumps Cabal, directory
* Bump Cabal submoduleBen Gamari2020-07-151-0/+0
| | | | | Updates a variety of tests as Cabal is now more strict about Cabal file form.
* Simple subsumptionwip/T17775Simon Peyton Jones2020-06-051-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch simplifies GHC to use simple subsumption. Ticket #17775 Implements GHC proposal #287 https://github.com/ghc-proposals/ghc-proposals/blob/master/ proposals/0287-simplify-subsumption.rst All the motivation is described there; I will not repeat it here. The implementation payload: * tcSubType and friends become noticably simpler, because it no longer uses eta-expansion when checking subsumption. * No deeplyInstantiate or deeplySkolemise That in turn means that some tests fail, by design; they can all be fixed by eta expansion. There is a list of such changes below. Implementing the patch led me into a variety of sticky corners, so the patch includes several othe changes, some quite significant: * I made String wired-in, so that "foo" :: String rather than "foo" :: [Char] This improves error messages, and fixes #15679 * The pattern match checker relies on knowing about in-scope equality constraints, andd adds them to the desugarer's environment using addTyCsDs. But the co_fn in a FunBind was missed, and for some reason simple-subsumption ends up with dictionaries there. So I added a call to addTyCsDs. This is really part of #18049. * I moved the ic_telescope field out of Implication and into ForAllSkol instead. This is a nice win; just expresses the code much better. * There was a bug in GHC.Tc.TyCl.Instance.tcDataFamInstHeader. We called checkDataKindSig inside tc_kind_sig, /before/ solveEqualities and zonking. Obviously wrong, easily fixed. * solveLocalEqualitiesX: there was a whole mess in here, around failing fast enough. I discovered a bad latent bug where we could successfully kind-check a type signature, and use it, but have unsolved constraints that could fill in coercion holes in that signature -- aargh. It's all explained in Note [Failure in local type signatures] in GHC.Tc.Solver. Much better now. * I fixed a serious bug in anonymous type holes. IN f :: Int -> (forall a. a -> _) -> Int that "_" should be a unification variable at the /outer/ level; it cannot be instantiated to 'a'. This was plain wrong. New fields mode_lvl and mode_holes in TcTyMode, and auxiliary data type GHC.Tc.Gen.HsType.HoleMode. This fixes #16292, but makes no progress towards the more ambitious #16082 * I got sucked into an enormous refactoring of the reporting of equality errors in GHC.Tc.Errors, especially in mkEqErr1 mkTyVarEqErr misMatchMsg misMatchMsgOrCND In particular, the very tricky mkExpectedActualMsg function is gone. It took me a full day. But the result is far easier to understand. (Still not easy!) This led to various minor improvements in error output, and an enormous number of test-case error wibbles. One particular point: for occurs-check errors I now just say Can't match 'a' against '[a]' rather than using the intimidating language of "occurs check". * Pretty-printing AbsBinds Tests review * Eta expansions T11305: one eta expansion T12082: one eta expansion (undefined) T13585a: one eta expansion T3102: one eta expansion T3692: two eta expansions (tricky) T2239: two eta expansions T16473: one eta determ004: two eta expansions (undefined) annfail06: two eta (undefined) T17923: four eta expansions (a strange program indeed!) tcrun035: one eta expansion * Ambiguity check at higher rank. Now that we have simple subsumption, a type like f :: (forall a. Eq a => Int) -> Int is no longer ambiguous, because we could write g :: (forall a. Eq a => Int) -> Int g = f and it'd typecheck just fine. But f's type is a bit suspicious, and we might want to consider making the ambiguity check do a check on each sub-term. Meanwhile, these tests are accepted, whereas they were previously rejected as ambiguous: T7220a T15438 T10503 T9222 * Some more interesting error message wibbles T13381: Fine: one error (Int ~ Exp Int) rather than two (Int ~ Exp Int, Exp Int ~ Int) T9834: Small change in error (improvement) T10619: Improved T2414: Small change, due to order of unification, fine T2534: A very simple case in which a change of unification order means we get tow unsolved constraints instead of one tc211: bizarre impredicative tests; just accept this for now Updates Cabal and haddock submodules. Metric Increase: T12150 T12234 T5837 haddock.base Metric Decrease: haddock.compiler haddock.Cabal haddock.base Merge note: This appears to break the `UnliftedNewtypesDifficultUnification` test. It has been marked as broken in the interest of merging. (cherry picked from commit 66b7b195cb3dce93ed5078b80bf568efae904cc5)
* Bump Cabal submoduleBen Gamari2020-02-141-0/+0
|
* Update to Cabal submodule to v3.2.0.0-alpha3Oleg Grenrus2020-01-041-0/+0
| | | | | Metric Increase: haddock.Cabal
* Bump Cabal submodule to 3.1Sebastian Graf2019-09-121-0/+0
| | | | | | | | ------------------------- Metric Increase: haddock.Cabal T4029 -------------------------
* Bump Cabal submodule to what will become 3.0.0.0Ben Gamari2019-06-251-0/+0
| | | | | Metric Increase: haddock.Cabal
* Bump Cabal submoduleBen Gamari2019-06-121-0/+0
| | | | | | | (cherry picked from commit ff438786613f07df9b2d43eaeac49b13815d849d) Metric Increase: haddock.Cabal
* Bump cabal submoduleBen Gamari2019-03-211-0/+0
| | | | Due to https://github.com/haskell/cabal/issues/5953.
* Bump Cabal submodule to 3.0Ben Gamari2019-03-191-0/+0
| | | | | Metric Increase: haddock.Cabal
* Build and copy libffi shared libraries correctly and enable dynamically ↵David Eichmann2019-02-221-0/+0
| | | | | | | | | | | | | | linking ghc. Test Plan: Ensure build environment does NOT have a system libffi installed (you may want to use a nix environment). Then `hadrian/build.sh -c --flavour=default` Reviewers: bgamari Subscribers: rwbarton, carter GHC Trac Issues: #15837
* Update Cabal submodule to latest master branch tipHerbert Valerio Riedel2019-01-271-0/+0
|
* Bump Cabal submoduleRyan Scott2019-01-151-0/+0
|
* Update `Cabal` submoduleHerbert Valerio Riedel2019-01-141-0/+0
| | | | | | | This also requires adapting `ghc-pkg` to use the new Cabal parsing API as the old ReadP-based one has finally been evicted for good. Hadrian bit finished by: Ben Gamari <ben@smart-cactus.org>
* Hadrian: bump Cabal submodule, install extra dynamic flavours of RTSAlp Mestanogullari2018-11-291-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, Hadrian was building all the appropriate dynamic ways for libHSrts but they were not picked up and installed in the package database when we register the rts library. Since we use Cabal for registering packages and the .cabal files of packages as sources of truth for configuring and installing, we ended up patching Cabal to add a new field, 'extra-dynamic-library-flavours', to specify those extra flavours to install in .cabal files: https://github.com/haskell/cabal/pull/5606 We now make use of this in rts.cabal.in to expose dynamic flavours behind a Cabal flag, which Hadrian will use whenever we are building a GHC flavour that requires dynamic libraries. This is all part of a larger plan to build a dynamic stage 2 GHC by default, like with make, which in turn will fix a lot of test failures. See Test Plan: hadrian/build.sh _build/stage1/lib/package.conf.d/rts-1.0.conf _build/stage1/lib/x86_64-.../ should contain many libHSrts-*.so Reviewers: snowleopard, DavidEichmann, bgamari, erikd, simonmar Reviewed By: snowleopard, DavidEichmann Subscribers: rwbarton, carter GHC Trac Issues: #15837 Differential Revision: https://phabricator.haskell.org/D5385
* Fix unused-import warningsDavid Eichmann2018-11-221-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes a fairly long-standing bug (dating back to 2015) in RdrName.bestImport, namely commit 9376249b6b78610db055a10d05f6592d6bbbea2f Author: Simon Peyton Jones <simonpj@microsoft.com> Date: Wed Oct 28 17:16:55 2015 +0000 Fix unused-import stuff in a better way In that patch got the sense of the comparison back to front, and thereby failed to implement the unused-import rules described in Note [Choosing the best import declaration] in RdrName This led to Trac #13064 and #15393 Fixing this bug revealed a bunch of unused imports in libraries; the ones in the GHC repo are part of this commit. The two important changes are * Fix the bug in bestImport * Modified the rules by adding (a) in Note [Choosing the best import declaration] in RdrName Reason: the previosu rules made Trac #5211 go bad again. And the new rule (a) makes sense to me. In unravalling this I also ended up doing a few other things * Refactor RnNames.ImportDeclUsage to use a [GlobalRdrElt] for the things that are used, rather than [AvailInfo]. This is simpler and more direct. * Rename greParentName to greParent_maybe, to follow GHC naming conventions * Delete dead code RdrName.greUsedRdrName Bumps a few submodules. Reviewers: hvr, goldfire, bgamari, simonmar, jrtc27 Subscribers: rwbarton, carter Differential Revision: https://phabricator.haskell.org/D5312
* Bump time submoduleBen Gamari2018-11-021-0/+0
|
* Bump Cabal submoduleBen Gamari2018-10-041-0/+0
|
* Yet another Cabal submodule bumpBen Gamari2018-08-071-0/+0
|
* Bump Cabal submoduleBen Gamari2018-08-071-0/+0
|
* Bump Cabal submoduleBen Gamari2018-08-031-0/+0
|
* Bump Cabal submoduleBen Gamari2018-07-311-0/+0
|
* containers: Bump to 0.6.0.1Ben Gamari2018-06-201-0/+0
| | | | Bumps containers submodule, among others.
* Revert "containers: Bump to 0.6.0.1"Ben Gamari2018-06-191-0/+0
| | | | | | | | This reverts commit 50e7bff7514ebbd74976c1a9fa0db7a8275178ae. Reverts submodule changes. Sigh, the haskeline commit isn't quite upstream yet.
* containers: Bump to 0.6.0.1Ben Gamari2018-06-191-0/+0
| | | | Bumps containers submodule, among others.
* Bump Cabal submoduleBen Gamari2018-06-101-0/+0
| | | | Fixes #15254.
* Update Cabal submoduleSimon Marlow2018-05-171-0/+0
|
* Bump unix submodule to version 2.8.0.0Ryan Scott2018-04-191-0/+0
| | | | | | | | | | | | | | Summary: Requires bumping several submodules. Test Plan: ./validate Reviewers: hvr, bgamari Subscribers: thomie, carter GHC Trac Issues: #15042 Differential Revision: https://phabricator.haskell.org/D4604
* Bump Cabal submoduleBen Gamari2018-03-121-0/+0
|
* Bump Cabal submoduleBen Gamari2018-03-031-0/+0
|
* Bump Cabal submodule to 2.2Moritz Angermann2018-03-031-0/+0
| | | | | | | | | | | | | | Requires some ghc-cabal changes as well. Test Plan: ./validate Reviewers: hvr, bgamari Reviewed By: bgamari Subscribers: hsyl20, erikd, alpmestan, rwbarton, thomie, carter Differential Revision: https://phabricator.haskell.org/D4453
* Bump Cabal submoduleBen Gamari2018-02-051-0/+0
|
* Update Cabal submoduleOleg Grenrus2018-01-211-0/+0
| | | | | | | | | | | | | | | | - Cabal-2.2 uses SPDX license identifiers, so I had to update `cabal-version: 2.1` packages `license: BSD3` to `license: BSD-3-Clause` - `ghc-cabal` used old ReadP parsec, now it uses `parsec` too - InstalledPackageInfo pretty-printing have changed a little, fields with default values aren't printed. This can be changed in `Cabal` still, but I haven't found problems with omitting them. Note: `BSD-3-Clause` is parsed as "name = BSD, version = 3" by old parser (because 3-Clause looks like version 3 with tag Clause). If you see *"BSD-3" is not a valid license*, then something is using old parser still. Fixes #9885.
* Bump Cabal submoduleBen Gamari2017-12-221-0/+0
|
* GHC.Prim use virtual-modulesMoritz Angermann2017-11-181-0/+0
| | | | | | | | | | | | | | | Stop the GHC.Prim madness with `virtual-module` support from cabal. Needs https://github.com/haskell/cabal/pull/4875. Bumps submodule libraries/Cabal to include the necessary logic for `virtual-module`. Reviewers: bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4179