Re: More detail on breakage with ghc-6.10
Am Samstag, 11. Oktober 2008 09:36 schrieb Duncan Coutts: All, We've been using the cabal-install build reporting stuff to get more detailed info on build failures with ghc-6.10 vs 6.8. cabal-install generates these build-reports.log files and individual log files for each build. build-reports.log informs me that configure failed for the lax package with both GHC 6.8 and GHC 6.10. However, lax used to build fine on my machine with GHC 6.8. So I looked at logs/lax-0.0.0.1.log but this file is empty. Why? Best wishes, Wolfgang ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: More detail on breakage with ghc-6.10
Am Donnerstag, 23. Oktober 2008 12:59 schrieb Wolfgang Jeltsch: Am Samstag, 11. Oktober 2008 09:36 schrieb Duncan Coutts: All, We've been using the cabal-install build reporting stuff to get more detailed info on build failures with ghc-6.10 vs 6.8. cabal-install generates these build-reports.log files and individual log files for each build. build-reports.log informs me that configure failed for the lax package with both GHC 6.8 and GHC 6.10. However, lax used to build fine on my machine with GHC 6.8. So I looked at logs/lax-0.0.0.1.log but this file is empty. Why? Best wishes, Wolfgang lax-0.0.0.1 just built fine for me using 6.8.3, package: lax-0.0.0.1 os: linux arch: i386 compiler: ghc-6.8.3 client: cabal-install-0.6.0 flags: dependencies: base-3.0.2.0 install-outcome: InstallOk docs-outcome: NotTried tests-outcome: NotTried Probably the log is empty because no build outcomes have been reported (I just tried cabal report and got cabal: /home/dafis/.cabal/reports/hackage.haskell.org: getDirectoryContents: does not exist (No such file or directory) , I can't be bothered now to find out what I'd have to do to make it work). Cheers, Daniel ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: More detail on breakage with ghc-6.10
g9ks157k: Am Samstag, 11. Oktober 2008 09:36 schrieb Duncan Coutts: All, We've been using the cabal-install build reporting stuff to get more detailed info on build failures with ghc-6.10 vs 6.8. cabal-install generates these build-reports.log files and individual log files for each build. build-reports.log informs me that configure failed for the lax package with both GHC 6.8 and GHC 6.10. However, lax used to build fine on my machine with GHC 6.8. So I looked at logs/lax-0.0.0.1.log but this file is empty. Why? Resolving dependencies... 'lax-0.0.0.1' is cached. cabal: The package requires Cabal library version -any =1.2 1.4 but no suitable version is installed. cabal: Error: some packages failed to install Perhaps? ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: More detail on breakage with ghc-6.10
On Thu, 2008-10-23 at 12:59 +0200, Wolfgang Jeltsch wrote: Am Samstag, 11. Oktober 2008 09:36 schrieb Duncan Coutts: All, We've been using the cabal-install build reporting stuff to get more detailed info on build failures with ghc-6.10 vs 6.8. cabal-install generates these build-reports.log files and individual log files for each build. build-reports.log informs me that configure failed for the lax package with both GHC 6.8 and GHC 6.10. However, lax used to build fine on my machine with GHC 6.8. So I looked at logs/lax-0.0.0.1.log but this file is empty. Why? As Don noted, it's because it didn't even get to the stage of running the configure for the package. That's the first part where it starts logging. Yes, the logging is sadly rather primitive. Duncan ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: More detail on breakage with ghc-6.10
We've been using the cabal-install build reporting stuff to get more detailed info on build failures with ghc-6.10 vs 6.8. cabal-install generates these build-reports.log files and individual log files for each build. Since you do have the infrastructure set up: haddock is also changing with ghc-6.10. Are the no (visible) issues resulting from that (which would be great!), or didn't your tests include haddocking? Claus ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: More detail on breakage with ghc-6.10
claus.reinke: We've been using the cabal-install build reporting stuff to get more detailed info on build failures with ghc-6.10 vs 6.8. cabal-install generates these build-reports.log files and individual log files for each build. Since you do have the infrastructure set up: haddock is also changing with ghc-6.10. Are the no (visible) issues resulting from that (which would be great!), or didn't your tests include haddocking? No haddock tests yet, but we can start doing that. Good idea. ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Breakage with ghc-6.10
This is a quick summary of the results of building most of hackage using three combinations of ghc and Cabal. I reported the breakage due to Cabal-1.6 previously. This is a brief look at breakage introduced with ghc-6.10 and the associated library changes. I have build summary logs and individual package build logs. I will post those later. Anyway, here's the summary of the summary: ghc-6.8.2 Cabal-1.4.0.2 1 UnpackFailed 3 InstallFailed 20 ConfigureFailed 27 DependencyFailed 87 BuildFailed 547 InstallOk ghc-6.8.2 Cabal-1.5.6 1 UnpackFailed 3 InstallFailed 26 ConfigureFailed 27 DependencyFailed 87 BuildFailed 541 InstallOk ghc-6.10.0 (5th Oct version) Cabal-1.6.0.0 1 InstallFailed 21 ConfigureFailed 121 DependencyFailed 126 BuildFailed 422 InstallOk If we look at a breakdown of the builds that caused three or more knock-on failures (ie the causes of the 121 DependencyFailed above): 3 hxt-8.1.0 4 hsql-1.7 4 hsx-0.4.4 4 plugins-1.3 4 TypeCompose-0.5 6 arrows-0.4 24 hslogger-1.0.5 46 time-1.1.2.1 Hmm, time and hslogger are big ones there. Let's look at the individual package build logs. First time: Data/Time/Clock/CTimeval.hs:1:11: Warning: -ffi is deprecated: use -XForeignFunctionInterface or pragma {-# LANGUAGE ForeignFunctionInterface#-} instead no location info: Failing due to -Werror. Nooo!! This is the reason that hackage now rejects the use of -Werror in released packages. It causes unnecessary breakage when new compilers add new warnings. Ok, lets look at hslogger: src/System/Log/Logger.hs:333:20: Couldn't match expected type `Maybe Logger' against inferred type `IO Logger' In a stmt of a 'do' expression: result - Map.lookup lname newlt Ah ok, so that's the change in Map.lookup to return Maybe rather than in any monad. So that's an easy source code fix: result - maybe (fail Arrgh!) return (Map.lookup lname newlt) Note of course this will also work with the previous implementation of lookup. Duncan ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: Breakage with ghc-6.10
On Fri, 2008-10-10 at 09:08 -0700, Duncan Coutts wrote: Data/Time/Clock/CTimeval.hs:1:11: Warning: -ffi is deprecated: use -XForeignFunctionInterface or pragma {-# LANGUAGE ForeignFunctionInterface#-} instead no location info: Failing due to -Werror. Nooo!! This is the reason that hackage now rejects the use of -Werror in released packages. It causes unnecessary breakage when new compilers add new warnings. Warnings in a build process should be fixed, not ignored (and, I would say, fixed by whoever introduced the warning or otherwise broke the build). Hackage, on the other hand, is right to reject -Werror in .cabal files, as there the build is really part of the install process and should be as lenient as possible. I pass --ghc-options=-Wall -Werror to cabal in a Makefile in most of my projects, so that my development build process is strict. -- Ashley Yakeley ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: Breakage with ghc-6.10
Duncan Coutts wrote: Ok, lets look at hslogger: src/System/Log/Logger.hs:333:20: Couldn't match expected type `Maybe Logger' against inferred type `IO Logger' In a stmt of a 'do' expression: result - Map.lookup lname newlt Ah ok, so that's the change in Map.lookup to return Maybe rather than in any monad. So that's an easy source code fix: result - maybe (fail Arrgh!) return (Map.lookup lname newlt) There are actually more instances than this in the code, but I already have fixed it in my git tree. I guess it's time to make a release. -- John Note of course this will also work with the previous implementation of lookup. Duncan ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: Breakage with ghc-6.10
Sorry Ashley, I hope you didn't feel I was picking on you in particular. I realise it might have looked that way. On Fri, 2008-10-10 at 11:08 -0700, Ashley Yakeley wrote: On Fri, 2008-10-10 at 09:08 -0700, Duncan Coutts wrote: Failing due to -Werror. Nooo!! This is the reason that hackage now rejects the use of -Werror in released packages. It causes unnecessary breakage when new compilers add new warnings. Warnings in a build process should be fixed, not ignored (and, I would say, fixed by whoever introduced the warning or otherwise broke the build). Yes indeed. So it's appropriate for development builds. Hackage, on the other hand, is right to reject -Werror in .cabal files, as there the build is really part of the install process and should be as lenient as possible. I pass --ghc-options=-Wall -Werror to cabal in a Makefile in most of my projects, so that my development build process is strict. Right. Putting -Wall in the ghc-options in the .cabal file is fine too of course. Lots of packages do that. Duncan ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: Breakage with ghc-6.10
Duncan Coutts wrote: There are actually more instances than this in the code, but I already have fixed it in my git tree. I guess it's time to make a release. Yay! Between that and a bump for the time lib we'll probably have another ~50 packages building with 6.10. And on that note, hslogger 1.0.6 is now in Hackage. -- John ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: Breakage with ghc-6.10
jgoerzen: Duncan Coutts wrote: There are actually more instances than this in the code, but I already have fixed it in my git tree. I guess it's time to make a release. Yay! Between that and a bump for the time lib we'll probably have another ~50 packages building with 6.10. And on that note, hslogger 1.0.6 is now in Hackage. Great! I'll do a new hackage build test. -- Don ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users