aboutsummaryrefslogtreecommitdiff
path: root/haddock-api/src/Haddock/Interface
Commit message (Collapse)AuthorAgeFilesLines
* FieldOcc: rename extFieldOcc to foExtShayne Fletcher2021-05-221-2/+2
|
* Remove Maybe from HsQualTyAlan Zimmerman2021-05-203-8/+7
| | | | Match changes in GHC for #19845
* Match changes in GHC AST for in-tree API AnnotationsAlan Zimmerman2021-03-154-88/+92
| | | | As landed via https://gitlab.haskell.org/ghc/ghc/-/merge_requests/2418
* Implement template-haskell's putDocLuke Lau2021-03-102-12/+47
| | | | | | | | | This catches up to GHC using the new extractTHDocs function, which returns documentation added via the putDoc function (provided it was compiled with Opt_Haddock). Since it's already a map from names -> docs, there's no need to do traversal etc. It also matches the change from the argument map being made an IntMap rather than a Map Int
* Merge remote-tracking branch 'origin/ghc-head' into HEADBen Gamari2021-03-062-46/+70
|\
| * Explicit imports for Haddock.Interface and Haddock.Interface.CreateHécate Moonlight2021-02-221-24/+25
| |
| * Clean-up of Interface and Interface.Create's imports and pragmataHécate Moonlight2021-02-221-21/+30
| |
| * Add import list to Data.List in Haddock.Interface.CreateOleg Grenrus2021-02-141-1/+1
| |
| * Merge pull request #1329 from hsyl20/hsyl20/stabe_ifaceHécate Moonlight2021-02-111-10/+24
| |\ | | | | | | Stable sort for instances
| | * Also make TyLit deterministicalexbiehl2021-02-111-2/+7
| | |
| | * Stable sort for (data/newtype) instancesalexbiehl2021-02-111-8/+17
| | |
* | | Context becomes a Maybe in the GHC ASTAlan Zimmerman2021-02-223-6/+11
|/ / | | | | | | | | | | This prevents noLoc's appearing in the ParsedSource. Match the change in GHC.
* | Merge pull request #1310 from hsyl20/wip/hsyl20/logger2Alexander Biehl2021-02-081-2/+1
|\ \ | | | | | | Logger refactoring
| * | Update for LoggerSylvain Henry2021-02-081-2/+1
| |/
* | Merge branch 'ghc-head' into ghc-9.0alexbiehl-gc2021-02-075-378/+528
|\|
| * Fix partial record selector warningBen Gamari2021-02-061-3/+3
| |
| * Merge remote-tracking branch 'origin/ghc-head' into wip/ghc-head-mergeBen Gamari2021-02-062-250/+351
| |\
| | * Merge pull request #1273 from hsyl20/wip/hsyl20/arrowsHécate Moonlight2021-01-141-1/+1
| | |\ | | | | | | | | Fix after binder collect changes
| | | * Fix after binder collect changesSylvain Henry2020-12-211-1/+1
| | | |
| | * | Abstract Monad for interface creationAlex Biehl2021-01-093-200/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I found that when running as a plugin the lookupName function (which runs in Ghc monad) does not work correctly from the typeCheckResultAction hook. Instead, we abstracted the monad used when creating interfaces, so that access to GHC session specific parts is explicit and so that the TcM can provide their (correct) implementation of lookupName.
| | * | Prepare Haddock for being a GHC PluginAlex Biehl2021-01-091-32/+215
| | | |
| * | | Merge remote-tracking branch 'origin/ghc-9.0' into ghc-headBen Gamari2021-01-137-202/+504
| |\ \ \ | | |/ / | |/| |
| * | | Adapt to changes to GlobalRdrElt and AvailInfoAdam Gundry2020-12-232-12/+4
| | |/ | |/| | | | | | | Needed for ghc/ghc!4467
| * | Enable two warnings (#1245) (#1268)tomjaguarpaw2020-12-193-0/+4
| | | | | | | | | | | | | | | | | | because they will be soon be added to -Wall. See https://gitlab.haskell.org/ghc/ghc/-/issues/15656
| * | Adapt to HsCoreTy (formerly NewHsTypeX) becoming a type synonymRyan Scott2020-12-162-2/+2
| | | | | | | | | | | | Needed for !4417, the fix for GHC#15706 and GHC#18914.
| * | Revert "Enable two warnings (#1245) (#1268)"Ben Gamari2020-12-153-4/+0
| | | | | | | | | | | | | | | | | | As this does not build on GHC `master`. This reverts commit 7936692badfe38f23ae95b51fb7bd7c2ff7e9bce.
| * | Enable two warnings (#1245) (#1268)tomjaguarpaw2020-12-103-0/+4
| | | | | | | | | | | | | | | because they will be soon be added to -Wall. See https://gitlab.haskell.org/ghc/ghc/-/issues/15656
| * | DynFlags's unit fields moved to HscEnvSylvain Henry2020-11-301-4/+5
| | |
| * | Add type arguments to PrefixConCale Gibbard2020-11-252-2/+2
| | |
| * | Adapt to HsOuterTyVarBndrsRyan Scott2020-10-303-69/+87
| | | | | | | | | | | | | | | These changes accompany ghc/ghc!4107, which aims to be a fix for #16762.
| * | Adapt to HsConDecl{H98,GADT}Details splitRyan Scott2020-10-302-17/+27
| | | | | | | | | | | | Needed for GHC#18844.
| * | Adapt to the removal of Hs{Boxed,Constraint}TupleRyan Scott2020-10-291-1/+1
| | | | | | | | | | | | See ghc/ghc!4097 and GHC#18723.
| * | GHC.Driver.Types refactoring (#1242)Sylvain Henry2020-10-262-3/+7
| | |
| * | Match GHC, adding IsUnicodeSyntax field to HsFunTy and HsScaledAlan Zimmerman2020-10-193-7/+9
| | |
| * | Remove Ord FastString instanceSylvain Henry2020-08-171-5/+11
| | |
| * | Fix after Outputable refactoringSylvain Henry2020-08-052-4/+6
| | |
| * | Update for modular ping pongZubin Duggal2020-07-234-17/+17
| | |
* | | Add support for labeled module referencesIñaki García Etxebarria2021-02-072-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support a markdown-style way of annotating module references. For instance -- | [label]("Module.Name#anchor") will create a link that points to the same place as the module reference "Module.Name#anchor" but the text displayed on the link will be "label".
* | | Cleanup: fix build warningsVladislav Zavialov2021-02-052-3/+3
| |/ |/|
* | Merge remote-tracking branch 'origin/ghc-8.10' into ghc-9.0Ben Gamari2021-01-057-224/+516
|\ \
| * | Import intercalatealexbiehl2020-12-081-0/+1
| | |
| * | Enable two warnings (#1245)tomjaguarpaw2020-12-083-0/+4
| | | | | | | | | | | | | | | because they will be soon be added to -Wall. See https://gitlab.haskell.org/ghc/ghc/-/issues/15656
| * | Add dangling changes from branches ghc-8.6 and ghc-8.8 (#1243)Xia Li-yao2020-12-082-13/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix multiple typos and inconsistencies in doc/markup.rst Note: I noticed some overlap with #1112 from @wygulmage and #1081 from @parsonsmatt after creating these proposed changes - mea culpa for not looking at the open PRs sooner. * Fix #1113 If no Signatures, no section of index.html * Change the formatting of missing link destinations The current formatting of the missing link destination does not really help user to understand the reasons of the missing link. To address this, I've changed the formatting in two ways: - the missing link symbol name is now fully qualified. This way you immediately know which haskell module cannot be linked. It is then easier to understand why this module does not have documentation (hidden module or broken documentation). - one line per missing link, that's more readable now that symbol name can be longer due to qualification. For example, before haddock was listing missing symbol such as: ``` could not find link destinations for: Word8 Word16 mapMaybe ``` Now it is listed as: ``` could not find link destinations for: - Data.Word.Word8 - Data.Word.Word16 - Data.Maybe.mapMaybe ``` * Add `--ignore-link-symbol` command line argument This argument can be used multiples time. A missing link to a symbol listed by `--ignore-link-symbol` won't trigger "missing link" warning. * Forbid spaces in anchors (#1148) * Improve error messages with context information (#1060) Co-authored-by: Matt Audesse <matt@mattaudesse.com> Co-authored-by: Mike Pilgrem <mpilgrem@users.noreply.github.com> Co-authored-by: Guillaume Bouchard <guillaume.bouchard@tweag.io> Co-authored-by: Pepe Iborra <pepeiborra@gmail.com>
| * | Fallback to `hiDecl` when `extractDecl` failsAlec Theriault2020-04-211-45/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes, the declaration being exported is a subdecl (for instance, a record accessor getting exported at the top-level). For these cases, Haddock has to find a way to produce some synthetic sensible top-level declaration. This is done with `extractDecl`. As is shown by #1067, this is sometimes impossible to do just at a syntactic level (for instance when the subdecl is re-exported). In these cases, the only sensible thing to do is to try to reify a declaration based on a GHC `TyThing` via `hiDecl`.
| * | Don't warn about missing links in miminal sigsAlec Theriault2020-04-152-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When renaming the Haddock interface, never emit warnings when renaming a minimal signature. Also added some documention around `renameInterface`. Minimal signatures intentionally include references to potentially un-exported methods (see the discussion in #330), so it is expected that they will not always have a link destination. On the principle that warnings should always be resolvable, this shouldn't produce a warning. See #1070.
| * | Prune docstrings that are never renderedAlec Theriault2020-04-151-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When first creating a Haddock interface, trim `ifaceDocMap` and `ifaceArgMap` to not include docstrings that can never appear in the final output. Besides checking with GHC which names are exported, we also need to keep all the docs attached to instance declarations (it is much tougher to detect when an instance is fully private). This change means: * slightly smaller interface files (7% reduction on boot libs) * slightly less work to do processing docstrings that aren't used * no warnings in Haddock's output about private docstrings (see #1070) I've tested manually that this does not affect any of the boot library generated docs (the only change in output was some small re-ordering in a handful of instance lists). This should mean no docstrings have been incorrectly dropped.
| * | Recode Doc to Json. (#1159)Ignat Insarov2020-04-091-5/+162
| | | | | | | | | | | | | | | * Recode Doc to Json. * More descriptive field labels.
| * | Cleanup up GHC flags in `.cabal` filesAlec Theriault2020-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | * enable more useful warning flags in `haddock-api`, handle the new warnings generated * remove `-fwarn-tabs` (now we'd use `-Wtabs`, but this has been in `-Wall` for a while now)
| * | Use `unLoc`/`noLoc` from GHC instead of `unL`/`reL`Alec Theriault2020-03-281-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | * `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
| * | Use TTG empty extensions to remove some `error`'sAlec Theriault2020-03-282-14/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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`.