<feed xmlns='http://www.w3.org/2005/Atom'>
<title>haddock.git/hypsrc-test/ref/src/CPP.html, branch ghc-9.4</title>
<subtitle>Haddock with an org backend (haddorg).
</subtitle>
<id>https://g.ypei.me/haddock.git/atom?h=ghc-9.4</id>
<link rel='self' href='https://g.ypei.me/haddock.git/atom?h=ghc-9.4'/>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/'/>
<updated>2021-02-22T09:39:18+00:00</updated>
<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>Update hyperlinker tests for new types in .hie files</title>
<updated>2019-05-30T09:54:27+00:00</updated>
<author>
<name>Matthew Pickering</name>
<email>matthewtpickering@gmail.com</email>
</author>
<published>2019-05-24T20:51:55+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=f01473ed28e7c2700ff8e87b00ab87a802c9edd9'/>
<id>urn:sha1:f01473ed28e7c2700ff8e87b00ab87a802c9edd9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Removes `haddock-test`s dependency on `xml`/`xhtml` (#1027)</title>
<updated>2019-02-10T11:32:52+00:00</updated>
<author>
<name>Alec Theriault</name>
<email>alec.theriault@gmail.com</email>
</author>
<published>2019-02-10T11:32:52+00:00</published>
<link rel='alternate' type='text/html' href='https://g.ypei.me/haddock.git/commit/?id=4e8321de13225f1f5bdec8f39993e9b1aa0831a8'/>
<id>urn:sha1:4e8321de13225f1f5bdec8f39993e9b1aa0831a8</id>
<content type='text'>
This means that `html-test`, `latex-test`, `hoogle-test`, and
`hypsrc-test` now only depend on GHC boot libs. So we should
now be able to build and run these as part of GHC's testsuite. \o/

The reference output has changed very slightly, in three ways:

  * we don't convert quotes back into `&amp;quot;` as the `xml` lib did
  * we don't add extra `&amp;nbsp;` as the `xml` lib did
  * we now remove the entire footer `div` (instead of just emptying it)</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>
</feed>
