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

stack: update to 2.3.1 #22377

Merged
merged 1 commit into from May 31, 2020
Merged

stack: update to 2.3.1 #22377

merged 1 commit into from May 31, 2020

Conversation

pullmoll
Copy link
Member

@pullmoll pullmoll commented May 28, 2020

Using "cabal update 'hackage.haskell.org,2020-04-29T20:25:58Z'" to
stick to the successful build report on hackage. In this case:
https://hackage.haskell.org/package/stack-2.3.1/reports/1
[ci skip]

@pullmoll
Copy link
Member Author

The patch to disambiguate the LTS, Nightly, and SnapName gets the build farther than before.
This is the current error message for src/Stack/Config.hs:

[ 68 of 109] Compiling Stack.Config     ( src/Stack/Config.hs, /builddir/stack-2.3.1/dist-newstyle/build/x86_64-linux/ghc-8.8.3/stack-2.3.1/build/Stack/Config.o )

src/Stack/Config.hs:158:32: error:
    • Variable not in scope:
        nightlySnapshotLocation
          :: time-1.9.3:Data.Time.Calendar.Days.Day -> RawSnapshotLocation
    • Perhaps you meant ‘defaultSnapshotLocation’ (imported from Stack.Prelude)
    |
158 |             ARLatestNightly -> nightlySnapshotLocation . snapshotsNightly <$> getSnapshots
    |                                ^^^^^^^^^^^^^^^^^^^^^^^

src/Stack/Config.hs:163:40: error:
    • Variable not in scope:
        ltsSnapshotLocation :: Int -> Int -> RawSnapshotLocation
    • Perhaps you meant one of these:
        ‘snapshotLocation’ (imported from Stack.Prelude),
        ‘smwSnapshotLocation’ (imported from Stack.Types.SourceMap)
    |
163 |                     Just y -> return $ ltsSnapshotLocation x y
    |                                        ^^^^^^^^^^^^^^^^^^^

src/Stack/Config.hs:169:37: error:
    • Variable not in scope:
        ltsSnapshotLocation :: IntMap.Key -> Int -> RawSnapshotLocation
    • Perhaps you meant one of these:
        ‘snapshotLocation’ (imported from Stack.Prelude),
        ‘smwSnapshotLocation’ (imported from Stack.Types.SourceMap)
    |
169 |                         in return $ ltsSnapshotLocation x y
    |                                     ^^^^^^^^^^^^^^^^^^^

src/Stack/Config.hs:177:24: error:
    • Variable not in scope:
        ltsSnapshotLocation :: IntMap.Key -> Int -> RawSnapshotLocation
    • Perhaps you meant one of these:
        ‘snapshotLocation’ (imported from Stack.Prelude),
        ‘smwSnapshotLocation’ (imported from Stack.Types.SourceMap)
    |
177 |     let mlts = uncurry ltsSnapshotLocation <$>
    |                        ^^^^^^^^^^^^^^^^^^^

src/Stack/Config.hs:179:23: error:
    • Variable not in scope:
        nightlySnapshotLocation
          :: time-1.9.3:Data.Time.Calendar.Days.Day -> RawSnapshotLocation
    • Perhaps you meant ‘defaultSnapshotLocation’ (imported from Stack.Prelude)
    |
179 |     pure $ fromMaybe (nightlySnapshotLocation (snapshotsNightly snapshots)) mlts
    |                       ^^^^^^^^^^^^^^^^^^^^^^^

src/Stack/Config.hs:374:6: error:
    • Couldn't match expected type ‘RIO env a’
                  with actual type ‘(PantryConfig -> RIO env0 a0) -> RIO env0 a0’
    • Probable cause: ‘withPantryConfig’ is applied to too few arguments
      In a stmt of a 'do' block:
        withPantryConfig
          pantryRoot
          hsc
          (maybe HpackBundled HpackCommand
             $ getFirst configMonoidOverrideHpack)
          clConnectionCount
          (fromFirst defaultCasaRepoPrefix configMonoidCasaRepoPrefix)
          defaultCasaMaxPerRequest
          (\ configPantryConfig
             -> initUserStorage
                  (configStackRoot </> relFileStorage)
                  (\ configUserStorage -> inner Config {..}))
      In the expression:
        do mstackWorkEnv <- liftIO $ lookupEnv stackWorkEnvVar
           let mproject = ...
               configAllowLocals = ...
           configWorkDir0 <- maybe
                               (return relDirStackWork) (liftIO . parseRelDir) mstackWorkEnv
           let configWorkDir = fromFirst configWorkDir0 configMonoidWorkDir
               configLatestSnapshot
                 = fromFirst
                     "https://s3.amazonaws.com/haddock.stackage.org/snapshots.json"
                     configMonoidLatestSnapshot
               ....
           ....
      In an equation for ‘configFromConfigMonoid’:
          configFromConfigMonoid
            configStackRoot
            configUserConfigPath
            configResolver
            configProject
            ConfigMonoid {..}
            inner
            = do mstackWorkEnv <- liftIO $ lookupEnv stackWorkEnvVar
                 let mproject = ...
                     ....
                 configWorkDir0 <- maybe
                                     (return relDirStackWork) (liftIO . parseRelDir) mstackWorkEnv
                 ....
    • Relevant bindings include
        inner :: Config -> RIO env a (bound at src/Stack/Config.hs:193:36)
        configFromConfigMonoid :: Path Abs Dir
                                  -> Path Abs File
                                  -> Maybe AbstractResolver
                                  -> ProjectConfig (Project, Path Abs File)
                                  -> ConfigMonoid
                                  -> (Config -> RIO env a)
                                  -> RIO env a
          (bound at src/Stack/Config.hs:191:1)
    |
374 |      withPantryConfig
    |      ^^^^^^^^^^^^^^^^...

src/Stack/Config.hs:381:32: error:
    • Couldn't match expected type ‘RawSnapshotLocation’
                  with actual type ‘RIO env a’
    • In the expression:
        initUserStorage
          (configStackRoot </> relFileStorage)
          (\ configUserStorage -> inner Config {..})
      In the 7th argument of ‘withPantryConfig’, namely
        ‘(\ configPantryConfig
            -> initUserStorage
                 (configStackRoot </> relFileStorage)
                 (\ configUserStorage -> inner Config {..}))’
      In a stmt of a 'do' block:
        withPantryConfig
          pantryRoot
          hsc
          (maybe HpackBundled HpackCommand
             $ getFirst configMonoidOverrideHpack)
          clConnectionCount
          (fromFirst defaultCasaRepoPrefix configMonoidCasaRepoPrefix)
          defaultCasaMaxPerRequest
          (\ configPantryConfig
             -> initUserStorage
                  (configStackRoot </> relFileStorage)
                  (\ configUserStorage -> inner Config {..}))
    • Relevant bindings include
        inner :: Config -> RIO env a (bound at src/Stack/Config.hs:193:36)
        configFromConfigMonoid :: Path Abs Dir
                                  -> Path Abs File
                                  -> Maybe AbstractResolver
                                  -> ProjectConfig (Project, Path Abs File)
                                  -> ConfigMonoid
                                  -> (Config -> RIO env a)
                                  -> RIO env a
          (bound at src/Stack/Config.hs:191:1)
    |
381 |        (\configPantryConfig -> initUserStorage
    |                                ^^^^^^^^^^^^^^^...

src/Stack/Config.hs:383:39: error:
    • Couldn't match expected type ‘PantryConfig’
                  with actual type ‘Stack.Prelude.SnapName’
    • In the ‘configPantryConfig’ field of a record
      In the first argument of ‘inner’, namely ‘Config {..}’
      In the expression: inner Config {..}
    |
383 |          (\configUserStorage -> inner Config {..}))
    |                                       ^^^^^^^^^^^
=> ERROR: stack-2.3.1_1: do_build: 'HOME=$PWD cabal new-build ${makejobs} --flag disable-git-info' exited with 1
=> ERROR:   in do_build() at srcpkgs/stack/template:24

@pullmoll pullmoll added the WIP Work in progress label May 28, 2020
@pullmoll
Copy link
Member Author

Trying with info from this link detailing the problem.

@pullmoll
Copy link
Member Author

Successful build for x86_64.

@pullmoll pullmoll changed the title stack: update to 2.3.1, lts-15.5 stack: update to 2.3.1 May 31, 2020
@pullmoll
Copy link
Member Author

pullmoll commented May 31, 2020

Keeping lts-15.4 for now as build_style=haskell-stack packages use that too.

Do we need to revbump these packages when stack is updated?

Using "cabal update 'hackage.haskell.org,2020-04-29T20:25:58Z'" to
stick to the successful build report on hackage. In this case:
https://hackage.haskell.org/package/stack-2.3.1/reports/1

[ci skip]
@pullmoll pullmoll merged commit 0efe4a3 into void-linux:master May 31, 2020
@pullmoll pullmoll deleted the stack branch May 31, 2020 12:28
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 20, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant