summaryrefslogtreecommitdiff
path: root/docs/users_guide
diff options
context:
space:
mode:
authorZubin Duggal <zubin.duggal@gmail.com>2021-11-17 19:24:41 +0530
committerZubin Duggal <zubin.duggal@gmail.com>2022-01-31 16:51:55 +0530
commitee5c4f9d05fab41f53364dc18d30932034e6ada6 (patch)
tree78cbe08a9d4654eb3e5ebe2dd17b3c1cced1df51 /docs/users_guide
parent3531c4784c0a06063dcfc0f084943d5149e64035 (diff)
downloadhaskell-ee5c4f9d05fab41f53364dc18d30932034e6ada6.tar.gz
Improve migration strategy for the XDG compliance change to the GHC application
directory. We want to always use the old path (~/.ghc/..) if it exists. But we never want to create the old path. This ensures that the migration can eventually be completed once older GHC versions are no longer in circulation. Fixes #20684, #20669, #20660
Diffstat (limited to 'docs/users_guide')
-rw-r--r--docs/users_guide/9.4.1-notes.rst19
1 files changed, 19 insertions, 0 deletions
diff --git a/docs/users_guide/9.4.1-notes.rst b/docs/users_guide/9.4.1-notes.rst
index 8140a367aa..75e7268cc1 100644
--- a/docs/users_guide/9.4.1-notes.rst
+++ b/docs/users_guide/9.4.1-notes.rst
@@ -67,6 +67,25 @@ Compiler
- Support for Sun SPARC architecture has been dropped (:ghc-ticket:`16883`).
+- A fix for GHC's handling of the XDG Base Directory Specification
+ (:ghc-ticket:`6077`, :ghc-ticket:`20684`, :ghc-ticket:`20669`,
+ :ghc-ticket:`20660`):
+
+ - For the package database previously in `~/.ghc/<arch-ver>`, we
+ will continue to use the old path if it exists. For example, if the
+ `~/.ghc/x86_64-linux-9.4.1` directory exists, GHC will use that for its
+ user package database. If this directory does not exist, we will use
+ `$XDG_DATA_HOME/ghc/x86_64-linux-9.4.1`. This is in order to give tooling like
+ cabal time to migrate
+
+ - For GHCi configuration files previously located in `~/.ghc/` like
+ `ghci.conf` and `ghci_history`, we will first check if they exist in
+ `~/.ghc` and use those if they do. However, we will create new files like
+ `ghci_history` only in `$XDG_DATA_HOME/ghc`. So if you don't have a previous
+ GHC installation which created `~/.ghc/ghci_history`, the history file will be
+ written to `$XDG_DATA_HOME/ghc`. If you already have an older GHC installation which
+ wrote `~/.ghc/ghci_history`, then GHC will continue to write the history to that file.
+
``base`` library
~~~~~~~~~~~~~~~~