Compare commits
19 Commits
bryans-pgp
...
issue-99
| Author | SHA1 | Date | |
|---|---|---|---|
| 493c2c81f4 | |||
| 041f8b1421 | |||
| b62f7ffa3b | |||
| 6ee7342fe3 | |||
| 1d43217082 | |||
| 4ffadfdda4 | |||
| 3e2ab12988 | |||
| 68731892cc | |||
| b2843da016 | |||
| 53ef921fe1 | |||
| 20916def87 | |||
| 335bc378aa | |||
|
|
1d366edea6 | ||
|
|
971e013861 | ||
|
|
397fd411af | ||
|
|
124f62c0a2 | ||
|
|
e93e21835e | ||
| 2d5701d480 | |||
|
|
cca4a2386d |
63
.github/workflows/bindists.yaml
vendored
63
.github/workflows/bindists.yaml
vendored
@@ -18,6 +18,11 @@ on:
|
|||||||
required: true
|
required: true
|
||||||
default: ghcup-0.0.7.yaml
|
default: ghcup-0.0.7.yaml
|
||||||
type: string
|
type: string
|
||||||
|
channel:
|
||||||
|
description: Distribution channel (main|prerelease|nightly)
|
||||||
|
required: true
|
||||||
|
default: Main
|
||||||
|
type: string
|
||||||
env:
|
env:
|
||||||
BOOTSTRAP_HASKELL_NONINTERACTIVE: 1
|
BOOTSTRAP_HASKELL_NONINTERACTIVE: 1
|
||||||
BOOTSTRAP_HASKELL_MINIMAL: 1
|
BOOTSTRAP_HASKELL_MINIMAL: 1
|
||||||
@@ -25,6 +30,7 @@ env:
|
|||||||
TOOL: ${{ github.event.inputs.tool }}
|
TOOL: ${{ github.event.inputs.tool }}
|
||||||
VERSION: ${{ github.event.inputs.version }}
|
VERSION: ${{ github.event.inputs.version }}
|
||||||
METADATA_FILE: ${{ github.event.inputs.metadataFile }}
|
METADATA_FILE: ${{ github.event.inputs.metadataFile }}
|
||||||
|
CHANNEL: ${{ github.event.inputs.channel }}
|
||||||
jobs:
|
jobs:
|
||||||
bindist-install:
|
bindist-install:
|
||||||
name: linux-${{ matrix.image }}
|
name: linux-${{ matrix.image }}
|
||||||
@@ -143,6 +149,63 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
args: sh -c '.github/workflows/install-bindist.sh'
|
args: sh -c '.github/workflows/install-bindist.sh'
|
||||||
|
|
||||||
|
validate:
|
||||||
|
name: ghcup-gen check
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
GHC: 9.2.8
|
||||||
|
CABAL: 3.10.1.0
|
||||||
|
steps:
|
||||||
|
- name: create ~/.local/bin
|
||||||
|
run: mkdir -p "$HOME/.local/bin"
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Add ~/.local/bin to PATH
|
||||||
|
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: install yamllint
|
||||||
|
run: pip install yamllint
|
||||||
|
|
||||||
|
- name: Update cabal cache
|
||||||
|
run: cabal update
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Install requirements
|
||||||
|
shell: sh
|
||||||
|
run: |
|
||||||
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
export TZ=Asia/Singapore
|
||||||
|
sudo apt-get update && sudo apt-get install -y curl bash git gnupg libarchive-dev
|
||||||
|
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Cache Cabal
|
||||||
|
uses: actions/cache@v2
|
||||||
|
env:
|
||||||
|
cache-name: cache-cabal
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/.cabal/store
|
||||||
|
~/.cabal/packages
|
||||||
|
key: v2-${{ runner.os }}-${{ env.GHC }}-${{ env.CABAL }}-build-${{ hashFiles('cabal.project') }}
|
||||||
|
restore-keys: |
|
||||||
|
v2-${{ runner.os }}-${{ env.GHC }}-${{ env.CABAL }}-build-${{ hashFiles('cabal.project') }}
|
||||||
|
v2-${{ runner.os }}-${{ env.GHC }}-${{ env.CABAL }}-build-
|
||||||
|
v2-${{ runner.os }}-${{ env.GHC }}
|
||||||
|
|
||||||
|
- name: Install ghcup-gen
|
||||||
|
run: |
|
||||||
|
ghcup run --cabal 3.10.1.0 --ghc 9.2.8 --install -- cabal install --installdir="$HOME/.local/bin" --overwrite-policy=always --install-method=copy ghcup-gen
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Check yaml
|
||||||
|
run: |
|
||||||
|
ghcup-gen -- check -f ${{ env.METADATA_FILE }} --channel ${{ env.CHANNEL }}
|
||||||
|
yamllint ${{ env.METADATA_FILE }}
|
||||||
|
python3 -c "import yaml ; stream = open('${{ env.METADATA_FILE }}', 'r') ; yaml.safe_load(stream)"
|
||||||
|
shell: bash
|
||||||
|
|
||||||
signature-test:
|
signature-test:
|
||||||
name: Test signatures
|
name: Test signatures
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|||||||
43
README.md
43
README.md
@@ -1,6 +1,26 @@
|
|||||||
# GHCup metadata
|
# GHCup metadata
|
||||||
|
|
||||||
## Adding a new GHC version
|
## For end users
|
||||||
|
|
||||||
|
### Metadata variants (distribution channels)
|
||||||
|
|
||||||
|
* `ghcup-A.B.C.yaml`: this is the main metadata and what ghcup uses by default
|
||||||
|
* `ghcup-vanilla-A.B.C.yaml`: this is similar to `ghcup-A.B.C.yaml`, but only uses upstream bindists (no patches/fixes are applied, no missing platforms added)
|
||||||
|
* `ghcup-prereleases-A.B.C.yaml`: this contains pre-releases of all tools
|
||||||
|
* `ghcup-cross-A.B.C.yaml`: this contains (usually experimental) cross compilers
|
||||||
|
|
||||||
|
### Using the metadata
|
||||||
|
|
||||||
|
If you want access to both pre-releases and cross compilers, run:
|
||||||
|
|
||||||
|
```
|
||||||
|
ghcup config add-release-channel https://raw.githubusercontent.com/haskell/ghcup-metadata/master/ghcup-prereleases-0.0.7.yaml
|
||||||
|
ghcup config add-release-channel https://raw.githubusercontent.com/haskell/ghcup-metadata/master/ghcup-cross-0.0.8.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
## For contributors
|
||||||
|
|
||||||
|
### Adding a new GHC version
|
||||||
|
|
||||||
1. open the latest `ghcup-<yaml-ver>.yaml`
|
1. open the latest `ghcup-<yaml-ver>.yaml`
|
||||||
2. find the latest ghc version (in yaml tree e.g. `ghcupDownloads -> GHC -> 8.10.7`)
|
2. find the latest ghc version (in yaml tree e.g. `ghcupDownloads -> GHC -> 8.10.7`)
|
||||||
@@ -11,3 +31,24 @@
|
|||||||
7. run `cabal run ghcup-gen -- check-tarballs -f ghcup-<yaml-ver>.yaml -u 'ghc-8\.10\.8'`
|
7. run `cabal run ghcup-gen -- check-tarballs -f ghcup-<yaml-ver>.yaml -u 'ghc-8\.10\.8'`
|
||||||
8. run `cabal run ghcup-gen -- generate-hls-ghcs -f ghcup-<yaml-ver>.yaml --format json -o hls-metadata-0.0.1.json`
|
8. run `cabal run ghcup-gen -- generate-hls-ghcs -f ghcup-<yaml-ver>.yaml --format json -o hls-metadata-0.0.1.json`
|
||||||
9. run `cabal run ghcup-gen -- generate-table -f ghcup-<yaml-ver>.yaml --stdout` and adjust [docs/install](https://gitlab.haskell.org/haskell/ghcup-hs/-/blob/master/docs/install.md) tables
|
9. run `cabal run ghcup-gen -- generate-table -f ghcup-<yaml-ver>.yaml --stdout` and adjust [docs/install](https://gitlab.haskell.org/haskell/ghcup-hs/-/blob/master/docs/install.md) tables
|
||||||
|
|
||||||
|
### During a pull request
|
||||||
|
|
||||||
|
* make sure to always add new versions to both `ghcup-A.B.C.yaml` and `ghcup-vanilla-A.B.C.yaml`
|
||||||
|
* make sure to run the bindist action to check tool installation on all platforms: https://github.com/haskell/ghcup-metadata/actions/workflows/bindists.yaml
|
||||||
|
- this is a manual pipeline
|
||||||
|
- set the appropriate parameters
|
||||||
|
* make sure to sign the yaml files you edited, e.g.: `gpg --detach-sign -u <your-email> ghcup-0.0.7.yaml` or ask a GHCup developer to sign
|
||||||
|
- PGP pubkeys need to be cross-signed by the GHCup team
|
||||||
|
- they need to be added to the CI: https://github.com/haskell/ghcup-metadata/blob/develop/.github/workflows/sigs
|
||||||
|
- and need to be documented on the homepage
|
||||||
|
* https://github.com/haskell/ghcup-hs/blob/master/docs/guide.md#gpg-verification
|
||||||
|
* https://github.com/haskell/ghcup-hs/blob/master/docs/install.md#unix
|
||||||
|
|
||||||
|
### Understanding tags
|
||||||
|
|
||||||
|
Tags are documented [here](https://github.com/haskell/ghcup-hs/blob/master/lib/GHCup/Types.hs). Search for `data Tag`.
|
||||||
|
Some tags are unique. Uniqueness is checked by `cabal run ghcup-gen -- check -f ghcup-<yaml-ver>.yaml`.
|
||||||
|
|
||||||
|
If you want to check prereleases, do: `cabal run ghcup-gen -- check -f ghcup-prereleases-<yaml-ver>.yaml --channel=prerelease`
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ package ghcup
|
|||||||
source-repository-package
|
source-repository-package
|
||||||
type: git
|
type: git
|
||||||
location: https://github.com/haskell/ghcup-hs.git
|
location: https://github.com/haskell/ghcup-hs.git
|
||||||
tag: fd6ff9f8ece147bb4527843822462c72824e8ba7
|
tag: e27fed09f3eb4b0b72ce7825c65f16a4202a2399
|
||||||
|
|
||||||
constraints: http-io-streams -brotli,
|
constraints: http-io-streams -brotli,
|
||||||
any.aeson >= 2.0.1.0
|
any.aeson >= 2.0.1.0
|
||||||
|
|||||||
@@ -2851,7 +2851,6 @@ ghcupDownloads:
|
|||||||
9.2.8:
|
9.2.8:
|
||||||
viTags:
|
viTags:
|
||||||
- base-4.16.4.0
|
- base-4.16.4.0
|
||||||
- Recommended
|
|
||||||
viChangeLog: https://downloads.haskell.org/~ghc/9.2.8/docs/html/users_guide/index.html
|
viChangeLog: https://downloads.haskell.org/~ghc/9.2.8/docs/html/users_guide/index.html
|
||||||
viSourceDL:
|
viSourceDL:
|
||||||
dlUri: https://downloads.haskell.org/~ghc/9.2.8/ghc-9.2.8-src.tar.xz
|
dlUri: https://downloads.haskell.org/~ghc/9.2.8/ghc-9.2.8-src.tar.xz
|
||||||
@@ -3497,6 +3496,7 @@ ghcupDownloads:
|
|||||||
9.4.7:
|
9.4.7:
|
||||||
viTags:
|
viTags:
|
||||||
- base-4.17.2.0
|
- base-4.17.2.0
|
||||||
|
- Recommended
|
||||||
viChangeLog: https://downloads.haskell.org/~ghc/9.4.7/docs/users_guide/9.4.7-notes.html
|
viChangeLog: https://downloads.haskell.org/~ghc/9.4.7/docs/users_guide/9.4.7-notes.html
|
||||||
viSourceDL:
|
viSourceDL:
|
||||||
dlUri: https://downloads.haskell.org/~ghc/9.4.7/ghc-9.4.7-src.tar.xz
|
dlUri: https://downloads.haskell.org/~ghc/9.4.7/ghc-9.4.7-src.tar.xz
|
||||||
@@ -5707,8 +5707,7 @@ ghcupDownloads:
|
|||||||
dlUri: https://downloads.haskell.org/ghcup/unofficial-bindists/stack/2.9.1/stack-2.9.1-linux-armv7.tar.gz
|
dlUri: https://downloads.haskell.org/ghcup/unofficial-bindists/stack/2.9.1/stack-2.9.1-linux-armv7.tar.gz
|
||||||
dlHash: fa53c58d8d00a6d49ec26624aa7f817f5ece3c4df339fa6e4fccf1038b7f1fa5
|
dlHash: fa53c58d8d00a6d49ec26624aa7f817f5ece3c4df339fa6e4fccf1038b7f1fa5
|
||||||
2.9.3:
|
2.9.3:
|
||||||
viTags:
|
viTags: []
|
||||||
- Recommended
|
|
||||||
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v293
|
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v293
|
||||||
viPostInstall: *stack-post
|
viPostInstall: *stack-post
|
||||||
viArch:
|
viArch:
|
||||||
@@ -5757,7 +5756,7 @@ ghcupDownloads:
|
|||||||
dlHash: a56d2cd37611eccf00ab8df38c3718923cf5677f3aeacd250394e79b676dcb98
|
dlHash: a56d2cd37611eccf00ab8df38c3718923cf5677f3aeacd250394e79b676dcb98
|
||||||
2.11.1:
|
2.11.1:
|
||||||
viTags:
|
viTags:
|
||||||
- Latest
|
- Recommended
|
||||||
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v2111---2023-05-18
|
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v2111---2023-05-18
|
||||||
viPostInstall: *stack-post
|
viPostInstall: *stack-post
|
||||||
viArch:
|
viArch:
|
||||||
@@ -5799,3 +5798,47 @@ ghcupDownloads:
|
|||||||
dlHash: 3ea56c5885c9c6d7e2dce927e44f48f6024a4a5a039f7acad79b19654a6f95b5
|
dlHash: 3ea56c5885c9c6d7e2dce927e44f48f6024a4a5a039f7acad79b19654a6f95b5
|
||||||
dlSubdir:
|
dlSubdir:
|
||||||
RegexDir: "stack-.*"
|
RegexDir: "stack-.*"
|
||||||
|
2.13.1:
|
||||||
|
viTags:
|
||||||
|
- Latest
|
||||||
|
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v2131---2023-09-29
|
||||||
|
viPostInstall: *stack-post
|
||||||
|
viArch:
|
||||||
|
A_64:
|
||||||
|
Linux_UnknownLinux:
|
||||||
|
unknown_versioning: &stack-2131-64
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-linux-x86_64.tar.gz
|
||||||
|
dlHash: 45281bb2385e928916ec8bcbc7ab790ce8721bbf805f3d0752544ada22ad5ea3
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Darwin:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-osx-x86_64.tar.gz
|
||||||
|
dlHash: b7d46382edb17230d21943844550d3aaeacee8b6fb1fcc7980ca59bee500b2a5
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Windows:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-windows-x86_64.tar.gz
|
||||||
|
dlHash: 728be2371e257c6960341167192fa704ff1f92ab61657dd4781710a257fae7c1
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
# FreeBSD:
|
||||||
|
# unknown_versioning:
|
||||||
|
# dlUri: https://downloads.haskell.org/ghcup/unofficial-bindists/stack/2.13.1/stack-2.13.1-freebsd-x86_64.tar.xz
|
||||||
|
# dlHash: <replace_me>
|
||||||
|
Linux_Alpine:
|
||||||
|
unknown_versioning: *stack-2131-64
|
||||||
|
A_ARM64:
|
||||||
|
Linux_UnknownLinux:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-linux-aarch64.tar.gz
|
||||||
|
dlHash: 37b1dbf39131eea629a6e3685fd1153fdfd2f0cd2179db92bb33784987b4ddb8
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Darwin:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-osx-aarch64.tar.gz
|
||||||
|
dlHash: 18ececd7112b1aad01ab0f88cb68ae63f2dc74aa9b8b5319828979f43cba9907
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
|||||||
Binary file not shown.
@@ -105,11 +105,30 @@ inputP :: Parser Input
|
|||||||
inputP = fileInput <|> stdInput
|
inputP = fileInput <|> stdInput
|
||||||
|
|
||||||
data ValidateYAMLOpts = ValidateYAMLOpts
|
data ValidateYAMLOpts = ValidateYAMLOpts
|
||||||
{ vInput :: Maybe Input
|
{ vChannel :: DistributionChannel
|
||||||
|
, vInput :: Maybe Input
|
||||||
}
|
}
|
||||||
|
|
||||||
validateYAMLOpts :: Parser ValidateYAMLOpts
|
validateYAMLOpts :: Parser ValidateYAMLOpts
|
||||||
validateYAMLOpts = ValidateYAMLOpts <$> optional inputP
|
validateYAMLOpts = ValidateYAMLOpts <$> channelParser <*> optional inputP
|
||||||
|
|
||||||
|
channelParser :: Parser DistributionChannel
|
||||||
|
channelParser =
|
||||||
|
option
|
||||||
|
(eitherReader chanP)
|
||||||
|
(long "channel" <> metavar "CHANNEL" <> help
|
||||||
|
"Signal which distribution channel the YAML denotes: (main | prerelease | nightly). Main is defaul."
|
||||||
|
<> value MainChan
|
||||||
|
)
|
||||||
|
where
|
||||||
|
chanP :: String -> Either String DistributionChannel
|
||||||
|
chanP s' | t == T.pack "main" = Right MainChan
|
||||||
|
| t == T.pack "prerelease" = Right PrereleaseChan
|
||||||
|
| t == T.pack "prereleases" = Right PrereleaseChan
|
||||||
|
| t == T.pack "nightly" = Right NightlyChan
|
||||||
|
| t == T.pack "nightlies" = Right NightlyChan
|
||||||
|
| otherwise = Left ("Unknown channel value: " <> s')
|
||||||
|
where t = T.toLower (T.pack s')
|
||||||
|
|
||||||
tarballFilterP :: Parser TarballFilter
|
tarballFilterP :: Parser TarballFilter
|
||||||
tarballFilterP = option readm $
|
tarballFilterP = option readm $
|
||||||
@@ -205,7 +224,7 @@ main = do
|
|||||||
|
|
||||||
_ <- customExecParser (prefs showHelpOnError) (info (opts <**> helper) idm)
|
_ <- customExecParser (prefs showHelpOnError) (info (opts <**> helper) idm)
|
||||||
>>= \Options {..} -> case optCommand of
|
>>= \Options {..} -> case optCommand of
|
||||||
ValidateYAML vopts -> withValidateYamlOpts vopts validate
|
ValidateYAML vopts@ValidateYAMLOpts{ .. } -> withValidateYamlOpts vopts (validate vChannel)
|
||||||
ValidateTarballs vopts tarballFilter -> withValidateYamlOpts vopts (validateTarballs tarballFilter)
|
ValidateTarballs vopts tarballFilter -> withValidateYamlOpts vopts (validateTarballs tarballFilter)
|
||||||
GenerateHlsGhc vopts format output -> withValidateYamlOpts vopts (generateHLSGhc format output)
|
GenerateHlsGhc vopts format output -> withValidateYamlOpts vopts (generateHLSGhc format output)
|
||||||
GenerateToolTable vopts output -> withValidateYamlOpts vopts (generateTable output)
|
GenerateToolTable vopts output -> withValidateYamlOpts vopts (generateTable output)
|
||||||
|
|||||||
@@ -51,6 +51,11 @@ data ValidationError = InternalError String
|
|||||||
|
|
||||||
instance Exception ValidationError
|
instance Exception ValidationError
|
||||||
|
|
||||||
|
data DistributionChannel = MainChan
|
||||||
|
| PrereleaseChan
|
||||||
|
| NightlyChan
|
||||||
|
deriving (Show, Eq)
|
||||||
|
|
||||||
|
|
||||||
addError :: (MonadReader (IORef Int) m, MonadIO m, Monad m) => m ()
|
addError :: (MonadReader (IORef Int) m, MonadIO m, Monad m) => m ()
|
||||||
addError = do
|
addError = do
|
||||||
@@ -66,8 +71,9 @@ validate :: ( Monad m
|
|||||||
, MonadUnliftIO m
|
, MonadUnliftIO m
|
||||||
, HasGHCupInfo env
|
, HasGHCupInfo env
|
||||||
)
|
)
|
||||||
=> m ExitCode
|
=> DistributionChannel
|
||||||
validate = do
|
-> m ExitCode
|
||||||
|
validate distroChannel = do
|
||||||
GHCupInfo { _ghcupDownloads = dls } <- getGHCupInfo
|
GHCupInfo { _ghcupDownloads = dls } <- getGHCupInfo
|
||||||
|
|
||||||
ref <- liftIO $ newIORef 0
|
ref <- liftIO $ newIORef 0
|
||||||
@@ -95,33 +101,36 @@ validate = do
|
|||||||
lift $ logInfo "All good"
|
lift $ logInfo "All good"
|
||||||
pure ExitSuccess
|
pure ExitSuccess
|
||||||
where
|
where
|
||||||
checkHasRequiredPlatforms t v tags arch pspecs = do
|
checkHasRequiredPlatforms t v tags arch pspecs
|
||||||
let v' = prettyVer v
|
-- relax requirements for prerelease and nightly channels
|
||||||
arch' = prettyShow arch
|
| distroChannel `elem` [PrereleaseChan, NightlyChan] = pure ()
|
||||||
when (Linux UnknownLinux `notElem` pspecs) $ do
|
| otherwise = do
|
||||||
lift $ logError $
|
let v' = prettyVer v
|
||||||
"Linux UnknownLinux missing for for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack arch'
|
arch' = prettyShow arch
|
||||||
addError
|
when (Linux UnknownLinux `notElem` pspecs) $ do
|
||||||
when ((Darwin `notElem` pspecs) && arch == A_64) $ do
|
lift $ logError $
|
||||||
lift $ logError $ "Darwin missing for for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack arch'
|
"Linux UnknownLinux missing for for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack arch'
|
||||||
addError
|
addError
|
||||||
when ((FreeBSD `notElem` pspecs) && arch == A_64) $ lift $ logWarn $
|
when ((Darwin `notElem` pspecs) && arch == A_64) $ do
|
||||||
"FreeBSD missing for for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack arch'
|
lift $ logError $ "Darwin missing for for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack arch'
|
||||||
when (Windows `notElem` pspecs && arch == A_64) $ do
|
addError
|
||||||
lift $ logError $ "Windows missing for for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack arch'
|
when ((FreeBSD `notElem` pspecs) && arch == A_64) $ lift $ logWarn $
|
||||||
addError
|
"FreeBSD missing for for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack arch'
|
||||||
|
when (Windows `notElem` pspecs && arch == A_64) $ do
|
||||||
|
lift $ logError $ "Windows missing for for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack arch'
|
||||||
|
addError
|
||||||
|
|
||||||
-- alpine needs to be set explicitly, because
|
-- alpine needs to be set explicitly, because
|
||||||
-- we cannot assume that "Linux UnknownLinux" runs on Alpine
|
-- we cannot assume that "Linux UnknownLinux" runs on Alpine
|
||||||
-- (although it could be static)
|
-- (although it could be static)
|
||||||
when (Linux Alpine `notElem` pspecs) $
|
when (Linux Alpine `notElem` pspecs) $
|
||||||
case t of
|
case t of
|
||||||
GHCup | arch `elem` [A_64, A_32] -> lift (logError $ "Linux Alpine missing for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack (prettyShow arch)) >> addError
|
GHCup | arch `elem` [A_64, A_32] -> lift (logError $ "Linux Alpine missing for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack (prettyShow arch)) >> addError
|
||||||
Cabal | v > [vver|2.4.1.0|]
|
Cabal | v > [vver|2.4.1.0|]
|
||||||
, arch `elem` [A_64, A_32] -> lift (logError $ "Linux Alpine missing for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack (prettyShow arch)) >> addError
|
, arch `elem` [A_64, A_32] -> lift (logError $ "Linux Alpine missing for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack (prettyShow arch)) >> addError
|
||||||
GHC | Latest `elem` tags || Recommended `elem` tags
|
GHC | Latest `elem` tags || Recommended `elem` tags
|
||||||
, arch `elem` [A_64, A_32] -> lift (logError $ "Linux Alpine missing for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack (prettyShow arch))
|
, arch `elem` [A_64, A_32] -> lift (logError $ "Linux Alpine missing for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack (prettyShow arch))
|
||||||
_ -> lift $ logWarn $ "Linux Alpine missing for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack (prettyShow arch)
|
_ -> lift $ logWarn $ "Linux Alpine missing for " <> T.pack (prettyShow t) <> " " <> v' <> " " <> T.pack (prettyShow arch)
|
||||||
|
|
||||||
checkUniqueTags tool = do
|
checkUniqueTags tool = do
|
||||||
GHCupInfo { _ghcupDownloads = dls } <- lift getGHCupInfo
|
GHCupInfo { _ghcupDownloads = dls } <- lift getGHCupInfo
|
||||||
@@ -145,12 +154,15 @@ validate = do
|
|||||||
lift $ logError $ "Tags not unique for " <> T.pack (prettyShow tool) <> ": " <> T.pack (prettyShow xs)
|
lift $ logError $ "Tags not unique for " <> T.pack (prettyShow tool) <> ": " <> T.pack (prettyShow xs)
|
||||||
addError
|
addError
|
||||||
where
|
where
|
||||||
isUniqueTag Latest = True
|
isUniqueTag Latest = True
|
||||||
isUniqueTag Recommended = True
|
isUniqueTag Recommended = True
|
||||||
isUniqueTag Old = False
|
isUniqueTag Old = False
|
||||||
isUniqueTag Prerelease = False
|
isUniqueTag Prerelease = False
|
||||||
isUniqueTag (Base _) = False
|
isUniqueTag LatestPrerelease = True
|
||||||
isUniqueTag (UnknownTag _) = False
|
isUniqueTag Nightly = False
|
||||||
|
isUniqueTag LatestNightly = True
|
||||||
|
isUniqueTag (Base _) = False
|
||||||
|
isUniqueTag (UnknownTag _) = False
|
||||||
|
|
||||||
checkGHCVerIsValid = do
|
checkGHCVerIsValid = do
|
||||||
GHCupInfo { _ghcupDownloads = dls } <- lift getGHCupInfo
|
GHCupInfo { _ghcupDownloads = dls } <- lift getGHCupInfo
|
||||||
@@ -166,12 +178,21 @@ validate = do
|
|||||||
checkMandatoryTags tool = do
|
checkMandatoryTags tool = do
|
||||||
GHCupInfo { _ghcupDownloads = dls } <- lift getGHCupInfo
|
GHCupInfo { _ghcupDownloads = dls } <- lift getGHCupInfo
|
||||||
let allTags = _viTags =<< M.elems (availableToolVersions dls tool)
|
let allTags = _viTags =<< M.elems (availableToolVersions dls tool)
|
||||||
forM_ [Latest, Recommended] $ \t -> case t `elem` allTags of
|
forM_ (mandatoryTags tool) $ \t -> case t `elem` allTags of
|
||||||
False -> do
|
False -> do
|
||||||
lift $ logError $ "Tag " <> T.pack (prettyShow t) <> " missing from " <> T.pack (prettyShow tool)
|
lift $ logError $ "Tag " <> T.pack (prettyShow t) <> " missing from " <> T.pack (prettyShow tool)
|
||||||
addError
|
addError
|
||||||
True -> pure ()
|
True -> pure ()
|
||||||
|
|
||||||
|
mandatoryTags tool
|
||||||
|
-- due to a quirk, even for ghcup prereleases we need the 'latest' tag
|
||||||
|
-- https://github.com/haskell/ghcup-hs/issues/891
|
||||||
|
| tool == GHCup = [Latest, Recommended]
|
||||||
|
| otherwise = case distroChannel of
|
||||||
|
MainChan -> [Latest, Recommended]
|
||||||
|
PrereleaseChan -> [LatestPrerelease]
|
||||||
|
NightlyChan -> [LatestNightly]
|
||||||
|
|
||||||
-- all GHC versions must have a base tag
|
-- all GHC versions must have a base tag
|
||||||
checkGHCHasBaseVersion = do
|
checkGHCHasBaseVersion = do
|
||||||
GHCupInfo { _ghcupDownloads = dls } <- lift getGHCupInfo
|
GHCupInfo { _ghcupDownloads = dls } <- lift getGHCupInfo
|
||||||
|
|||||||
@@ -13,11 +13,11 @@ ghcupDownloads:
|
|||||||
viArch:
|
viArch:
|
||||||
A_64:
|
A_64:
|
||||||
Linux_UnknownLinux:
|
Linux_UnknownLinux:
|
||||||
unknown_versioning: &cabal-3720-32
|
unknown_versioning: &cabal-3720-64
|
||||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/3.7.0.0-pre20220407/cabal-install-3.7-x86_64-linux-alpine.tar.xz
|
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/3.7.0.0-pre20220407/cabal-install-3.7-x86_64-linux-alpine.tar.xz
|
||||||
dlHash: c9e28e1578dfb851918e523040cb0f913df747fe95e24d089bcf7cd821c21885
|
dlHash: c9e28e1578dfb851918e523040cb0f913df747fe95e24d089bcf7cd821c21885
|
||||||
Linux_Alpine:
|
Linux_Alpine:
|
||||||
unknown_versioning: *cabal-3720-32
|
unknown_versioning: *cabal-3720-64
|
||||||
Darwin:
|
Darwin:
|
||||||
unknown_versioning:
|
unknown_versioning:
|
||||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/3.7.0.0-pre20220407/cabal-install-3.7-x86_64-darwin.tar.xz
|
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/3.7.0.0-pre20220407/cabal-install-3.7-x86_64-darwin.tar.xz
|
||||||
@@ -59,11 +59,11 @@ ghcupDownloads:
|
|||||||
viArch:
|
viArch:
|
||||||
A_64:
|
A_64:
|
||||||
Linux_UnknownLinux:
|
Linux_UnknownLinux:
|
||||||
unknown_versioning: &cabal-3810-32
|
unknown_versioning: &cabal-3810-64
|
||||||
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.8.1.0-rc1/cabal-install-3.8.0.20220526-x86_64-linux-alpine.tar.xz
|
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.8.1.0-rc1/cabal-install-3.8.0.20220526-x86_64-linux-alpine.tar.xz
|
||||||
dlHash: a4e6cb7990d7150c4e64cbd3ebd0a62fb6b00f96f0f9bc3fb751ff6d1f898fdb
|
dlHash: a4e6cb7990d7150c4e64cbd3ebd0a62fb6b00f96f0f9bc3fb751ff6d1f898fdb
|
||||||
Linux_Alpine:
|
Linux_Alpine:
|
||||||
unknown_versioning: *cabal-3810-32
|
unknown_versioning: *cabal-3810-64
|
||||||
Darwin:
|
Darwin:
|
||||||
unknown_versioning:
|
unknown_versioning:
|
||||||
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.8.1.0-rc1/cabal-install-3.8.0.20220526-x86_64-darwin.tar.xz
|
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.8.1.0-rc1/cabal-install-3.8.0.20220526-x86_64-darwin.tar.xz
|
||||||
@@ -100,11 +100,11 @@ ghcupDownloads:
|
|||||||
viArch:
|
viArch:
|
||||||
A_64:
|
A_64:
|
||||||
Linux_UnknownLinux:
|
Linux_UnknownLinux:
|
||||||
unknown_versioning: &cabal-3900-32
|
unknown_versioning: &cabal-3900-64
|
||||||
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.9.0.0/cabal-install-3.9-x86_64-linux-alpine.tar.xz
|
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.9.0.0/cabal-install-3.9-x86_64-linux-alpine.tar.xz
|
||||||
dlHash: 0374716dc33f255e1fb9ec38d83fdd3a3dc81ecf38af0a94b8ab0e1ba1a1ac1c
|
dlHash: 0374716dc33f255e1fb9ec38d83fdd3a3dc81ecf38af0a94b8ab0e1ba1a1ac1c
|
||||||
Linux_Alpine:
|
Linux_Alpine:
|
||||||
unknown_versioning: *cabal-3900-32
|
unknown_versioning: *cabal-3900-64
|
||||||
Darwin:
|
Darwin:
|
||||||
unknown_versioning:
|
unknown_versioning:
|
||||||
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.9.0.0/cabal-install-3.9-x86_64-darwin.tar.xz
|
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.9.0.0/cabal-install-3.9-x86_64-darwin.tar.xz
|
||||||
@@ -210,7 +210,7 @@ ghcupDownloads:
|
|||||||
dlUri: https://downloads.haskell.org/~ghc/9.4.1-alpha2/ghc-9.4.0.20220523-src.tar.xz
|
dlUri: https://downloads.haskell.org/~ghc/9.4.1-alpha2/ghc-9.4.0.20220523-src.tar.xz
|
||||||
dlSubdir: ghc-9.4.0.20220523
|
dlSubdir: ghc-9.4.0.20220523
|
||||||
dlHash: 3bcac9a2043bbc99cd8113547d92fdcad7d7bb4c286a9222ccbcbd4b4a26b635
|
dlHash: 3bcac9a2043bbc99cd8113547d92fdcad7d7bb4c286a9222ccbcbd4b4a26b635
|
||||||
viPostRemove: &ghc-post-remove "After removing GHC you might also want to clean up your cabal store at: ~/.cabal/store/ghc-<ghcver>"
|
viPostRemove: *ghc-post-remove
|
||||||
viArch:
|
viArch:
|
||||||
A_64:
|
A_64:
|
||||||
Linux_Debian:
|
Linux_Debian:
|
||||||
@@ -549,11 +549,11 @@ ghcupDownloads:
|
|||||||
viArch:
|
viArch:
|
||||||
A_32:
|
A_32:
|
||||||
Linux_Debian:
|
Linux_Debian:
|
||||||
<10: &ghc-961alpha2-64-deb9
|
<10: &ghc-961alpha2-32-deb9
|
||||||
dlHash: e2f3e622f1aecfe0b6a305d0fb997e83453ecbc2949cb2b393549e35f2b062e1
|
dlHash: e2f3e622f1aecfe0b6a305d0fb997e83453ecbc2949cb2b393549e35f2b062e1
|
||||||
dlSubdir: ghc-9.6.0.20230128-i386-unknown-linux
|
dlSubdir: ghc-9.6.0.20230128-i386-unknown-linux
|
||||||
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20230128/ghc-9.6.0.20230128-i386-deb9-linux.tar.xz
|
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20230128/ghc-9.6.0.20230128-i386-deb9-linux.tar.xz
|
||||||
unknown_versioning: *ghc-961alpha2-64-deb9
|
unknown_versioning: *ghc-961alpha2-32-deb9
|
||||||
A_64:
|
A_64:
|
||||||
Darwin:
|
Darwin:
|
||||||
unknown_versioning:
|
unknown_versioning:
|
||||||
@@ -1290,7 +1290,7 @@ ghcupDownloads:
|
|||||||
dlSubdir: ghc-9.8.0.20230919
|
dlSubdir: ghc-9.8.0.20230919
|
||||||
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230919/ghc-9.8.0.20230919-src.tar.xz
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230919/ghc-9.8.0.20230919-src.tar.xz
|
||||||
viTags:
|
viTags:
|
||||||
- LatestPrerelease
|
- Prerelease
|
||||||
- base-4.19.0.0
|
- base-4.19.0.0
|
||||||
viTestDL:
|
viTestDL:
|
||||||
dlHash: a586567b51ce856d15cc4bdde2316aa0aaf7381d80896d2fdcc4f13757b303e6
|
dlHash: a586567b51ce856d15cc4bdde2316aa0aaf7381d80896d2fdcc4f13757b303e6
|
||||||
@@ -1298,6 +1298,121 @@ ghcupDownloads:
|
|||||||
dlSubdir: ghc-9.8.0.20230919
|
dlSubdir: ghc-9.8.0.20230919
|
||||||
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230919/ghc-9.8.0.20230919-src.tar.xz
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230919/ghc-9.8.0.20230919-src.tar.xz
|
||||||
|
|
||||||
|
9.8.0.20230929:
|
||||||
|
viArch:
|
||||||
|
A_32:
|
||||||
|
Linux_Debian:
|
||||||
|
unknown_versioning: &ghc-981rc1-i386-deb10
|
||||||
|
dlHash: 972ecaadafff7d4a65fa5c328d4f9b5210001c75534f3ba123fe51039643ab09
|
||||||
|
dlOutput: ghc-9.8.0.20230929-i386-linux-deb10.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-i386-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-i386-deb10-linux.tar.xz
|
||||||
|
Linux_Mint:
|
||||||
|
unknown_versioning: *ghc-981rc1-i386-deb10
|
||||||
|
Linux_Ubuntu:
|
||||||
|
unknown_versioning: *ghc-981rc1-i386-deb10
|
||||||
|
Linux_UnknownLinux:
|
||||||
|
unknown_versioning: *ghc-981rc1-i386-deb10
|
||||||
|
A_64:
|
||||||
|
Darwin:
|
||||||
|
unknown_versioning:
|
||||||
|
dlHash: 95ff4a6fe3202e14311bfd22b2ef166d47e8cc8a848cf9cfd5d66734e4dac919
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-darwin.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-apple-darwin
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-apple-darwin.tar.xz
|
||||||
|
Linux_Alpine:
|
||||||
|
unknown_versioning:
|
||||||
|
dlHash: 4f73dbe0967d831252744d59a238d4a49aa474ea04b4cc8683fe06847f6b071d
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-alpine3_12.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-alpine3_12-linux.tar.xz
|
||||||
|
Linux_CentOS:
|
||||||
|
( >= 7 && < 8 ): &ghc-981rc1-x86_64-centos7
|
||||||
|
dlHash: ca3526b013b9889f4b43074dcdb0cc213facb55db9f0e6de9c2365bb0365b664
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-centos7.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-centos7-linux.tar.xz
|
||||||
|
unknown_versioning: *ghc-981rc1-x86_64-centos7
|
||||||
|
Linux_Debian:
|
||||||
|
(>= 10 && < 11):
|
||||||
|
dlHash: abd39667c4227614c3f2c6a58a911837eb08f2664ca8dcc06389f6e2fe88d576
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-deb10.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-deb10-linux.tar.xz
|
||||||
|
< 10:
|
||||||
|
dlHash: 9d5c85c58b4f35125c6ff62974e935d035ff42ef7e4bb366007982127f9b4312
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-deb9.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-deb9-linux.tar.xz
|
||||||
|
'>= 11': &ghc-981rc1-x86_64-deb11
|
||||||
|
dlHash: 4be779e74afb510de27f7d9ed3b2a63044e678d2bdf8356a42f2232dcd4bc332
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-deb11.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-deb11-linux.tar.xz
|
||||||
|
unknown_versioning: *ghc-981rc1-x86_64-deb11
|
||||||
|
Linux_Fedora:
|
||||||
|
'>= 33':
|
||||||
|
dlHash: a85cfaee4b3d3a9900282a01f473e5520e31c405cd3319a30a8ab06321cd90e0
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-fedora33.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-fedora33-linux.tar.xz
|
||||||
|
unknown_versioning: *ghc-981rc1-x86_64-centos7
|
||||||
|
Linux_Mint:
|
||||||
|
< 20: &ghc-981rc1-x86_64-ubuntu18_04
|
||||||
|
dlHash: d07a57858490dfa5ed1299939eacf068f52603b4ab55a5cc68b3fe19b0bb81da
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-ubuntu18_04.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-ubuntu18_04-linux.tar.xz
|
||||||
|
'>= 20': &ghc-981rc1-x86_64-ubuntu20_04
|
||||||
|
dlHash: 433e70733015c64fd967ee2f6c93ac519a0a72455463dac76030a8b2aa54c021
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-ubuntu20_04.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-ubuntu20_04-linux.tar.xz
|
||||||
|
Linux_RedHat:
|
||||||
|
unknown_versioning: *ghc-981rc1-x86_64-centos7
|
||||||
|
Linux_Ubuntu:
|
||||||
|
( >= 16 && < 19 ): *ghc-981rc1-x86_64-ubuntu18_04
|
||||||
|
unknown_versioning: *ghc-981rc1-x86_64-ubuntu20_04
|
||||||
|
Linux_UnknownLinux:
|
||||||
|
unknown_versioning:
|
||||||
|
dlHash: aaaeb2c1a0bc111676b240bb171e622532cafab2b8d9fb98da181d8df799cf32
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-linux-rocky8.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-rocky8-linux.tar.xz
|
||||||
|
Windows:
|
||||||
|
unknown_versioning:
|
||||||
|
dlHash: 89960b8e52b21c455369025a6ba9f7445ad763cd8ea924771ef65052d3b0caf6
|
||||||
|
dlOutput: ghc-9.8.0.20230929-x86_64-windows.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-x86_64-unknown-mingw32
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-x86_64-unknown-mingw32.tar.xz
|
||||||
|
A_ARM64:
|
||||||
|
Darwin:
|
||||||
|
unknown_versioning:
|
||||||
|
dlHash: 62f66aa167ff08e862549750511fe4c7a1b789ac82a1203e5154ddaa62e0a0e6
|
||||||
|
dlOutput: ghc-9.8.0.20230929-aarch64-darwin.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-aarch64-apple-darwin
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-aarch64-apple-darwin.tar.xz
|
||||||
|
Linux_UnknownLinux:
|
||||||
|
unknown_versioning:
|
||||||
|
dlHash: cf212fc580fd881dbf80c8a2d7df355cc8728c94b8bab2217a3257247d4b459a
|
||||||
|
dlOutput: ghc-9.8.0.20230929-aarch64-linux-deb10.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929-aarch64-unknown-linux
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-aarch64-deb10-linux.tar.xz
|
||||||
|
viChangeLog: https://downloads.haskell.org/~ghc/9.8.0.20230929/docs/users_guide/9.8.1-notes.html
|
||||||
|
viReleaseDay: '2023-09-29'
|
||||||
|
viSourceDL:
|
||||||
|
dlHash: 93bda13ca9e612210147210c23c2d565b9a4cfafa0f4d8a033ec533a8d07fd4b
|
||||||
|
dlOutput: ghc-9.8.0.20230929-src.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-src.tar.xz
|
||||||
|
viTags:
|
||||||
|
- LatestPrerelease
|
||||||
|
- base-4.19.0.0
|
||||||
|
viTestDL:
|
||||||
|
dlHash: b0afd2912ba91914519739907ede6008857871668a138829410d72948c3c359e
|
||||||
|
dlOutput: ghc-9.8.0.20230929-testsuite.tar.xz
|
||||||
|
dlSubdir: ghc-9.8.0.20230929
|
||||||
|
dlUri: https://downloads.haskell.org/~ghc/9.8.0.20230929/ghc-9.8.0.20230929-src.tar.xz
|
||||||
|
|
||||||
Stack:
|
Stack:
|
||||||
2.9.2.1:
|
2.9.2.1:
|
||||||
|
|||||||
Binary file not shown.
@@ -5378,9 +5378,7 @@ ghcupDownloads:
|
|||||||
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.9.3/stack-2.9.3-linux-aarch64.tar.gz
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.9.3/stack-2.9.3-linux-aarch64.tar.gz
|
||||||
dlHash: 161e1638da9efc56319f7225b3652ca3f339bcda9eadc7d6ce512f325b0f014a
|
dlHash: 161e1638da9efc56319f7225b3652ca3f339bcda9eadc7d6ce512f325b0f014a
|
||||||
2.11.1:
|
2.11.1:
|
||||||
viTags:
|
viTags: []
|
||||||
- Recommended
|
|
||||||
- Latest
|
|
||||||
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v2111---2023-05-18
|
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v2111---2023-05-18
|
||||||
viPostInstall: *stack-post
|
viPostInstall: *stack-post
|
||||||
viArch:
|
viArch:
|
||||||
@@ -5410,4 +5408,49 @@ ghcupDownloads:
|
|||||||
unknown_versioning:
|
unknown_versioning:
|
||||||
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.11.1/stack-2.11.1-linux-aarch64.tar.gz
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.11.1/stack-2.11.1-linux-aarch64.tar.gz
|
||||||
dlHash: c7733d07ed78d6f4d82e0ebf6d260eb693c6c9df2208003d60caba69766f9c15
|
dlHash: c7733d07ed78d6f4d82e0ebf6d260eb693c6c9df2208003d60caba69766f9c15
|
||||||
|
2.13.1:
|
||||||
|
viTags:
|
||||||
|
- Recommended
|
||||||
|
- Latest
|
||||||
|
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v2131---2023-09-29
|
||||||
|
viPostInstall: *stack-post
|
||||||
|
viArch:
|
||||||
|
A_64:
|
||||||
|
Linux_UnknownLinux:
|
||||||
|
unknown_versioning: &stack-2131-64
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-linux-x86_64.tar.gz
|
||||||
|
dlHash: 45281bb2385e928916ec8bcbc7ab790ce8721bbf805f3d0752544ada22ad5ea3
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Darwin:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-osx-x86_64.tar.gz
|
||||||
|
dlHash: b7d46382edb17230d21943844550d3aaeacee8b6fb1fcc7980ca59bee500b2a5
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Windows:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-windows-x86_64.tar.gz
|
||||||
|
dlHash: 728be2371e257c6960341167192fa704ff1f92ab61657dd4781710a257fae7c1
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
# FreeBSD:
|
||||||
|
# unknown_versioning:
|
||||||
|
# dlUri: https://downloads.haskell.org/ghcup/unofficial-bindists/stack/2.13.1/stack-2.13.1-freebsd-x86_64.tar.xz
|
||||||
|
# dlHash: <replace_me>
|
||||||
|
Linux_Alpine:
|
||||||
|
unknown_versioning: *stack-2131-64
|
||||||
|
A_ARM64:
|
||||||
|
Linux_UnknownLinux:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-linux-aarch64.tar.gz
|
||||||
|
dlHash: 37b1dbf39131eea629a6e3685fd1153fdfd2f0cd2179db92bb33784987b4ddb8
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Darwin:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.13.1/stack-2.13.1-osx-aarch64.tar.gz
|
||||||
|
dlHash: 18ececd7112b1aad01ab0f88cb68ae63f2dc74aa9b8b5319828979f43cba9907
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user