<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en">
<head>
<meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
<title>
GitLab
</title>
<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>
<style>img {
max-width: 100%; height: auto;
}
body {
font-size: 0.875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,0.01) 0 0 1px;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style='font-size: inherit; -webkit-text-shadow: rgba(255,255,255,0.01) 0 0 1px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";'>
<div class="content">
<h3 style="margin-top: 20px; margin-bottom: 10px;">
Ben Gamari pushed to branch ghc-9.6 at <a href="https://gitlab.haskell.org/ghc/ghc" style="color: #1068bf;">Glasgow Haskell Compiler / GHC</a>
</h3>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
Commits:
</h4>
<ul>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/ef79d01328add9c3cf0906841acc2a931eae367f" style="color: #1068bf;">ef79d013</a></strong>
<div>
<span> by sheaf </span> <i> at 2023-02-09T12:47:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Bump transformers to 0.6.1.0
This allows us to avoid orphans for Foldable1 instances,
fixing #22898.
Updates transformers submodule.
(cherry picked from commit 2ea1a6bc7d7c2946b4a3d1c2c19083e09401f9f1)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/b0dee8314a6f232d97ba566e0fb13a1ad65efaad" style="color: #1068bf;">b0dee831</a></strong>
<div>
<span> by Cheng Shao </span> <i> at 2023-02-09T12:48:05+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>testsuite: remove config.use_threads
This patch simplifies the testsuite driver by removing the use_threads
config field. It's just a degenerate case of threads=1.
(cherry picked from commit 633f2799e697ddaf63c4c91820c0b5a7c9b17db7)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/5df968c3906f9d4c9201b518e163be56197f9b4d" style="color: #1068bf;">5df968c3</a></strong>
<div>
<span> by Cheng Shao </span> <i> at 2023-02-09T12:48:10+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>testsuite: use concurrent.futures.ThreadPoolExecutor in the driver
The testsuite driver used to create one thread per test case, and
explicitly use semaphore and locks for rate limiting and
synchronization. This is a bad practice in any language, and
occasionally may result in livelock conditions (e.g. #22889). This
patch uses concurrent.futures.ThreadPoolExecutor for scheduling test
case runs, which is simpler and more robust.
(cherry picked from commit ca6673e3cab496bbeed2ced47b40bcf1e0d0b3cd)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/03bc710d183707719254355fc9ffda89487f83fc" style="color: #1068bf;">03bc710d</a></strong>
<div>
<span> by Matthew Pickering </span> <i> at 2023-02-09T12:48:15+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Revert "Don't keep exit join points so much"
This reverts commit caced75765472a1a94453f2e5a439dba0d04a265.
It seems the patch "Don't keep exit join points so much" is causing
wide-spread regressions in the bytestring library benchmarks. If I
revert it then the 9.6 numbers are better on average than 9.4.
See https://gitlab.haskell.org/ghc/ghc/-/issues/22893#note_479525
-------------------------
Metric Decrease:
MultiComponentModules
MultiComponentModulesRecomp
MultiLayerModules
MultiLayerModulesRecomp
MultiLayerModulesTH_Make
T12150
T13386
T13719
T21839c
T3294
parsing001
-------------------------
(cherry picked from commit 7eac2468a726f217dd97c5e2884f6b552e8ef11d)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/71decd091144470c6c3a18f4bbcf1224f02ef676" style="color: #1068bf;">71decd09</a></strong>
<div>
<span> by sheaf </span> <i> at 2023-02-09T12:49:01+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Fix tyvar scoping within class SPECIALISE pragmas
Type variables from class/instance headers scope over class/instance
method type signatures, but DO NOT scope over the type signatures in
SPECIALISE and SPECIALISE instance pragmas.
The logic in GHC.Rename.Bind.rnMethodBinds correctly accounted for
SPECIALISE inline pragmas, but forgot to apply the same treatment
to method SPECIALISE pragmas, which lead to a Core Lint failure with
an out-of-scope type variable. This patch makes sure we apply the same
logic for both cases.
Fixes #22913
(cherry picked from commit 9ee761bf02cdd11c955454a222c85971d95dce11)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/5dfa01e7366e18004e605bbc21e51b2f417f0321" style="color: #1068bf;">5dfa01e7</a></strong>
<div>
<span> by Cheng Shao </span> <i> at 2023-02-09T12:49:30+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>docs: 9.6 release notes for wasm backend
(cherry picked from commit 1ffe770c8d8c5c42edcf1558242f39431f72b965)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/fcdf9f9bb5127313db593b39c6587cf4ea90b967" style="color: #1068bf;">fcdf9f9b</a></strong>
<div>
<span> by Simon Peyton Jones </span> <i> at 2023-02-09T11:48:52-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Improve treatment of type applications in patterns
This patch fixes a subtle bug in the typechecking of type
applications in patterns, e.g.
f (MkT @Int @a x y) = ...
See Note [Type applications in patterns] in GHC.Tc.Gen.Pat.
This fixes #19847, #22383, #19577, #21501
(cherry picked from commit 9f95db54e38b21782d058043abe42fd77abfb9ad)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/bea77fc40ef11fbe2f0c2a0a3f2fdb74b445579a" style="color: #1068bf;">bea77fc4</a></strong>
<div>
<span> by Andreas Klebinger </span> <i> at 2023-02-09T12:05:36-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Fix some correctness issues around tag inference when targeting the bytecode generator.
* Let binders are now always assumed untagged for bytecode.
* Imported referenced are now always assumed to be untagged for bytecode.
Fixes #22840
(cherry picked from commit 382bd7dad9cd53254204f418190368667a127f64)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/31a9076972690dee126d5b4049430efa78db9738" style="color: #1068bf;">31a90769</a></strong>
<div>
<span> by Matthew Pickering </span> <i> at 2023-02-09T12:05:56-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>driver: Use hooks from plugin_hsc_env
This fixes a bug in oneshot mode where hooks modified in a plugin
wouldn't be used in oneshot mode because we neglected to use the right
hsc_env. This was observed by @csabahruska.
(cherry picked from commit cc72e71298ce7e8ef7a2263a531f96d777db1800)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/11686fb4cb9c6d12032c46fc2864a660f8dede7a" style="color: #1068bf;">11686fb4</a></strong>
<div>
<span> by Aaron Allen </span> <i> at 2023-02-09T12:06:01-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Rework plugin initialisation points
In general this patch pushes plugin initialisation points to earlier in
the pipeline. As plugins can modify the `HscEnv`, it's imperative that
the plugins are initialised as soon as possible and used thereafter.
For example, there are some new tests which modify hsc_logger and other
hooks which failed to fire before (and now do)
One consequence of this change is that the error for specifying the
usage of a HPT plugin from the command line has changed, because it's
now attempted to be loaded at initialisation rather than causing a
cyclic module import.
Closes #21279
Co-authored-by: Matthew Pickering <matthewtpickering@gmail.com>
(cherry picked from commit c31e87bbb13c0139b75acd234fd48eeb40cf50af)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/948448826d6913cdc133c33f054ef53485a47598" style="color: #1068bf;">94844882</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2023-02-09T12:06:40-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>nativeGen/AArch64: Emit Atomic{Read,Write} inline
Previously the AtomicRead and AtomicWrite operations were emitted as
out-of-line calls. However, these tend to be very important for
performance, especially the RELAXED case (which only exists for
ThreadSanitizer checking).
Fixes #22115.
(cherry picked from commit 6e52fcb915baa1acb38ad2b1f313e8e6a89899f5)
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f63da175da1f4196d9beab6571998fdd444835d4" style="color: #1068bf;">f63da175</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2023-02-10T01:25:53-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>testsuite: Drop inapplicable tests
These rely on TypeAbstractions, which is not implemented in 9.6.1.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f0da1ddacc651413ada2eaa81df8d1e4a22f5132" style="color: #1068bf;">f0da1dda</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2023-02-10T11:20:56-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>testsuite: Mark T15633 as fixed when static linking
Fixes #20706
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/bcc6c918baf9164922813e4f05bd41854e274002" style="color: #1068bf;">bcc6c918</a></strong>
<div>
<span> by Ben Gamari </span> <i> at 2023-02-10T11:23:08-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>relnotes: Mention release notes
</pre>
</li>
</ul>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
30 changed files:
</h4>
<ul>
<li class="file-stats">
<a href="#6997a0cd37829d3d08db1c48185aaa3d7dfc3e6b" style="color: #1068bf;">
compiler/GHC/CmmToAsm/AArch64/CodeGen.hs
</a>
</li>
<li class="file-stats">
<a href="#807babf5b215890881c92043bcd08486141a405c" style="color: #1068bf;">
compiler/GHC/CmmToAsm/AArch64/Instr.hs
</a>
</li>
<li class="file-stats">
<a href="#0c06b80d12937afa0db5ee9903e4d2be2f146d29" style="color: #1068bf;">
compiler/GHC/CmmToAsm/AArch64/Ppr.hs
</a>
</li>
<li class="file-stats">
<a href="#6fcf64907fb5bdd93082d2d1eb94e4566e735865" style="color: #1068bf;">
compiler/GHC/Core/DataCon.hs
</a>
</li>
<li class="file-stats">
<a href="#1b8c4a0d06e2de704f7d040a0a715345e0c3c78c" style="color: #1068bf;">
compiler/GHC/Core/Opt/Exitify.hs
</a>
</li>
<li class="file-stats">
<a href="#bd153f89bc48f3fd5079b51fb799808aacbd750c" style="color: #1068bf;">
compiler/GHC/Core/Opt/Pipeline.hs
</a>
</li>
<li class="file-stats">
<a href="#2f46b19cb85e3f7b4e72305644bc50015628c41d" style="color: #1068bf;">
compiler/GHC/Core/Opt/Simplify/Env.hs
</a>
</li>
<li class="file-stats">
<a href="#48fbb5cdea308650de5756521feb28ec68819b9b" style="color: #1068bf;">
compiler/GHC/Core/Opt/Simplify/Utils.hs
</a>
</li>
<li class="file-stats">
<a href="#b6a5ba32bafb8fbda933538b3007e755fef6f101" style="color: #1068bf;">
compiler/GHC/Core/Opt/SpecConstr.hs
</a>
</li>
<li class="file-stats">
<a href="#d770db136b84c5655fedd78a1913ff7cd70f47fc" style="color: #1068bf;">
compiler/GHC/Driver/Config/Core/Opt/Simplify.hs
</a>
</li>
<li class="file-stats">
<a href="#cb404696aed94bcd1548bf7c70f7a9bd58feffab" style="color: #1068bf;">
compiler/GHC/Driver/Config/Stg/Pipeline.hs
</a>
</li>
<li class="file-stats">
<a href="#1dab250036d04cfcf3530f6ff27889f723cc2dda" style="color: #1068bf;">
compiler/GHC/Driver/Make.hs
</a>
</li>
<li class="file-stats">
<a href="#b8e6af642e56019828828dc679683c04afb81867" style="color: #1068bf;">
compiler/GHC/Driver/Pipeline.hs
</a>
</li>
<li class="file-stats">
<a href="#64e68d52c0898049455e20b0d001ffe1dd07ff83" style="color: #1068bf;">
compiler/GHC/Driver/Pipeline/Execute.hs
</a>
</li>
<li class="file-stats">
<a href="#af762064d779f7308dd415966c974f27d14f9943" style="color: #1068bf;">
compiler/GHC/Rename/Bind.hs
</a>
</li>
<li class="file-stats">
<a href="#f5bf08d06298fee515f928eacddd8f46477717d9" style="color: #1068bf;">
compiler/GHC/Runtime/Loader.hs
</a>
</li>
<li class="file-stats">
<a href="#7d90a9320eb9eef000085725b34bb266a8356953" style="color: #1068bf;">
compiler/GHC/Stg/InferTags.hs
</a>
</li>
<li class="file-stats">
<a href="#9ee818b4d99d21a43e6c7cb9f7e1a24922e5fe53" style="color: #1068bf;">
compiler/GHC/Stg/InferTags/Types.hs
</a>
</li>
<li class="file-stats">
<a href="#6c6b170dad20b4eedb2e77f6777d30c062f9bcb1" style="color: #1068bf;">
compiler/GHC/Stg/Pipeline.hs
</a>
</li>
<li class="file-stats">
<a href="#3ee8be814b6c6727880deab3772e6af922524bf0" style="color: #1068bf;">
compiler/GHC/Tc/Gen/Pat.hs
</a>
</li>
<li class="file-stats">
<a href="#093cf1ab10ea2bac043566f4a5e4a1c4a1eaf5e6" style="color: #1068bf;">
docs/users_guide/9.6.1-notes.rst
</a>
</li>
<li class="file-stats">
<a href="#519f43ef6302b87fec67179ff5343fb9706e9748" style="color: #1068bf;">
ghc/Main.hs
</a>
</li>
<li class="file-stats">
<a href="#9b6eba66f2ab77d5e8e72079bec1576219b05605" style="color: #1068bf;">
libraries/transformers
</a>
</li>
<li class="file-stats">
<a href="#326e115e015c04db679ca1d9dbc1092906bef3a6" style="color: #1068bf;">
testsuite/driver/runtests.py
</a>
</li>
<li class="file-stats">
<a href="#19a3a16fa9d768a2005142b6cc4b642f0f88713f" style="color: #1068bf;">
testsuite/driver/testglobals.py
</a>
</li>
<li class="file-stats">
<a href="#c591f85f122007bac88228c5ff6fd76b40e6a811" style="color: #1068bf;">
testsuite/driver/testlib.py
</a>
</li>
<li class="file-stats">
<a href="#f7e2e917dfdc5406b5ef1180f10be0a2973586c1" style="color: #1068bf;">
testsuite/driver/testutil.py
</a>
</li>
<li class="file-stats">
<a href="#856206d05a886510232c4e34cad7da290d05f4fc" style="color: #1068bf;">
<span class="new-file">
+
testsuite/tests/gadt/T19847.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#c68bb340f8f227ab4ac9922422ce0177433e1dfc" style="color: #1068bf;">
testsuite/tests/gadt/all.T
</a>
</li>
<li class="file-stats">
<a href="#0f05347a081689dd671f549d132a6befea34241e" style="color: #1068bf;">
testsuite/tests/plugins/all.T
</a>
</li>
</ul>
<h5 style="margin-top: 10px; margin-bottom: 10px; font-size: 0.875rem;">
The diff was not included because it is too large.
</h5>
</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #666;">
—
<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/compare/bafa389975872e1dec6925e05ee0efc349656110...bcc6c918baf9164922813e4f05bd41854e274002" style="color: #1068bf;">View it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://gitlab.haskell.org" style="color: #1068bf;">gitlab.haskell.org</a>. <a href="https://gitlab.haskell.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link" style="color: #1068bf;">Manage all notifications</a> · <a href="https://gitlab.haskell.org/help" target="_blank" rel="noopener noreferrer" class="help-link" style="color: #1068bf;">Help</a>
</p>
</div>
</body>
</html>