| 1 | Tue Mar 17 11:15:45 CET 2009 Nicolas Pouillard <nicolas.pouillard@gmail.com> |
|---|
| 2 | * Avoid coping N executables N times (Ticket #525) |
|---|
| 3 | |
|---|
| 4 | Tue Mar 17 11:18:13 CET 2009 Nicolas Pouillard <nicolas.pouillard@gmail.com> |
|---|
| 5 | * Rename 'withExe' as 'withExes', export the old one as deprecated. |
|---|
| 6 | |
|---|
| 7 | Tue Mar 17 11:18:19 CET 2009 Nicolas Pouillard <nicolas.pouillard@gmail.com> |
|---|
| 8 | * Use 'hasLib' instead of 'withLib' in Install. |
|---|
| 9 | |
|---|
| 10 | New patches: |
|---|
| 11 | |
|---|
| 12 | [Avoid coping N executables N times (Ticket #525) |
|---|
| 13 | Nicolas Pouillard <nicolas.pouillard@gmail.com>**20090317101545 |
|---|
| 14 | Ignore-this: df195c1daed38005bca165df9a6da880 |
|---|
| 15 | ] hunk ./Distribution/Simple/Install.hs 161 |
|---|
| 16 | case compilerFlavor (compiler lbi) of |
|---|
| 17 | GHC -> do withLib pkg_descr () $ \_ -> |
|---|
| 18 | GHC.installLib flags lbi libPref dynlibPref buildPref pkg_descr |
|---|
| 19 | - withExe pkg_descr $ \_ -> |
|---|
| 20 | + when (hasExes pkg_descr) $ |
|---|
| 21 | GHC.installExe flags lbi installDirs pretendInstallDirs buildPref (progPrefixPref, progSuffixPref) pkg_descr |
|---|
| 22 | JHC -> do withLib pkg_descr () $ JHC.installLib verbosity libPref buildPref pkg_descr |
|---|
| 23 | withExe pkg_descr $ JHC.installExe verbosity binPref buildPref (progPrefixPref, progSuffixPref) pkg_descr |
|---|
| 24 | [Rename 'withExe' as 'withExes', export the old one as deprecated. |
|---|
| 25 | Nicolas Pouillard <nicolas.pouillard@gmail.com>**20090317101813 |
|---|
| 26 | Ignore-this: 9e87e338c7b5b2e0b3df9828d81b3177 |
|---|
| 27 | ] { |
|---|
| 28 | replace ./Distribution/PackageDescription.hs [A-Za-z_0-9] withExe withExes |
|---|
| 29 | hunk ./Distribution/PackageDescription.hs 70 |
|---|
| 30 | Executable(..), |
|---|
| 31 | emptyExecutable, |
|---|
| 32 | withExes, |
|---|
| 33 | + withExe, -- DEPRECATED |
|---|
| 34 | hasExes, |
|---|
| 35 | exeModules, |
|---|
| 36 | |
|---|
| 37 | hunk ./Distribution/PackageDescription.hs 311 |
|---|
| 38 | withExes pkg_descr f = |
|---|
| 39 | sequence_ [f exe | exe <- executables pkg_descr, buildable (buildInfo exe)] |
|---|
| 40 | |
|---|
| 41 | +{-# DEPRECATED withExe "Use withExes instead" #-} |
|---|
| 42 | +-- | This function is now deprecated, use wihtExes instead. |
|---|
| 43 | +withExe :: PackageDescription -> (Executable -> IO a) -> IO () |
|---|
| 44 | +withExe = withExes |
|---|
| 45 | + |
|---|
| 46 | -- |Get all the module names from the exes in this package |
|---|
| 47 | exeModules :: PackageDescription -> [ModuleName] |
|---|
| 48 | exeModules PackageDescription{executables=execs} |
|---|
| 49 | replace ./Distribution/Simple/GHC.hs [A-Za-z_0-9] withExe withExes |
|---|
| 50 | replace ./Distribution/Simple/Haddock.hs [A-Za-z_0-9] withExe withExes |
|---|
| 51 | replace ./Distribution/Simple/Hugs.hs [A-Za-z_0-9] withExe withExes |
|---|
| 52 | replace ./Distribution/Simple/Install.hs [A-Za-z_0-9] withExe withExes |
|---|
| 53 | replace ./Distribution/Simple/JHC.hs [A-Za-z_0-9] withExe withExes |
|---|
| 54 | replace ./Distribution/Simple/NHC.hs [A-Za-z_0-9] withExe withExes |
|---|
| 55 | replace ./Distribution/Simple/PreProcess.hs [A-Za-z_0-9] withExe withExes |
|---|
| 56 | replace ./Distribution/Simple/SrcDist.hs [A-Za-z_0-9] withExe withExes |
|---|
| 57 | } |
|---|
| 58 | [Use 'hasLib' instead of 'withLib' in Install. |
|---|
| 59 | Nicolas Pouillard <nicolas.pouillard@gmail.com>**20090317101819 |
|---|
| 60 | Ignore-this: 820a063b84a8642030b01ac39be9c986 |
|---|
| 61 | ] hunk ./Distribution/Simple/Install.hs 159 |
|---|
| 62 | when (hasLibs pkg_descr) $ installIncludeFiles verbosity pkg_descr incPref |
|---|
| 63 | |
|---|
| 64 | case compilerFlavor (compiler lbi) of |
|---|
| 65 | - GHC -> do withLib pkg_descr () $ \_ -> |
|---|
| 66 | + GHC -> do when (hasLibs pkg_descr) $ |
|---|
| 67 | GHC.installLib flags lbi libPref dynlibPref buildPref pkg_descr |
|---|
| 68 | when (hasExes pkg_descr) $ |
|---|
| 69 | GHC.installExe flags lbi installDirs pretendInstallDirs buildPref (progPrefixPref, progSuffixPref) pkg_descr |
|---|
| 70 | |
|---|
| 71 | Context: |
|---|
| 72 | |
|---|
| 73 | [TAG 1.6.0.2 |
|---|
| 74 | Duncan Coutts <duncan@haskell.org>**20090219021450] |
|---|
| 75 | [Fix sdist so that it preserves executable permissions |
|---|
| 76 | Duncan Coutts <duncan@haskell.org>**20090219020656 |
|---|
| 77 | Needed for ./configure scripts etc. |
|---|
| 78 | ] |
|---|
| 79 | [Compat fixes for ghc-6.4.x |
|---|
| 80 | Duncan Coutts <duncan@haskell.org>**20090219004303] |
|---|
| 81 | [Check for ghc-options: -threaded in libraries |
|---|
| 82 | Duncan Coutts <duncan@haskell.org>**20090125161226 |
|---|
| 83 | It's totally unnecessary and messes up profiling in older ghc versions. |
|---|
| 84 | ] |
|---|
| 85 | [Validate the docbook xml before processing. |
|---|
| 86 | Duncan Coutts <duncan@haskell.org>**20090213134136 |
|---|
| 87 | Apparently xsltproc does not validate against the dtd. |
|---|
| 88 | This should stop errors creaping back in. |
|---|
| 89 | ] |
|---|
| 90 | [Folly the directions for docbook-xsl |
|---|
| 91 | Samuel Bronson <naesten@gmail.com>**20090213022615 |
|---|
| 92 | As it says in http://docbook.sourceforge.net/release/xsl/current/README: |
|---|
| 93 | |
|---|
| 94 | - Use the base canonical URI in combination with one of the |
|---|
| 95 | pathnames below. For example, for "chunked" HTML, output: |
|---|
| 96 | |
|---|
| 97 | http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl |
|---|
| 98 | |
|---|
| 99 | ] |
|---|
| 100 | [Fix message suggesting the --executables flag |
|---|
| 101 | Samuel Bronson <naesten@gmail.com>**20090201010708] |
|---|
| 102 | [Make documentation validate |
|---|
| 103 | Samuel Bronson <naesten@gmail.com>**20090212235057] |
|---|
| 104 | [Typo in docs for source-repository |
|---|
| 105 | Joachim Breitner <mail@joachim-breitner.de>**20090121220747] |
|---|
| 106 | [Specify a temp output file for the header/lib checks |
|---|
| 107 | Duncan Coutts <duncan@haskell.org>**20090218233928 |
|---|
| 108 | Otherwise we litter the current dir with a.out and *.o files. |
|---|
| 109 | ] |
|---|
| 110 | [Update versions mentioned in the README |
|---|
| 111 | Duncan Coutts <duncan@haskell.org>**20090218222235] |
|---|
| 112 | [Final changelog updates for 1.6.0.2 |
|---|
| 113 | Duncan Coutts <duncan@haskell.org>**20090218222144] |
|---|
| 114 | [Use more cc options when checking for header files and libs |
|---|
| 115 | Duncan Coutts <duncan@haskell.org>**20090218110520 |
|---|
| 116 | Use -I. to simulate the search path that gets used when we tell ghc |
|---|
| 117 | to -#include something. Also use the include dirs and cc options of |
|---|
| 118 | dependent packages. These two changes fix about 3 packages each. |
|---|
| 119 | ] |
|---|
| 120 | [Only print message about ignoring -threaded if its actually present |
|---|
| 121 | Duncan Coutts <duncan@haskell.org>**20090206174707] |
|---|
| 122 | [Filter ghc-options -threaded for libs too |
|---|
| 123 | Duncan Coutts <duncan@haskell.org>**20090125145035] |
|---|
| 124 | [Don't build ghci lib if we're not making vanilla libs |
|---|
| 125 | Duncan Coutts <duncan@haskell.org>**20090206173914 |
|---|
| 126 | As the .o files will not exist. |
|---|
| 127 | ] |
|---|
| 128 | [Correct docdir -> mandir in InstallDirs |
|---|
| 129 | Samuel Bronson <naesten@gmail.com>**20090203043338] |
|---|
| 130 | [Fix compat functions for setting file permissions on windows |
|---|
| 131 | Duncan Coutts <duncan@haskell.org>**20090205224415 |
|---|
| 132 | Spotted by Dominic Steinitz |
|---|
| 133 | ] |
|---|
| 134 | [Improve the error message for missing foreign libs and make it fatal |
|---|
| 135 | Duncan Coutts <duncan@haskell.org>**20090131184813 |
|---|
| 136 | The check should now be accurate enough that we can make it an |
|---|
| 137 | error rather than just a warning. |
|---|
| 138 | ] |
|---|
| 139 | [Use the cc, cpp and ld options when checking foreign headers and libs |
|---|
| 140 | Duncan Coutts <duncan@haskell.org>**20090131184016 |
|---|
| 141 | In partiular this is needed for packages that use ./configure |
|---|
| 142 | scripts to write .buildinfo files since they typically do not |
|---|
| 143 | split the cpp/cc/ldoptions into the more specific fields. |
|---|
| 144 | ] |
|---|
| 145 | [#262 iterative tests for foreign dependencies |
|---|
| 146 | Gleb Alexeyev <gleb.alexeev@gmail.com>**20090130120228 |
|---|
| 147 | Optimize for succesful case. First try all libs and includes in one command, |
|---|
| 148 | proceed with further tests only if the first test fails. The same goes for libs |
|---|
| 149 | and headers: look for an offending one only when overall test fails. |
|---|
| 150 | |
|---|
| 151 | ] |
|---|
| 152 | [Do the check for foreign libs after running configure |
|---|
| 153 | Duncan Coutts <duncan@haskell.org>**20090131182213 |
|---|
| 154 | This lets us pick up build info discovered by the ./configure script |
|---|
| 155 | ] |
|---|
| 156 | [Warn if C dependencies not found (kind of fixes #262) |
|---|
| 157 | gleb.alexeev@gmail.com**20090126185832 |
|---|
| 158 | |
|---|
| 159 | This is just a basic check - generate a sample program and check if it compiles and links with relevant flags. Error messages (warning messages, |
|---|
| 160 | actually) could use some improvement. |
|---|
| 161 | ] |
|---|
| 162 | [move imports outside ifdef GHC |
|---|
| 163 | Ross Paterson <ross@soi.city.ac.uk>**20090130153505] |
|---|
| 164 | [Make the Compat.CopyFile module with with old and new ghc |
|---|
| 165 | Duncan Coutts <duncan@haskell.org>**20090129225423] |
|---|
| 166 | [Export setFileOrdinary and setFileExecutable from Compat.CopyFile |
|---|
| 167 | Duncan Coutts <duncan@haskell.org>**20090129173413] |
|---|
| 168 | [Use copyOrdinaryFile and copyExecutableFile instead of copyFile |
|---|
| 169 | Duncan Coutts <duncan@haskell.org>**20090128194143 |
|---|
| 170 | This is a minimal patch for the Cabal-1.6 branch only. |
|---|
| 171 | ] |
|---|
| 172 | [Add Distribution.Compat.CopyFile module |
|---|
| 173 | Duncan Coutts <duncan@haskell.org>**20090128181115 |
|---|
| 174 | This is to work around the file permissions problems with the |
|---|
| 175 | standard System.Directory.copyFile function. When installing |
|---|
| 176 | files we do not want to copy permissions or attributes from the |
|---|
| 177 | source files. On unix we want to use specific permissions and |
|---|
| 178 | on windows we want to inherit default permissions. On unix: |
|---|
| 179 | copyOrdinaryFile sets the permissions to -rw-r--r-- |
|---|
| 180 | copyExecutableFile sets the permissions to -rwxr-xr-x |
|---|
| 181 | ] |
|---|
| 182 | [Update changelog for 1.6.0.2 |
|---|
| 183 | Duncan Coutts <duncan@haskell.org>**20090123175629] |
|---|
| 184 | [Fix installIncludeFiles to create target directories properly |
|---|
| 185 | Duncan Coutts <duncan@haskell.org>**20090122004836 |
|---|
| 186 | Previously for 'install-includes: subdir/blah.h' we would not |
|---|
| 187 | create the subdir in the target location. |
|---|
| 188 | ] |
|---|
| 189 | [filter -threaded when profiling is on |
|---|
| 190 | Duncan Coutts <duncan@haskell.org>**20090122014425 |
|---|
| 191 | Fixes #317. Based on a patch by gleb.alexeev@gmail.com |
|---|
| 192 | ] |
|---|
| 193 | [Fix openNewBinaryFile on Windows with ghc-6.6 |
|---|
| 194 | Duncan Coutts <duncan@haskell.org>**20090122172100 |
|---|
| 195 | fdToHandle calls fdGetMode which does not work with ghc-6.6 on |
|---|
| 196 | windows, the workaround is not to call fdToHandle, but call |
|---|
| 197 | openFd directly. Bug reported by Alistair Bayley, ticket #473. |
|---|
| 198 | ] |
|---|
| 199 | [Make 'ghc-options: -O0' a warning rather than an error |
|---|
| 200 | Duncan Coutts <duncan@haskell.org>**20090118141949] |
|---|
| 201 | [Improve runE parse error message |
|---|
| 202 | Duncan Coutts <duncan@haskell.org>**20090116133214 |
|---|
| 203 | Only really used in parsing config files derived from command line flags. |
|---|
| 204 | ] |
|---|
| 205 | [Ban ghc-options: --make |
|---|
| 206 | Duncan Coutts <duncan@haskell.org>**20081223170621 |
|---|
| 207 | I dunno, some people... |
|---|
| 208 | ] |
|---|
| 209 | [Update changelog for 1.6.0.2 release |
|---|
| 210 | Duncan Coutts <duncan@haskell.org>**20081211142202] |
|---|
| 211 | [Fix configCompilerAux to consider user-supplied program flags |
|---|
| 212 | Duncan Coutts <duncan@haskell.org>**20081209193320 |
|---|
| 213 | This fixes a bug in cabal-install |
|---|
| 214 | ] |
|---|
| 215 | [Swap the order of global usage messages |
|---|
| 216 | Duncan Coutts <duncan@haskell.org>**20090113191810 |
|---|
| 217 | Put the more important one first. |
|---|
| 218 | ] |
|---|
| 219 | [Enable the global command usage to be set |
|---|
| 220 | Duncan Coutts <duncan@haskell.org>**20090113181303 |
|---|
| 221 | extend it rather than overriding it. |
|---|
| 222 | Also rearrange slightly the default global --help output. |
|---|
| 223 | ] |
|---|
| 224 | [Bump version number to 1.6.0.2 |
|---|
| 225 | Duncan Coutts <duncan@haskell.org>**20081210231021] |
|---|
| 226 | [Fake support for NamedFieldPuns in ghc-6.8 |
|---|
| 227 | Duncan Coutts <duncan@haskell.org>**20081208180018 |
|---|
| 228 | Implement it in terms of the -XRecordPuns which was accidentally |
|---|
| 229 | added in ghc-6.8 and deprecates in 6.10 in favor of NamedFieldPuns |
|---|
| 230 | So this is for compatability so we can tell package authors always |
|---|
| 231 | to use NamedFieldPuns instead. |
|---|
| 232 | ] |
|---|
| 233 | [Make getting ghc supported language extensions its own function |
|---|
| 234 | Duncan Coutts <duncan@haskell.org>**20081208175815] |
|---|
| 235 | [Distributing a package with no synopsis and no description is inexcusable |
|---|
| 236 | Duncan Coutts <duncan@haskell.org>**20081205160719 |
|---|
| 237 | Previously if one or the other or both were missing we only warned. |
|---|
| 238 | Now if neither are given it's an error. We still warn about either |
|---|
| 239 | missing. |
|---|
| 240 | ] |
|---|
| 241 | [Remove accidentally added bianry file |
|---|
| 242 | Duncan Coutts <duncan@haskell.org>**20081203000824] |
|---|
| 243 | [Fix #396 and add let .Haddock find autogen modules |
|---|
| 244 | Andrea Vezzosi <sanzhiyan@gmail.com>**20081201114853] |
|---|
| 245 | [Fix the date in the LICENSE file |
|---|
| 246 | Duncan Coutts <duncan@haskell.org>**20081202161457] |
|---|
| 247 | [Improve the error on invalid file globs slightly |
|---|
| 248 | Duncan Coutts <duncan@haskell.org>**20081202135335] |
|---|
| 249 | [Update changelog for 1.6.0.x fixes |
|---|
| 250 | Duncan Coutts <duncan@haskell.org>**20081122145758] |
|---|
| 251 | [TAG GHC 6.10 fork |
|---|
| 252 | Ian Lynagh <igloo@earth.li>**20080919005020] |
|---|
| 253 | [Make auto-generated *_paths.hs module warning-free. |
|---|
| 254 | Thomas Schilling <nominolo@googlemail.com>**20081106142734 |
|---|
| 255 | |
|---|
| 256 | On newer GHCs using {-# OPTIONS_GHC -fffi #-} gives a warning which |
|---|
| 257 | can lead to a compile failure when -Werror is activated. We therefore |
|---|
| 258 | emit this option if we know that the LANGUAGE pragma is supported |
|---|
| 259 | (ghc >= 6.6.1). |
|---|
| 260 | ] |
|---|
| 261 | [Escape ld-options with the -optl prefix when passing them to ghc |
|---|
| 262 | Duncan Coutts <duncan@haskell.org>**20081103151931 |
|---|
| 263 | Fixes ticket #389 |
|---|
| 264 | ] |
|---|
| 265 | [Simplify previous pkg-config fix |
|---|
| 266 | Duncan Coutts <duncan@haskell.org>**20081101200309] |
|---|
| 267 | [Fix bug where we'd try to configure an empty set of pkg-config packages |
|---|
| 268 | Duncan Coutts <duncan@haskell.org>**20081101195512 |
|---|
| 269 | This happened when the lib used pkg-config but the exe did not. |
|---|
| 270 | It cropped up in hsSqlite3-0.0.5. |
|---|
| 271 | ] |
|---|
| 272 | [Add GHC 6.10.1's extensions to the list in Language.Haskell.Extension |
|---|
| 273 | Ian Lynagh <igloo@earth.li>**20081019141408] |
|---|
| 274 | [Ensure that the lib target directory is present when installing |
|---|
| 275 | Duncan Coutts <duncan@haskell.org>**20081017004437 |
|---|
| 276 | Variant on a patch from Bryan O'Sullivan |
|---|
| 277 | ] |
|---|
| 278 | [Release kind is now rc |
|---|
| 279 | Duncan Coutts <duncan@haskell.org>**20081011183201] |
|---|
| 280 | [TAG 1.6.0.1 |
|---|
| 281 | Duncan Coutts <duncan@haskell.org>**20081011182516] |
|---|
| 282 | [Bump version to 1.6.0.1 |
|---|
| 283 | Duncan Coutts <duncan@haskell.org>**20081011182459] |
|---|
| 284 | [Do not use the new meta-data fields yet |
|---|
| 285 | Duncan Coutts <duncan@haskell.org>**20081011182307 |
|---|
| 286 | Avoid chicken and egg problem. We cannot upload Cabsl-1.6 to |
|---|
| 287 | hackage until hackage is using Cabal-1.6 if it uses features |
|---|
| 288 | that are introduced in 1.6. So just comment them out for now. |
|---|
| 289 | ] |
|---|
| 290 | [Export a compat function for older Setup.hs scripts |
|---|
| 291 | Duncan Coutts <duncan@haskell.org>**20081011182131 |
|---|
| 292 | Makes it possible for alex and happy to work with cabal-1.2 -> 1.6 |
|---|
| 293 | ] |
|---|
| 294 | [Fix instructions in README for building with 6.6 and filepath |
|---|
| 295 | Duncan Coutts <duncan@haskell.org>**20081011002819] |
|---|
| 296 | [Update release procedure in Makefile |
|---|
| 297 | Duncan Coutts <duncan@haskell.org>**20081010181445 |
|---|
| 298 | Building the haddock docs requires building first. Arguably this is |
|---|
| 299 | a Cabal bug. It should probably generate the "autogen" files for |
|---|
| 300 | haddock and not just for build. |
|---|
| 301 | ] |
|---|
| 302 | [TAG 1.6.0.0 |
|---|
| 303 | Duncan Coutts <duncan@haskell.org>**20081010061435] |
|---|
| 304 | [Bump version number to 1.6.0.0 |
|---|
| 305 | Duncan Coutts <duncan@haskell.org>**20081010052409] |
|---|
| 306 | [Update changelog |
|---|
| 307 | Duncan Coutts <duncan@haskell.org>**20081010052354] |
|---|
| 308 | [Remove the releaseNotes file |
|---|
| 309 | Duncan Coutts <duncan@haskell.org>**20081010052101 |
|---|
| 310 | It did not actually contain any release notes and just |
|---|
| 311 | duplicated information in the README which was confusing. |
|---|
| 312 | ] |
|---|
| 313 | [Merge the info from the releaseNotes file into the README file |
|---|
| 314 | Duncan Coutts <duncan@haskell.org>**20081010052020] |
|---|
| 315 | [Fix haddock comment for haddock-0.8 |
|---|
| 316 | Duncan Coutts <duncan@haskell.org>**20081010050913] |
|---|
| 317 | [Fix parsing of ld,cc,cpp-options for flags containing ',' |
|---|
| 318 | Duncan Coutts <duncan@haskell.org>**20081010050829 |
|---|
| 319 | The ',' character is not used as a separator and is allowed |
|---|
| 320 | within flag tokens. Fixes at least HsPerl5. |
|---|
| 321 | ] |
|---|
| 322 | [Update versions in regression check script |
|---|
| 323 | Duncan Coutts <duncan@haskell.org>**20081009223429] |
|---|
| 324 | [Bump devel version number to 1.5.6 |
|---|
| 325 | Duncan Coutts <duncan@haskell.org>**20081009223350 |
|---|
| 326 | To make easier to track recent Cabal / cabal-install changes |
|---|
| 327 | ] |
|---|
| 328 | [Update changelog |
|---|
| 329 | Duncan Coutts <duncan@haskell.org>**20081009223330] |
|---|
| 330 | [Update the README |
|---|
| 331 | Duncan Coutts <duncan@haskell.org>**20081009221851] |
|---|
| 332 | [Make sdist work for libs that use the Paths_pkgname module |
|---|
| 333 | Duncan Coutts <duncan@haskell.org>**20081009214507 |
|---|
| 334 | Do it by just filtering that module out of the package |
|---|
| 335 | description before running sdist etc. This isn't lovely |
|---|
| 336 | because it steals that module name from the module namespace |
|---|
| 337 | but at least it now works. Thanks to Jean-Philippe Bernardy |
|---|
| 338 | for the first iteration of this patch. |
|---|
| 339 | ] |
|---|
| 340 | [xargs -s breaks solaris |
|---|
| 341 | Duncan Coutts <duncan@haskell.org>**20081008185041 |
|---|
| 342 | Hopefully we can figure out a better fix for recent cygwin |
|---|
| 343 | versions of xargs which are apparently broken. |
|---|
| 344 | |
|---|
| 345 | rolling back: |
|---|
| 346 | |
|---|
| 347 | Wed Oct 8 08:44:10 PDT 2008 Clemens Fruhwirth <clemens@endorphin.org> |
|---|
| 348 | * Also respect the max. command line size in Makefile driven builds |
|---|
| 349 | |
|---|
| 350 | M ./Distribution/Simple/GHC.hs -7 +13 |
|---|
| 351 | M ./Distribution/Simple/GHC/Makefile.hs -1 +1 |
|---|
| 352 | M ./Distribution/Simple/GHC/Makefile.in -1 +1 |
|---|
| 353 | ] |
|---|
| 354 | [Also respect the max. command line size in Makefile driven builds |
|---|
| 355 | Clemens Fruhwirth <clemens@endorphin.org>**20081008154410] |
|---|
| 356 | [add missing exeExtension when stripping an executable |
|---|
| 357 | Simon Marlow <marlowsd@gmail.com>**20081007134757] |
|---|
| 358 | [Add a few type sigs to help hugs and as documentation |
|---|
| 359 | Duncan Coutts <duncan@haskell.org>**20081007214120 |
|---|
| 360 | Thanks to Dimitry and Ross for identifying the problem. |
|---|
| 361 | ] |
|---|
| 362 | [Add -no-auto-link-packages also to Makefile driven build |
|---|
| 363 | Clemens Fruhwirth <clemens@endorphin.org>**20081007095454] |
|---|
| 364 | [Also install dynamically linked executable (when present) |
|---|
| 365 | Clemens Fruhwirth <clemens@endorphin.org>**20081006095107] |
|---|
| 366 | [Use "-no-auto-link-packages" when using GHC to link |
|---|
| 367 | Ian Lynagh <igloo@earth.li>**20081004111103 |
|---|
| 368 | When making packages like ghc-prim we need GHC to not automatically |
|---|
| 369 | try to link with base and haskell98. |
|---|
| 370 | ] |
|---|
| 371 | [Relax dependencyInconsistencies to allow the base-3,4 thing |
|---|
| 372 | Duncan Coutts <duncan@haskell.org>**20081002074142 |
|---|
| 373 | Previously we said a package graph was inconsistent if two |
|---|
| 374 | dependencies on the same package name specified different |
|---|
| 375 | versions. Now we say that two such dependencies on different |
|---|
| 376 | versions are ok if there is a direct dependency between those |
|---|
| 377 | two package versions. So if your package graph ends up with |
|---|
| 378 | both base 3 and base 4 in it, then that's ok because base 3 |
|---|
| 379 | directly depends on base 4, so we declare it not to be an |
|---|
| 380 | inconsistency. This removes the scary warnings at configure |
|---|
| 381 | time (fixing ticket #366) and also adjusts the invariant and |
|---|
| 382 | assertion of the InstallPlan ADT in cabal-install. |
|---|
| 383 | ] |
|---|
| 384 | [Document the bug-reports field |
|---|
| 385 | Duncan Coutts <duncan@haskell.org>**20081001042635] |
|---|
| 386 | [Add bug-reports field to Cabal.cabal |
|---|
| 387 | Duncan Coutts <duncan@haskell.org>**20081001035605] |
|---|
| 388 | [Add bug-reports url field |
|---|
| 389 | Duncan Coutts <duncan@haskell.org>**20081001035516 |
|---|
| 390 | Ticket #323 |
|---|
| 391 | ] |
|---|
| 392 | [Update the package description a bit |
|---|
| 393 | Duncan Coutts <duncan@haskell.org>**20081001034350] |
|---|
| 394 | [Specify a source repository for Cabal in Cabal.cabal |
|---|
| 395 | Duncan Coutts <duncan@haskell.org>**20081001034325] |
|---|
| 396 | [Document the source-repository stuff |
|---|
| 397 | Duncan Coutts <duncan@haskell.org>**20081001033928] |
|---|
| 398 | [Add some checks on the repository sections |
|---|
| 399 | Duncan Coutts <duncan@haskell.org>**20081001033755] |
|---|
| 400 | [Use unknown rather than specific other repo kinds |
|---|
| 401 | Duncan Coutts <duncan@haskell.org>**20081001033637 |
|---|
| 402 | We can still add more as necessary |
|---|
| 403 | ] |
|---|
| 404 | [Add support for specifying source repos in .cabal files |
|---|
| 405 | Duncan Coutts <duncan@haskell.org>**20080930222708 |
|---|
| 406 | Ticket #58. Does not yet include checking. |
|---|
| 407 | ] |
|---|
| 408 | [Simplify parsing sections in the .cabal file |
|---|
| 409 | Duncan Coutts <duncan@haskell.org>**20080930215509 |
|---|
| 410 | Allow flags, lib and exes in any order and handle unknown sections better. |
|---|
| 411 | ] |
|---|
| 412 | [Treat "cabal --flag command" as "cabal command --flag" |
|---|
| 413 | Duncan Coutts <duncan@haskell.org>**20080928070627 |
|---|
| 414 | eg "cabal -v configure" to mean "cabal configure -v" |
|---|
| 415 | For flags that are not recognised as global flags, |
|---|
| 416 | pass them on to the sub-command. |
|---|
| 417 | ] |
|---|
| 418 | [Fix how Cabal makes the value for __GLASGOW_HASKELL__ |
|---|
| 419 | Ian Lynagh <igloo@earth.li>**20080920212207 |
|---|
| 420 | 6.10.x was giving us 601 rather than 610. |
|---|
| 421 | ] |
|---|
| 422 | [Update the version number in the Makefile |
|---|
| 423 | Ian Lynagh <igloo@earth.li>**20080920175306] |
|---|
| 424 | [Correct the version number in the Makefile |
|---|
| 425 | Ian Lynagh <igloo@earth.li>**20080920175105] |
|---|
| 426 | [Update build-deps |
|---|
| 427 | Ian Lynagh <igloo@earth.li>**20080920175053] |
|---|
| 428 | [Fix building with GHC 6.6 |
|---|
| 429 | Ian Lynagh <igloo@earth.li>**20080920162927] |
|---|
| 430 | [TAG 6.10 branch has been forked |
|---|
| 431 | Ian Lynagh <igloo@earth.li>**20080919123438] |
|---|
| 432 | [Rename --distdir flag to --builddir |
|---|
| 433 | Duncan Coutts <duncan@haskell.org>**20080920180326 |
|---|
| 434 | Old aliases kept for compatibility |
|---|
| 435 | ] |
|---|
| 436 | [TAG 1.5.5 |
|---|
| 437 | Duncan Coutts <duncan@haskell.org>**20080919142307] |
|---|
| 438 | [Bump version number to 1.5.5 |
|---|
| 439 | Duncan Coutts <duncan@haskell.org>**20080919140130 |
|---|
| 440 | Ready to make the 1.6 branch |
|---|
| 441 | ] |
|---|
| 442 | [filter mingw include directories out of rts's installDirs |
|---|
| 443 | Ian Lynagh <igloo@earth.li>**20080918142958 |
|---|
| 444 | GHC < 6.10 put "$topdir/include/mingw" in rts's installDirs. This |
|---|
| 445 | breaks when you want to use a different gcc, so we need to filter |
|---|
| 446 | it out. |
|---|
| 447 | ] |
|---|
| 448 | [Tell gcc on Windows where include/mingw is |
|---|
| 449 | Ian Lynagh <igloo@earth.li>**20080918135718 |
|---|
| 450 | We need to tell the gcc bundled with GHC on Windows where its mingw |
|---|
| 451 | include directory is |
|---|
| 452 | ] |
|---|
| 453 | [On windows, fail if ghc's gcc or ld are not found |
|---|
| 454 | Duncan Coutts <duncan@haskell.org>**20080917235745] |
|---|
| 455 | [Allow addKnownProgram to be used as an update, not just insert |
|---|
| 456 | Duncan Coutts <duncan@haskell.org>**20080917225856 |
|---|
| 457 | ie preserves any existing user-supplied path and args |
|---|
| 458 | ] |
|---|
| 459 | [Cope with gcc.exe and ld.exe not being where ex expect on Windows |
|---|
| 460 | Ian Lynagh <igloo@earth.li>**20080917221228] |
|---|
| 461 | [Implement openNewBinaryFile in a Compat module |
|---|
| 462 | Ian Lynagh <igloo@earth.li>**20080917171257 |
|---|
| 463 | This is like openBinaryTempFile except it doesn't mark the permissions |
|---|
| 464 | with 600. This means datafailes get the right permissions when they are |
|---|
| 465 | installed. |
|---|
| 466 | |
|---|
| 467 | This should really be in the base package. |
|---|
| 468 | ] |
|---|
| 469 | [Generalise the type of onException |
|---|
| 470 | Ian Lynagh <igloo@earth.li>**20080917171233 |
|---|
| 471 | Now it matches Control.Exception's type |
|---|
| 472 | ] |
|---|
| 473 | [Yet another go at making gcc -B work properly on windows |
|---|
| 474 | Duncan Coutts <duncan@haskell.org>**20080916232553 |
|---|
| 475 | This time it should work on linux too! But more significantly |
|---|
| 476 | it should work when the user specifies a particular gcc. It |
|---|
| 477 | would be very bad if the user gave an alternative gcc but we |
|---|
| 478 | still gave it -B for the lib files of ghc's gcc. This go is |
|---|
| 479 | rather cleaner as it uses the new program post-conf system. |
|---|
| 480 | ] |
|---|
| 481 | [Pass any additional gcc options through to gcc when calling hsc2hs |
|---|
| 482 | Duncan Coutts <duncan@haskell.org>**20080916232502] |
|---|
| 483 | [Add an additional program post-conf action |
|---|
| 484 | Duncan Coutts <duncan@haskell.org>**20080916210642 |
|---|
| 485 | The post-conf action gets given the configured program and is |
|---|
| 486 | allowed to do more IO and can add any extra required program |
|---|
| 487 | args. Should make it easier to do the gcc -B thing or ld -x |
|---|
| 488 | ] |
|---|
| 489 | [Make the new permissions compat module compile |
|---|
| 490 | Duncan Coutts <duncan@haskell.org>**20080916210550 |
|---|
| 491 | Needs cpp pragma as it has to work with just ghc --make |
|---|
| 492 | Did I ever mention I that hate cpp and compat modules? |
|---|
| 493 | ] |
|---|
| 494 | [Fix the env var names used in the Paths module |
|---|
| 495 | Duncan Coutts <duncan@haskell.org>**20080916093525 |
|---|
| 496 | Convert any '-' in the package name to '_' when generating the |
|---|
| 497 | path env var as most shells do not allow '-' in env var names. |
|---|
| 498 | ] |
|---|
| 499 | [Check for -optl-s as well as an alias of the more common -optl-Wl,-s |
|---|
| 500 | Duncan Coutts <duncan@haskell.org>**20080913005432] |
|---|
| 501 | [pass -B flag to help gcc find libraries on Windows |
|---|
| 502 | dias@eecs.harvard.edu**20080827124436] |
|---|
| 503 | [workaround for nhc98, which does not have System.Posix.Internals |
|---|
| 504 | Malcolm.Wallace@cs.york.ac.uk**20080915092747] |
|---|
| 505 | [Set GHCI_LIB to "" in "Setup makefile" if GHC libs are disabled |
|---|
| 506 | Ian Lynagh <igloo@earth.li>**20080913144040] |
|---|
| 507 | [In "Setup makefile", don't build the vanilla way if it's disabled |
|---|
| 508 | Ian Lynagh <igloo@earth.li>**20080913143132 |
|---|
| 509 | This needs a bit of a kludge, as the vanilla way doesn't really exist |
|---|
| 510 | as far as the build system is concerned. It's just the absence of way. |
|---|
| 511 | ] |
|---|
| 512 | [Fix the permission that we give wrapper scripts |
|---|
| 513 | Ian Lynagh <igloo@earth.li>**20080913124445] |
|---|
| 514 | [Documentation only: more typos/punctuation |
|---|
| 515 | Tim Chevalier <chevalier@alum.wellesley.edu>**20080914051331] |
|---|
| 516 | [Documentation only: grammar fix in comment |
|---|
| 517 | Tim Chevalier <chevalier@alum.wellesley.edu>**20080914051008] |
|---|
| 518 | [Documentation only: fix typo in comment |
|---|
| 519 | Tim Chevalier <chevalier@alum.wellesley.edu>**20080913214843] |
|---|
| 520 | [Remove unused 'breaks' util function |
|---|
| 521 | Duncan Coutts <duncan@haskell.org>**20080910235804] |
|---|
| 522 | [follow library changes |
|---|
| 523 | Ian Lynagh <igloo@earth.li>**20080903223608] |
|---|
| 524 | [Fix to compile with base-1.0:Data.List |
|---|
| 525 | Duncan Coutts <duncan@haskell.org>**20080904233126 |
|---|
| 526 | which did not have isInfixOf |
|---|
| 527 | ] |
|---|
| 528 | [Fix cabal_macros.h for package names containing '-' |
|---|
| 529 | Duncan Coutts <duncan@haskell.org>**20080903220116 |
|---|
| 530 | As with the Paths_pkgname module, we map '-' to '_' as the |
|---|
| 531 | former is not a valid character in cpp macro identifiers. |
|---|
| 532 | Fixes cpp redefinition warnings. First reported by gwern. |
|---|
| 533 | ] |
|---|
| 534 | [Pass the interfaces for the transitive set of dependencies to haddock |
|---|
| 535 | Ian Lynagh <igloo@earth.li>**20080903123813 |
|---|
| 536 | Otherwise we don't get links to types from packages that we don't |
|---|
| 537 | directly depend on. |
|---|
| 538 | ] |
|---|
| 539 | [Update CPP-Options in Cabal.cabal to define CABAL_VERSION=1,5,4 |
|---|
| 540 | Ian Lynagh <igloo@earth.li>**20080902170348 |
|---|
| 541 | It was still defining CABAL_VERSION=1,5,3 |
|---|
| 542 | ] |
|---|
| 543 | [Add more detail to the -Werror and -fvia-C checks |
|---|
| 544 | Duncan Coutts <duncan@haskell.org>**20080902171413 |
|---|
| 545 | Also, ban rather than just warn about the -optl-Wl,-s hack |
|---|
| 546 | now that Cabal strips exes by default. |
|---|
| 547 | ] |
|---|
| 548 | [Haddock 2: #include <cabal_macros.h> |
|---|
| 549 | Simon Marlow <marlowsd@gmail.com>**20080901145843] |
|---|
| 550 | [package concurrent not available in nhc98 |
|---|
| 551 | Malcolm.Wallace@cs.york.ac.uk**20080902092802] |
|---|
| 552 | [Display the right message for sdist --snapshot |
|---|
| 553 | Duncan Coutts <duncan@haskell.org>**20080831221756] |
|---|
| 554 | [Bump the version number to 1.5.4 |
|---|
| 555 | Duncan Coutts <duncan@haskell.org>**20080831220418 |
|---|
| 556 | due to the PackageSet/Index api changes |
|---|
| 557 | ] |
|---|
| 558 | [Use a hopefully more robust method of determining the gcc version |
|---|
| 559 | Duncan Coutts <duncan@haskell.org>**20080831220145] |
|---|
| 560 | [Simplify the handling of --with-prog= in build/haddock commands. |
|---|
| 561 | Duncan Coutts <duncan@haskell.org>**20080831215551 |
|---|
| 562 | We allow extra rgs and the location of programs to be given to |
|---|
| 563 | the build and haddock commands, not just at configure time. The |
|---|
| 564 | code to do this is now simpler and more general. This should not |
|---|
| 565 | be the default use mode however since it involves configuring |
|---|
| 566 | the programs each time where as doing it at configure time allows |
|---|
| 567 | it to be done once and saved. Further, specifying a different |
|---|
| 568 | version of the program at build time than at configure time is |
|---|
| 569 | likely to fail, especially for the compiler programs. Changing |
|---|
| 570 | the compiler really requires reconfiguring. |
|---|
| 571 | ] |
|---|
| 572 | [Update the haddock command help text |
|---|
| 573 | Duncan Coutts <duncan@haskell.org>**20080831215325 |
|---|
| 574 | The haddock command now supports --haddock-options= |
|---|
| 575 | ] |
|---|
| 576 | [Add flags to build command for specifying program paths |
|---|
| 577 | Duncan Coutts <duncan@haskell.org>**20080831215135 |
|---|
| 578 | So we're going to allow --with-PROG for the build and haddock |
|---|
| 579 | commands, in addition to the existing --PROG-options= flags. |
|---|
| 580 | ] |
|---|
| 581 | [Use the new Program utils to simplify code in Configure |
|---|
| 582 | Duncan Coutts <duncan@haskell.org>**20080831215054] |
|---|
| 583 | [Add some more handy Program utils |
|---|
| 584 | Duncan Coutts <duncan@haskell.org>**20080831214813 |
|---|
| 585 | Mostly for dealing with lists of programs so that client |
|---|
| 586 | code doesn't need quite to much flip foldl' (flip thing) |
|---|
| 587 | Add specific helpers for reconfiguring programs and |
|---|
| 588 | restoring a full ProgramConfiguration after usign read. |
|---|
| 589 | ] |
|---|
| 590 | [Don't redundantly pass programArgs in when calling programs. |
|---|
| 591 | Duncan Coutts <duncan@haskell.org>**20080831212526 |
|---|
| 592 | That's already done by the Program framework so we were passing |
|---|
| 593 | those extra args in twice. |
|---|
| 594 | ] |
|---|
| 595 | [Merge PackageSet and PackageIndex |
|---|
| 596 | Duncan Coutts <duncan@haskell.org>**20080830130250 |
|---|
| 597 | Have just a single module that provides both the case sensitive and |
|---|
| 598 | insensitive operations. Turns out we hardly use the case insensitive |
|---|
| 599 | operations, and the places where we do are not performance sensitive |
|---|
| 600 | at all. So we use the PackageSet implementation which stores the |
|---|
| 601 | packages case sensitively and tack on the case insensitive operations |
|---|
| 602 | but with linear time implementations rather than log time. For the |
|---|
| 603 | merged module/type name use PackageIndex because that is what older |
|---|
| 604 | released versions exported, so less needless client breakage. |
|---|
| 605 | ] |
|---|
| 606 | [Add checkPackageFileNames function to check portability of file names |
|---|
| 607 | Duncan Coutts <duncan@haskell.org>**20080827082349 |
|---|
| 608 | Windows has restrictions on names of files and portable |
|---|
| 609 | tar archives have some weird length restrictions too. |
|---|
| 610 | Not yet used but should be used in sdist and hackage. |
|---|
| 611 | ] |
|---|
| 612 | [In wrappers, $executablename needs to expand to something with DESTDIR |
|---|
| 613 | Ian Lynagh <igloo@earth.li>**20080828155554 |
|---|
| 614 | The installed wrapper needs to call the executable in its final place, |
|---|
| 615 | not inside the DESTDIR where we are constructing a package. |
|---|
| 616 | ] |
|---|
| 617 | [Allow passing haddock's location and options to "Setup haddock" |
|---|
| 618 | Ian Lynagh <igloo@earth.li>**20080828142424] |
|---|
| 619 | [We need to pass the CPP options to haddock 2 |
|---|
| 620 | Ian Lynagh <igloo@earth.li>**20080828142303] |
|---|
| 621 | [Add support for manually en/disabled flags |
|---|
| 622 | Ian Lynagh <igloo@earth.li>**20080827170105 |
|---|
| 623 | The immediate use for these is so that, in haddock, we can require |
|---|
| 624 | ghc-paths normally, but in the GHC build we can manually turn off a flag |
|---|
| 625 | so that this dependency isn't needed. We can't use a normal flag, or |
|---|
| 626 | in the normal build Cabal would infer that the flag needs to be turned |
|---|
| 627 | off if ghc-paths isn't available. |
|---|
| 628 | ] |
|---|
| 629 | [Add release date of 1.4.0.2 |
|---|
| 630 | Duncan Coutts <duncan@haskell.org>**20080826204810] |
|---|
| 631 | [Ban package names that are not valid windows file names |
|---|
| 632 | Duncan Coutts <duncan@haskell.org>**20080826005502 |
|---|
| 633 | At least for the purposes of distribution. So if you're on unix |
|---|
| 634 | then you can call your package 'LPT1' if you feel you must, but |
|---|
| 635 | you cannot distribute a package with this name. |
|---|
| 636 | ] |
|---|
| 637 | [Separate out and export installDirsOptions |
|---|
| 638 | Duncan Coutts <duncan@haskell.org>**20080826003240 |
|---|
| 639 | The InstallDirs is a separate type so it's handy to have the |
|---|
| 640 | command line and config file options for it available |
|---|
| 641 | separately. It'd be useful in cabal-install for one thing. |
|---|
| 642 | ] |
|---|
| 643 | [Note the per-user install path on Windows in the README |
|---|
| 644 | Duncan Coutts <duncan@haskell.org>**20080824203923] |
|---|
| 645 | [More changelog updates for 1.4.0.2 |
|---|
| 646 | Duncan Coutts <duncan@haskell.org>**20080824203744] |
|---|
| 647 | [Teach Cabal about the PackageImports extension |
|---|
| 648 | Ian Lynagh <igloo@earth.li>**20080825132352] |
|---|
| 649 | [Rename --distpref to --distdir |
|---|
| 650 | Duncan Coutts <duncan@haskell.org>**20080825164258 |
|---|
| 651 | It's more consistent with the other flag names for dirs. |
|---|
| 652 | Kept the old name too, but it's not shown by --help. |
|---|
| 653 | ] |
|---|
| 654 | [We now depend on concurrent (split off from base) |
|---|
| 655 | Ian Lynagh <igloo@earth.li>**20080824135145] |
|---|
| 656 | [Bump version number to 1.5.3 |
|---|
| 657 | Duncan Coutts <duncan@haskell.org>**20080822160918] |
|---|
| 658 | [Update changelog for recent 1.5.x changes |
|---|
| 659 | Duncan Coutts <duncan@haskell.org>**20080822160828] |
|---|
| 660 | [Update changelog |
|---|
| 661 | Duncan Coutts <duncan@haskell.org>**20080802135452] |
|---|
| 662 | [Fix for #333, "Setup sdist --snapshot fails" |
|---|
| 663 | Duncan Coutts <duncan@haskell.org>**20080821154913 |
|---|
| 664 | Credit to Spencer Janssen. This is just a slight alternative |
|---|
| 665 | to the fix he proposed. It simplifies prepareSnapshotTree. |
|---|
| 666 | ] |
|---|
| 667 | [Don't pass cc-options to Haskell compilations |
|---|
| 668 | Simon Marlow <marlowsd@gmail.com>**20080821133421 |
|---|
| 669 | This has no effect with GHC 6.9, and with earlier GHC's it was a |
|---|
| 670 | misuse of cc-options. |
|---|
| 671 | ] |
|---|
| 672 | [Don't propagate cc-options to the InstalledPackageInfo |
|---|
| 673 | Simon Marlow <marlowsd@gmail.com>**20080821132551 |
|---|
| 674 | cc-options is for options to be passed to C compilations in the |
|---|
| 675 | current package. If we propagate those options to the |
|---|
| 676 | InstalledPackageInfo, they get passed to C compilations in any package |
|---|
| 677 | that depends on this one, which could be disastrous. I've seen |
|---|
| 678 | cc-options like these: |
|---|
| 679 | |
|---|
| 680 | cc-options: -optc-std=c99 |
|---|
| 681 | cc-options: -D_FILE_OFFSET_BITS=64 |
|---|
| 682 | Cc-options: -Wall |
|---|
| 683 | |
|---|
| 684 | these are all clearly intended to be local, but are in fact currently |
|---|
| 685 | propagated to all dependent packages. |
|---|
| 686 | ] |
|---|
| 687 | [Fix spelling of compatibility |
|---|
| 688 | Duncan Coutts <duncan@haskell.org>**20080818194951 |
|---|
| 689 | At request of gwern who found that it was driving him nuts. |
|---|
| 690 | ] |
|---|
| 691 | [Minor info and help message improvements |
|---|
| 692 | Duncan Coutts <duncan@haskell.org>**20080813124957] |
|---|
| 693 | [unbreak for non-GHC |
|---|
| 694 | Malcolm.Wallace@cs.york.ac.uk**20080814182558] |
|---|
| 695 | [Catch exit exceptions as well as IO exceptions after running programs |
|---|
| 696 | Ian Lynagh <igloo@earth.li>**20080813213035 |
|---|
| 697 | We need to catch IO exceptions for things like "couldn't find the program", |
|---|
| 698 | but we also need to catch exit exceptions as Cabal uses them to signal |
|---|
| 699 | what the program returned. |
|---|
| 700 | ] |
|---|
| 701 | [Move Paths_pkgname and cabal_macros.h generation into their own modules |
|---|
| 702 | Duncan Coutts <duncan@haskell.org>**20080813193245] |
|---|
| 703 | [Add util rewriteFile :: FilePath -> String -> IO () |
|---|
| 704 | Duncan Coutts <duncan@haskell.org>**20080813192017 |
|---|
| 705 | Write a file but only if it would have new content. |
|---|
| 706 | If we would be writing the same as the existing content |
|---|
| 707 | then leave the file as is so that we do not update the |
|---|
| 708 | file's modification time. |
|---|
| 709 | ] |
|---|
| 710 | [fix imports for nhc98 |
|---|
| 711 | Malcolm.Wallace@cs.york.ac.uk**20080813132112] |
|---|
| 712 | [Don't warn about missing strip.exe on Windows |
|---|
| 713 | Duncan Coutts <duncan@haskell.org>**20080812220415 |
|---|
| 714 | We don't expect Windows systems to have the strip program anyway. |
|---|
| 715 | ] |
|---|
| 716 | [Flush stdout when printing debugging messages |
|---|
| 717 | Duncan Coutts <duncan@haskell.org>**20080812212236] |
|---|
| 718 | [Fix warnings in Windows Paths_pkgname module |
|---|
| 719 | Duncan Coutts <duncan@haskell.org>**20080812211349] |
|---|
| 720 | [Fix the config-file field name of the install command's packagedb option |
|---|
| 721 | Duncan Coutts <duncan@haskell.org>**20080812171207] |
|---|
| 722 | [Add alias type PackageId = PackageIdentifier |
|---|
| 723 | Duncan Coutts <duncan@haskell.org>**20080812171006] |
|---|
| 724 | [Add data Platform = Platform Arch OS |
|---|
| 725 | Duncan Coutts <duncan@haskell.org>**20080812160941 |
|---|
| 726 | Since we tend to pass them around together rather a lot. |
|---|
| 727 | Also add a Text instance with a format like "i386-linux" |
|---|
| 728 | ] |
|---|
| 729 | [Don't use tab characters in the generated Paths module |
|---|
| 730 | Duncan Coutts <duncan@haskell.org>**20080812160731] |
|---|
| 731 | [Add auto-generated CPP macros for package version testing |
|---|
| 732 | Simon Marlow <marlowsd@gmail.com>**20080811173016 |
|---|
| 733 | |
|---|
| 734 | Now when using CPP you get |
|---|
| 735 | |
|---|
| 736 | MIN_VERSION_<package>(A,B,C) |
|---|
| 737 | |
|---|
| 738 | for each <package> in build-depends, which is true if the version of |
|---|
| 739 | <package> in use is >= A.B.C, using the normal ordering on version |
|---|
| 740 | numbers. |
|---|
| 741 | |
|---|
| 742 | This is done by auto-generating a header file |
|---|
| 743 | dist/build/autogen/cabal_macros.h, and passing a -include flag when |
|---|
| 744 | running CPP. |
|---|
| 745 | ] |
|---|
| 746 | [allow Cabal to use base-4 |
|---|
| 747 | Simon Marlow <marlowsd@gmail.com>**20080806130512] |
|---|
| 748 | [Make binary-dist do nothing in doc/Makefile, for now |
|---|
| 749 | Ian Lynagh <igloo@earth.li>**20080810005135] |
|---|
| 750 | [When running "Setup makefile", put "default: all" at the top of the Makefile |
|---|
| 751 | Ian Lynagh <igloo@earth.li>**20080809211148 |
|---|
| 752 | This make "make" work even if Makefile.local contains any targets. |
|---|
| 753 | ] |
|---|
| 754 | [Use 'ghc-pkg dump' instead of 'ghc-pkg describe *' |
|---|
| 755 | David Waern**20080807190307 |
|---|
| 756 | |
|---|
| 757 | Does not implement lazy parsing of the output of ghc-pkg dump, so this |
|---|
| 758 | is only a partial fix of #311. |
|---|
| 759 | |
|---|
| 760 | For more information about why we want to use ghc-pkg dump, see GHC |
|---|
| 761 | ticket #2201. |
|---|
| 762 | ] |
|---|
| 763 | [Simplify InstalledPackageInfo parser and pretty printer |
|---|
| 764 | Duncan Coutts <duncan@haskell.org>**20080806122807 |
|---|
| 765 | Using the new utils in ParseUtils. |
|---|
| 766 | ] |
|---|
| 767 | [Add parsse utils for simple flat formats. |
|---|
| 768 | Duncan Coutts <duncan@haskell.org>**20080806122613 |
|---|
| 769 | Should help to simplify the InstalledPackageInfo parser |
|---|
| 770 | and also for similar formats in cabal-install. |
|---|
| 771 | ] |
|---|
| 772 | [Tidy up the ppFields function and uses |
|---|
| 773 | Duncan Coutts <duncan@haskell.org>**20080806121315 |
|---|
| 774 | Put the arguments in a more sensible order: |
|---|
| 775 | ppFields :: [FieldDescr a] -> a -> Doc |
|---|
| 776 | and make the implementation clearer. |
|---|
| 777 | clean up the use of it in the PackageDescription.Parse module |
|---|
| 778 | ] |
|---|
| 779 | [Windows fixes |
|---|
| 780 | Ian Lynagh <igloo@earth.li>**20080803201253] |
|---|
| 781 | [setup makefile: put the source-dir suffix rules after the distdir suffix rules |
|---|
| 782 | Simon Marlow <marlowsd@gmail.com>**20080806130309 |
|---|
| 783 | This matches the behaviour of 'setup build' works, and is robust to |
|---|
| 784 | people accidentally having old preprocessed sources lying around in the |
|---|
| 785 | source dir. |
|---|
| 786 | ] |
|---|
| 787 | [Generalise checkPackageFiles to any monad, not just IO |
|---|
| 788 | Duncan Coutts <duncan@haskell.org>**20080806001547 |
|---|
| 789 | This is to let us use the same checks for virtual or |
|---|
| 790 | in-memory file systems, like tarball contents. |
|---|
| 791 | ] |
|---|
| 792 | [Move parseFreeText into ParseUtils and use it more widely |
|---|
| 793 | Duncan Coutts <duncan@haskell.org>**20080806001352] |
|---|
| 794 | [Document and refactor 'parsePackageDescription'. |
|---|
| 795 | Thomas Schilling <nominolo@googlemail.com>**20080804190324 |
|---|
| 796 | |
|---|
| 797 | Hopefully this makes this function more understandable and easier to |
|---|
| 798 | modify. |
|---|
| 799 | ] |
|---|
| 800 | [Adjust registration to allow packages with no modules or objects |
|---|
| 801 | Duncan Coutts <duncan@haskell.org>**20080804155826 |
|---|
| 802 | So ghc-pkg does not complain about missing files and dirs. |
|---|
| 803 | ] |
|---|
| 804 | [Don't try to install libHSfoo.a if the lib had no object files |
|---|
| 805 | Duncan Coutts <duncan@haskell.org>**20080804143817 |
|---|
| 806 | To allow meta-packages. |
|---|
| 807 | ] |
|---|
| 808 | [Fix instance Monoid ConfigFlags for configStripExes |
|---|
| 809 | Duncan Coutts <duncan@haskell.org>**20080802002045] |
|---|
| 810 | [Document the "exposed" .cabal file field |
|---|
| 811 | Duncan Coutts <duncan@haskell.org>**20080731162807] |
|---|
| 812 | [Fix the Windows build |
|---|
| 813 | Ian Lynagh <igloo@earth.li>**20080731194841] |
|---|
| 814 | [Remove unused imports |
|---|
| 815 | Ian Lynagh <igloo@earth.li>**20080730194526] |
|---|
| 816 | [Make Cabal compatible with extensible exceptions |
|---|
| 817 | Ian Lynagh <igloo@earth.li>**20080730183910 |
|---|
| 818 | The code is now also more correct, e.g. when we are ignoring IO exceptions |
|---|
| 819 | while trying to delete something, we don't also ignore timeout exceptions. |
|---|
| 820 | ] |
|---|
| 821 | [Remove unused imports |
|---|
| 822 | Duncan Coutts <duncan@haskell.org>**20080730182957] |
|---|
| 823 | [Remove unused inDir util function |
|---|
| 824 | Duncan Coutts <duncan@haskell.org>**20080730165031] |
|---|
| 825 | [Add an "exposed" field to the .cabal file library section |
|---|
| 826 | Duncan Coutts <duncan@haskell.org>**20080730164516 |
|---|
| 827 | It's a bool flag that says if by default the library should |
|---|
| 828 | be registered with the compiler as exposed/unhidden (for |
|---|
| 829 | compilers which have such a concept, ie ghc). You might want |
|---|
| 830 | to do this for packages which would otherwise pollute the |
|---|
| 831 | module namespace or clash with other common packages. |
|---|
| 832 | It should be very rarely used. The only current examples we |
|---|
| 833 | know of are the ghc api package and the dph packages. |
|---|
| 834 | ] |
|---|
| 835 | [Rearrange the Monoid instances for Library, Executable, BuildInfo |
|---|
| 836 | Duncan Coutts <duncan@haskell.org>**20080730163432 |
|---|
| 837 | No functional change, just moving code about. |
|---|
| 838 | We now define the Monoid methods directly rather than in |
|---|
| 839 | terms of emptyLibrary, unionLibrary etc. |
|---|
| 840 | ] |
|---|
| 841 | [Do the ghc rts ldOptions hack in a slightly more hygenic way |
|---|
| 842 | Duncan Coutts <duncan@haskell.org>**20080729195714] |
|---|
| 843 | [Fix uses of verbosity > deafening to use >= |
|---|
| 844 | Duncan Coutts <duncan@haskell.org>**20080729191855 |
|---|
| 845 | The maximum verbosity value is deafening so >= the correct test. |
|---|
| 846 | This primarily affected haddock. |
|---|
| 847 | ] |
|---|
| 848 | [Do not use ',' as a list separator for the cpp/cc/ld-options fields |
|---|
| 849 | Duncan Coutts <duncan@haskell.org>**20080729170556 |
|---|
| 850 | It breaks for some options like "ld-options: -Wl,-z,now" |
|---|
| 851 | No existing .cabal files on hackage were using ',' as a |
|---|
| 852 | list separator so this should not break anything. |
|---|
| 853 | ] |
|---|
| 854 | [Pass the right -F and --framework flags when running hsc2hs on OS X |
|---|
| 855 | Ian Lynagh <igloo@earth.li>**20080729172757] |
|---|
| 856 | [Tweak a test to not go via the pretty printer |
|---|
| 857 | Ian Lynagh <igloo@earth.li>**20080729172750] |
|---|
| 858 | [Fix linking with hsc2hs on OS X |
|---|
| 859 | Ian Lynagh <igloo@earth.li>**20080729170215 |
|---|
| 860 | We don't tell hsc2hs to link the actual Haskell packages, so with GHC's |
|---|
| 861 | rts package we need to also filter out the -u flags. |
|---|
| 862 | ] |
|---|
| 863 | [Tweak whitespace |
|---|
| 864 | Ian Lynagh <igloo@earth.li>**20080729163729] |
|---|
| 865 | [Move docs for build-depends into the build information section |
|---|
| 866 | Duncan Coutts <duncan@haskell.org>**20080729162024 |
|---|
| 867 | Since it is shared between libs and exes. Extend the documentation |
|---|
| 868 | to describe the syntax of version constraints, including the new |
|---|
| 869 | version range syntax "build-depends: foo ==1.2.*". |
|---|
| 870 | ] |
|---|
| 871 | [Remove references to cabal-setup from the documentation |
|---|
| 872 | Duncan Coutts <duncan@haskell.org>**20080729160950 |
|---|
| 873 | Change to runhaskell Setup or cabal-install as appropriate. |
|---|
| 874 | ] |
|---|
| 875 | [Move the docs for the buildable field to a better place. |
|---|
| 876 | Duncan Coutts <duncan@haskell.org>**20080729160808 |
|---|
| 877 | It doesn't need to be right up near the top. |
|---|
| 878 | ] |
|---|
| 879 | [Document more clearly that every modules must be listed |
|---|
| 880 | Duncan Coutts <duncan@haskell.org>**20080729160308 |
|---|
| 881 | in one of the fields exposed-modules, other-modules or main-is |
|---|
| 882 | Add an extra note to the section on the Paths_pkgname module |
|---|
| 883 | as the fact that it's automatically generated confuses people. |
|---|
| 884 | ] |
|---|
| 885 | [Document the wildcard behaviour in data-files and extra-source-files fields |
|---|
| 886 | Duncan Coutts <duncan@haskell.org>**20080729155920] |
|---|
| 887 | [Document the $os and $arch install path vars |
|---|
| 888 | Duncan Coutts <duncan@haskell.org>**20080729155654] |
|---|
| 889 | [File globs must match at least one file or it's an error. |
|---|
| 890 | Duncan Coutts <duncan@haskell.org>**20080729154050] |
|---|
| 891 | [Fix the semantics of the simple file globbing to be sane |
|---|
| 892 | Duncan Coutts <duncan@haskell.org>**20080729152624 |
|---|
| 893 | I realised when I started to document it that the behaviour |
|---|
| 894 | was not terribly consistent or sensible. The meaning now is: |
|---|
| 895 | The limitation is that * wildcards are only allowed in |
|---|
| 896 | place of the file name, not in the directory name or |
|---|
| 897 | file extension. In particular, wildcards do not include |
|---|
| 898 | directories contents recursively. Furthermore, if a |
|---|
| 899 | wildcard is used it must be used with an extension, so |
|---|
| 900 | "data-files: data/*" is not allowed. When matching a |
|---|
| 901 | wildcard plus extension, a file's full extension must |
|---|
| 902 | match exactly, so "*.gz" matches "foo.gz" but not |
|---|
| 903 | "foo.tar.gz". |
|---|
| 904 | The reason for providing only a very limited form of wildcard |
|---|
| 905 | is to concisely express the common case of a large number of |
|---|
| 906 | related files of the same file type without making it too easy |
|---|
| 907 | to accidentally include unwanted files. |
|---|
| 908 | ] |
|---|
| 909 | [Allow $arch and $os in install paths. |
|---|
| 910 | Duncan Coutts <duncan@haskell.org>**20080729151952 |
|---|
| 911 | Fixes ticket #312. For example a user could use: |
|---|
| 912 | cabal configure --libsubdir="$pkgid/$compiler/$arch" |
|---|
| 913 | if they wanted to have packages for multiple architectures |
|---|
| 914 | co-exist in the same filestore area. |
|---|
| 915 | ] |
|---|
| 916 | [Use "pkg == 1.2.*" as the version wildcard syntax |
|---|
| 917 | Duncan Coutts <duncan@haskell.org>**20080729151612 |
|---|
| 918 | Rather than "pkg ~ 1.2.*". This seemed to be the consensus. |
|---|
| 919 | The syntax "pkg == 1.2.*" means "pkg >= 1.2 && < 1.3" and it |
|---|
| 920 | is to encourage people to put upper bounds on api versions. |
|---|
| 921 | ] |
|---|
| 922 | [Pass -no-user-package-conf to ghc when not using UserPackageDB |
|---|
| 923 | Duncan Coutts <duncan@haskell.org>**20080729145040 |
|---|
| 924 | Should eliminate the corner case where we're doing a global |
|---|
| 925 | install but the user package db contains the exact same |
|---|
| 926 | version as in the global package db. Perhaps we should warn |
|---|
| 927 | in that case anyway since it's likely to go wrong later. |
|---|
| 928 | ] |
|---|
| 929 | [disambiguate Control.Exception.catch for nhc98 |
|---|
| 930 | Malcolm.Wallace@cs.york.ac.uk**20080728164506] |
|---|
| 931 | [more import qualification to help nhc98 |
|---|
| 932 | Malcolm.Wallace@cs.york.ac.uk**20080728153629] |
|---|
| 933 | [help nhc98's module disambiguator a bit |
|---|
| 934 | Malcolm.Wallace@cs.york.ac.uk**20080724165753] |
|---|
| 935 | [Substitute for $topdir when we read GHC's InstalledPackageInfo's |
|---|
| 936 | Ian Lynagh <igloo@earth.li>**20080723112232] |
|---|
| 937 | [Fix the location of gcc.exe in a Windows GHC installation |
|---|
| 938 | Ian Lynagh <igloo@earth.li>**20080723101848] |
|---|
| 939 | [Don't need the complex code in detecting hsc2hs anymore |
|---|
| 940 | Duncan Coutts <duncan@haskell.org>**20080720234019 |
|---|
| 941 | Since we do not need to know if hsc2hs uses ghc or gcc as cc |
|---|
| 942 | by default since in either case we now tell it to use gcc. |
|---|
| 943 | ] |
|---|
| 944 | [Always use gcc as cc with hsc2hs |
|---|
| 945 | Duncan Coutts <duncan@haskell.org>**20080720233759 |
|---|
| 946 | Lookup what flags to use from the package index. Previously this |
|---|
| 947 | was done by calling ghc as cc and passing -package flags to ghc. |
|---|
| 948 | ghc would then lookup what extra flags to pass to gcc. We now do |
|---|
| 949 | that ourselves directly and it's a good deal simpler and it's |
|---|
| 950 | portable to the other haskell implementations. This is only a |
|---|
| 951 | first go, the flags may not all be exactly right. Needs testing. |
|---|
| 952 | ] |
|---|
| 953 | [Add gccProgram |
|---|
| 954 | Duncan Coutts <duncan@haskell.org>**20080720232818 |
|---|
| 955 | on Windows we have to find ghc's private copy of gcc.exe |
|---|
| 956 | ] |
|---|
| 957 | [Add PackageSet.topologicalOrder and reverseTopologicalOrder |
|---|
| 958 | Duncan Coutts <duncan@haskell.org>**20080720223731 |
|---|
| 959 | with type :: PackageFixedDeps pkg => PackageSet pkg -> [pkg] |
|---|
| 960 | ] |
|---|
| 961 | [Change some PackageSet functions to return the package rather than the id |
|---|
| 962 | Duncan Coutts <duncan@haskell.org>**20080720221702 |
|---|
| 963 | dependencyGraph and reverseDependencyClosure now return the |
|---|
| 964 | full package rather than just the PackageIdentifier |
|---|
| 965 | ] |
|---|
| 966 | [Convert from PackageIndex to PackageSet |
|---|
| 967 | Duncan Coutts <duncan@haskell.org>**20080720194924 |
|---|
| 968 | Turns out the feature to do case-insensitive lookups was only |
|---|
| 969 | needed in cabal-install (and only in one little part) and |
|---|
| 970 | elsewhere it causes problems. So use PackageSet instead. |
|---|
| 971 | ] |
|---|
| 972 | [If we have GHC >= 6.9 then use the new -optdep replacement flags |
|---|
| 973 | Ian Lynagh <igloo@earth.li>**20080722163346] |
|---|
| 974 | [And exitcode of 2 from ghc-pkg when doing describe '*' means no packages |
|---|
| 975 | Ian Lynagh <igloo@earth.li>**20080722125759 |
|---|
| 976 | This is a bit of a kludge around GHC's #2201, until Cabal is updated to |
|---|
| 977 | use ghc-pkg dump. |
|---|
| 978 | ] |
|---|
| 979 | [Fix warnings and add a comment explaining why we pass -x to strip on OS X |
|---|
| 980 | Ian Lynagh <igloo@earth.li>**20080720220851] |
|---|
| 981 | [Pass -x to strip on OSX |
|---|
| 982 | Duncan Coutts <duncan@haskell.org>**20080720204609] |
|---|
| 983 | [Generate expanded makefile rules directly, rather than using $(eval ...) |
|---|
| 984 | Ian Lynagh <igloo@earth.li>**20080720194801 |
|---|
| 985 | We used to do this with $(eval ...) and $(call ...) in the |
|---|
| 986 | Makefile, but make 3.79.1 (which is what comes with msys) |
|---|
| 987 | doesn't understand $(eval ...), so now we just stick the |
|---|
| 988 | expanded loop directly into the Makefile we generate. |
|---|
| 989 | ] |
|---|
| 990 | [Put GHC's programArgs in GHC_OPTS when making a Makefile |
|---|
| 991 | Ian Lynagh <igloo@earth.li>**20080715132429] |
|---|
| 992 | [Pass -package-conf foo when using GHC as CC |
|---|
| 993 | Ian Lynagh <igloo@earth.li>**20080713123958] |
|---|
| 994 | [If we are using ghc as hsc2hs's cc, then tell it where package.conf is |
|---|
| 995 | Ian Lynagh <igloo@earth.li>**20080713110548 |
|---|
| 996 | if we have been told to use a specific one with --package-db |
|---|
| 997 | ] |
|---|
| 998 | [Fix installing datafiles |
|---|
| 999 | Ian Lynagh <igloo@earth.li>**20080712173934 |
|---|
| 1000 | If datadir is foo and the datafile is bar then we should install it to |
|---|
| 1001 | $datadir/bar, not $datadir/foo/bar. |
|---|
| 1002 | ] |
|---|
| 1003 | [Fix the "Setup makefile" rules for C files |
|---|
| 1004 | Ian Lynagh <igloo@earth.li>**20080712173851] |
|---|
| 1005 | [If install is given a distPref, pass it on to copy and register |
|---|
| 1006 | Ian Lynagh <igloo@earth.li>**20080712121916] |
|---|
| 1007 | [derive Eq for ConfiguredProgram |
|---|
| 1008 | Duncan Coutts <duncan@haskell.org>**20080711160138 |
|---|
| 1009 | a request from Saizan |
|---|
| 1010 | ] |
|---|
| 1011 | [Simplify ghc version test slightly |
|---|
| 1012 | Duncan Coutts <duncan@haskell.org>**20080711142026] |
|---|
| 1013 | [Add a hack to copy .hs-boot files into dist/... |
|---|
| 1014 | Ian Lynagh <igloo@earth.li>**20080711000826 |
|---|
| 1015 | When a preprocessor generates a .hs file we need to put the .hs-boot |
|---|
| 1016 | file next to it so that GHC can find it. |
|---|
| 1017 | ] |
|---|
| 1018 | [Teach "Setup makefile" how to cope with multiple hs-source-dirs |
|---|
| 1019 | Ian Lynagh <igloo@earth.li>**20080711000726] |
|---|
| 1020 | [Fix some whitespace in Makefile.in |
|---|
| 1021 | Ian Lynagh <igloo@earth.li>**20080710231519] |
|---|
| 1022 | [In Makefile.in, put all the rules that mentions srcdir together |
|---|
| 1023 | Ian Lynagh <igloo@earth.li>**20080710231415] |
|---|
| 1024 | [Fix haddocking (with old haddocks?) |
|---|
| 1025 | Ian Lynagh <igloo@earth.li>**20080703154714] |
|---|
| 1026 | [Correct the order of args given by --PROG-options |
|---|
| 1027 | Duncan Coutts <duncan@haskell.org>**20080710181437 |
|---|
| 1028 | They were getting reversed. Problem located by Igloo. |
|---|
| 1029 | ] |
|---|
| 1030 | [Remove the need for a compat Data.Map module |
|---|
| 1031 | Duncan Coutts <duncan@haskell.org>**20080710154600 |
|---|
| 1032 | Stop using Map.alter, use the same solution as the PackageIndex module. |
|---|
| 1033 | ] |
|---|
| 1034 | [fix #if __GLASGOW_HASKELL__ test |
|---|
| 1035 | Ross Paterson <ross@soi.city.ac.uk>**20080705105048 |
|---|
| 1036 | |
|---|
| 1037 | The problem is that |
|---|
| 1038 | |
|---|
| 1039 | #if __GLASGOW_HASKELL__ < NNN |
|---|
| 1040 | |
|---|
| 1041 | is also true for non-GHC. It should be |
|---|
| 1042 | |
|---|
| 1043 | #if __GLASGOW_HASKELL__ && __GLASGOW_HASKELL__ < NNN |
|---|
| 1044 | ] |
|---|
| 1045 | [help nhc98's import overlap resolver |
|---|
| 1046 | Malcolm.Wallace@cs.york.ac.uk**20080704140613] |
|---|
| 1047 | [massage a pattern-with-context around nhc98's typechecker |
|---|
| 1048 | Malcolm.Wallace@cs.york.ac.uk**20080704140541] |
|---|
| 1049 | [Fix using specified package databases |
|---|
| 1050 | Ian Lynagh <igloo@earth.li>**20080703001216 |
|---|
| 1051 | If we are using a specified package database, we need to tell GHC what |
|---|
| 1052 | it is when building |
|---|
| 1053 | ] |
|---|
| 1054 | [Fix the build with GHC 6.4.2: Data.Map.alter doesn't exist |
|---|
| 1055 | Ian Lynagh <igloo@earth.li>**20080703001151] |
|---|
| 1056 | [Allow installing executables in-place, and using shell script wrappers |
|---|
| 1057 | Ian Lynagh <igloo@earth.li>**20080629164939 |
|---|
| 1058 | GHC-only currently. |
|---|
| 1059 | ] |
|---|
| 1060 | [haddock typo |
|---|
| 1061 | Ian Lynagh <igloo@earth.li>**20080629114342] |
|---|
| 1062 | [Fix a haddock typo |
|---|
| 1063 | Ian Lynagh <igloo@earth.li>**20080629114239] |
|---|
| 1064 | [Update .darcs-boring |
|---|
| 1065 | Ian Lynagh <igloo@earth.li>**20080627182013] |
|---|
| 1066 | [TAG 2008-05-28 |
|---|
| 1067 | Ian Lynagh <igloo@earth.li>**20080528004259] |
|---|
| 1068 | [Remove the SetupWrapper module |
|---|
| 1069 | Duncan Coutts <duncan@haskell.org>**20080628173010 |
|---|
| 1070 | It's not used in Cabal itself and while cabal-install used |
|---|
| 1071 | it previously, it now has its own extended implementation. |
|---|
| 1072 | ] |
|---|
| 1073 | [Update module headers |
|---|
| 1074 | Duncan Coutts <duncan@haskell.org>**20080628172550 |
|---|
| 1075 | Use cabal-devel@haskell.org as the maintainer in most cases except for |
|---|
| 1076 | a few which were pre-existing modules copied from elsewhere or modules |
|---|
| 1077 | like L.H.Extension which really belong to libraries@haskell.org |
|---|
| 1078 | Remove the useless stability module. We have more detailed information |
|---|
| 1079 | on stability elsewhere (in the version number and user guide). |
|---|
| 1080 | Add more top level module documentation, taken from the source guide. |
|---|
| 1081 | ] |
|---|
| 1082 | [Whitespace changes, convert tabs to spaces |
|---|
| 1083 | Duncan Coutts <duncan@haskell.org>**20080626200933] |
|---|
| 1084 | [Remove a couple old deprecated empty modules |
|---|
| 1085 | Duncan Coutts <duncan@haskell.org>**20080626195204] |
|---|
| 1086 | [Add ModuleName as a new type instead of using String everywhere |
|---|
| 1087 | Duncan Coutts <duncan@haskell.org>**20080626192939] |
|---|
| 1088 | [Tweaks to the readme, hopefully will reduce confusion |
|---|
| 1089 | Duncan Coutts <duncan@haskell.org>**20080625232051] |
|---|
| 1090 | [Add compat InstalledPackageInfo types for older GHCs |
|---|
| 1091 | Duncan Coutts <duncan@haskell.org>**20080621013727 |
|---|
| 1092 | We need these types for their Read instances so that we |
|---|
| 1093 | can still read older GHCs package db files when we make |
|---|
| 1094 | changes to the current InstalledPackageInfo type, or the |
|---|
| 1095 | types contained in it, like PackageIdentifier or License. |
|---|
| 1096 | ] |
|---|
| 1097 | [Add simple file name globbing (*) to data-files and extra-source-files |
|---|
| 1098 | Duncan Coutts <duncan@haskell.org>**20080626171424] |
|---|
| 1099 | [Use conservative render style for display |
|---|
| 1100 | Duncan Coutts <duncan@haskell.org>**20080619222258] |
|---|
| 1101 | [Include trailing newline in hscolour command description |
|---|
| 1102 | Duncan Coutts <duncan@haskell.org>**20080619220940] |
|---|
| 1103 | [Add PackageSet, like PackageIndex but case sensitive |
|---|
| 1104 | Duncan Coutts <duncan@haskell.org>**20080614003705 |
|---|
| 1105 | Actually it turns out that we don't need case insensitivity in many |
|---|
| 1106 | cases, mosty just for simple lookups in the UI. For everything else |
|---|
| 1107 | the ordinary Ord instance is much simpler. The fact that listing the |
|---|
| 1108 | contents of a PackageIndex doesn't come out in Ord order actually |
|---|
| 1109 | causes real problems in cabal-install and necessitates re-sorting. |
|---|
| 1110 | So we should move to using PackageSet in most cases and just leave |
|---|
| 1111 | the search and lookup operations in PackageIndex. |
|---|
| 1112 | ] |
|---|
| 1113 | [Add PackageName as a newtype |
|---|
| 1114 | Duncan Coutts <duncan@haskell.org>**20080614002926] |
|---|
| 1115 | [No more need for the distinction between null and emptyBuildInfo |
|---|
| 1116 | Duncan Coutts <duncan@haskell.org>**20080614001654 |
|---|
| 1117 | Now that we have removed the hsSourceDirs = [currentDir] default |
|---|
| 1118 | from emptyBuildInfo it is now equal to nullBuildInfo. |
|---|
| 1119 | ] |
|---|
| 1120 | [Add version wildcard syntax |
|---|
| 1121 | Duncan Coutts <duncan@haskell.org>**20080619175006 |
|---|
| 1122 | build-depends: foo ~1.2.* |
|---|
| 1123 | means: |
|---|
| 1124 | build-depends: foo >=1.2 && <1.3 |
|---|
| 1125 | It's also valid everywhere else version ranges are used. |
|---|
| 1126 | ] |
|---|
| 1127 | [haddock-2.2 and later do now support the --hoogle flag |
|---|
| 1128 | Duncan Coutts <duncan@haskell.org>**20080613205445] |
|---|
| 1129 | ['.' should not always be in hs-source dirs |
|---|
| 1130 | Duncan Coutts <duncan@haskell.org>**20080613230352 |
|---|
| 1131 | We changed the parsing of list fields in the .cabal file so that it |
|---|
| 1132 | adds to the current value rather than replacing it. This allows you |
|---|
| 1133 | to put multiple entries for a list field and they all get |
|---|
| 1134 | concatenated. However that means that the '.' in the hsSourceDirs of |
|---|
| 1135 | emptyBuildInfo is always added to and not replaced like we did |
|---|
| 1136 | previously. That's not what we want in this case. We want to use '.' |
|---|
| 1137 | for hsSourceDirs *only* if hsSourceDirs is otherwise null. As it |
|---|
| 1138 | happens, due to the way the configurations code works, we're already |
|---|
| 1139 | filling in the default if it'd otherwise be null so we do not need |
|---|
| 1140 | '.' in the emptyBuildInfo at all. |
|---|
| 1141 | ] |
|---|
| 1142 | [Fix css location in generation of user guide |
|---|
| 1143 | Duncan Coutts <duncan@haskell.org>**20080617133811] |
|---|
| 1144 | [Update changelog for 1.4.0.1 |
|---|
| 1145 | Duncan Coutts <duncan@haskell.org>**20080617130434] |
|---|
| 1146 | [Makefile tweak, setup depends on Setup.hs |
|---|
| 1147 | Duncan Coutts <duncan@haskell.org>**20080616175446] |
|---|
| 1148 | [construct InstalledPackageInfo from scratch rather than by overriding |
|---|
| 1149 | Duncan Coutts <duncan@haskell.org>**20080616171505 |
|---|
| 1150 | It means we catch any fields that get added. As it happens we were |
|---|
| 1151 | missing a field, though its value is supposed to be just [] which is |
|---|
| 1152 | the same value as we got from the default emptyInstalledPackageInfo. |
|---|
| 1153 | ] |
|---|
| 1154 | [force results inside withHaskellFile |
|---|
| 1155 | Ross Paterson <ross@soi.city.ac.uk>**20080614160707 |
|---|
| 1156 | |
|---|
| 1157 | withUTF8FileContents now closes the file, so we need to force what we're |
|---|
| 1158 | computing from the contents before it's gone. |
|---|
| 1159 | ] |
|---|
| 1160 | [Include the readme and the changelog in the tarball |
|---|
| 1161 | Duncan Coutts <duncan@haskell.org>**20080612190558] |
|---|
| 1162 | [Move the mkGHCMakefile.sh out of the root dir |
|---|
| 1163 | Duncan Coutts <duncan@haskell.org>**20080612190317 |
|---|
| 1164 | Having it there confuses people. |
|---|
| 1165 | They think they have to run it as part of the install process. |
|---|
| 1166 | ] |
|---|
| 1167 | [Put upper bounds on all the build-depends |
|---|
| 1168 | Duncan Coutts <duncan@haskell.org>**20080612174958] |
|---|
| 1169 | [Add the 1.4.0.0 release to the changelog |
|---|
| 1170 | Duncan Coutts <duncan@haskell.org>**20080612164242] |
|---|
| 1171 | [Add the 1.2.4.0 release to the changelog |
|---|
| 1172 | Duncan Coutts <duncan@haskell.org>**20080612164144] |
|---|
| 1173 | [Update the README and convert it to markdown syntax |
|---|
| 1174 | Duncan Coutts <duncan@haskell.org>**20080612162906] |
|---|
| 1175 | [Update the release notes |
|---|
| 1176 | Duncan Coutts <duncan@haskell.org>**20080612154624] |
|---|
| 1177 | [Update copyright and authors list in the .cabal file |
|---|
| 1178 | Duncan Coutts <duncan@haskell.org>**20080612154444] |
|---|
| 1179 | [base-1.0 does not have Data.Map.alter so use insertWith instead |
|---|
| 1180 | Duncan Coutts <duncan@haskell.org>**20080612154309] |
|---|
| 1181 | [Lift the restriction that libraries must have exposed-modules |
|---|
| 1182 | Duncan Coutts <duncan@haskell.org>**20080612092924 |
|---|
| 1183 | This allows libs that have only private modules or C code. This |
|---|
| 1184 | might be used to make libs that have non-exposed modules and only |
|---|
| 1185 | export C APIs. It could also be used to make packages that consist |
|---|
| 1186 | only of C code. That might be useful for bindings where it may |
|---|
| 1187 | make sense to split the C and Haskell code into separate packages. |
|---|
| 1188 | ] |
|---|
| 1189 | [Use the standard autogenModulesDir rather than a local copy |
|---|
| 1190 | Duncan Coutts <duncan@haskell.org>**20080612092855] |
|---|
| 1191 | [Fix the register --gen-pkg-config flag |
|---|
| 1192 | Duncan Coutts <duncan@haskell.org>**20080612092425 |
|---|
| 1193 | When specified without any file name it is supposed to use |
|---|
| 1194 | a default file name rather than be ignored completely. |
|---|
| 1195 | ] |
|---|
| 1196 | [Filter out the Paths_pkgname file in sdist |
|---|
| 1197 | Duncan Coutts <duncan@haskell.org>**20080612091810 |
|---|
| 1198 | Fixes ticket #187 finally (I hope). |
|---|
| 1199 | ] |
|---|
| 1200 | [Switch the hugs code to safe file reading and writing |
|---|
| 1201 | Duncan Coutts <duncan@haskell.org>**20080610180947] |
|---|
| 1202 | [Use writeFileAtomic everywhere instead of writeFile |
|---|
| 1203 | Duncan Coutts <duncan@haskell.org>**20080610180727] |
|---|
| 1204 | [Switch to scoped file reading rather than lazy readFile |
|---|
| 1205 | Duncan Coutts <duncan@haskell.org>**20080610180528] |
|---|
| 1206 | [Close the package.conf file after reading it |
|---|
| 1207 | Duncan Coutts <duncan@haskell.org>**20080610180217 |
|---|
| 1208 | We had a bug on windows where we open and read ghc's package.conf |
|---|
| 1209 | database but because we did not consume the final newline we did |
|---|
| 1210 | not close the file. Then when we called ghc-pkg to register a |
|---|
| 1211 | package it failed because it could not rename the open file. |
|---|
| 1212 | ] |
|---|
| 1213 | [Add withFileContents and withUTF8FileContents |
|---|
| 1214 | Duncan Coutts <duncan@haskell.org>**20080610180150 |
|---|
| 1215 | Safe block scoped reading of files. |
|---|
| 1216 | These guarantee that the file gets closed. |
|---|
| 1217 | ] |
|---|
| 1218 | [Fix pre-processing for haddock and executables |
|---|
| 1219 | Duncan Coutts <duncan@haskell.org>**20080609233609 |
|---|
| 1220 | Now look in the right place to find the pre-processed source |
|---|
| 1221 | files belongign to executables. Fixes ticket #252. |
|---|
| 1222 | ] |
|---|
| 1223 | [Fail better when using haddock 2.x and the --hoogle flag |
|---|
| 1224 | Duncan Coutts <duncan@haskell.org>**20080609190555 |
|---|
| 1225 | Fixes ticket #249 |
|---|
| 1226 | ] |
|---|
| 1227 | [Install haddock interface only when generated |
|---|
| 1228 | Duncan Coutts <duncan@haskell.org>**20080609190251 |
|---|
| 1229 | This is actually Andrea Rossato's patch but it didn't merge |
|---|
| 1230 | cleanly due to more recent changes. Fixes ticket #250. |
|---|
| 1231 | ] |
|---|
| 1232 | [Install license file into the right place |
|---|
| 1233 | Duncan Coutts <duncan@haskell.org>**20080609185840 |
|---|
| 1234 | even if the license file was kept in a subdir of the src tree. |
|---|
| 1235 | The canonical example was: license-file: debian/copyright |
|---|
| 1236 | It was being installed into $docdir/debian/ and failing since |
|---|
| 1237 | that dir did not exist. It's now installed into just $docdir. |
|---|
| 1238 | ] |
|---|
| 1239 | [Note compatability issue in deprecation message for defaultUserHooks |
|---|
| 1240 | Duncan Coutts <duncan@haskell.org>**20080527135830] |
|---|
| 1241 | [Bump version due to api changes |
|---|
| 1242 | Duncan Coutts <duncan@haskell.org>**20080529104714] |
|---|
| 1243 | [Put spaces round || and && when displaying version range expressions |
|---|
| 1244 | Duncan Coutts <duncan@haskell.org>**20080529104214 |
|---|
| 1245 | This makes them much more readable. |
|---|
| 1246 | ] |
|---|
| 1247 | [Change the PackageIndex invariant so the buckets are ordered |
|---|
| 1248 | Duncan Coutts <duncan@haskell.org>**20080529095346 |
|---|
| 1249 | Each bucket holds packages with the same name case-insensitively. |
|---|
| 1250 | Previously each buckets was internally unordered. Now they're |
|---|
| 1251 | ordered by the full package id which means first by package name |
|---|
| 1252 | case-sensitively and then by version. |
|---|
| 1253 | ] |
|---|
| 1254 | [Add thisPackageVersion and notThisPackageVersion |
|---|
| 1255 | Duncan Coutts <duncan@haskell.org>**20080529092607 |
|---|
| 1256 | Util functions for makeing dependencies from package identifiers. |
|---|
| 1257 | thisPackageVersion (foo-1.0) = foo ==1.0 |
|---|
| 1258 | notThisPackageVersion (foo-1.0) = foo /=1.0 |
|---|
| 1259 | The latter is handy as a constraint in dependency resolution. |
|---|
| 1260 | ] |
|---|
| 1261 | [Add notThisVersion :: Version -> VersionRange |
|---|
| 1262 | Duncan Coutts <duncan@haskell.org>**20080529092244 |
|---|
| 1263 | Opposite of ThisVersion, it means /= x.y but is actually implemented |
|---|
| 1264 | as > x.y || < x.y as we do not have not or not equal as primitives. |
|---|
| 1265 | ] |
|---|
| 1266 | [Write out Bool config values correctly |
|---|
| 1267 | Duncan Coutts <duncan@haskell.org>**20080521153420 |
|---|
| 1268 | Used by cabal-install when writing the default ~/.cabal/config file. |
|---|
| 1269 | Previously it was using show for type Maybe Bool and writing out |
|---|
| 1270 | "Just True" when of course it should just be "True". |
|---|
| 1271 | ] |
|---|
| 1272 | [Rename doc/fptools.css to avoid the ghc build system cleaning it |
|---|
| 1273 | Duncan Coutts <duncan@haskell.org>**20080520191700 |
|---|
| 1274 | The user guide gets built in two different ways. There's a target |
|---|
| 1275 | in Cabal's the top level Makefile and there is also the stuff that |
|---|
| 1276 | the ghc build system uses. The ghc build system expects to copy in |
|---|
| 1277 | doc/fptools.css and then delete it again on make clean. We want a |
|---|
| 1278 | persistent copy so that we can make the docs when we've just got a |
|---|
| 1279 | standalone Cabal build tree, so that's now kept as doc/Cabal.css. |
|---|
| 1280 | ] |
|---|
| 1281 | [Remove gnerated file (doc/fptools.css) |
|---|
| 1282 | Ian Lynagh <igloo@earth.li>*-20080511130035] |
|---|
| 1283 | [document data-dir field |
|---|
| 1284 | Bertram Felgenhauer <int-e@gmx.de>**20080509131306] |
|---|
| 1285 | [add data-dir field to package config |
|---|
| 1286 | Bertram Felgenhauer <int-e@gmx.de>**20080509130448 |
|---|
| 1287 | Cabal will look for data files to install relative to the directory given |
|---|
| 1288 | in the data-dir field, allowing package authors to better structure their |
|---|
| 1289 | source tree. There's no behavioural change by default. |
|---|
| 1290 | ] |
|---|
| 1291 | [Allow the bindir, libdir and libexec dir to be specified via env vars too |
|---|
| 1292 | Duncan Coutts <duncan@haskell.org>**20080519173808 |
|---|
| 1293 | Same as for the datadir. Eg for package Foo, you'd use |
|---|
| 1294 | Foo_bindir=... Foo_datadir=... Foo_libexecdir=... ./Foo |
|---|
| 1295 | The next step would be generating a wrapper script that allows |
|---|
| 1296 | running the program inplace. It should also work for a library. |
|---|
| 1297 | ] |
|---|
| 1298 | [Remove unused import |
|---|
| 1299 | Duncan Coutts <duncan@haskell.org>**20080513094301] |
|---|
| 1300 | [Do not display version tags |
|---|
| 1301 | Duncan Coutts <duncan@haskell.org>**20080509094455] |
|---|
| 1302 | [Remove Distribution.Compat.Exception from other-modules |
|---|
| 1303 | Duncan Coutts <duncan@haskell.org>**20080514171822] |
|---|
| 1304 | [Add PackageIndex.lookupPackageName and extra deletion functions |
|---|
| 1305 | Duncan Coutts <duncan@haskell.org>**20080514162954] |
|---|
| 1306 | [Check invariant on every construction and elide on lookups |
|---|
| 1307 | Duncan Coutts <duncan@haskell.org>**20080514154104] |
|---|
| 1308 | [Remove redundant Char test in parseBuildToolName |
|---|
| 1309 | Duncan Coutts <duncan@haskell.org>**20080514153343 |
|---|
| 1310 | It was made redundant after the isSymbol test was removed. |
|---|
| 1311 | Spotted by Igloo. |
|---|
| 1312 | ] |
|---|
| 1313 | [Eliminate use of bracketOnError, use handle instead |
|---|
| 1314 | Duncan Coutts <duncan@haskell.org>**20080514153206 |
|---|
| 1315 | It's actually more appropriate anyway. |
|---|
| 1316 | This means we don't need any Distribution.Compat.Exception. |
|---|
| 1317 | ] |
|---|
| 1318 | [Define bracketOnError in compat; fixes the build for GHC 6.4 |
|---|
| 1319 | Ian Lynagh <igloo@earth.li>*-20080514003919] |
|---|
| 1320 | [Add in {-# OPTIONS #-} for the benefit of ghc-6.4.x |
|---|
| 1321 | Duncan Coutts <duncan@haskell.org>**20080514144728 |
|---|
| 1322 | Which do not grok OPTIONS_GHC or LANGUAGE pragmas |
|---|
| 1323 | ] |
|---|
| 1324 | [fix scope errors in non-GHC branch of an #ifdef |
|---|
| 1325 | Malcolm.Wallace@cs.york.ac.uk**20080514112530] |
|---|
| 1326 | [Prefix the datadir env var with the package name |
|---|
| 1327 | Duncan Coutts <duncan@haskell.org>**20080514094203 |
|---|
| 1328 | Partly as it is more likely not to clash with other users and since |
|---|
| 1329 | in general different libs within a program may need different paths. |
|---|
| 1330 | ] |
|---|
| 1331 | [Made it possible to run executeables with data files in place. |
|---|
| 1332 | Johan Tibell <johan.tibell@gmail.com>**20080413134155 |
|---|
| 1333 | Added an environment variable, DATA_DIR, that is checked before the |
|---|
| 1334 | installation data directory is used. |
|---|
| 1335 | ] |
|---|
| 1336 | [Don't use Data.Char.isSymbol as it doesn't exist in base-1.0 |
|---|
| 1337 | Duncan Coutts <duncan@haskell.org>**20080514083405 |
|---|
| 1338 | This is an alternative fix to creating a Distribution.Compat.Char |
|---|
| 1339 | ] |
|---|
| 1340 | [Modules that use cpp have to have cpp language prama to say so |
|---|
| 1341 | Duncan Coutts <duncan@haskell.org>**20080514082913 |
|---|
| 1342 | Otherwise we cannot compile with just ghc --make |
|---|
| 1343 | which is actually essential for bootstrapping. |
|---|
| 1344 | ] |
|---|
| 1345 | [Make Distribution.Compat.Char for isSymbol; fixes the build with GHC 6.4 |
|---|
| 1346 | Ian Lynagh <igloo@earth.li>*-20080514004703] |
|---|
| 1347 | [Add new compat modules to Cabal file |
|---|
| 1348 | Ian Lynagh <igloo@earth.li>**20080514022119] |
|---|
| 1349 | [Make Distribution.Compat.Char for isSymbol; fixes the build with GHC 6.4 |
|---|
| 1350 | Ian Lynagh <igloo@earth.li>**20080514004703] |
|---|
| 1351 | [Hack around lack of Read for Map in GHC 6.4 |
|---|
| 1352 | Ian Lynagh <igloo@earth.li>**20080514004400 |
|---|
| 1353 | This is made worse by Show on Map being strange in GHC 6.4. |
|---|
| 1354 | The code could be better, but it works, and all the ugliness is in |
|---|
| 1355 | #if's that we can remove at some point down the line. |
|---|
| 1356 | ] |
|---|
| 1357 | [Define bracketOnError in compat; fixes the build for GHC 6.4 |
|---|
| 1358 | Ian Lynagh <igloo@earth.li>**20080514003919] |
|---|
| 1359 | [Print exit code and stderr for failing progs at debug level verbosity |
|---|
| 1360 | Duncan Coutts <duncan@haskell.org>**20080513094055 |
|---|
| 1361 | Also adjust the verbosity level we get during configure at -v3 |
|---|
| 1362 | Should make it a bit easier to track down failing calls. |
|---|
| 1363 | ] |
|---|
| 1364 | [Remove a hardcoded "dist" |
|---|
| 1365 | Ian Lynagh <igloo@earth.li>**20080511181305] |
|---|
| 1366 | [Make the "dist" directory configurable |
|---|
| 1367 | Ian Lynagh <igloo@earth.li>**20080511155640] |
|---|
| 1368 | [Remove gnerated file (doc/fptools.css) |
|---|
| 1369 | Ian Lynagh <igloo@earth.li>**20080511130035] |
|---|
| 1370 | [Fix a bug in the unlitter |
|---|
| 1371 | Ian Lynagh <igloo@earth.li>**20080510233852 |
|---|
| 1372 | If we see a birdtrack while we are in latex mode, then we stay in latex |
|---|
| 1373 | mode - don't change into bird mode! |
|---|
| 1374 | ] |
|---|
| 1375 | [Display Cabal version in configure output with -v |
|---|
| 1376 | Duncan Coutts <duncan@haskell.org>**20080509163507 |
|---|
| 1377 | eg "Using Cabal-1.5.1 compiled by ghc-6.8" |
|---|
| 1378 | Annoyingly ghc doesn't give us its full version number. |
|---|
| 1379 | ] |
|---|
| 1380 | [Add PackageIndex.reverseDependencyClosure |
|---|
| 1381 | Duncan Coutts <duncan@haskell.org>**20080506234902 |
|---|
| 1382 | It's similar to dependencyClosure but looks at reverse dependencies. |
|---|
| 1383 | For example it's useful to find all packages that depend on broken |
|---|
| 1384 | packages and are thus themselves broken. |
|---|
| 1385 | ] |
|---|
| 1386 | [Improve style and performance of PackageIndex.dependencyClosure |
|---|
| 1387 | Duncan Coutts <duncan@haskell.org>**20080506234447 |
|---|
| 1388 | Keep the completed set as another PackageIndex rather than a list. |
|---|
| 1389 | We want to return an index at the end anyway and in the mean time |
|---|
| 1390 | we want to do lots of lookups to see if we've visited previously. |
|---|
| 1391 | ] |
|---|
| 1392 | [Add PackageIndex.dependencyGraph that builds a Graph |
|---|
| 1393 | Duncan Coutts <duncan@haskell.org>**20080506234326 |
|---|
| 1394 | Useful for some more tricky queries. |
|---|
| 1395 | ] |
|---|
| 1396 | [Add PackageIndex.delete |
|---|
| 1397 | Duncan Coutts <duncan@haskell.org>**20080506131603 |
|---|
| 1398 | We occasionally need to remove packages from an index |
|---|
| 1399 | eg to restrict the choices of a dependency resolver. |
|---|
| 1400 | ] |
|---|
| 1401 | [Remove a test for the specific kind of exception for nhc98 compatibility |
|---|
| 1402 | Duncan Coutts <duncan@haskell.org>**20080506102804 |
|---|
| 1403 | This was the check for ghc-pkg failing. We cannot check for the |
|---|
| 1404 | exception being an ExitException since that assumes ghc's |
|---|
| 1405 | representation of the Exception type, whereas nhc98 defines: |
|---|
| 1406 | type Exception = IOError |
|---|
| 1407 | ] |
|---|
| 1408 | [Cope better with ghc bug #2201, display a better error message |
|---|
| 1409 | Duncan Coutts <duncan@haskell.org>**20080505085746 |
|---|
| 1410 | Otherwise it can (and does) really confuse people. |
|---|
| 1411 | The problem is that the command $ ghc-pkg-6.9 describe '*' --user |
|---|
| 1412 | returns a non-zero exit code if the user package db is empty. |
|---|
| 1413 | ghc-pkg intends this exit code to tell us if the query returned |
|---|
| 1414 | any results (one can use more complex queries as tests) but Cabal |
|---|
| 1415 | interprets it as failure. Indeed we cannot distinguish it from |
|---|
| 1416 | any other kind of failure from ghc-pkg. |
|---|
| 1417 | ] |
|---|
| 1418 | [Add PackageIndex.dependencyCycles |
|---|
| 1419 | Duncan Coutts <duncan@haskell.org>**20080504131626 |
|---|
| 1420 | Finds any cycles (strongly connected components) in the dependencies |
|---|
| 1421 | of set of packages. This is useful for checking the correctness of |
|---|
| 1422 | installation plans. |
|---|
| 1423 | ] |
|---|
| 1424 | [Change dependencyInconsistencies to not take the pseudo top package |
|---|
| 1425 | Duncan Coutts <duncan@haskell.org>**20080504130802 |
|---|
| 1426 | The one case where we need the pseudo top package we can use |
|---|
| 1427 | PackageIndex.insert instead to get the same effect and there |
|---|
| 1428 | are other cases in cabal-install where we do not want a pseudo |
|---|
| 1429 | top package. |
|---|
| 1430 | ] |
|---|
| 1431 | [Reverse the order of the args to PackageIndex.insert |
|---|
| 1432 | Duncan Coutts <duncan@haskell.org>**20080504130317 |
|---|
| 1433 | To take the index last like the other functions and like Data.Map. |
|---|
| 1434 | It is actually more convenient that way round. |
|---|
| 1435 | ] |
|---|
| 1436 | [Revert the change about the --internal flag and a warning about haddock |
|---|
| 1437 | Duncan Coutts <duncan@haskell.org>**20080501223131 |
|---|
| 1438 | Just a bit of confusion over the behaviour of the --executable flag. |
|---|
| 1439 | ] |
|---|
| 1440 | [Document --internal in Cabal.xml |
|---|
| 1441 | Joachim Breitner <mail@joachim-breitner.de>**20080501153356] |
|---|
| 1442 | [With --executable, --internal just adds --ignore-all-exports |
|---|
| 1443 | Joachim Breitner <mail@joachim-breitner.de>**20080501152544] |
|---|
| 1444 | [Implement --internal flag |
|---|
| 1445 | Joachim Breitner <mail@joachim-breitner.de>**20080501152421 |
|---|
| 1446 | Passing --internal to the haddock stage does these things: |
|---|
| 1447 | * Does not pass --hide parameter to haddock |
|---|
| 1448 | * Passes --ignore-all-exports parameter |
|---|
| 1449 | * Appends "(internal documentation)" to the title |
|---|
| 1450 | ] |
|---|
| 1451 | [Add an --internal flag to HaddockFlags |
|---|
| 1452 | Joachim Breitner <mail@joachim-breitner.de>**20080501145103] |
|---|
| 1453 | [Revert the other `fmap` to (.) |
|---|
| 1454 | Malcolm.Wallace@cs.york.ac.uk**20080501110006 |
|---|
| 1455 | To avoid needing a non-H'98 instance of Functor for (->). |
|---|
| 1456 | ] |
|---|
| 1457 | [Revert one change of (.) to fmap. It was not necessary and broke nhc98. |
|---|
| 1458 | Duncan Coutts <duncan@haskell.org>**20080501104620 |
|---|
| 1459 | The other one was needed as we changed a type from Bool to Maybe Bool. |
|---|
| 1460 | ] |
|---|
| 1461 | [Add help command as per ticket #272 |
|---|
| 1462 | Duncan Coutts <duncan@haskell.org>**20080430133740 |
|---|
| 1463 | "cabal help" behaves like "cabal --help" |
|---|
| 1464 | "cabal help cmd" behaves like "cabal cmd --help" |
|---|
| 1465 | Should still work with command line completion. |
|---|
| 1466 | ] |
|---|
| 1467 | [Change handling of bool command line args to allow an unset state |
|---|
| 1468 | Duncan Coutts <duncan@haskell.org>**20080429201123 |
|---|
| 1469 | For bool valued flags we were always producing the command line |
|---|
| 1470 | string corresponding to a false flag value, even if the flag was |
|---|
| 1471 | not set. For example we'd always get "--disable-shared". |
|---|
| 1472 | It is important for cabal-install to be able to take an empty set |
|---|
| 1473 | of flags, override a few flags and turn the flags back into |
|---|
| 1474 | command line strings without getting a lot of extra defaults. |
|---|
| 1475 | Partly this is because we have to work with older versions of the |
|---|
| 1476 | Cabal library command line which does not recognise the new options. |
|---|
| 1477 | ] |
|---|
| 1478 | [Remove the feature for highlighting the default cases in --help output |
|---|
| 1479 | Duncan Coutts <duncan@haskell.org>**20080429191206 |
|---|
| 1480 | Turns out it doesn't help us much because in many cases the initial/default |
|---|
| 1481 | flags are actually empty so we cannot identify the default values. |
|---|
| 1482 | ] |
|---|
| 1483 | [Make the old test code compile |
|---|
| 1484 | Duncan Coutts <duncan@haskell.org>**20080428225729 |
|---|
| 1485 | Still a lot of bit rot, many of the full tests fail due to changed paths |
|---|
| 1486 | ] |
|---|
| 1487 | [Fix license parsing |
|---|
| 1488 | Duncan Coutts <duncan@haskell.org>**20080428192255 |
|---|
| 1489 | Spotted by the testsuite which I'm trying to resurrect. |
|---|
| 1490 | ] |
|---|
| 1491 | [Fix fix for #224. |
|---|
| 1492 | Thomas Schilling <nominolo@gmail.com>**20080426164537 |
|---|
| 1493 | |
|---|
| 1494 | Changing from list of Dependencies to Maps resulted in the wrong Monoid |
|---|
| 1495 | instance being used. I'd still like to be able to run a test suite on |
|---|
| 1496 | this but that'd require a lot more work to do properly... |
|---|
| 1497 | ] |
|---|
| 1498 | [When multiple specifying list fields in the same section combine them |
|---|
| 1499 | Duncan Coutts <duncan@haskell.org>**20080423201519 |
|---|
| 1500 | eg if you had: |
|---|
| 1501 | extensions: Foo |
|---|
| 1502 | extensions: Bar, Baz |
|---|
| 1503 | then previously we only ended up with [Bar, Baz]. Now we get them all. |
|---|
| 1504 | Only applies to list fields, for single fields the second value is taken |
|---|
| 1505 | and the first is silently discarded. This isn't good of course but the |
|---|
| 1506 | fix is harder since we're not in a context where we can report errors. |
|---|
| 1507 | Really we should just declare up front what kind of field it is and |
|---|
| 1508 | inherit the right behaviour automagically, either duplicates disallowed |
|---|
| 1509 | or allowed and combined with mappend. |
|---|
| 1510 | ] |
|---|
| 1511 | [Normalise file names in warning messages |
|---|
| 1512 | Duncan Coutts <duncan@haskell.org>**20080423190457 |
|---|
| 1513 | We already do this for error messages. |
|---|
| 1514 | ] |
|---|
| 1515 | [Fix the check for -XFooBar ghc-options flags to be more permissive |
|---|
| 1516 | Duncan Coutts <duncan@haskell.org>**20080423190243 |
|---|
| 1517 | Previously we rejected all such flags but that posed the problem that older |
|---|
| 1518 | versions of Cabal, like 1.1.6 did not understand new extensions so we |
|---|
| 1519 | could not actually follow the advice and use the extenion. So now we only |
|---|
| 1520 | warn about -X flags if they refer to old extensions that Cabal 1.1.6 knew |
|---|
| 1521 | about. If the .cabal file specifies cabal-version: >= 1.2 or similar |
|---|
| 1522 | (anything that excludes 1.1.6) then we warn about all -X flags. |
|---|
| 1523 | ] |
|---|
| 1524 | [Add checks for unknown OS Arch and Compiler names |
|---|
| 1525 | Duncan Coutts <duncan@haskell.org>**20080423151410 |
|---|
| 1526 | They're ok locally but for distribution they need to be known. |
|---|
| 1527 | ] |
|---|
| 1528 | [Package check now take a GenericPackageDescription |
|---|
| 1529 | Duncan Coutts <duncan@haskell.org>**20080423150354 |
|---|
| 1530 | Unfortunately in some cases we only have a already-configured |
|---|
| 1531 | PackageDescription to we have to expose a checkConfiguredPackage. |
|---|
| 1532 | We should refactor things so that we keep all the information |
|---|
| 1533 | even in a configured PackageDescription. |
|---|
| 1534 | ] |
|---|
| 1535 | [Make warning messages show the file name |
|---|
| 1536 | Duncan Coutts <duncan@haskell.org>**20080422141909] |
|---|
| 1537 | [Update UTF8 code |
|---|
| 1538 | Duncan Coutts <duncan@haskell.org>**20080422141539 |
|---|
| 1539 | Some code and test cases taken from the utf8-string package. |
|---|
| 1540 | Updated copyright notice appropriately (I think). |
|---|
| 1541 | ] |
|---|
| 1542 | [fix import for nhc98 |
|---|
| 1543 | Malcolm.Wallace@cs.york.ac.uk**20080422133009] |
|---|
| 1544 | [Don't nub extra-libs in unionBuildInfo |
|---|
| 1545 | Duncan Coutts <duncan@haskell.org>**20080420192312 |
|---|
| 1546 | It's possible that we sometimes need to list the same library |
|---|
| 1547 | more than once if there are circular symbol references. |
|---|
| 1548 | ] |
|---|
| 1549 | [Fix unionBuildInfo |
|---|
| 1550 | Duncan Coutts <duncan@haskell.org>**20080420180520 |
|---|
| 1551 | Fix ticket #264 to use nub only on the fields which are treated as sets. |
|---|
| 1552 | Probably we should be using the right types and mappend for each field. |
|---|
| 1553 | Change to construct a new value from scratch rather than overriding one |
|---|
| 1554 | of the two args. This helps to make sure we're updating all the field |
|---|
| 1555 | as we get a warning if we miss any. Turns out we were missing the ghc |
|---|
| 1556 | profiling and shared libs options which meant they were getting dropped. |
|---|
| 1557 | That had the effect of ghc-prof-options: in .cabal files being ignored. |
|---|
| 1558 | Thanks to 'midfield' from #haskell for spotting this. |
|---|
| 1559 | ] |
|---|
| 1560 | [Add newtype FlagName and FlagAssignment type alias |
|---|
| 1561 | Duncan Coutts <duncan@haskell.org>**20080415204854 |
|---|
| 1562 | and use them in the appropriate places. |
|---|
| 1563 | ] |
|---|
| 1564 | [Add PackageIndex.insert and reverse merge/mappend |
|---|
| 1565 | Duncan Coutts <duncan@haskell.org>**20080415203637 |
|---|
| 1566 | Packages in the second argument to merge now mask those in the first. |
|---|
| 1567 | ] |
|---|
| 1568 | [Make finalizePackageDescription use CompilerId type |
|---|
| 1569 | Duncan Coutts <duncan@haskell.org>**20080413224111 |
|---|
| 1570 | Use the proper data type rather than a tuple (CompilerFlavor, Version) |
|---|
| 1571 | ] |
|---|
| 1572 | [Fix #224. We do not yet warn if the user specified a dependency that |
|---|
| 1573 | Thomas Schilling <nominolo@gmail.com>**20080413182659 |
|---|
| 1574 | did not occur in the package (it is just silently ignored.) |
|---|
| 1575 | ] |
|---|
| 1576 | [Add 'readP_to_E' function that takes the longest parse. |
|---|
| 1577 | Thomas Schilling <nominolo@gmail.com>**20080413182042] |
|---|
| 1578 | [Add simple test case for the dependency resolution case. This should |
|---|
| 1579 | Thomas Schilling <nominolo@gmail.com>**20080413132002 |
|---|
| 1580 | go into the test suite one day. |
|---|
| 1581 | ] |
|---|
| 1582 | [Fix/Add documentation. |
|---|
| 1583 | Thomas Schilling <nominolo@gmail.com>**20080413131839] |
|---|
| 1584 | [Change dependency resolution algorithm. |
|---|
| 1585 | Thomas Schilling <nominolo@gmail.com>**20080413131807 |
|---|
| 1586 | |
|---|
| 1587 | There were two reasons to do this. Firstly, this formulation makes it |
|---|
| 1588 | easier to add the --constraint command line flag that adds additional |
|---|
| 1589 | constraints on the packages that should be used. |
|---|
| 1590 | |
|---|
| 1591 | Secondly, with the orgininal algorithm it was possible to satisfy the |
|---|
| 1592 | constraint "foo < 1, foo > 2" if we had two versions of package "foo" |
|---|
| 1593 | which each satisfy one constraint. This patch fixes this by requiring |
|---|
| 1594 | the same package to satisfy both constraints (which of course is |
|---|
| 1595 | impossible in this case). |
|---|
| 1596 | ] |
|---|
| 1597 | [expose ghcOptions |
|---|
| 1598 | jeanphilippe.bernardy@gmail.com**20080417211221 |
|---|
| 1599 | This helps finding the options to pass to GHC API in various tools |
|---|
| 1600 | ] |
|---|
| 1601 | [expose tryGetConfigStateFile |
|---|
| 1602 | jeanphilippe.bernardy@gmail.com**20080417180248 |
|---|
| 1603 | This is needed by Yi to (try to) load an arbitrary |
|---|
| 1604 | project. |
|---|
| 1605 | ] |
|---|
| 1606 | [fix for #187 -- directory of Paths_packagename is included when looking for source files |
|---|
| 1607 | Andres Loeh <mail@andres-loeh.de>**20080412204904] |
|---|
| 1608 | [Check for the required cabal version early in parsing |
|---|
| 1609 | Duncan Coutts <duncan@haskell.org>**20080409154655 |
|---|
| 1610 | Previously we only checked the "cabal-version" field after parsing |
|---|
| 1611 | and all other configure processing. If the package really needs a |
|---|
| 1612 | later Cabal version it is of course highly likely that parsing or |
|---|
| 1613 | configure are going to fail and the user is not going to get the |
|---|
| 1614 | helpful error message about the version of Cabal required. So now |
|---|
| 1615 | we do the check early during parsing. If a later version is |
|---|
| 1616 | required and parsing subsequently fails, we now report the version |
|---|
| 1617 | issue, not the subsequent parse error. If parsing succeeds we |
|---|
| 1618 | still issue a warning which should be a useful hint to the user if |
|---|
| 1619 | subsequent configure processing fails. |
|---|
| 1620 | ] |
|---|
| 1621 | [Use relative file paths in .cabal parse error messages |
|---|
| 1622 | Duncan Coutts <duncan@haskell.org>**20080409154030 |
|---|
| 1623 | Do this by normalising the file path in the error message |
|---|
| 1624 | and when looking for .cabal files, by looking in '.' rather |
|---|
| 1625 | than the absolute path of the current directory. |
|---|
| 1626 | ] |
|---|
| 1627 | [Remove unused import |
|---|
| 1628 | Duncan Coutts <duncan@haskell.org>**20080409073352] |
|---|
| 1629 | [Fix for detecting ~/.cabal/ dir as a .cabal file |
|---|
| 1630 | Duncan Coutts <duncan@haskell.org>**20080409073236 |
|---|
| 1631 | Which happened if you use cabal configure in your home dir. |
|---|
| 1632 | Now produced the right error message, or if you actually put |
|---|
| 1633 | a cabal project in your home dir, it might actually work. |
|---|
| 1634 | Also, do the same fix for findHookedPackageDesc. |
|---|
| 1635 | ] |
|---|
| 1636 | [Fix spelling in error message |
|---|
| 1637 | Duncan Coutts <duncan@haskell.org>**20080408134610] |
|---|
| 1638 | [Fix names of profiling libs |
|---|
| 1639 | Duncan Coutts <duncan@haskell.org>**20080407013449 |
|---|
| 1640 | I broke this recently when refactoring. Restore the original behaviour. |
|---|
| 1641 | Was generating "libHSfoo_p-1.0.a" when it should be "libHSfoo-1.0_p.a". |
|---|
| 1642 | ] |
|---|
| 1643 | [TAG 1.5.1 |
|---|
| 1644 | Duncan Coutts <duncan@haskell.org>**20080329181329] |
|---|
| 1645 | Patch bundle hash: |
|---|
| 1646 | 3c8cb19e216068403f7e93d7ab62040f24def096 |
|---|