Cabal Release Candidate

Brian Smith brianlsmith at gmail.com
Sun Jul 17 13:12:27 EDT 2005


On 7/14/05, Isaac Jones <ijones at syntaxpolice.org> wrote:
> I've updated the web page to have 1.0 (as Malcolm requested), and
> added 1.1.1, which is a "release candidate" for 1.2.  Please forgive
> me for going insane with the version numbers.
> 
> I'd appreciate it if early adopter types try out 1.1.1.  In
> particular, check out the README wrt installing alongside-of or
> instead-of 1.0 with ghc 6.4.
> 
> BTW, if anyone loves to manage releases and would like to relieve me
> of this duty so I can spend my time fixing bugs and adding features,
> just let me know ;)

I don't want to be a release manager (who does :). However, I noticed
that Cabal doesn't seem to get tested much in Windows* so I can
volunteer to be the semi-official tester for Windows. However, I would
like to know what versions of GHC, NHC, and Hugs you want to support
for the Cabal 1.2 release on Windows. (I don't normally use NHC at all
but I'm not opposed to doing some basic tests with it).

In particular, can we just skip support for GHC 6.4? The installation
instructions for GHC 6.4 are workable, but it looks like the GHC 6.4.1
experience will be much better. Plus, I think that the package
management changes between GHC 6.4.0 and 6.4.1 will cause problems for
people packaging their stuff using Cabal. So, could we just say that
Cabal 1.2 requires GHC 6.2.2 or GHC 6.4.1 or later?

* The new call to SHGetFolderPath does not get linked correctly,
causing Cabal 1.1.1 to not work once it is installed due to linker
failure. At least part of the problem is that The foreign import
declaration in Disbribution.Simple.Configure should be:
- foreign import stdcall unsafe "SHGetFolderPath" 
+ foreign import stdcall unsafe "SHGetFolderPathA" 
or
- foreign import stdcall unsafe "SHGetFolderPath" 
+foreign import stdcall unsafe "SHGetFolderPathW" 
depending on whether or not you are expecting ANSI or Unicode results.
You probably want the Unicode version because the "Program Files"
folder can contain Arabic, Japanese, etc. characters that ANSI can't
represent.

* On GHC 6.4, trying to install Cabal 1.1.1 using Cabal 1.0 fails due
to the bug in Cabal 1.0's "copy" command that I reported last month
(which is fixed in Cabal 1.1.1). The workaround is to delete the
"Executable: cabal-setup" stanza from Cabal.cabal. I believe that this
executable is useless anyway.

* In Distribution.Preprocess, there are two places where you have this:
#if __HUGS__ && mingw32_TARGET_OS
	  = rawSystemVerbose verbose "sh" (cpphs : extraArgs ++ ["-O" ++
outFile, inFile])
#else

If I am reading this correctly then it doesn't make sense because you
can't assume that all Hugs users on Windows users have a "sh"
executable.

* It should be possible for Windows users to build Cabal 1.1.1 on both
GHC 6.2.2 and GHC 6.4.1 without having GNU make installed. This
process needs to be documented. I will wait to send you the docs until
I find out if GHC 6.4(.0) will be supported in Cabal 1.2.

- Brian


More information about the Libraries mailing list