
Hello, On Sunday 15 March 2009 16:51, Ian Lynagh wrote:
We are pleased to announce the first release candidate for GHC 6.10.2: ... Please test as much as possible; bugs are much cheaper if we find them before the release! ...
thorkil-naurs-intel-mac-mini:~/tn/test/GHC/release/GHC-6.10.2-rc1
dyld: loaded: /bin/sh dyld: loaded: /usr/lib/libncurses.5.4.dylib dyld: loaded: /usr/lib/libiconv.2.dylib dyld: loaded: /usr/lib/libSystem.B.dylib dyld: loaded: /usr/lib/libgcc_s.1.dylib dyld: loaded: /usr/lib/system/libmathCommon.A.dylib dyld: loaded: /Library/Frameworks/GHC.framework/Versions/610/usr/lib/ghc-6.10.1.20090314/ghc dyld: loaded: /usr/lib/libedit.2.dylib dyld: loaded: /usr/lib/libncurses.5.4.dylib dyld: loaded: /usr/lib/libSystem.B.dylib dyld: loaded: /usr/lib/libgcc_s.1.dylib dyld: loaded: /usr/lib/system/libmathCommon.A.dylib The Glorious Glasgow Haskell Compilation System, version 6.10.1.20090314 thorkil-naurs-intel-mac-mini:~/tn/test/GHC/release/GHC-6.10.2-rc1
thorkil-naurs-intel-mac-mini:~/tn/test/GHC/release/GHC-6.10.2-rc1
dyld: loaded: /bin/sh dyld: loaded: /usr/lib/libncurses.5.4.dylib dyld: loaded: /usr/lib/libiconv.2.dylib dyld: loaded: /usr/lib/libSystem.B.dylib dyld: loaded: /usr/lib/libgcc_s.1.dylib dyld: loaded: /usr/lib/system/libmathCommon.A.dylib dyld: loaded: /Users/thorkilnaur/tn/install/ghc-6.8.3/lib/ghc-6.8.3/ghc-6.8.3 dyld: loaded: /opt/local/lib/libreadline.5.2.dylib dyld: loaded: /opt/local/lib/libncurses.5.dylib dyld: loaded: /usr/lib/libSystem.B.dylib dyld: loaded: /opt/local/lib/libgmp.3.dylib dyld: loaded: /usr/lib/libgcc_s.1.dylib dyld: loaded: /usr/lib/system/libmathCommon.A.dylib The Glorious Glasgow Haskell Compilation System, version 6.8.3 thorkil-naurs-intel-mac-mini:~/tn/test/GHC/release/GHC-6.10.2-rc1
I have tried the Intel Mac installer and the source package on both FreeBSD and PPC Mac OS X. Some comments follow, first on GHC-6.10.1.20090314-i386.pkg: 1. An important property of such installers is that you are told, right from the start, that all the information you are presented with during the installation process can be accessed at any time, after completion of the installation, and you are told how. In case of GHC, something like a reference to a suitable spot, given as part of the output from ghc --help. I don't see any trace of such a facility on the introduction screen. (I know that other installers don't do this either, which is part of the reason why I try to avoid them.) 2. The introduction screen says "This package must be installed on the system volume" which seems to imply that there is some kind of choice involved at a later stage. But I don't recall having to perform any choice that related to this. So perhaps this should be "This package will be installed on the system volume" instead. 3. I can copy and paste the text of the introduction screen, excellent. I cannot copy and paste the header. 4. On the License screen, GMP is denoted "GNU MP Bignum Library" in two places. I suggest using "GNU Multiple Precision Arithmetic Library" (from http://gmplib.org/) instead. 5. On the License screen, replace "licence" by "license", twice. 6. The License screen explains "that by default the GMP will be statically linked into any binary produced by GHC. Software with a non-GPL compatible licence [sic] will have to ensure that the conditions of the LGPL are met; for example, by forcing GMP to link dynamically instead." Some details or a reference to an explanation of how to do this would be nice. Also, shouldn't "non-GPL compatible" be plain "non-GPL"? 7. I may very well be wrong, but as far as I have been able to tell, the ghc executable itself that is distributed (/Library/Frameworks/GHC.framework/Versions/610/usr/lib/ghc-6.10.1.20090314/ghc) contains GMP, statically linked. For example: thorkilnaur$ DYLD_PRINT_LIBRARIES=YES /usr/bin/ghc --version thorkilnaur$ where I fail to observe anything that seems to relate to GMP. This is in contrast to the corresponding information for an earlier GHC installation thorkilnaur$ DYLD_PRINT_LIBRARIES=YES ghc --version thorkilnaur$ where one observes the presence of "dyld: loaded: /opt/local/lib/libgmp.3.dylib" that loads the separately installed dynamic GMP library. I am no expert in these matters, but this seems to activate requirement d) 0) under section "4. Combined Works" of the LGPL "GNU LESSER GENERAL PUBLIC LICENSE Version 3, 29 June 2007" (http://www.fsf.org/licensing/licenses/lgpl.html) which talks about providing material and giving instructions about how to re-link with a new version of the library and all that. If this material and the instructions are present in the installation package, I have failed to notice it. Alternatively, if the ghc executable links to GMP dynamically, requirement d) 1) of the LGPL comes into effect and that talks about a "mechanism ...that ... uses at run time a copy of the Library already present on the user's computer system". In the latter case, I would expect a mentioning of this requirement of a separate GMP installation and I have not seen such a requirement mentioned. 8. I can copy and paste the text of the License screen (without the header), excellent. (I can also Print and Save, I haven't tried that.) 9. I cannot copy and paste the text or the header of the Installation Type screen, the one that says "This will take 448 MB of space on your computer. Click Install to perform a standard installation of this software for all users of this computer." 10. On the Summary screen, I am told to find additional documentation at "/usr/share/doc/ghc/index.html". Should that, perhaps, be "file:///usr/share/doc/ghc/index.html" or something else, that more directly indicates how to access this documentation? And also mention the use of a browser? 11. And there is an uninstaller, excellent. Not least because reading that allows me to figure out where (the author of the uninstaller believes) things are installed. I didn't check before installing, but certainly, running the uninstaller increased the available space on the disk by about 500 MBytes, the expected amount. 12. What happens if I have a GHC installed already? To check this, I tried running the installer twice, without uninstalling in between. I didn't notice any difference between the first and second install. So I guess that the first installation was simply being overwritten. I realise that the /Library/Framework conventions allow multiple versions of the same thing to be installed. But the way the GHC package is supposed to be accessed is via symbolic links in /usr/bin (and elsewhere?) and these links are surely being overwritten. If there is a mechanism for changing between versions, I haven't noticed it. 13. Looking inside /usr/share/doc/ghc, I find LICENSE, but this is not the same as the text of the License screen. 14. I also find /usr/share/doc/ghc/docbook-cheat-sheet which could be left out without doing much harm, as far as I can tell. 15. I didn't run the testsuite for the Intel Mac installer. Then we are getting to the source distribution (ghc-6.10.1.20090314-src-extralibs.tar.bz2, ghc-6.10.1.20090314-src.tar.bz2 and also the testsuite-6.10.1.20090314.tar.gz). I tried that on a FreeBSD and also a PPC Mac OS X. First comes
$ uname -a FreeBSD tn12.thorkilnaur.dk 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Fri Jan 12 10:40:27 UTC 2007 root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 $ ghc --version The Glorious Glasgow Haskell Compilation System, version 6.10.1
16. The build, using ./configure + make, went fine. Running the tests ran into the issue described as http://hackage.haskell.org/trac/ghc/ticket/3106. Using the proposed fix provided by kgardas (my own proposed fix wasn't ready until later), the testsuite (make stage=2) ended with this summary:
OVERALL SUMMARY for test run started at Tue Mar 17 14:03:34 CET 2009 2334 total tests, which gave rise to 12487 test cases, of which 0 caused framework failures 2460 were skipped
9680 expected passes 262 expected failures 15 unexpected passes 70 unexpected failures
Unexpected passes: galois_raytrace(hpc,optasm,profasm,threaded2,profthreaded) getEnvironment01 (normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded)
Unexpected failures: apirecomp001(normal) barton-mangler-bug(hpc,profc)
bits(normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded)
break017(ghci) cabal01(normal) concprog001(ghci) derefnull(profc,profthreaded) divbyzero(profc,profthreaded)
genUpTo(normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded)
hpc_raytrace(profc) joao-circular(profc) length001(optc,hpc,optasm,profc,profasm,threaded2,profthreaded) num009 (normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded) num012 (normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded) process007 (normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded) seward-space-leak(ghci)
Details may be found at: thorkilnaur.dk/~tn/test/GHC/release/GHC-6.10.2-rc1/ghc-6.10.1.20090314-freebsd.tar.gz Second comes
$ uname -a Darwin thorkil-naurs-mac-mini.local 9.6.0 Darwin Kernel Version 9.6.0: Mon Nov 24 17:39:01 PST 2008; root:xnu-1228.9.59~1/RELEASE_PPC Power Macintosh $ ghc --version The Glorious Glasgow Haskell Compilation System, version 6.6.1
17. Again, building with ./configure + make went fine. Test summary (make stage=2):
OVERALL SUMMARY for test run started at Tue Mar 17 08:48:51 CET 2009 2334 total tests, which gave rise to 12487 test cases, of which 0 caused framework failures 2453 were skipped
9726 expected passes 254 expected failures 0 unexpected passes 54 unexpected failures
Unexpected failures: 2469(ghci) apirecomp001(normal) barton-mangler-bug(profc)
bits(normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded)
break017(ghci) derefnull(profc,profthreaded)
divbyzero(normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded)
ffi009(ghci) galois_raytrace(optc,profc)
genUpTo(normal,optc,hpc,optasm,profc,profasm,ghci,threaded1,threaded2,profthreaded)
hpc_raytrace(profc) joao-circular(profc) length001(optc,hpc,optasm,profc,profasm,threaded2,profthreaded) seward-space-leak(ghci) signals002(ghci) signals004(ghci,threaded1,threaded2,profthreaded)
Details at: thorkilnaur.dk/~tn/test/GHC/release/GHC-6.10.2-rc1/ghc-6.10.1.20090314-ppc-macosx.tar.gz Best regards Thorkil