<feed xmlns='http://www.w3.org/2005/Atom'>
<title>haddock.git/hypsrc-test/src, branch ghc-gitlab-ghc-head</title>
<subtitle>Haddock with an org backend (haddorg).
</subtitle>
<id>https://g.ypei.me/haddock.git/atom?h=ghc-gitlab-ghc-head</id>
<link rel='self' href='https://g.ypei.me/haddock.git/atom?h=ghc-gitlab-ghc-head'/>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/'/>
<updated>2022-05-31T11:43:22+00:00</updated>
<entry>
<title>TTG: Match new GHC AST</title>
<updated>2022-05-31T11:43:22+00:00</updated>
<author>
<name>romes</name>
<email>rodrigo.m.mesquita@gmail.com</email>
</author>
<published>2022-04-25T17:52:22+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=89afef9daeb6da6624d42d32813d86c1f9b9f0c3'/>
<id>urn:sha1:89afef9daeb6da6624d42d32813d86c1f9b9f0c3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>html-test: Always set language</title>
<updated>2021-02-22T09:39:18+00:00</updated>
<author>
<name>Joachim Breitner</name>
<email>mail@joachim-breitner.de</email>
</author>
<published>2021-02-22T09:31:56+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=606e3f220d20688c7baff94bef525a13434dc56b'/>
<id>urn:sha1:606e3f220d20688c7baff94bef525a13434dc56b</id>
<content type='text'>
from ghc-9.2 on, the “default” langauge of GHC is expected to change
more wildly. To prepare for that (and unblock
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4853), this sets the
language for all the test files to `Haskell2010`. This should insolate
this test suite against changes to the default.

Cherry-picked from https://github.com/haskell/haddock/pull/1341
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/ghc-8.10' into ghc-9.0</title>
<updated>2021-01-05T21:14:31+00:00</updated>
<author>
<name>Ben Gamari</name>
<email>ben@smart-cactus.org</email>
</author>
<published>2021-01-05T20:54:42+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=1e56f63c3197e7ca1c1e506e083c2bad25d08793'/>
<id>urn:sha1:1e56f63c3197e7ca1c1e506e083c2bad25d08793</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add Hyperlinker test cases for TH-related stuff</title>
<updated>2019-10-08T00:56:48+00:00</updated>
<author>
<name>Alec Theriault</name>
<email>alec.theriault@gmail.com</email>
</author>
<published>2019-10-08T00:45:40+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=cdf4445a877428f5969f712a95830af38029b9a0'/>
<id>urn:sha1:cdf4445a877428f5969f712a95830af38029b9a0</id>
<content type='text'>
Hopefully this will guard against regressions around quasiquotes, TH
quotes, and TH splices.
</content>
</entry>
<entry>
<title>Add a regression test for #1091</title>
<updated>2019-10-07T21:56:13+00:00</updated>
<author>
<name>Alec Theriault</name>
<email>alec.theriault@gmail.com</email>
</author>
<published>2019-10-07T19:13:52+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=80b8a8a2525d4e4c60b7c9439a23ac47d9612802'/>
<id>urn:sha1:80b8a8a2525d4e4c60b7c9439a23ac47d9612802</id>
<content type='text'>
Previously, this input would crash Haddock.
</content>
</entry>
<entry>
<title>Remove workaround for now-fixed Clang CPP bug (#1028)</title>
<updated>2019-03-29T19:11:56+00:00</updated>
<author>
<name>Alec Theriault</name>
<email>alec.theriault@gmail.com</email>
</author>
<published>2019-02-11T17:27:41+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=3efdc3a8da642d5d76b2c3f10a22f0503f65456a'/>
<id>urn:sha1:3efdc3a8da642d5d76b2c3f10a22f0503f65456a</id>
<content type='text'>
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).
</content>
</entry>
<entry>
<title>Remove workaround for now-fixed Clang CPP bug (#1028)</title>
<updated>2019-02-11T17:27:41+00:00</updated>
<author>
<name>Alec Theriault</name>
<email>alec.theriault@gmail.com</email>
</author>
<published>2019-02-11T17:27:41+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=9790200cb854b75e00afaf2eea49a22b7223b200'/>
<id>urn:sha1:9790200cb854b75e00afaf2eea49a22b7223b200</id>
<content type='text'>
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).</content>
</entry>
<entry>
<title>Use `.hie` files for the Hyperlinker backend (#977)</title>
<updated>2019-01-31T09:37:25+00:00</updated>
<author>
<name>Alec Theriault</name>
<email>alec.theriault@gmail.com</email>
</author>
<published>2019-01-31T09:37:25+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=1b26460fb3b5df5215cc1e6715661cbc7c950085'/>
<id>urn:sha1:1b26460fb3b5df5215cc1e6715661cbc7c950085</id>
<content type='text'>
# 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</content>
</entry>
<entry>
<title>Improve hyperlinker's 'spanToNewline' (#846)</title>
<updated>2018-06-13T21:39:30+00:00</updated>
<author>
<name>Alec Theriault</name>
<email>alec.theriault@gmail.com</email>
</author>
<published>2018-06-05T17:47:16+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=254de3010dddb06bc1dacf4c029a9e8f30ff1600'/>
<id>urn:sha1:254de3010dddb06bc1dacf4c029a9e8f30ff1600</id>
<content type='text'>
'spanToNewline' is used to help break apart the source into lines which
can then be partioned into CPP and non-CPP chunks. It is important that
'spanToNewline' not break apart tokens, so it needs to properly handle
things like

  * block comments, possibly nested
  * string literals, possibly multi-line
  * CPP macros, possibly multi-line

String literals in particular were not being properly handled. The fix
is to to fall back in 'Text.Read.lex' to help lex things that are not
comments.

Fixes #837.</content>
</entry>
<entry>
<title>hypsrc-test: Accept test output</title>
<updated>2016-02-08T14:36:08+00:00</updated>
<author>
<name>Ben Gamari</name>
<email>ben@smart-cactus.org</email>
</author>
<published>2016-02-08T13:37:49+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=a427f597e081ce37a881e6612efeab7ef0bb0dac'/>
<id>urn:sha1:a427f597e081ce37a881e6612efeab7ef0bb0dac</id>
<content type='text'>
And fix impredicative Polymorphism testcase.
</content>
</entry>
</feed>
