diff options
-rw-r--r-- | docs/users_guide/8.10.3-notes.rst | 141 | ||||
-rw-r--r-- | docs/users_guide/index.rst | 1 |
2 files changed, 142 insertions, 0 deletions
diff --git a/docs/users_guide/8.10.3-notes.rst b/docs/users_guide/8.10.3-notes.rst new file mode 100644 index 0000000000..67727dd989 --- /dev/null +++ b/docs/users_guide/8.10.3-notes.rst @@ -0,0 +1,141 @@ +.. _release-8-10-3: + +Release notes for version 8.10.3 +================================ + +The significant changes to the various parts of the compiler are listed in the +following sections. + +Like previous releases in the 8.10 series, the :ghc-flag:`LLVM backend <-fllvm>` +of this release is to be used with LLVM 9. + +Highlights +---------- + +- Numerous stability improvements on Windows. + +- GHC now has far more robust support for architectures with weak memory + ordering guarantees. + +- GHC can split up dynamic objects to mitigate the macOS ``RPATH`` size + limitation when building large projects (:ghc-ticket:`14444`). + +- Several significant correctness bugs in the low-latency garbage collector have + been fixed. Users of :rts-flag:`--nonmoving-gc` are strongly encouraged to + upgrade promptly. + + +Full details +------------ + +Compiler +~~~~~~~~ + +* A compiler crash triggered by a ``SPECIALISE`` pragma on a binding with + no unfolding has been fixed (:ghc-ticket:`18118`). + +* GHC now supports a command-line flag, :ghc-flag:`-pgmc-supports-no-pie`, + allowing the user to indicate that the C compiler supplied via + :ghc-flag:`-pgmc ⟨cmd⟩` supports ``-no-pie``. + +* A pair of flags, :ghc-flag:`-pgmlm ⟨cmd⟩` and :ghc-flag:`-optlm ⟨option⟩`, + allowing the user to override the linker used to be join GHCi object files + has been added. + +* A regression in the treatment of the :ghc-flag:`-fbyte-code` flag has been + fixed (:ghc-ticket:`18955`). + +- A bug in the determination of source spans of post-qualified imports has been + fixed :ghc-ticket:`19014`. + + +Runtime system +~~~~~~~~~~~~~~ + +- GHC is now more careful to respect address space limits set via `ulimit`` + when allocating its heap (:ghc-ticket:`18623`). + +- Numerous fixes on Windows. These include a bug in stack allocation + triggering Windows' stack verifier (:ghc-ticket:`18601`), various linker bugs + (:ghc-ticket:`15808`, :ghc-ticket:`18991`), and a bug where ``libc`` may be + called during image initialization resulting in undefined behavior + (:ghc-ticket:`18548`). + +- GHC's linker is now able to load macOS frameworks on Big Sur + (:ghc-ticket:`18446`). + +- A soundness bug affecting programs relying on heavy mutation of ``MVar``\ s + has been fixed (:ghc-ticket:`18919`). + +- The internal linker's code unloading logic has been reenabled and now tracks + object file dependencies, fixing a soundness bug (:ghc-ticket:`16525`). + +- A linker bug relying in the misalignment of loaded ``.rodata`` sections has + been fixed. + + +Known issues +------------ + +- A long-standing bug (:ghc-ticket:`16893`) which can cause some applications + of ``unsafeCoerce`` to segmentation fault is only partially fixed in this + release. This release only avoids this issue in the uses of ``unsafeCoerce`` + in ``Data.Typeable.Internal``, which was the proximate cause of + :ghc-ticket:`16893`. + + However, it is possible that this bug could manifest in user-code using + ``unsafeCoerce`` to perform dynamic type checks. See the :ghc-ticket:`ticket + <16893>` for details. + + We expect that this issue will be fixed in the next major release of GHC. + +- A long-standing bug (:ghc-ticket:`17760`) where some uses of the ``touch#`` + primop can be dropped by the simplifier is present in this release. This bug + will be fixed in GHC 9.0.1. In the meantime, see the :ghc-ticket:`ticket + <17760>` for mitigations. + + +Included libraries +------------------ + +The package database provided with this distribution also contains a number of +packages other than GHC itself. See the changelogs provided with these packages +for further change information. + +.. ghc-package-list:: + + libraries/array/array.cabal: Dependency of ``ghc`` library + libraries/base/base.cabal: Core library + libraries/binary/binary.cabal: Dependency of ``ghc`` library + libraries/bytestring/bytestring.cabal: Dependency of ``ghc`` library + libraries/Cabal/Cabal/Cabal.cabal: Dependency of ``ghc-pkg`` utility + libraries/containers/containers/containers.cabal: Dependency of ``ghc`` library + libraries/deepseq/deepseq.cabal: Dependency of ``ghc`` library + libraries/directory/directory.cabal: Dependency of ``ghc`` library + libraries/exceptions/exceptions.cabal: Dependency of ``haskeline`` library + libraries/filepath/filepath.cabal: Dependency of ``ghc`` library + compiler/ghc.cabal: The compiler itself + libraries/ghci/ghci.cabal: The REPL interface + libraries/ghc-boot/ghc-boot.cabal: Internal compiler library + libraries/ghc-boot-th/ghc-boot-th.cabal: Internal compiler library + libraries/ghc-compact/ghc-compact.cabal: Core library + libraries/ghc-heap/ghc-heap.cabal: GHC heap-walking library + libraries/ghc-prim/ghc-prim.cabal: Core library + libraries/haskeline/haskeline.cabal: Dependency of ``ghci`` executable + libraries/hpc/hpc.cabal: Dependency of ``hpc`` executable + libraries/integer-gmp/integer-gmp.cabal: Core library + libraries/libiserv/libiserv.cabal: Internal compiler library + libraries/mtl/mtl.cabal: Dependency of ``Cabal`` library + libraries/parsec/parsec.cabal: Dependency of ``Cabal`` library + libraries/pretty/pretty.cabal: Dependency of ``ghc`` library + libraries/process/process.cabal: Dependency of ``ghc`` library + libraries/stm/stm.cabal: Dependency of ``haskeline`` library + libraries/template-haskell/template-haskell.cabal: Core library + libraries/terminfo/terminfo.cabal: Dependency of ``haskeline`` library + libraries/text/text.cabal: Dependency of ``Cabal`` library + libraries/time/time.cabal: Dependency of ``ghc`` library + libraries/transformers/transformers.cabal: Dependency of ``ghc`` library + libraries/unix/unix.cabal: Dependency of ``ghc`` library + libraries/Win32/Win32.cabal: Dependency of ``ghc`` library + libraries/xhtml/xhtml.cabal: Dependency of ``haddock`` executable + diff --git a/docs/users_guide/index.rst b/docs/users_guide/index.rst index cbf434de17..505e233952 100644 --- a/docs/users_guide/index.rst +++ b/docs/users_guide/index.rst @@ -14,6 +14,7 @@ Contents: intro 8.10.1-notes 8.10.2-notes + 8.10.3-notes ghci runghc usage |