| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ghc-bignum is a newer package that aims to replace the legacy
integer-simple and integer-gmp packages.
* it supports several backends. In particular GMP is still supported and
most of the code from integer-gmp has been merged in the "gmp"
backend.
* the pure Haskell "native" backend is new and is much faster than the
previous pure Haskell implementation provided by integer-simple
* new backends are easier to write because they only have to provide a
few well defined functions. All the other code is common to all
backends. In particular they all share the efficient small/big number
distinction previously used only in integer-gmp.
* backends can all be tested against the "native" backend with a simple
Cabal flag. Backends are only allowed to differ in performance, their
results should be the same.
* Add `integer-gmp` compat package: provide some pattern synonyms and
function aliases for those in `ghc-bignum`. It is intended to avoid
breaking packages that depend on `integer-gmp` internals.
Update submodules: text, bytestring
Metric Decrease:
Conversions
ManyAlternatives
ManyConstructors
Naperian
T10359
T10547
T10678
T12150
T12227
T12234
T12425
T13035
T13719
T14936
T1969
T4801
T4830
T5237
T5549
T5837
T8766
T9020
parsing001
space_leak_001
T16190
haddock.base
On ARM and i386, T17499 regresses (+6% > 5%).
On x86_64 unregistered, T13701 sometimes regresses (+2.2% > 2%).
Metric Increase:
T17499
T13701
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid initial close warning of form:
```
Cloning into 'exceptions'...
warning: redirecting to https://gitlab.haskell.org/ghc/packages/exceptions.git/
```
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
|
|
|
| |
Haskeline now depends upon exceptions. See #16752.
|
|
|
|
| |
This makes it match the others
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The relative URLs were a workaround to let most contributors fork from
Github due to a weakness in the haskell.org server.
This workaround is no longer needed. And relative submodule URLs are
an impediment to forking which makes contributions harder than they
should be.
The URLs are chosen to clone from https, because this makes sure that
anybody, even not a registered Gitlab user, can clone a fork
recursively.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
`parallel` is used in exactly one place in the GHC tree: the T2317 test.
It seems almost by accident that it is a submodule; libraries needed
only for tests should net be included as submodules (see `QuickCheck`,
`async`, `haskell98`, `regex-compat`, `utf8-string`, `vector` and more
for examples).
T2317 will now get run only when `parallel` is installed instead of
`parallel` being required for the testsuite to run.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
These packages were removed from the GHC source tree in
Phab:D4761 and 0905fec089b3270f540c7ee33959cbf8ecfcb4d7.
Reviewers: RyanGlScott, bgamari
Reviewed By: RyanGlScott
Subscribers: rwbarton, carter
Differential Revision: https://phabricator.haskell.org/D5095
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Implement the "Embrace Type :: Type" GHC proposal,
.../ghc-proposals/blob/master/proposals/0020-no-type-in-type.rst
GHC 8.0 included a major change to GHC's type system: the Type :: Type
axiom. Though casual users were protected from this by hiding its
features behind the -XTypeInType extension, all programs written in GHC
8+ have the axiom behind the scenes. In order to preserve backward
compatibility, various legacy features were left unchanged. For example,
with -XDataKinds but not -XTypeInType, GADTs could not be used in types.
Now these restrictions are lifted and -XTypeInType becomes a redundant
flag that will be eventually deprecated.
* Incorporate the features currently in -XTypeInType into the
-XPolyKinds and -XDataKinds extensions.
* Introduce a new extension -XStarIsType to control how to parse * in
code and whether to print it in error messages.
Test Plan: Validate
Reviewers: goldfire, hvr, bgamari, alanz, simonpj
Reviewed By: goldfire, simonpj
Subscribers: rwbarton, thomie, mpickering, carter
GHC Trac Issues: #15195
Differential Revision: https://phabricator.haskell.org/D4748
|
|
|
|
|
| |
It will remain a submodule until we are ready to merge Hadrian into the
tree.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ignore all untracked changes in all submodules from the top level.
This matches the older settings for the other submodules and stops
litering `git status` output with files created by ./boot and make.
Reviewers: austin, bgamari
Reviewed By: bgamari
Subscribers: hvr, rwbarton, thomie
Differential Revision: https://phabricator.haskell.org/D3899
|
| |
|
| |
|
|
|
|
| |
This reverts commit 8d4bce42de7929b0dec7e7d68e66bcfc4d266322.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is rather annoying. I'd prefer to have a stable release to
use. However libffi-3.2.1 has been released November 12, 2014, and
libffi-4 is TBD. See also https://github.com/libffi/libffi/issues/296
The core reason for this change is that llvm changed the supported
assembly to unified syntax, which libffi-3.2.1 does not use, and hence
fails to compile for arm with llvm. For refence, see the following
issue: https://github.com/libffi/libffi/issues/191
Reviewers: austin, bgamari
Reviewed By: bgamari
Subscribers: rwbarton, thomie, snowleopard
Differential Revision: https://phabricator.haskell.org/D3349
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The submodule repository contains the latest version of the GMP source
distribution (6.1.2) with the doc/ subdirectory removed, as described
in gmp/ghc.mk. Rather than applying the old patch from gmp/tarball/patch
I moved its contents into gmp/gmpsrc.patch, canceling a patch related to
memory management there. Experimentally, the PIC-related patch for OS X
is still necessary.
The upgrade to GMP 6.1.2 fixes #7655.
Test Plan:
Built on OS X with in-tree gmp and tested that the command
`ghc -e 'length (show (2^(5*10^6) :: Integer))'` no longer segfaults.
Reviewers: mpickering, hvr, austin, bgamari
Reviewed By: bgamari
Subscribers: mpickering, thomie
Differential Revision: https://phabricator.haskell.org/D3044
GHC Trac Issues: #7655
|
| |
|
|
|
|
| |
Signed-off-by: Austin Seipp <austin@well-typed.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This implements the ideas originally put forward in
"System FC with Explicit Kind Equality" (ICFP'13).
There are several noteworthy changes with this patch:
* We now have casts in types. These change the kind
of a type. See new constructor `CastTy`.
* All types and all constructors can be promoted.
This includes GADT constructors. GADT pattern matches
take place in type family equations. In Core,
types can now be applied to coercions via the
`CoercionTy` constructor.
* Coercions can now be heterogeneous, relating types
of different kinds. A coercion proving `t1 :: k1 ~ t2 :: k2`
proves both that `t1` and `t2` are the same and also that
`k1` and `k2` are the same.
* The `Coercion` type has been significantly enhanced.
The documentation in `docs/core-spec/core-spec.pdf` reflects
the new reality.
* The type of `*` is now `*`. No more `BOX`.
* Users can write explicit kind variables in their code,
anywhere they can write type variables. For backward compatibility,
automatic inference of kind-variable binding is still permitted.
* The new extension `TypeInType` turns on the new user-facing
features.
* Type families and synonyms are now promoted to kinds. This causes
trouble with parsing `*`, leading to the somewhat awkward new
`HsAppsTy` constructor for `HsType`. This is dispatched with in
the renamer, where the kind `*` can be told apart from a
type-level multiplication operator. Without `-XTypeInType` the
old behavior persists. With `-XTypeInType`, you need to import
`Data.Kind` to get `*`, also known as `Type`.
* The kind-checking algorithms in TcHsType have been significantly
rewritten to allow for enhanced kinds.
* The new features are still quite experimental and may be in flux.
* TODO: Several open tickets: #11195, #11196, #11197, #11198, #11203.
* TODO: Update user manual.
Tickets addressed: #9017, #9173, #7961, #10524, #8566, #11142.
Updates Haddock submodule.
|
|
|
|
|
|
|
|
|
|
|
|
| |
It shouldn't have been possible to reference an external
Git submodule not hosted on git.haskell.org as we can't otherwise
ensure gitlink integrity. But it turns out the
validation hook scripts in place didn't reject
020375d1e723339a95b86d0d3b8a8214b1cc144a, so here we are...
This commit changes ghc.git to use our own fork/copy of
https://github.com/bgamari/arcanist-external-json-linter
hosted on git.haskell.org
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This should catch mistakes like
a703fbce20969e6f02e74fee76c0a9e22b513426.
Adds an arcanist-external-json-linter submodule, which should eventually
be mirrored on haskell.org resources.
Test Plan: Validate
Reviewers: thomie, hvr, austin
Reviewed By: austin
Differential Revision: https://phabricator.haskell.org/D1515
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Depends on D510. This is the final blow and removes them from
the tree completely.
Signed-off-by: Austin Seipp <austin@well-typed.com>
Test Plan: I looked really hard but didn't see them.
Reviewers: hvr, ekmett
Subscribers: thomie, carter
Differential Revision: https://phabricator.haskell.org/D511
GHC Trac Issues: #9590
|
|
|
|
|
|
|
|
| |
This will affect commands such as
git submodule update --remote utils/haddock
to use `ghc-head` instead of the default `master` branch
|
|
|
|
|
|
|
|
| |
Also set `submodule.<name>.ignore=none` explicitly for the recently
converted submodules, as those are not supposed to have untracked/unignored
files lying around.
Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Specifically, the following sub-repos/modules are converted:
- libffi-tarballs
- libraries/array
- libraries/deepseq
- libraries/directory
- libraries/dph
- libraries/filepath
- libraries/haskell2010
- libraries/haskell98
- libraries/hoopl
- libraries/hpc
- libraries/old-locale
- libraries/old-time
- libraries/parallel
- libraries/process
- libraries/stm
- libraries/unix
- nofib
- utils/hsc2hs
N.B. ghc-tarballs is not converted as it will probably be handled
differently in the future.
Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
|
|
|
|
|
|
|
|
| |
This should help contribute content to
https://ghc.haskell.org/trac/ghc/wiki/WorkingConventions/Git/Submodules
Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the `http://`-protocol part was hardcoded in the URLs, causing
the initial clone process to fall back to `http://` even when the ghc.git repo
was cloned via one of the other 3 supported transport protocols.
This is slightly related to #8545, as it will make it possible to e.g.
git clone --recursive git://git.haskell.org/ghc
and clone ghc.git including all submodules in one go (i.e. w/o `sync-all`),
and w/o falling back to a different (hardwired) Git transport protocol for
the submodules.
Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
|
|
|
|
|
|
|
| |
The GHC build creates files there that are not part of the project’s
.gitignore, and clutter up "git status" in ghc/. With this patch, these
changes are ignored; modifications to existing files in the submodule
repositories are still reported.
|
|
|
|
|
| |
...as the new `git.haskell.org` CNAME has been activated
(see also GitolitePlan and #8121 for more details)
|
|
|
|
|
|
|
|
| |
This changes the `/libraries/<name>.git/` suffix in the urls
to `/packages/<name>.git`. This is a minor preparation step
helping the Gitolite transition (see #8121).
See also http://permalink.gmane.org/gmane.comp.lang.haskell.ghc.devel/1713
|
|
|
|
| |
Looks like I forgot to make it one in the original conversion
|
|
|
|
|
| |
This bring the time package into line with how we handle other
packages.
|
|
|