aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | Use `.hie` files for the Hyperlinker backend (#977)Alec Theriault2019-01-3131-5129/+9402
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Summary This is a large architectural change to the Hyperlinker. * extract link (and now also type) information from `.hie` instead of doing ad-hoc SYB traversals of the `RenamedSource`. Also adds a superb type-on-hover feature (#715). * re-engineer the lexer to avoid needless string conversions. By going directly through GHC's `P` monad and taking bytestring slices, we avoid a ton of allocation and have better handling of position pragmas and CPP. In terms of performance, the Haddock side of things has gotten _much_ more efficient. Unfortunately, much of this is cancelled out by the increased GHC workload for generating `.hie` files. For the full set of boot libs (including `ghc`-the-library) * the sum of total time went down by 9-10% overall * the sum of total allocations went down by 6-7% # Motivation Haddock is moving towards working entirely over `.hi` and `.hie` files. This change means we no longer need the `RenamedSource` from `TypecheckedModule` (something which is _not_ in `.hi` files). # Details Along the way a bunch of things were fixed: * Cross package (and other) links are now more reliable (#496) * The lexer tries to recover from errors on every line (instead of at CPP boundaries) * `LINE`/`COLUMN` pragmas are taken into account * filter out zero length tokens before rendering * avoid recomputing the `ModuleName`-based `SrcMap` * remove the last use of `Documentation.Haddock.Utf8` (see #998) * restructure temporary folder logic for `.hi`/`.hie` model
* | Lone typofixGabor Greif2019-01-221-1/+1
| |
* | Accept new output `GHC.Maybe` -> `Data.Maybe` (#996)Alec Theriault2019-01-106-52/+52
| | | | | | | | Since 53874834b779ad0dfbcde6650069c37926da1b79 in GHC, "GHC.Maybe" is marked as `not-home`. That changes around some test output.
* | Visible kind application haddock updatemynguyen2018-12-3010-24/+76
| |
* | Address deprecation warnings in `haddock-test` (#988)Alec Theriault2018-12-271-1/+1
| | | | | | Fixes #885.
* | Remove `haddock-test`'s dep. on `syb` (#987)Alec Theriault2018-12-272-7/+13
| | | | | | | | The functionality is easily inlined into one short function: `gmapEverywhere`. This doesn't warrant pulling in another package.
* | Properly synify and render promoted type variables (#985)Alec Theriault2018-12-237-43/+256
| | | | | | | | | | | | | | | | * Synify and render properly promoted type variables Fixes #923. * Accept output
* | Refactor names + unused functions (#982)Alec Theriault2018-12-177-62/+26
| | | | | | | | | | | | | | This commit should not introduce any change in functionality! * consistently use `getOccString` to convert `Name`s to strings * compare names directly when possible (instead of comparing strings) * get rid of unused utility functions
* | Output better debug infromation on internal error in extractDeclZejun Wu2018-12-141-1/+3
| | | | | | | | This will make investigation of #979 easier
* | Fix warnings, accept outputAlec Theriault2018-12-1210-13/+7
| | | | | | | | | | | | | | * remove redundant imports (only brought to light due to recent work for improving redundant import detection) * fix a bug that was casuing exports to appear in reverse order * fix something in haddock-library that prevented compilation on old GHC's
* | [TTG: Handling Source Locations] Foundation and PatShayan-Najd2018-11-237-36/+75
| | | | | | | | | | | | | | | | | | | | | | Trac Issues #15495 This patch removes the ping-pong style from HsPat (only, for now), using the plan laid out at https://ghc.haskell.org/trac/ghc/wiki/ImplementingTreesThatGrow/HandlingSourceLocations (solution A). - the class `HasSrcSpan`, and its functions (e.g., `cL` and `dL`), are introduced - some instances of `HasSrcSpan` are introduced - some constructors `L` are replaced with `cL` - some patterns `L` are replaced with `dL->L` view pattern - some type annotation are necessarily updated (e.g., `Pat p` --> `Pat (GhcPass p)`)
* | Merge pull request #970 from alpmestan/alp/fix-promotionflagAlec Theriault2018-11-157-10/+15
|\ \ | | | | | | Follow GHC HEAD's HsTypes.Promoted -> BasicTypes.PromotionFlag change
| * | Follow GHC HEAD's HsTypes.Promoted -> BasicTypes.PromotionFlag changeAlp Mestanogullari2018-11-157-10/+15
|/ / | | | | | | It got introduced in ghc/ghc@ae2c9b40f5b6bf272251d1f4107c60003f541b62.
* | Fix some broken links (#15733)Fangyi Zhou2018-11-122-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: For links in subpackages as well. https://phabricator.haskell.org/D5257 Test Plan: Manually verify links Reviewers: mpickering, bgamari, osa1 Reviewed By: osa1 GHC Trac Issues: #15733 Differential Revision: https://phabricator.haskell.org/D5262
* | Merge branch 'ghc-8.6' into ghc-headAlec Theriault2018-11-10138-2826/+6141
|\|
| * Merge pull request #949 from haskell/wip/new-oceanAlec Theriault2018-11-10124-2659/+5530
| |\ | | | | | | Introduce NewOcean theme.
| | * Replace oplus/ominus expander/collapser icons with trianglesAlec Theriault2018-11-101-3/+3
| | |
| | * Update changelogAlec Theriault2018-11-101-1/+3
| | |
| | * Merge branch 'ghc-8.6' into wip/new-oceanAlec Theriault2018-11-09107-137/+365
| | |\ | | |/ | |/|
| * | Only run MathJax on entities with "mathjax" class (#960)Alec Theriault2018-11-05102-118/+334
| | | | | | | | | | | | | | | | | | | | | Correspondingly, we wrap all inline/diplay math in <span class="mathjax"> ... the math .... </span> This fixes #959.
| * | Fix documentation in `haddock-api` (#957)Alec Theriault2018-10-272-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix misplaced Haddocks in Haddock itself Haddock should be able to generate documentation for 'haddock-api' again. * Make CI check that documentation can be built. * Add back a doc that is OK
| * | Avoid some partialityAlec Theriault2018-10-263-13/+21
| | | | | | | | | | | | | | | | | | | | | | | | AFAICT this wasn't causing any crashes, but that's mostly because we happen not to be forcing `pkgStr` when it would diverge. We come dangerously close to doing that in `ppHtmlIndex`. Fixes #569.
| | * Space out functions moreAlec Theriault2018-11-081-6/+2
| | | | | | | | | | | | | | | Also, functions and data decls now have the same space before and after them.
| | * Clicking on "Contents" navigates to top of pageAlec Theriault2018-11-087-7/+7
| | |
| | * overflow-y 'scroll' -> 'auto'Alec Theriault2018-11-071-2/+2
| | |
| | * Accept HTML output changesAlec Theriault2018-11-0722-283/+381
| | |
| | * Allow "Contents" summary to scroll in a fixed divAlec Theriault2018-11-073-14/+13
| | | | | | | | | | | | | | | In the unfortunate event that the "Contents" summary doesn't fit vertically (like in the "Prelude"), it will be scrollable.
| | * Fix issues around plus/minusAlec Theriault2018-11-077-17/+11
| | | | | | | | | | | | | | | | | | * swap the minimize unicode to something more intuitive * use new unicode expander/collapser for instance lists * address some alignment issues in the "index" page
| | * Revert "Make 'Contents' in NewOcean scrollable"Alec Theriault2018-10-261-2/+0
| | | | | | | | | | | | | | | | | | | | | This reverts commit f909ffd8353d6463fd5dd184998a32aa98d5c922. I missed the fact this also forces the 'Contents' to always go down to the bottom of the page.
| | * Make 'Contents' in NewOcean scrollableAlec Theriault2018-10-261-0/+2
| | | | | | | | | | | | | | | | | | This only happens if the contents block on the left is so big that it doesn't fit (vertically) on the page. If that happens, we want it to be scrollable.
| | * User manual + stuff for building GHC docsAlec Theriault2018-10-262-8/+13
| | |
| | * Accept HTML outputAlec Theriault2018-10-251-5/+7
| | |
| | * Merge branch 'ghc-8.6' into wip/new-oceanAlec Theriault2018-10-254-8/+174
| | |\ | | |/ | |/|
| * | Avoid more conflicts in generated ids (#954)Alec Theriault2018-10-253-6/+173
| | | | | | | | | | | | | | | This fixes #953 by passing more names into the generated ids.
| * | Fix typo in a warningSimon Jakobi2018-10-231-2/+1
| | |
| | * Indent more things + slightly smaller fontAlec Theriault2018-10-251-2/+2
| | |
| | * Don't hide bullets in method docsAlec Theriault2018-10-252-4/+4
| | | | | | | | | | | | | | | | | | | | | I think thst CSS was meant only to deal with fields and the effect on bullets was accidental. Fixes #926.
| | * Fix the synopsis buttonAlec Theriault2018-10-241-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Here's these changes are supposed to do: * put the synopsis back on the right side * properly have it on the edge of the screen on wide screens * adjust the background of the synopsis to match the button (otherwise the grey blends in with what is underneath) * get rid of the dotted purple line * the synopsis contents are now scrollable even when in wide screens (this has been a long-standing bug)
| | * Fix copy-pasta error in data-filesAlec Theriault2018-10-242-5/+5
| | |
| | * Resurrect the style-switcherAlec Theriault2018-10-245-30/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes #810. Looks like things were broken during the quickjump refactor of the JS. For the (git) record: I do not think the style switcher is a good idea. I'm fixing it for the same reason @mzero added it; as an answer to "rumblings from some that they didn't want their pixels changed on bit"
| | * Update JS dependenciesAlec Theriault2018-10-244-1860/+3510
| | | | | | | | | | | | | | | This was done via `npm audit fix`. I think this fixes #903 along with some more serious vulnerabilities that nobody seems to have noticed.
| | * Update 'data-files' to include NewOcean stuffAlec Theriault2018-10-211-0/+5
| | |
| | * Fix CHANGELOGAlec Theriault2018-10-211-2/+4
| | |
| | * Accept testsAlec Theriault2018-10-187-33/+45
| | |
| | * Update test-suite reference html pagesNuno Alexandre2018-10-1896-292/+292
| | |
| | * Make package-header caption backward-compatibleNuno Alexandre2018-10-181-2/+2
| | | | | | | | | | | | | | | | | | | | | The current html generator of this branch wraps the package-header caption as a div, which does not work (without style adjustments) with the old themes. Changing it from div to span does the trick, without needing to adjust the old stylesheets.
| | * Improve code blocks stylingNuno Alexandre2018-10-181-7/+25
| | | | | | | | | | | | | | | - Fix and improve spacing - Improve colors and borders
| | * Update font in Xhtml.hs to PT SansNuno Alexandre2018-10-181-1/+1
| | |
| | * Misc of tweaksNuno Alexandre2018-10-181-10/+32
| | | | | | | | | | | | | | | | | | | | | - Update link colors to hackage scheme - Tune spacing between content elements - Update footer style - Fix and improve code blocks identation
| | * Use 'flex' to fix header alignmentNuno Alexandre2018-10-181-11/+55
| | |