| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
* `unL` is already defined by GHC as `unLoc`
* `reL` is already defined by GHC as `noLoc` (in a safer way too!)
* Condense `setOutputDir` and add a about exporting from GHC
Fixes #978
|
|
|
|
|
|
|
|
|
|
|
| |
None of these error cases should ever have been reachable, so this is
just a matter of leveraging the type system to assert this.
* Use the `NoExtCon` and `noExtCon` to handle case matches for no
extension constructors, instead of throwing an `error`.
* Use the extension field of `HsSpliceTy` to ensure that this variant
of `HsType` cannot exist in an `HsType DocNameI`.
|
|
|
|
|
|
|
| |
* removed functions in `Haddock.Utils` that were not used anywhere
(or exported from the `haddock-api` package)
* moved GHC-specific utils from `Haddock.Utils` to `Haddock.GhcUtils`
|
|
|
|
|
|
|
|
|
| |
This a GHC bug (https://gitlab.haskell.org/ghc/ghc/issues/14109) too,
but it is a relatively easy fix in Haddock. Note that the fix must live
in `haddock-api` instead of `haddock-library` because we can only really
decide if an identifier is a reserved one by asking the GHC lexer.
Fixes #952
|
|
|
|
|
|
| |
* Regenerated the Travis file with `haskell-ci`
* Beef up `.cabal` files with more `tested-with` information
|
|
|
|
|
| |
Adjusted changelogs and versions in `.cabal` files in preparation for
the upcoming release bundled with GHC 8.10.
|
|
|
|
|
|
| |
This was done by calling `npm audit fix`. Note that the security issues
seem to have been entirely in the build dependencies, since the output
JS has not changed.
|
|
|
|
|
|
| |
* unused imports
* imports of `Data.List` without import lists
* missing `CompatPrelude` file in `.cabal`
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
We now have a top-level `tyConAppNeedsKindSig` function, which means
that we can delete lots of code in `Convert`.
(cherry picked from commit cfd682c5fd03b099a3d78c44f9279faf56a0ac70)
|
| |
| |
| |
| |
| |
| | |
This fixes #1103 by adapting the corresponding patch for GHC (see
https://gitlab.haskell.org/ghc/ghc/issues/17296 and
https://gitlab.haskell.org/ghc/ghc/merge_requests/1877).
|
| |
| |
| |
| |
| |
| | |
It is possible to fail to extract an HIE ast. This is however not a
reason to produce _no_ output - we should still make a colorized HTML
page.
|
| | |
|
| |
| |
| | |
The `ignore-exports` option has been broken since #688, as mentioned in https://github.com/haskell/haddock/pull/766#issue-172505043. This PR fixes it.
|
| |
| |
| |
| |
| |
| |
| | |
Tentatively for the 2.23 release:
* updated Travis CI to work again
* tweaked bounds in the `.cabal` files
* adjusted `extra-source-files` to properly identify test files
|
| | |
|
| |
| |
| |
| |
| | |
Tentatively adjust bounds and changelogs for the release to be bundled
with GHC 8.8.1.
|
| |
| |
| |
| |
| |
| |
| |
| | |
At this point, Haddock depended on Cabal-the-library solely for a
verbosity parser (which misleadingly accepts all sorts of verbosity
options that Haddock never uses). Now, the only dependency on Cabal
is for `haddock-test` (which uses Cabal to locate the Haddock interface
files of a couple boot libraries).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The only other change in html/hoogle/hyperlinker output for the boot
libraries that this caused is a fix to some Hoogle output for implicit
params.
```
$ diff -r _build/docs/ old_docs
diff -r _build/docs/html/libraries/base/base.txt old_docs/html/libraries/base/base.txt
13296c13296
< assertError :: (?callStack :: CallStack) => Bool -> a -> a
---
> assertError :: ?callStack :: CallStack => Bool -> a -> a
```
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
The `.ghci` files are actively annoying when trying to `cabal v2-repl`.
As for the `scripts`, the distribution workflow is completely different.
|
| | |
|
| |
| |
| |
| | |
(cherry picked from commit 3ee6526d4ae7bf4deb7cd1caf24b3d7355573576)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before LLVM 6.0.1 (or 10.0 on Apple LLVM), there was a bug where
lines that started with an octothorpe but turned out not
to lex like pragmas would have an extra line added after them.
Since this bug has been fixed upstream and that it doesn't have dire
consequences anyways, the workaround is not really worth it
anymore - we can just tell people to update their clang version (or re-structure
their pragma code).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
After this commit, we can run with `--latex` on all boot libraries
without crashing (although the generated LaTeX still fails to compile in
a handful of larger packages like `ghc` and `base`).
* Add newlines after all block elements in LaTeX. This is important to
prevent the final output from being more an more indented. See the
`latext-test/src/Example` test case for a sample of this.
* Support associated types in class declarations (but not yet defaults)
* Several small issues for producing compiling LaTeX;
- avoid empy `\haddockbeginargs` lists (ex: `type family Any`)
- properly escape identifiers depending on context (ex: `Int#`)
- add `vbox` around `itemize`/`enumerate` (so they can be in tables)
* Several spacing fixes:
- limit the width of `Pretty`-arranged monospaced code
- cut out extra space characters in export lists
- only escape spaces if there are _multiple_ spaces
- allow type signatures to be multiline (even without docs)
* Remove uninteresting and repetitive `main.tex`/`haddock.sty` files
from `latex-test` test reference output.
Fixes #935, #929 (LaTeX docs for `text` build & compile)
Fixes #727, #930 (I think both are really about type families...)
|
| |
| |
| |
| |
| |
| |
| |
| | |
`markupWarning` often processes inputs which span across paragraphs.
Unfortunately, LaTeX's `emph` is not made to handle this (and will
crash).
Fixes #936.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* default methods now get rendered differently
* default associated types get rendered
* fix a forgotten `s/TypeSig/ClassOpSig/` refactor in LaTeX backend
* LaTeX backend now renders default method signatures
NB: there is still no way to document default class members and the
NB: LaTeX backend still crashes on associated types
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is to address the concern that, on less nice and older screens,
some of the shades of grey blend in too easily with the white
background.
* darken the font slightly
* darken slightly the grey behind type signatures and such
* add a border and round the corners on code blocks
* knock the font down by one point
|
| | |
| | |
| | | |
Fixes #864.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Adds a menu item (like "Quick Jump") for options related to displaying
instances. This provides functionality for:
* expanding/collapsing all instances on the currently opened page
* controlling whether instances are expanded/collapsed by default
* controlling whether the state of instances should be "remembered"
This new functionality is implemented in Typescript in `details-helper`.
The built-in-themes style switcher also got a revamp so that all three
of QuickJump, the style switcher, and instance preferences now have
the same style and implementation structure.
See also: https://mail.haskell.org/pipermail/haskell-cafe/2019-January/130495.html
Fixes #698.
Co-authored-by: Lysxia <lysxia@gmail.com>
Co-authored-by: Nathan Collins <conathan@galois.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Docs on standalone deriving decls for classes with associated types
should be associated with the class instance, not the associated type
instance.
Fixes #1033
|
| | |
| | |
| | |
| | |
| | | |
It looks like the new versions don't cause any breakage
and loosening the bounds helps deps fit in one stack resolver.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The information about whether or not there is a source-level `forall`
is already available on a `ConDecl` (as `con_forall`), so we should use
it instead of always assuming `False`!
Fixes #1002.
|
| | |
| | |
| | | |
Fixes #992
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* WIP: Load (typechecker) plugins from language pragmas
* Revert "Load plugins when starting a GHC session (#905)"
This reverts commit 72d82e52f2a6225686d9668790ac33c1d1743193.
* Simplify plugin initialization code
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* don't forget to print explicit `forall`'s when there are arg docs
* when printing an explicit `forall`, print all tyvars
Fixes #973
|
| | |
| | |
| | |
| | |
| | |
| | | |
Matches b71da1feabf33efbbc517ac376bb690b5a604c2f from hackage-server.
Fixes #967.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This avoids a situation in which an identifier would get defaulted to
a completely different identifier. Prior to this commit, the 'Bug1035'
test case would hyperlink 'Foo' into 'Bar'!
Fixes #1035.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* '(<|>)' and '`elem`' now get parsed and rendered properly as links
* 'DbModule'/'DbUnitId' now properly get split apart into two links
* tuple names now get parsed properly
* some more small niceties...
The identifier parsing code is more precise and more efficient (although to be
fair: it is also longer and in its own module). On the rendering side, we need
to pipe through information about backticks/parens/neither all the way through
from renaming to the backends.
In terms of impact: a total of 35 modules in the entirety of the bootlib + ghc
lib docs change. The only "regression" is things like '\0'. These should be
changed to @\\0@ (the path by which this previously worked seems accidental).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Identifier links can be prefixed with a 'v' or 't' to indicate the value or
type namespace of the desired identifier. For example:
-- | Some link to a value: v'Data.Functor.Identity'
--
-- Some link to a type: t'Data.Functor.Identity'
The default is still the type (with a warning about the ambiguity)
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In https://gitlab.haskell.org/ghc/ghc/merge_requests/1970 I propose a
simpler way to encode location information into the GHC and Haddock AST
while incurring no cost for e.g. TH which doesn't need location
information.
These are just changes that have to happen in lock step.
|
| | | |
|
| | | |
|
| | |
| | |
| | | |
This is needed to compile `haddock` when [GHC Proposal #229](https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0229-whitespace-bang-patterns.rst) is implemented.
|