| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
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.
|
|
|