Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

haskell-stack 2.15.1 #162696

Closed

Conversation

chenrui333
Copy link
Member

Created by brew bump


Created with brew bump-formula-pr.

release notes
See https://haskellstack.org/ for installation and upgrade instructions.

Release notes:

  • After an upgrade from an earlier version of Stack, on first use only, Stack 2.15.1 may warn that it had trouble loading the CompilerPaths cache.
  • The hash used as a key for Stack's pre-compiled package cache has changed, following the dropping of support for Cabal versions older than 1.24.0.0.

Changes since v2.13.1:

Behavior changes:

  • Stack does not leave *.hi or *.o files in the setup-exe-src directory of the Stack root, and deletes any corresponding to a setup-<hash>.hs or setup-shim-<hash>.hs file, to avoid GHC issue #21250.
  • If Stack's Nix integration is not enabled, Stack will notify the user if a nix executable is on the PATH. This usually indicates the Nix package manager is available. In YAML configuration files, the notify-if-nix-on-path key is introduced, to allow the notification to be muted if unwanted.
  • Drop support for Intero (end of life in November 2019).
  • stack path --stack-root no longer sets up Stack's environment and does not load Stack's configuration.
  • Stack no longer locks on configuration, so packages (remote and local) can be configured in parallel. This increases the effective concurrency of builds that before would use fewer threads. Reconsider your --jobs setting accordingly. See #84.
  • Stack warns that its support for Cabal versions before 2.2.0.0 is deprecated and may be removed in the next version of Stack. Removal would mean that projects using snapshots earlier than lts-12.0 or nightly-2018-03-18 (GHC 8.4.1) might no longer build. See #6377.
  • If Stack's --resolver option is not specified, Stack's unpack command with a package name will seek to update the package index before seeking to download the most recent version of the package in the index.
  • If the version of Cabal (the library) provided with the specified GHC can copy specific components, Stack will copy only the components built and will not build all executable components at least once.

Other enhancements:

  • Consider GHC 9.8 to be a tested compiler and remove warnings.
  • Stack can build packages with dependencies on public sub-libraries of other packages.
  • Add flag --no-init to Stack's new command to skip the initialisation of the newly-created project for use with Stack.
  • The HTML file paths produced at the end of stack haddock are printed on separate lines and without a trailing dot.
  • Add option of the form --doctest-option=<argument> to stack build, where doctest is a program recognised by versions of the Cabal library from 1.24.0.0.
  • Experimental: Add flag --haddock-for-hackage to Stack's build command (including the haddock synonym for build --haddock) to enable building local packages with flags to generate Haddock documentation, and an archive file, suitable for upload to Hackage. The form of the Haddock documentation generated for other packages is unaffected.
  • Experimental: Add flag --documentation (-d for short) to Stack's upload command to allow uploading of documentation for packages to Hackage.
  • stack new no longer rejects project templates that specify a package.yaml in a subdirectory of the project directory.
  • Stack will notify the user if Stack has not been tested with the version of GHC that is being user or a version of Cabal (the library) that has been found. In YAML configuration files, the notify-if-ghc-untested and notify-if-cabal-untested keys are introduced, to allow the notification to be muted if unwanted.
  • The compiler version is included in Stack's build message (e.g. stack> build (lib + exe + test) with ghc-9.6.4).
  • Add flag --candidate to Stack's unpack command, to allow package candidates to be unpacked locally.
  • Stack will notify the user if a specified architecture value is unknown to Cabal (the library). In YAML configuration files, the notify-if-arch-unknown key is introduced, to allow the notification to be muted if unwanted.
  • Add option --filter <item> to Stack's ls dependencies text command to filter out an item from the results, if present. The item can be $locals for all local packages.
  • Add option --snapshot as synonym for --resolver.
  • Add the config set snapshot command, corresponding to the config set resolver command.

Bug fixes:

  • Fix the Curator instance of ToJSON, as regards expect-haddock-failure.
  • Better error message if a resolver: or snapshot: value is, in error, a YAML number.
  • Stack accepts all package names that are, in fact, acceptable to Cabal.
  • Stack's sdist command can check packages with names that include non-ASCII characters.

Thanks to all our contributors for this release:

  • Bryan Richter
  • Dash Lu
  • Jason Shipman
  • Marco Zocca
  • Markus Schirp
  • Mike Pilgrem
  • Olivier Benz
  • Phil de Joux
  • theophilebatoz

@github-actions github-actions bot added haskell Haskell use is a significant feature of the PR or issue bump-formula-pr PR was created using `brew bump-formula-pr` labels Feb 14, 2024
@chenrui333
Copy link
Member Author

  Failed to build stack-2.15.1.
  Build log (
  /private/tmp/haskell-stack-20240214-4198-s2czwu/stack-2.15.1/.brew_home/.cache/cabal/logs/ghc-9.8.1/stck-2.15.1-87d792e7.log
  ):
  [1 of 2] Compiling Main             ( /private/tmp/cabal-install.-4321/dist-newstyle/tmp/src-4321/stack-2.15.1/dist/setup/setup.hs, /private/tmp/cabal-install.-4321/dist-newstyle/tmp/src-4321/stack-2.15.1/dist/setup/Main.o )
  [2 of 2] Linking /private/tmp/cabal-install.-4321/dist-newstyle/tmp/src-4321/stack-2.15.1/dist/setup/setup
  Configuring stack-2.15.1...
  Preprocessing library for stack-2.15.1..
  Building library for stack-2.15.1..
  [  1 of 196] Compiling Build_stack      ( dist/build/global-autogen/Build_stack.hs, dist/build/Build_stack.o, dist/build/Build_stack.dyn_o )
  [  2 of 196] Compiling Codec.Archive.Tar.Utf8 ( src/Codec/Archive/Tar/Utf8.hs, dist/build/Codec/Archive/Tar/Utf8.o, dist/build/Codec/Archive/Tar/Utf8.dyn_o )
  
  src/Codec/Archive/Tar/Utf8.hs:34:27: error: [GHC-88464]
      Variable not in scope: entryTarPath :: Entry -> TarPath
      Suggested fixes:
        • Perhaps use one of these:
            record field of Entry ‘Tar.entryTarPath’ (imported from Codec.Archive.Tar.Entry),
            ‘Tar.entryPath’ (imported from Codec.Archive.Tar.Entry),
            ‘entryPath’ (line 34)
        • Add ‘entryTarPath’ to the import list in the import of
          ‘Codec.Archive.Tar.Entry’
          (at src/Codec/Archive/Tar/Utf8.hs:13:1-80).
     |
  34 | entryPath = fromTarPath . entryTarPath
     |                           ^^^^^^^^^^^^
  
  src/Codec/Archive/Tar/Utf8.hs:78:44: error: [GHC-83865]
      • Couldn't match type ‘[Char]’ with ‘TarPath’
        Expected: GenEntries
                    TarPath
                    Tar.LinkTarget
                    (Either
                       (Either e DecodeLongNamesError)
                       tar-0.6.1.0:tar-internal:Codec.Archive.Tar.Check.Internal.FileNameError)
          Actual: GenEntries
                    FilePath
                    FilePath
                    (Either
                       (Either e DecodeLongNamesError)
                       tar-0.6.1.0:tar-internal:Codec.Archive.Tar.Check.Internal.FileNameError)
      • In the second argument of ‘unpackEntries’, namely
          ‘(checkSecurity entries)’
        In the first argument of ‘(>>=)’, namely
          ‘unpackEntries [] (checkSecurity entries)’
        In the expression:
          unpackEntries [] (checkSecurity entries) >>= emulateLinks
     |
  78 | unpack baseDir entries = unpackEntries [] (checkSecurity entries)
     |                                            ^^^^^^^^^^^^^^^^^^^^^
  
  src/Codec/Archive/Tar/Utf8.hs:97:17: error: [GHC-88464]
      Variable not in scope:
        entryTime :: GenEntry TarPath Tar.LinkTarget -> t
      Suggested fixes:
        • Perhaps use record field of Entry ‘Tar.entryTime’ (imported from Codec.Archive.Tar.Entry)
        • Add ‘entryTime’ to the import list in the import of
          ‘Codec.Archive.Tar.Entry’
          (at src/Codec/Archive/Tar/Utf8.hs:13:1-80).
     |
  97 |         mtime = entryTime entry
     |                 ^^^^^^^^^

@chenrui333 chenrui333 added build failure CI fails while building the software CI-no-fail-fast Continue CI tests despite failing GitHub Actions matrix builds. labels Feb 15, 2024
@chenrui333 chenrui333 force-pushed the bump-haskell-stack-2.15.1 branch from 912874f to 98df704 Compare February 17, 2024 08:46
Copy link
Contributor

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. To keep this pull request open, add a help wanted or in progress label.

@github-actions github-actions bot added the stale No recent activity label Feb 19, 2024
@github-actions github-actions bot closed this Feb 21, 2024
@github-actions github-actions bot added the outdated PR was locked due to age label Mar 24, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 24, 2024
@chenrui333 chenrui333 deleted the bump-haskell-stack-2.15.1 branch July 27, 2024 13:58
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
build failure CI fails while building the software bump-formula-pr PR was created using `brew bump-formula-pr` CI-no-fail-fast Continue CI tests despite failing GitHub Actions matrix builds. haskell Haskell use is a significant feature of the PR or issue outdated PR was locked due to age stale No recent activity
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant