Fix #42: use patches for revisions #51
+142
−118
Closed
IOG Hydra / ci/hydra-build:x86_64-linux.x86_64-unknown-linux-musl.packages.foliage:test:foliage-test-suite
failed
Apr 11, 2024 in 10s
Build dependency failed
1 failed steps
Details
Failed Steps
Step 1
Derivation
/nix/store/0n7s63ygxz1zblfbfvjgrdh81vsmg3m1-foliage-exe-foliage-0.6.0.0.drv
Log
unpacking sources
unpacking source archive /nix/store/zv2iwnivr1vds7fplsjd4a23ic064skk-source-root-exe-foliage
source root is source-root-exe-foliage
patching sources
updateAutotoolsGnuConfigScriptsPhase
configuring
Configure flags:
--prefix=/nix/store/14srrsx4n2lagzl9frasqpj9vmziq881-foliage-exe-foliage-0.6.0.0 exe:foliage --package-db=clear --package-db=/build/tmp.1HWOpIP3ce/lib/ghc-9.4.8/lib/package.conf.d --exact-configuration --dependency=Cabal=Cabal-3.10.1.0-6LXFNVZ2kznAvd1KokIzj3 --dependency=Cabal-syntax=Cabal-syntax-3.10.1.0-1d8SuQRpLm0DQRNzot4kQX --dependency=binary=binary-0.8.9.1-GCvHQY8Fa3pAhmH5vEIfb7 --dependency=bytestring=bytestring-0.11.5.3-BCiuwRK6tD88fRrE06PkoM --dependency=containers=containers-0.6.7-DHAaVGaugjH47kXpszMd0y --dependency=containers=containers-0.6.7-DHAaVGaugjH47kXpszMd0y --dependency=directory=directory-1.3.7.1-JC40AfFZXzF6BNDSDksMH6 --dependency=filepath=filepath-1.4.2.2-KWVzSKZl2j8IYGZ89KgZYg --dependency=time=time-1.12.2-JD7bWW4ZoJuDu42XwbNbJD --dependency=unix=unix-2.7.3-I8aZRXQJHajGBgqypamjck --dependency=mtl=mtl-2.2.2-JH2R61IXO86L7oCsewaz7T --dependency=transformers=transformers-0.5.6.2-B9uCXmhG6YH9wvDeIjf1uP --dependency=parsec=parsec-3.1.16.1-4WlLtwYQgWMIJHr3z09efJ --dependency=text=text-2.0.2-LMtOhfqPujpBKCB2f2VSW --dependency=text=text-2.0.2-LMtOhfqPujpBKCB2f2VSW --dependency=process=process-1.6.18.0-3LN9W6SW5CkLNarnVtH2M3 --dependency=aeson=aeson-2.2.0.0-3AEFMwM3tg0CVpr6ps3VE1 --dependency=OneTuple=OneTuple-0.4.1.1-Ft09b59sqBL7CkJH7Fth7D --dependency=QuickCheck=QuickCheck-2.14.3-DgsU2qkMufkSeMsUTADNc --dependency=random=random-1.2.1.1-FGyHrEyq076K23PNLf848u --dependency=splitmix=splitmix-0.1.0.4-2Z3hpLkoU6EA9xebaL24dE --dependency=splitmix=splitmix-0.1.0.4-2Z3hpLkoU6EA9xebaL24dE --dependency=data-fix=data-fix-0.3.2-4gdKoKky5PtGdEJAjljaWL --dependency=hashable=hashable-1.4.3.0-Ey3aA1RzRln9bBwN0dCaZb --dependency=dlist=dlist-1.0-8nCROV7nHWV1xhhm1tDv9W --dependency=exceptions=exceptions-0.10.5-7mt2RpCy9Ye6Nd5mU49HK3 --dependency=stm=stm-2.5.1.0-7zWrvWEIUQ48kLnmXZT0ud --dependency=generically=generically-0.1.1-GTxhZZJ73FYjTkCm8QZAu --dependency=base-orphans=base-orphans-0.9.0-4QMoSe76tOFGX4DfjNPz0p --dependency=indexed-traversable=indexed-traversable-0.1.2.1-OFPZHmCu1V6G05trrSW4C --dependency=integer-conversion=integer-conversion-0.1-6wbLmgPCToUKY2maUOuKT3 --dependency=primitive=primitive-0.8.0.0-GTpCTQ56uvbGRK1NnS1rGn --dependency=network-uri=network-uri-2.6.4.2-GazR9dbC0GY9D36hVHMooK --dependency=th-compat=th-compat-0.1.4-J9ngOGuq7js4hkKvBBydgt --dependency=scientific=scientific-0.3.7.0-JVknAcvB7Fz8vs2WAF7bY1 --dependency=integer-logarithms=integer-logarithms-1.0.3.1-JfoQIJXh5PhDnmGGlkJE4T --dependency=semialign=semialign-1.3-98recFkqoZGJlX6nOMjYWl --dependency=indexed-traversable-instances=indexed-traversable-instances-0.1.1.2-F87EVYWn7TODkzcD6VHid8 --dependency=tagged=tagged-0.8.8-L6OViTDNTH4D3a3hijEkkH --dependency=unordered-containers=unordered-containers-0.2.19.1-HBvC7DnmFGLCdwszalgDFI --dependency=vector=vector-0.13.0.0-EMxAJYyxkLt6Q5iZqJkqzZ --dependency=vector-stream=vector-stream-0.1.0.0-3lCfHZluihABooYlJXwfC1 --dependency=semigroupoids=semigroupoids-6.0.0.1-7zoOfTc0zOPHcZv8mSyKKe --dependency=bifunctors=bifunctors-5.6.1-LL8Fm86rhag7FpfBzMrtnk --dependency=assoc=assoc-1.1-8NZjxRwxBZSAPrLXrOWBk5 --dependency=comonad=comonad-5.0.8-FBBzhMiHIlB87DRZOcOqBY --dependency=distributive=distributive-0.6.2.1-8BReSOsR5CnCgwlbMpwxZn --dependency=transformers-compat=transformers-compat-0.7.2-9KFXTWEt59e5oLr61ueHNu --dependency=foldable1-classes-compat=foldable1-classes-compat-0.1-5XDHKNR2eMf9CcwFIGEjJK --dependency=th-abstraction=th-abstraction-0.5.0.0-HClYcoSd7udFZXFPMltqYM --dependency=contravariant=contravariant-1.5.5-Csfmmdfr3TQ7S2eDyvUxZC --dependency=StateVar=StateVar-1.2.2-Kql2iasLlrn9Pz23YTpw0l --dependency=these=these-1.2-BlNnMHoKKoC9XJK1grkmCy --dependency=strict=strict-0.5-DwRXE0pcsn25ICQ76760tA --dependency=text-iso8601=text-iso8601-0.1-Gneb3qo229f4WRJGcbIxbu --dependency=time-compat=time-compat-1.9.6.1-CS4jdY3jK7KG5whpp10Zlz --dependency=text-short=text-short-0.1.5-4Qj9qL9uwJbLGpfgekBBme --dependency=uuid-types=uuid-types-1.0.5-FLJyxYZI9BODjeRMjxumpT --dependency=witherable=witherable-0.4.2-HwFhTlQcJn03D1kxRCRcyo --dependency=base16=base16-1.0-IDRaSdytbbf92yVBJNkqHh --dependency=cabal-install=cabal-install-3.10.1.0-FDutVThQ1wu4QTCoO38eIr --dependency=Cabal=Cabal-3.10.1.0-6LXFNVZ2kznAvd1KokIzj3 --dependency=HTTP=HTTP-4000.4.1-67Bp1anjYsIBAH9xpk8nW1 --dependency=network=network-3.1.4.0-JsTDFERuvsJLdkdaH1JU2H --dependency=async=async-2.2.4-KD0wlj0NVsX1d4FxM7To5B --dependency=base16-bytestring=base16-bytestring-1.0.2.0-2bLQ0wpyEVxARkVTfxmyy6 --dependency=cabal-install-solver=cabal-install-solver-3.10.1.0-8YHjNfXatmn98KOTrkpr7D --dependency=edit-distance=edit-distance-0.2.2.1-3kqAUakKldwCgBR7KvHVke --dependency=cryptohash-sha256=cryptohash-sha256-0.11.102.1-KAoiC9eOJf4evEdwtMRGY --dependency=echo=echo-0.1.4-JpJy9VeCe5BLPWevdTgPkY --dependency=hackage-security=hackage-security-0.6.2.3-C7PjnqkUHZM7xUbgDu2SuH --dependency=base64-bytestring=base64-bytestring-1.2.1.0-JRv8z75gvnDBFURaY2P5cc --dependency=ed25519=ed25519-0.0.5.0-Lxvu9UDXrvb2Xqg3PLN3sE --dependency=lukko=lukko-0.1.1.3-ApQqb4zeT537rexGUoBdJr --dependency=tar=tar-0.5.1.1-Icm5AjyU7h5DppDyOHsi7A --dependency=zlib=zlib-0.6.3.0-83eiQcT9N4I474AYj1wTo9 --dependency=regex-base=regex-base-0.94.0.2-FfwytuxpAxb6LBWTekvYrY --dependency=regex-posix=regex-posix-0.96.0.1-4LkBWMKkxCgFxYZRGJYCIp --dependency=resolv=resolv-0.1.2.0-HIhCkIWXNV0JfJkk9Gji7V --dependency=safe-exceptions=safe-exceptions-0.1.7.4-E9cnUmmAJx5B6xFDiplgu3 --dependency=optparse-applicative=optparse-applicative-0.17.1.0-FC5js3LIiwBbH2h9sQaus --dependency=ansi-wl-pprint=ansi-wl-pprint-0.6.9-DIVZPRcVz1EQd1VeJeJEo --dependency=ansi-terminal=ansi-terminal-1.0-GF5WxAdg1L5eW2Mr1O2be --dependency=ansi-terminal-types=ansi-terminal-types-0.11.5-94tBGyEfSQUHisdUb8P9op --dependency=colour=colour-2.3.6-5Hdg5NZuPkoIAWxSFkdA0e --dependency=colour=colour-2.3.6-5Hdg5NZuPkoIAWxSFkdA0e --dependency=shake=shake-0.19.7-BW9Kuvw7GG1J0rPEO2bOHa --dependency=extra=extra-1.7.14-GRM2ECbOx8f2WtrPvEoxMD --dependency=clock=clock-0.8.4-G8SzK6hYDaQ8NS4QguXJqj --dependency=filepattern=filepattern-0.1.3-AIX3iM2BoWJ5xu8vfowScy --dependency=heaps=heaps-0.4-5PB8Hy2UZs5xAS9LDwoq6 --dependency=js-dgtable=js-dgtable-0.5.2-GJOZPjRBXVeCze8bD7YdfT --dependency=js-flot=js-flot-0.8.3-IKtJvuN3TOl6yoqyRfRs9e --dependency=js-jquery=js-jquery-3.3.1-GCjw1NTKZjFJVKUV30VZHp --dependency=utf8-string=utf8-string-1.0.2-CBV7v5pOB6l9GVjwcUrqZQ --dependency=stache=stache-2.3.4-FJLwabfK0PJAmbYcoYdwmN --dependency=megaparsec=megaparsec-9.5.0-6DacirRyqdHAUWDkkI2423 --dependency=case-insensitive=case-insensitive-1.2.1.0-Llsjaq24yPCAjhxcaQSgLI --dependency=parser-combinators=parser-combinators-1.3.0-11YwG5dPNej79xqbn9HKav --dependency=tomland=tomland-1.3.3.2-A43lKxlUCWJHMLTLvH2jSc --dependency=validation-selective=validation-selective-0.2.0.0-2OZ9OswQRpRHTNftgo5U1q --dependency=selective=selective-0.7-1Y7496npCuI6aviCrCvImg --dependency=with-utf8=with-utf8-1.0.2.4-6RX1brj49ya5EkkPhhnzBl --dependency=array=array-0.5.4.0 --dependency=base=base-4.17.2.1 --dependency=deepseq=deepseq-1.4.8.0 --dependency=ghc-bignum=ghc-bignum-1.3 --dependency=ghc-boot-th=ghc-boot-th-9.4.8 --dependency=ghc-prim=ghc-prim-0.9.1 --dependency=integer-gmp=integer-gmp-1.1 --dependency=pretty=pretty-1.1.3.6 --dependency=rts=rts-1.0.2 --dependency=system-cxx-std-lib=system-cxx-std-lib-1.0 --dependency=template-haskell=template-haskell-2.19.0.0 --with-ghc=ghc --with-ghc-pkg=ghc-pkg --with-hsc2hs=hsc2hs --with-gcc=cc --with-ar=ar --with-strip=strip --disable-executable-stripping --disable-library-stripping --disable-library-profiling --disable-profiling --enable-static --enable-shared --disable-executable-dynamic --disable-coverage --enable-library-for-ghci --datadir=/nix/store/kkp5brv08n49simshwrs0dv252ymz9jg-foliage-exe-foliage-0.6.0.0-data/share/ghc-9.4.8 --enable-split-sections
Configuring executable 'foliage' for foliage-0.6.0.0..
Warning: 'hs-source-dirs: tests' specifies a directory which does not exist.
building
Preprocessing executable 'foliage' for foliage-0.6.0.0..
Building executable 'foliage' for foliage-0.6.0.0..
[ 1 of 21] Compiling Distribution.Aeson ( app/Distribution/Aeson.hs, dist/build/foliage/foliage-tmp/Distribution/Aeson.o, dist/build/foliage/foliage-tmp/Distribution/Aeson.dyn_o )
[ 2 of 21] Compiling Distribution.Types.Orphans ( app/Distribution/Types/Orphans.hs, dist/build/foliage/foliage-tmp/Distribution/Types/Orphans.o, dist/build/foliage/foliage-tmp/Distribution/Types/Orphans.dyn_o )
[ 3 of 21] Compiling Foliage.HackageSecurity ( app/Foliage/HackageSecurity.hs, dist/build/foliage/foliage-tmp/Foliage/HackageSecurity.o, dist/build/foliage/foliage-tmp/Foliage/HackageSecurity.dyn_o )
[ 4 of 21] Compiling Foliage.CmdCreateKeys ( app/Foliage/CmdCreateKeys.hs, dist/build/foliage/foliage-tmp/Foliage/CmdCreateKeys.o )
[ 5 of 21] Compiling Foliage.Time ( app/Foliage/Time.hs, dist/build/foliage/foliage-tmp/Foliage/Time.o, dist/build/foliage/foliage-tmp/Foliage/Time.dyn_o )
[ 6 of 21] Compiling Foliage.Options ( app/Foliage/Options.hs, dist/build/foliage/foliage-tmp/Foliage/Options.o )
[ 7 of 21] Compiling Foliage.UpdateCabalFile ( app/Foliage/UpdateCabalFile.hs, dist/build/foliage/foliage-tmp/Foliage/UpdateCabalFile.o, dist/build/foliage/foliage-tmp/Foliage/UpdateCabalFile.dyn_o )
[ 8 of 21] Compiling Foliage.Utils.Aeson ( app/Foliage/Utils/Aeson.hs, dist/build/foliage/foliage-tmp/Foliage/Utils/Aeson.o, dist/build/foliage/foliage-tmp/Foliage/Utils/Aeson.dyn_o )
[ 9 of 21] Compiling Network.URI.Orphans ( app/Network/URI/Orphans.hs, dist/build/foliage/foliage-tmp/Network/URI/Orphans.o, dist/build/foliage/foliage-tmp/Network/URI/Orphans.dyn_o )
[10 of 21] Compiling Foliage.Meta ( app/Foliage/Meta.hs, dist/build/foliage/foliage-tmp/Foliage/Meta.o, dist/build/foliage/foliage-tmp/Foliage/Meta.dyn_o )
[11 of 21] Compiling Foliage.Utils.GitHub ( app/Foliage/Utils/GitHub.hs, dist/build/foliage/foliage-tmp/Foliage/Utils/GitHub.o, dist/build/foliage/foliage-tmp/Foliage/Utils/GitHub.dyn_o )
[12 of 21] Compiling Foliage.Shake ( app/Foliage/Shake.hs, dist/build/foliage/foliage-tmp/Foliage/Shake.o, dist/build/foliage/foliage-tmp/Foliage/Shake.dyn_o )
[13 of 21] Compiling Foliage.PrepareSdist ( app/Foliage/PrepareSdist.hs, dist/build/foliage/foliage-tmp/Foliage/PrepareSdist.o, dist/build/foliage/foliage-tmp/Foliage/PrepareSdist.dyn_o )
[14 of 21] Compiling Foliage.Meta.Aeson ( app/Foliage/Meta/Aeson.hs, dist/build/foliage/foliage-tmp/Foliage/Meta/Aeson.o, dist/build/foliage/foliage-tmp/Foliage/Meta/Aeson.dyn_o )
[15 of 21] Compiling Foliage.CmdImportIndex ( app/Foliage/CmdImportIndex.hs, dist/build/foliage/foliage-tmp/Foliage/CmdImportIndex.o )
app/Foliage/CmdImportIndex.hs:117:13: warning: [-Wincomplete-uni-patterns]
Pattern match(es) are non-exhaustive
In a pattern binding:
Patterns of type ‘[FilePath]’ not matched:
[]
[_]
[_, _]
(_:_:_:_:_)
|
117 | let [pkgName, pkgVersion, _] = splitDirectories path
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Foliage/CmdImportIndex.hs:118:13: warning: [-Wincomplete-uni-patterns]
Pattern match(es) are non-exhaustive
In a pattern binding:
Patterns of type ‘Maybe
Distribution.Types.PackageName.PackageName’ not matched:
Nothing
|
118 | Just name = simpleParsec pkgName
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Foliage/CmdImportIndex.hs:119:13: warning: [-Wincomplete-uni-patterns]
Pattern match(es) are non-exhaustive
In a pattern binding:
Patterns of type ‘Maybe
Distribution.Types.Version.Version’ not matched:
Nothing
|
119 | Just version = simpleParsec pkgVersion
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[16 of 21] Compiling Foliage.FetchURL ( app/Foliage/FetchURL.hs, dist/build/foliage/foliage-tmp/Foliage/FetchURL.o, dist/build/foliage/foliage-tmp/Foliage/FetchURL.dyn_o )
[17 of 21] Compiling Foliage.PrepareSource ( app/Foliage/PrepareSource.hs, dist/build/foliage/foliage-tmp/Foliage/PrepareSource.o, dist/build/foliage/foliage-tmp/Foliage/PrepareSource.dyn_o )
[18 of 21] Compiling Foliage.PreparePackageVersion ( app/Foliage/PreparePackageVersion.hs, dist/build/foliage/foliage-tmp/Foliage/PreparePackageVersion.o, dist/build/foliage/foliage-tmp/Foliage/PreparePackageVersion.dyn_o )
app/Foliage/PreparePackageVersion.hs:191:18: error:
• Couldn't match expected type: [Timestamped FilePath]
with actual type: Timestamped a1
• In the pattern: Timestamped patch _
In a pattern binding: (Timestamped patch _) = prevCabalFilePath
In the expression:
do let inputFile = cabalFileRevisionPath revisionNumber
let (Timestamped patch _) = prevCabalFilePath
if takeExtension inputFile `elem` [".diff", ....] then
do Stdout out <- cmd ...
....
else
Timestamped revisionTimestamp <$> BL.readFile inputFile
|
191 | let (Timestamped patch _) = prevCabalFilePath
| ^^^^^^^^^^^^^^^^^^^
app/Foliage/PreparePackageVersion.hs:194:73: error:
• Couldn't match type ‘Timestamped FilePath’ with ‘Char’
Expected: String
Actual: [Timestamped FilePath]
• In the expression: prevCabalFilePath
In the first argument of ‘cmd’, namely
‘["patch", "-i", inputFile, "-o", ....]’
In a stmt of a 'do' block:
Stdout out <- cmd ["patch", "-i", inputFile, "-o", ....]
|
194 | Stdout out <- cmd ["patch", "-i", inputFile, "-o", "-", prevCabalFilePath]
| ^^^^^^^^^^^^^^^^^
app/Foliage/PreparePackageVersion.hs:195:26: error:
• Couldn't match expected type: [Timestamped FilePath]
with actual type: Timestamped a0
• In the second argument of ‘($)’, namely
‘Timestamped revisionTimestamp out’
In a stmt of a 'do' block:
return $ Timestamped revisionTimestamp out
In the expression:
do Stdout out <- cmd ["patch", "-i", ....]
return $ Timestamped revisionTimestamp out
• Relevant bindings include
out :: a0 (bound at app/Foliage/PreparePackageVersion.hs:194:24)
|
195 | return $ Timestamped revisionTimestamp out
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Foliage/PreparePackageVersion.hs:196:20: error:
• Couldn't match type: Timestamped BL.ByteString
with: [Timestamped FilePath]
Expected: BL.ByteString -> [Timestamped FilePath]
Actual: BL.ByteString -> Timestamped BL.ByteString
• In the first argument of ‘(<$>)’, namely
‘Timestamped revisionTimestamp’
In the expression:
Timestamped revisionTimestamp <$> BL.readFile inputFile
In a stmt of a 'do' block:
if takeExtension inputFile `elem` [".diff", ".patch"] then
do Stdout out <- cmd ["patch", ....]
return $ Timestamped revisionTimestamp out
else
Timestamped revisionTimestamp <$> BL.readFile inputFile
|
196 | else Timestamped revisionTimestamp <$> BL.readFile inputFile
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Foliage/PreparePackageVersion.hs:196:54: error:
• Couldn't match type ‘IO’ with ‘Action’
Expected: Action BL.ByteString
Actual: IO BL.ByteString
• In the second argument of ‘(<$>)’, namely ‘BL.readFile inputFile’
In the expression:
Timestamped revisionTimestamp <$> BL.readFile inputFile
In a stmt of a 'do' block:
if takeExtension inputFile `elem` [".diff", ".patch"] then
do Stdout out <- cmd ["patch", ....]
return $ Timestamped revisionTimestamp out
else
Timestamped revisionTimestamp <$> BL.readFile inputFile
|
196 | else Timestamped revisionTimestamp <$> BL.readFile inputFile
| ^^^^^^^^^^^^^^^^^^^^^
app/Foliage/PreparePackageVersion.hs:198:9: error:
• Couldn't match type ‘Char’ with ‘Timestamped FilePath’
Expected: [Timestamped FilePath]
Actual: FilePath
• In the second argument of ‘foldlM’, namely
‘originalCabalFilePath’
In the second argument of ‘(<$>)’, namely
‘foldlM
(\ prevCabalFilePath
(RevisionSpec {revisionTimestamp, revisionNumber})
-> do let inputFile = ...
let (Timestamped patch _) = ...
if takeExtension inputFile `elem` [...] then
do ...
else
Timestamped revisionTimestamp <$> BL.readFile inputFile)
originalCabalFilePath (packageVersionRevisions pkgSpec)’
In a stmt of a 'do' block:
cabalFileRevisions <- sortOn (Down . timestamp)
<$>
foldlM
(\ prevCabalFilePath
(RevisionSpec {revisionTimestamp, revisionNumber})
-> do let inputFile = ...
let (Timestamped patch _) = ...
if takeExtension inputFile `elem` [...] then
do ...
else
Timestamped revisionTimestamp
<$> BL.readFile inputFile)
originalCabalFilePath (packageVersionRevisions pkgSpec)
|
198 | originalCabalFilePath
| ^^^^^^^^^^^^^^^^^^^^^
Loading