Skip to content

Commit

Permalink
Bump stack.yaml to lts-22.43
Browse files Browse the repository at this point in the history
  • Loading branch information
mpilgrem committed Dec 7, 2024
1 parent d5783ec commit d23fdef
Show file tree
Hide file tree
Showing 76 changed files with 129 additions and 147 deletions.
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -348,10 +348,10 @@ compatibility with a range of versions of GHC that a library package (such as
Stack aims to depend on well-known packages. The specific versions on which it
depends at any time are specified by `package.yaml` and `stack.yaml`. It does
not aim to be compatible with more than one version of the `Cabal` package at
any time. At the time of writing (september 2024) the package versions are
primarily ones in Stackage snapshot LTS Haskell 22.28 (for GHC 9.6.6), together
with extra-deps to depend on the latest version of `hpack`, `pantry`, `tar`,
`tls` and `crypton-connection`.
any time. At the time of writing (December 2024) the package versions are
primarily ones in Stackage snapshot LTS Haskell 22.43 (for GHC 9.6.6), together
with extra-deps to depend on the latest versions of `crypton-connection`,
`hpack`, `pantry`, `tar` and `tls`.

A Stack executable makes use of Cabal (the library) through a small 'Setup'
executable that it compiles from Haskell source code. The executable compiles
Expand Down
2 changes: 1 addition & 1 deletion cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
-- specified by the snapshot specifed in Stack's project-level YAML
-- configuration file (`stack.yaml`). The relevant version of GHC can be
-- confirmed by reviewing the snapshot on Stackage. For example, at:
-- https://www.stackage.org/lts-22.28/cabal.config.
-- https://www.stackage.org/lts-22.43/cabal.config.
--
with-compiler: ghc-9.6.6
import: cabal.config
Expand Down
6 changes: 3 additions & 3 deletions doc/commands/list_command.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,17 +45,17 @@ Error: [S-4926]
pantry, pretty, pasty, xattr, alloy, para, pappy, alure, polar and
factory.
stack --snapshot lts-22.28 list base unix Win32 acme-missiles pantry
stack --snapshot lts-22.43 list base unix Win32 acme-missiles pantry
Error: [S-4926]
* Package does not appear in snapshot (directly or indirectly): acme-missiles.
stack --snapshot lts-22.28 list base unix Win32 pantry
stack --snapshot lts-22.43 list base unix Win32 pantry
base-4.18.2.1
unix-2.8.4.0
Win32-2.13.3.0
pantry-0.9.3.2
stack --snapshot lts-22.28 list
stack --snapshot lts-22.43 list
AC-Angle-1.0
ALUT-2.4.0.3
...
Expand Down
8 changes: 4 additions & 4 deletions doc/commands/script_command.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ A snapshot must be specified on the command line, using the `--snapshot` option.
For example:

~~~text
stack script --snapshot lts-22.28 MyScript.hs
stack script --snapshot lts-22.43 MyScript.hs
~~~

A package version can be added to the snapshot on the command line with the
Expand Down Expand Up @@ -187,7 +187,7 @@ main = do
can be compiled and run, with arguments, with:

~~~text
stack --snapshot lts-22.28 script --package acme-missiles --compile MyScript.hs -- "Don't panic!" "Duck and cover!"
stack --snapshot lts-22.43 script --package acme-missiles --compile MyScript.hs -- "Don't panic!" "Duck and cover!"
~~~

`acme-missiles-0.3` (the most recent version in the package index) will be used.
Expand All @@ -207,7 +207,7 @@ snapshot as an extra-dep. The `stack script` command is specified using Stack's

~~~haskell
{- stack script
-- snapshot lts-22.28
-- snapshot lts-22.43
-- extra-dep acme-missiles-0.2
-- package acme-missiles
-}
Expand Down Expand Up @@ -309,7 +309,7 @@ A Haskell source file `MyScript.hs`, as follows:

~~~haskell
{- stack script
--snapshot lts-22.28
--snapshot lts-22.43
-}

{-# LANGUAGE OverloadedStrings #-}
Expand Down
2 changes: 1 addition & 1 deletion doc/configure/yaml/non-project.md
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ snapshots like `ghc-9.6.6`. This can be used to override the compiler for a
Stackage snapshot, like this:

~~~yaml
snapshot: lts-22.28
snapshot: lts-22.43
compiler: ghc-9.6.5
compiler-check: match-exact
~~~
Expand Down
2 changes: 1 addition & 1 deletion doc/topics/Stack_and_VS_Code.md
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ VS Code with the 'Haskell' extension can be configured in a number of ways:

Each time that a snapshot is used that references a different version of
GHC, then GHCup must be used to install it (if GHCup has not already
installed that version). For example, to use `snapshot: lts-22.28`
installed that version). For example, to use `snapshot: lts-22.43`
(GHC 9.6.6), the command `ghcup install ghc 9.6.6` must have been used
to install GHC 9.6.6. That may be a minor inconvenience for some people,
as one the primary benefits of Stack over other tools for building
Expand Down
22 changes: 11 additions & 11 deletions doc/topics/custom_snapshot.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ available in snapshots to ensure reproducibility.
for snapshot specification.

~~~yaml
snapshot: lts-22.28 # Inherits GHC version and package set
snapshot: lts-22.43 # Inherits GHC version and package set
compiler: ghc-9.6.5 # Overwrites GHC version in the snapshot, optional

# Additional packages, follows extra-deps syntax
Expand Down Expand Up @@ -62,35 +62,35 @@ custom snapshot, due to Stack sharing snapshot packages whenever possible.

### Overriding the compiler

The following snapshot specification will be identical to `lts-22.28`, but
The following snapshot specification will be identical to `lts-22.43`, but
instead use `ghc-9.6.5` instead of `ghc-9.6.6`:

~~~yaml
snapshot: lts-22.28
snapshot: lts-22.43
compiler: ghc-9.6.5
~~~

### Dropping packages

The following snapshot specification will be identical to `lts-22.28`, but
The following snapshot specification will be identical to `lts-22.43`, but
without the `text` package in our snapshot. Removing this package will cause all
the packages that depend on `text` to be unbuildable, but they will still be
present in the snapshot.

~~~yaml
snapshot: lts-22.28
snapshot: lts-22.43
drop-packages:
- text
~~~

### Hiding packages

The following snapshot specification will be identical to `lts-22.28`, but the
The following snapshot specification will be identical to `lts-22.43`, but the
`text` package will be hidden when registering. This will affect, for example,
the import parser in the script command.

~~~yaml
snapshot: lts-22.28
snapshot: lts-22.43
hidden:
- text
~~~
Expand All @@ -101,11 +101,11 @@ In order to specify GHC options for a package, you use the same syntax as the
[ghc-options](../configure/yaml/non-project.md#ghc-options) key for build
configuration.

The following snapshot specification will be identical to `lts-22.28`, but
The following snapshot specification will be identical to `lts-22.43`, but
provides `-O1` as a ghc-option for `text`:

~~~yaml
snapshot: lts-22.28
snapshot: lts-22.43
packages:
- text-2.0.2
ghc-options:
Expand All @@ -124,11 +124,11 @@ packages in the `packages` list, rather than all packages in the snapshot.

In order to specify Cabal flags for a package, you use the same syntax as the
[flags](../configure/yaml/project.md#flags) key for build configuration. The
following snapshot specification will be identical to `lts-22.28`, but
following snapshot specification will be identical to `lts-22.43`, but
it enables the `developer` Cabal flag:

~~~yaml
snapshot: lts-22.28
snapshot: lts-22.43
packages:
- text-2.0.2
flags:
Expand Down
4 changes: 2 additions & 2 deletions doc/topics/haskell_and_c_code.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ executables:

The project's `stack.yaml` file only needs to identify a snapshot:
~~~yaml
snapshot: lts-22.28 # GHC 9.6.6
snapshot: lts-22.43 # GHC 9.6.6
~~~

This example project can be built with Stack in the normal way (`stack build`),
Expand Down Expand Up @@ -220,7 +220,7 @@ The `include-dirs` key will cause the specified directory (again,

The project's `stack.yaml` file only needs to identify a snapshot:
~~~yaml
snapshot: lts-22.28 # GHC 9.6.6
snapshot: lts-22.43 # GHC 9.6.6
~~~

This example project can be built with Stack in the normal way (`stack build`),
Expand Down
22 changes: 11 additions & 11 deletions doc/topics/scripts.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ An example will be easiest to understand. Consider the Haskell source file

~~~haskell
#!/usr/bin/env stack
-- stack script --snapshot lts-22.28 --package turtle
-- stack script --snapshot lts-22.43 --package turtle
{-# LANGUAGE OverloadedStrings #-}
import Turtle (echo)
main = echo "Hello World!"
Expand Down Expand Up @@ -78,11 +78,11 @@ able to reuse everything already built).

The second line of the source code is the Stack interpreter options comment. In
this example, it specifies the [`stack script`](../commands/script_command.md)
command with the options of a LTS Haskell 22.28 snapshot
(`--snapshot lts-22.28`) and ensuring the
command with the options of a LTS Haskell 22.43 snapshot
(`--snapshot lts-22.43`) and ensuring the
[`turtle`](https://hackage.haskell.org/package/turtle) package is available
(`--package turtle`). The version of the package will be that in the specified
snapshot (`lts-22.28` provides `turtle-1.6.2`).
snapshot (`lts-22.43` provides `turtle-1.6.2`).

## Arguments and interpreter options and arguments

Expand Down Expand Up @@ -117,7 +117,7 @@ For example, the command `stack MyScript.hs arg1 arg2` with `MyScript.hs`:
~~~haskell
#!/usr/bin/env stack
{- stack script
--snapshot lts-22.28
--snapshot lts-22.43
--
+RTS -s -RTS
-}
Expand All @@ -133,7 +133,7 @@ main = do
is equivalent to the following command at the command line:

~~~text
stack script --snapshot lts-22.28 -- MyScript.hs arg1 arg2 +RTS -s -RTS
stack script --snapshot lts-22.43 -- MyScript.hs arg1 arg2 +RTS -s -RTS
~~~

where `+RTS -s -RTS` are some of GHC's
Expand Down Expand Up @@ -162,7 +162,7 @@ options, or by providing a comma or space separated list. For example:
~~~haskell
#!/usr/bin/env stack
{- stack script
--snapshot lts-22.28
--snapshot lts-22.43
--package turtle
--package "stm async"
--package http-client,http-conduit
Expand Down Expand Up @@ -207,7 +207,7 @@ which makes use of the joke package

~~~haskell
{- stack script
--snapshot lts-22.28
--snapshot lts-22.43
--package acme-missiles
-}
import Acme.Missiles (launchMissiles)
Expand All @@ -218,7 +218,7 @@ main = launchMissiles

The command `stack --script-no-run-compile Script.hs` then behaves as if the
command
`stack script --snapshot lts-22.28 --package acme-missiles --no-run --compile -- Script.hs`
`stack script --snapshot lts-22.43 --package acme-missiles --no-run --compile -- Script.hs`
had been given. `Script.hs` is compiled (without optimisation) and the resulting
executable is not run: no missiles are launched in the process!

Expand Down Expand Up @@ -260,7 +260,7 @@ those curious, here is an example with
{- stack
runghc
--install-ghc
--snapshot lts-22.28
--snapshot lts-22.43
--package base
--package turtle
--
Expand All @@ -284,7 +284,7 @@ it. Here is an example:
{- stack
exec ghci
--install-ghc
--snapshot lts-22.28
--snapshot lts-22.43
--package turtle
-}
~~~
6 changes: 3 additions & 3 deletions doc/topics/stack_yaml_vs_cabal_package_file.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ requires that you have chosen a specific version for each package available.

The most common means by which this set of packages is defined is via a
snapshot provided by Stackage. For example, if you go to the page
<https://www.stackage.org/lts-22.28>, you will see a list of 3,373 packages at
specific version numbers. When you then specify `snapshot: lts-22.28` or,
alternatively, `resolver: lts-22.28`, you're telling Stack to use those package
<https://www.stackage.org/lts-22.43>, you will see a list of 3,378 packages at
specific version numbers. When you then specify `snapshot: lts-22.43` or,
alternatively, `resolver: lts-22.43`, you're telling Stack to use those package
versions in resolving dependencies down to specific versions of packages.

Sometimes a snapshot doesn't have all of the packages that you want. Or you want
Expand Down
2 changes: 1 addition & 1 deletion etc/scripts/build-stack-installer.hs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{- stack script
--resolver lts-22.28
--resolver lts-22.43
--install-ghc
--package nsis
-}
Expand Down
4 changes: 2 additions & 2 deletions etc/scripts/release-linux-aarch64.hs
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{- stack script
--resolver lts-22.28
--resolver lts-22.43
--ghc-options -Wall
-}

-- As no packages are specified in the `stack script` command in the Stack
-- interpreter options comment, Stack deduces the required packages from the
-- module imports, being: Cabal, base, bytestring, directory, extra, process,
-- shake, tar, zip-archive and zlib. These are either GHC boot packages or in
-- the snapshot. Stackage LTS Haskell 22.28 does not include boot packages
-- the snapshot. Stackage LTS Haskell 22.43 does not include boot packages
-- directly. As GHC 9.6.6 boot packages Cabal and Cabal-syntax expose modules
-- with the same names, the language extension PackageImports is required.

Expand Down
4 changes: 2 additions & 2 deletions etc/scripts/release.hs
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{- stack script
--resolver lts-22.28
--resolver lts-22.43
--ghc-options -Wall
-}

-- As no packages are specified in the `stack script` command in the Stack
-- interpreter options comment, Stack deduces the required packages from the
-- module imports, being: Cabal, base, bytestring, directory, extra, process,
-- shake, tar, zip-archive and zlib. These are either GHC boot packages or in
-- the snapshot. Stackage LTS Haskell 22.28 does not include boot packages
-- the snapshot. Stackage LTS Haskell 22.43 does not include boot packages
-- directly. As GHC 9.6.6 boot packages Cabal and Cabal-syntax expose modules
-- with the same names, the language extension PackageImports is required.

Expand Down
4 changes: 2 additions & 2 deletions src/Stack/Init.hs
Original file line number Diff line number Diff line change
Expand Up @@ -431,8 +431,8 @@ renderStackYaml p ignoredPackages dupPackages =
, "A snapshot resolver dictates the compiler version and the set of packages"
, "to be used for project dependencies. For example:"
, ""
, "snapshot: lts-22.28"
, "snapshot: nightly-2024-07-05"
, "snapshot: lts-22.43"
, "snapshot: nightly-2024-12-07"
, "snapshot: ghc-9.6.6"
, ""
, "The location of a snapshot can be provided as a file or url. Stack assumes"
Expand Down
16 changes: 6 additions & 10 deletions stack.yaml
Original file line number Diff line number Diff line change
@@ -1,19 +1,15 @@
snapshot: lts-22.28 # GHC 9.6.6
snapshot: lts-22.43 # GHC 9.6.6

extra-deps:
# lts-22.28 provides crypton-connection-0.3.2
# lts-22.43 provides crypton-connection-0.3.2
- crypton-connection-0.4.1@sha256:a03dabfac16fcc58b4089c2f75ad1e97fc71c4a44f3aeb790db65cebb9ebd1d0,1590
# lts-22.28 provides hi-file-parser-0.1.6.0
- hi-file-parser-0.1.7.0@sha256:6cb54bc4bcc07c3b4c7b5dca73bc81e6b052636dc212eb6791608e70aab1ddfe,3012
# lts-22.28 provides hpack-0.36.0
# lts-22.43 provides hpack-0.36.1
- hpack-0.37.0@sha256:b7c91b0416a55c134172a9fd9a02f3815ba68c4b92cca4e320c36906d5e970e0,5187
# lts-22.28 provides pantry-0.9.3.2.
# lts-22.43 provides pantry-0.9.3.2.
- pantry-0.10.0@sha256:d13f99099753b0acf0695a00dc4d82f2671d3c604161d169ac0fc8fcf3004dec,7912
# lts-22.28 provides static-bytes-0.1.0
- static-bytes-0.1.1@sha256:e090886a4752a816cfff7ccb2c51c533cc8e39ec2d27e485427577fc92d9e9f9,1627
# lts-22.28 provides tar-0.5.1.1, which does not support Unicode filenames:
# lts-22.43 provides tar-0.5.1.1, which does not support Unicode filenames:
- tar-0.6.2.0@sha256:619828cae098a7b6deeb0316e12f55011101d88f756787ed024ceedb81cf1eba,4576
# lts-22.28 provides tls-1.8.0
# lts-22.43 provides tls-1.8.0
- tls-2.1.0@sha256:39f9a6183a6dafc3365e99f4f3b99a55154f8a3a3114d9475459a066f56a3a32,6173

docker:
Expand Down
Loading

0 comments on commit d23fdef

Please sign in to comment.