]> git.maquefel.me Git - brevno-suite/hugo/commit
Use os.UserCacheDir as first fallback if cacheDir is not set
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 27 Jul 2023 18:59:47 +0000 (20:59 +0200)
committerGitHub <noreply@github.com>
Thu, 27 Jul 2023 18:59:47 +0000 (20:59 +0200)
commitb3f10556f0ab8a92bdd92e25c67685947317d188
tree61faa97a403aec86207bd50d8aa9b815dc3aa579
parent4d7af757c99a561744c87c477d10b89e5c9d7e35
Use os.UserCacheDir as first fallback if cacheDir is not set

We will now try

1. cacheDir (or, commonly set in environment as `HUGO_CACHEDIR`)
2. if on Netlify we use `/opt/build/cache/hugo_cache/`
3. os.UserCacheDir
4. A temp dir

Storing the cache, especially the module cache, in a temporary idea has had lots of hard to debug issues, especially on MacOS,
which this commit tries to fix.

This should also make it easier to locate the Hugo cache:

>UserCacheDir returns the default root directory to use for user-specific cached data. Users should create their own
application-specific subdirectory within this one and use that.
>
>On Unix systems, it returns $XDG_CACHE_HOME as specified by
https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html if non-empty, else $HOME/.cache. On Darwin, it
returns $HOME/Library/Caches. On Windows, it returns %LocalAppData%. On Plan 9, it returns $home/lib/cache.
>
>If the location cannot be determined (for example, $HOME is not defined), then it will return an error.

Fixes #11286
Fixes #11291
config/allconfig/allconfig.go
helpers/path.go
main_test.go
testscripts/commands/config__cachedir.txt [new file with mode: 0644]