Ticket #845: add-a-dash-separator-for-pid-in-createtempdirectory-and-openbinarytempfile-too.dpatch

File add-a-dash-separator-for-pid-in-createtempdirectory-and-openbinarytempfile-too.dpatch, 40.7 KB (added by juhp, 2 years ago)

add-a-dash-separator-for-pid-in-createtempdirectory-and-openbinarytempfile-too.dpatch

Line 
11 patch for repository http://darcs.haskell.org/Cabal:
2
3Thu May 19 11:16:58 JST 2011  Jens Petersen <juhp@community.haskell.org>
4  * Add a dash separator for pid in createTempDirectory and openBinaryTempFile too
5
6New patches:
7
8[Add a dash separator for pid in createTempDirectory and openBinaryTempFile too
9Jens Petersen <juhp@community.haskell.org>**20110519021658
10 Ignore-this: ee0c842388212326579309ac6f93408f
11] {
12hunk ./Distribution/Compat/TempFile.hs 92
13     (templateBase, templateExt) = splitExtension template
14     findTempName :: Int -> IO (FilePath, Handle)
15     findTempName x
16-      = do let path = tmp_dir </> (templateBase ++ show x) <.> templateExt
17+      = do let path = tmp_dir </> (templateBase ++ "-" ++ show x) <.> templateExt
18            b  <- doesFileExist path
19            if b then findTempName (x+1)
20                 else do hnd <- openBinaryFile path ReadWriteMode
21hunk ./Distribution/Compat/TempFile.hs 192
22   findTempName pid
23   where
24     findTempName x = do
25-      let dirpath = dir </> template ++ show x
26+      let dirpath = dir </> template ++ "-" ++ show x
27       r <- tryIO $ mkPrivateDir dirpath
28       case r of
29         Right _ -> return dirpath
30}
31
32Context:
33
34[Add a deprecated knownExtensions for better backwards compatability
35Duncan Coutts <duncan@community.haskell.org>**20110517224327
36 Ignore-this: b97e62f6937586289b3e5816e584bfa1
37 As suggested by Hamish Mackenzie
38]
39[Filter out unbuildable test-suites
40Duncan Coutts <duncan@community.haskell.org>**20110516153801
41 Ignore-this: 44b647440f1d175569f24fb39141f3a5
42]
43[Reimplement createDirectoryIfMissingVerbose to use sensible file permissions
44Duncan Coutts <duncan@community.haskell.org>**20110517112344
45 Ignore-this: c7262f6697bd31c92d2172372c2ea979
46 Hopefully should fix ghc ticket #4982.
47 The problem was permissions on directories: previously we used ordinary
48 createDirectory and on unix this creates dirs using the current user's
49 umask. If the root user has a silly umask then someone doing sudo
50 install will end up with dirs that are not readable by non-root users.
51 
52 So the solution is to do the same as we do with files: override the
53 umask and explicitly set the file permissions based on the kind of
54 file: ordinary file, executable file and now also directory.
55 
56 Sadly we also had to re-implement createDirectoryIfMissing to use our
57 new createDirectory wrapper function.
58]
59[Do not include disabled tests into the component build graph
60Duncan Coutts <duncan@community.haskell.org>**20110508190944
61 Ignore-this: 62e75ea8babed6a70aca5c4e35ac53c4
62]
63[intrapackage-deps-and-per-component-preprocessing
64intractable@gmail.com**20110505014144
65 Ignore-this: 5edd88b6d7abd19029186b8e006519ba
66 This patch adds intrapackage dependency resolution so that components
67 (libraries, exes, test suites) are build in the correct order.  This mean it's
68 now possible to have, e.g., executables that depend on other executables defined
69 in the same package description: the build-tools namespace has been extended
70 accordingly.
71   
72 Related to this change is the refactoring of the do-it-all preprocessSources
73 function, formerly invoked by initialBuildSteps, into a a function
74 preprocessComponent that is invoked when a component is being built.  This lets
75 us use executables defined in a package to be used as a custom preprocessor when
76 building other components.
77   
78 Finally, a number of functions now operate on values of the sum type
79 PackageDescription.Component rather than specifically operating on Library or
80 Executable and so forth.
81]
82[build-tools-extend-namespace
83intractable@gmail.com**20091006055831
84 Ignore-this: 22d38652ae859d4273475bc9c94ca79f
85]
86[Implement Setup sdist --output-directory=dir
87Duncan Coutts <duncan@community.haskell.org>**20110415040414
88 Ignore-this: 6a5737b96341ed99384898b853f00525
89 That is, allow generating a dir tree rather than a tarball.
90 Apart from being useful directly, this is the right approach for
91 tools like cabal-install. cabal-install does the tar step itself
92 and might like to do other things like zip format.
93 Also cleaned up the sdist code a little.
94]
95[Add a type signature for getPrefixDirRel on Windows
96Ian Lynagh <igloo@earth.li>**20110427145835
97 Ignore-this: dbbc9f9cca1d28a657afff0f22b73cba
98]
99[Fix the GHC HEAD build: Don't use deprecated catch function
100Ian Lynagh <igloo@earth.li>**20110426232015
101 Ignore-this: 798c9bbd4f4f458a7472b356782f3de8
102 We could make this conditional, to support old GHC versions, but I
103 don't think it is worth the cost to support 6.8. By the time this Cabal
104 is released, you will need at least 6.12 (if not higher) to build the
105 GHC it comes with.
106]
107[Tell hsc2hs where to find cabal_macros.h
108Ian Lynagh <igloo@earth.li>**20110426210549
109 Ignore-this: 7010d47a062de9400518dc2c29f1b635
110]
111[Added documentation about the auto generated version constant
112Bas van Dijk <v.dijk.bas@gmail.com>**20110328223503
113 Ignore-this: 2008273ee7814cd42956608fd3c3b655
114]
115[Use catch from the Prelude in the auto generated Paths_pkgname module
116Bas van Dijk <v.dijk.bas@gmail.com>**20110330134005
117 Ignore-this: 1135678a83cee52ad85edba161da14cb
118 This enables it to be build with GHC-6.8
119]
120[Allow Cabal to be build on ghc-6.8
121Bas van Dijk <v.dijk.bas@gmail.com>**20110330102036
122 Ignore-this: 78657bda84019176c8c0425b2d854624
123]
124[Unicode: use wide APIs on Windows and withFilePath on GHC
125Max Bolingbroke <batterseapower@hotmail.com>**20110411210758
126 Ignore-this: f62d2a95c018f7288374db627d5bf5fd
127]
128[Fix for test suite stanzas with conditionals.
129Thomas Tuegel <ttuegel@gmail.com>**20110401192113
130 Ignore-this: d1160b98be4aedc3c084d37a25a729da
131 Ticket #811. This fixes a problem where Cabal would fail to detect the "type"
132 field of a test suite when the test suite contained a conditional. Conditionals
133 can now be used, with the restriction that the "type" field and the appropriate
134 "main-is" or "test-module" field must be specified together in any conditional
135 branch where they occur.
136]
137[Remove log files before running tests by default.
138Thomas Tuegel <ttuegel@gmail.com>**20110303041840
139 Ignore-this: 9007c1adc908897843ea29591decea3c
140]
141[Including test suites in product of 'setup sdist'.
142Thomas Tuegel <ttuegel@gmail.com>**20110119153404
143 Ignore-this: a7fcc71333e13c763547561aced2375c
144 See ticket #792.
145]
146[Refactor to avoid problems when $HOME is not set
147Ian Lynagh <igloo@earth.li>**20110417154135
148 Ignore-this: 75c06dea58512d01c9d28e7de4881222
149 We now avoid calling getWindowsProgramFilesDir and
150 getAppUserDataDirectory when we don't need to know their results.
151 This means that a GHC build goes through when $HOME is unset
152 (GHC trac #5047).
153]
154[Update release script for recent haskell.org server changes
155Duncan Coutts <duncan@community.haskell.org>**20110227171445
156 Ignore-this: 3243990fca0f6e619dbaca47615bd009
157]
158[Fix release date in changelog
159Duncan Coutts <duncan@community.haskell.org>**20110227150619
160 Ignore-this: 2cc2858ea00e5005364f369178a944e3
161]
162[Always use verbosity slient when calling hc-pkg dump
163Duncan Coutts <duncan@community.haskell.org>**20110210200603
164 Ignore-this: d2c50f0bde7987559d859579f6ff1fcf
165 We don't want to contaminate the hc-pkg output with info/debug messages.
166 Coincidentally the messages that current ghc-pkg versions produce at
167 -v2 verbosity level do not cause a problem. There's no reason to expect
168 future versions to work that way however.
169]
170[Fix HcPkg.dump for the case of an empty database
171Duncan Coutts <duncan@community.haskell.org>**20110210200111
172 Ignore-this: bb604d49d2d6be488ffba50378fed858
173 Previously it returned the value [emptyInstalledPackageInfo]
174]
175[Update copyright year
176Duncan Coutts <duncan@community.haskell.org>**20110131145403
177 Ignore-this: 367addece3538851282fa35dc59a772f
178]
179[Add changelog entry for version 1.10.1.0
180Duncan Coutts <duncan@community.haskell.org>**20110131145428
181 Ignore-this: 7dd98797de68db6c8d1ffc2dc2b5b78b
182]
183[Add synopsis field to the installed package info
184Duncan Coutts <duncan@community.haskell.org>**20110131003635
185 Ignore-this: b94db22dcd5a7753056da9a44fe8c23e
186 The description is already included. The one-line synopsis should be
187 there too. Note that this is an API change that will affect compilers.
188]
189[Rewrite intro to user guide and split into multiple files
190Duncan Coutts <duncan@community.haskell.org>**20110130220047
191 Ignore-this: f353d514c4c46f241471e6aad485bce9
192 The chapter on installing packages still needs to be rewritten
193 to describe the cabal tool, rather than runhaskell Setup.hs
194]
195[Added unit test for exitcode-stdio-1.0 test suite with and without HPC.
196Thomas Tuegel <ttuegel@gmail.com>**20110114165132
197 Ignore-this: e69128c5cf06923d4b961753ffaa2ff4
198]
199[Fixes for running test suite with HPC.
200Thomas Tuegel <ttuegel@gmail.com>**20110113114354
201 Ignore-this: 84bf3cb6a47188db0b6fcde5ce1d4eda
202]
203[Add a couple TODOs relating to the hpc feature
204Duncan Coutts <duncan@haskell.org>**20110131001517
205 Ignore-this: c78bbf1d75948431d9740648089eabb6
206]
207[Support building libraries and test suites with HPC; automatic report generation.
208Thomas Tuegel <ttuegel@gmail.com>**20110130173451
209 Ignore-this: cbffdc7d0fb03bd7d6745aa64625cc3c
210]
211[add --enable-executable-dynamic option for dynamic linking of executables
212Jens Petersen <juhp@community.haskell.org>**20110130110206
213 Ignore-this: f336897c2ad0ea6560247576d358231f
214]
215[Export a bunch of utils for package configurations
216Duncan Coutts <duncan@community.haskell.org>**20110129205103
217 Ignore-this: b0654528a073185e0c9e9e84330da517
218]
219[Get the mapTreeData util from the right place
220Duncan Coutts <duncan@community.haskell.org>**20110129204834
221 Ignore-this: 9cc5712b72583e94c43a7bab448942e7
222 Originally Thomas had moved them to Distribution.PackageDescription
223 but I'm rather of the opinion that the functions (and the data
224 structure) that they manipluate is ugly and I'd rather keep them
225 hidden away in a less public module.
226]
227[Support more placeholders in --test-option[s] template
228Johan Tibell <johan.tibell@gmail.com>**20110111101957
229 Ignore-this: 4a58dba3d8fc411aca1fa7c6c0062398
230 
231 Now supports $pkgid, $compiler, $os, $arch, and $test-suite.
232]
233[Allow name template in --test-option and --test-options
234Johan Tibell <johan.tibell@gmail.com>**20110111073013
235 Ignore-this: 82ec6b757182c0b3372b50dd1dd9367b
236 
237 Only $test-suite is supported for now.
238]
239[Tracking enabled/disabled TestSuites in PackageDescription.
240Thomas Tuegel <ttuegel@gmail.com>**20110110174227
241 Ignore-this: 412a5fdbef2dc7fbc7dc698c86917e5e
242 This patch adds the 'testEnabled' field to TestSuite. It's
243 undesirable to track build status information in the static package
244 description, but there is no better solution at this time. This
245 patch has the side-effect of fixing several TODOs in
246 Distribution.Simple.Configure.
247]
248[Relax QA check on test-suite sections to require only Cabal 1.8
249Duncan Coutts <duncan@community.haskell.org>**20110129182623
250 Ignore-this: 8d960e7720c5b9c0a23879980a8b3f53
251 Only Cabal-1.10 and later can use test suites. Versions of Cabal prior
252 to 1.8 actually barf on test-suite sections, while Cabal-1.8 will
253 ignore these sections with a warning. Previously the QA check enforced
254 that packages with test-suite section specify 'cabal-version: >= 1.10'
255 but strictly speaking we only need to require 'cabal-version: >= 1.8'.
256 This relaxation allows people to write packages using test suites such
257 that people using Cabal-1.8 will be able to build and install the
258 package, just not run the test suite. Clear as mud?
259]
260[Add --html for haddock command.
261Thomas Schilling <nominolo@googlemail.com>**20090816014017
262 
263 This makes it easier to build both html documentation and a hoogle
264 database:
265 
266   ./setup haddock [--html]   # build only HTML docs (default)
267   ./setup haddock --hoogle   # build only Hoogle DB
268   ./setup haddock --hoogle --html   # build both
269]
270[Look for hsc2hs in the same place as ghc
271Ian Lynagh <igloo@earth.li>**20110125200353
272 This is particularly important on OS X, where there may be both 32
273 and 64bit versions around.
274]
275[Follow changes in GHC's linker flag handling
276Ian Lynagh <igloo@earth.li>**20110124231819]
277[Add NondecreasingIndentation support for old GHCs
278Ian Lynagh <igloo@earth.li>**20110121233655
279 Ignore-this: 18b866cd7806e90c13c70e5c9065ea14
280]
281[reexport setFileOrdinary/Executable functions from Utils module
282Duncan Coutts <duncan@community.haskell.org>**20110117150104
283 Ignore-this: 5edb64c3c69ae247ce25ff72dc655baf
284]
285[Preserve executable bit during in sdist for extra-source-files
286Duncan Coutts <duncan@community.haskell.org>**20110117144243
287 Ignore-this: d419dc5d8050d3236a4c78fcad5f7d6b
288]
289[Fix a documentation reference to ghc 6.14
290Duncan Coutts <duncan@haskell.org>**20101027134319
291 Ignore-this: cc05b5066884008491a9c60d6c64782d
292]
293[Fix import warnings
294Ian Lynagh <igloo@earth.li>**20110115005030
295 Ignore-this: 4bc4d971238ed7ef331690bb9b1cbfa3
296]
297[Pass gcc/ld locations and flags to configure scripts
298Ian Lynagh <igloo@earth.li>**20110115004346
299 Flags are passed through the CFLAGS and LDFLAGS variables
300]
301[Get extra gcc and ld flags from GHC
302Ian Lynagh <igloo@earth.li>**20101220173544]
303[Change my email address
304Duncan Coutts <duncan@community.haskell.org>**20110114173347
305 Ignore-this: 5ce93c85c0d8e3100c669d363447648a
306]
307[Use the standard names for file copy functions rather than a local rename
308Duncan Coutts <duncan@haskell.org>**20110114173219
309 Ignore-this: 140a927eae404fa4fa96ec86d6fb5682
310]
311[sdist perms fix
312ramsdell@mitre.org**20101220181308
313 Ignore-this: ca0ff71dc7318d12c4f64134c636a08e
314]
315[Clarify docs about LocalBuildInfo installedPkgs field
316Duncan Coutts <duncan@haskell.org>**20110111005941
317 Ignore-this: 73c6ac8cb2b5e0fbd912dfad6a6f9d5f
318 Only deps of current package, not all installed packages.
319 Confusion reported by quuuux on #haskell.
320]
321[Removed documentation for obsolete options to 'setup test' from the User Guide.
322Thomas Tuegel <ttuegel@gmail.com>**20110109180811
323 Ignore-this: ce7298400abd573023e5c3c1abbef10
324]
325[Document the '--{en,dis}able-tests' options in the User Guide
326Thomas Tuegel <ttuegel@gmail.com>**20101204164404
327 Ignore-this: 28972ba6e70a3e91754dd42bfe9c2a5e
328]
329[Update the changelog for 1.8.0.4, 1.8.0.6 and 1.10.0.0
330Duncan Coutts <duncan@haskell.org>**20101118203701
331 Ignore-this: 2b1693427bd29b84432b1b35a2f627c6
332]
333[Replace uses of the old try function with the new one
334Ian Lynagh <igloo@earth.li>**20101218230920
335 Ignore-this: e0a9db2f97bc3f90ceb5772944f4e25b
336]
337[Replace uses of the old catch function with the new one
338Ian Lynagh <igloo@earth.li>**20101218213608]
339[Add GADTSyntax to extension list
340Ian Lynagh <igloo@earth.li>**20101218150259]
341[Allow CABAL_VERSION to be defined when bootstrapping
342Ian Lynagh <igloo@earth.li>**20101212213359
343 Needed for the GHC build system
344]
345[Add NondecreasingIndentation to Language.Haskell.Extension
346Ian Lynagh <igloo@earth.li>**20101124223953
347 Ignore-this: 2d072a45d76770cf97553b0e5df9e998
348]
349[Export commandParseArgs
350Duncan Coutts <duncan@haskell.org>**20101105140655
351 Ignore-this: f452f13b130e886ecd8262c6f24a0c52
352]
353[Add some more extensions that GHC knows about
354Ian Lynagh <igloo@earth.li>**20101026220409
355 Ignore-this: 92bbbb269985fe576798cd2cdba4ceca
356]
357[Whitespace only
358Ian Lynagh <igloo@earth.li>**20101026220403
359 Ignore-this: 8746b070884de3ed45db486a0a49db3e
360]
361[Fix parsing of empty default-language fields
362Ian Lynagh <igloo@earth.li>**20101026220312
363 Ignore-this: 99011d6c9af431e7c8d90c3cee364606
364]
365[Add support for general extension en/disabling
366Ian Lynagh <igloo@earth.li>**20101026145503]
367[Tweak a couple of types
368Ian Lynagh <igloo@earth.li>**20101026131250]
369[Generalise deprecatedExtensions
370Ian Lynagh <igloo@earth.li>**20101026131121
371 It now works with Extensions rather than KnownExtensions
372]
373[Split known-extensions off into their own type, and remove knownExtensions
374Ian Lynagh <igloo@earth.li>**20101025232624
375 The knownExtensions list had already got out of sync with the datatype.
376 Now we use an Enum instance to get the list of constructors.
377 Also, having the actual extensions in a separate type than UnknownExtension
378 and EnableExtension makes it easier to add extension disabling support
379 later.
380]
381[Add a test program to look for ghc extensions that are not registered
382Duncan Coutts <duncan@haskell.org>**20101025163536
383 Ignore-this: cf38e2434eba386b83b818a29fd5ac14
384 Should live in the ghc testsuite but no harm having it here too.
385]
386[Make the .cabal file fully 1.10-compliant
387Ian Lynagh <igloo@earth.li>**20101020133037
388 Ignore-this: 66409062c8d4b698f69aa58a83b85ef1
389 Add Default-Language field, and change Extensions to Default-Extensions.
390]
391[Require "cabal-version: >= 1.10" as we use the new testsuite syntax
392Ian Lynagh <igloo@earth.li>**20101020131829
393 Ignore-this: 6aecdd77f78234f0359af0509f1ba636
394]
395[Fix warnings: Remove duplicate imports
396Ian Lynagh <igloo@earth.li>**20101020125710
397 Ignore-this: dea9d889078c729459e1ab92a8e54c08
398]
399[Merge conflicts
400Ian Lynagh <igloo@earth.li>**20101020112200
401 Ignore-this: d96cab403511f914d9d8df1a29ca58ee
402]
403[Add final newline
404Simon Marlow <marlowsd@gmail.com>**20101013125337
405 Ignore-this: 99e055c7186219369902a63c63c3fd76
406 Something in the Windows build was complaining about the lack of a
407 final newline.
408]
409[Update the pretty printer to the current testsuite interface
410Duncan Coutts <duncan@haskell.org>**20101020120506
411 Ignore-this: 480a349e93be8228f81f93632cabe2c7
412]
413[Improve error messages about programs not being found
414Duncan Coutts <duncan@haskell.org>**20101019074436
415 Ignore-this: 9b4daf9a09179482049146669af59f76
416 Make it clear it is a program we are talking about, not a library.
417]
418[Add a note about the remaining issue with runhugs scripts
419Duncan Coutts <duncan@haskell.org>**20101018232248
420 Ignore-this: 3e83a3238d08cdb3ad9e353d43fbf7fa
421]
422[Add package QA checks for the new language and extensions fields
423Duncan Coutts <duncan@haskell.org>**20101018180343
424 Ignore-this: a063fd21e86e4e19b8152258c5a0711f
425]
426[Check at configure time that languages are supported by the compiler
427Duncan Coutts <duncan@haskell.org>**20101018180300
428 Ignore-this: e3988c2eff46129b1f2732cd9647c935
429]
430[Add compiler support for using the new languages and extensions fields
431Duncan Coutts <duncan@haskell.org>**20101018180151
432 Ignore-this: ec1b61767d492dcd2dfa6a07ace3b982
433]
434[Add hugs support for the languages and extensions fields
435Duncan Coutts <duncan@haskell.org>**20101018175647
436 Ignore-this: 9b39c392119aebbbad22a64dcf992f88
437 Incidentally, should fixe ticket #43.
438]
439[Add parsing for the new language and extensions fields
440Duncan Coutts <duncan@haskell.org>**20101018091918
441 Ignore-this: c59c8ef96c83f35e293c8f495b89fda6
442]
443[Add new language and extensions fields (internal data structures)
444Duncan Coutts <duncan@haskell.org>**20101018090620
445 Ignore-this: f49dd9278b0053bc441a37beeb2f6145
446 New fields default-language and other-languages for specifying the
447 base languages for the package, e.g. Haskell98, Haskell2010
448 New fields default-extensions and other-extensions for the language
449 extensions. Separate from the old extensions field.
450 The separation lets us express the difference between declaring to
451 the outside world that a package uses certain languages or extensions
452 and whether certain languages or extensions should be applied to
453 all modules in the package component.
454]
455[Extend the Compiler interface to list the supported languages
456Duncan Coutts <duncan@haskell.org>**20101018082608
457 Ignore-this: 8b1ab7cc14f35dd6604c2a85173ad48
458]
459[Add a Language type, starting with Haskell98 and Haskell2010
460Duncan Coutts <duncan@haskell.org>**20101018082208
461 Ignore-this: de80df5317b5d44900e30c947a86364b
462]
463[Merge and tweaks following pretty printer changes
464Duncan Coutts <duncan@haskell.org>**20101018195344
465 Ignore-this: 513a2b0ce02fed98f5beba0dd893eb16
466]
467[pretty printer fixes (FreeText starting with ., version tags, version range parens, option order).
468jnf@arcor.de**20101011094517
469 Ignore-this: 400ac5be014f1529632bd16ffd878a92
470]
471[reentered accidentally lost exports
472jnf@arcor.de**20100929105852
473 Ignore-this: 2ad4ecfac6feba4c2a59a131c05c8a40
474]
475[new cabal pretty printer.
476jnf@arcor.de**20100929103653
477 Ignore-this: 43f954ec31373e327f2c29fcbf3f0865
478]
479[Fix old doc links
480Duncan Coutts <duncan@haskell.org>**20100727012425
481 Ignore-this: 9e9d0f2045adebe7bb38b5d1a7d2d71a
482]
483[Add note about ticket #689 about deprecated extensions
484Duncan Coutts <duncan@haskell.org>**20100622151328
485 Ignore-this: 56cf0027a4c10f4c07045e2ccdbb819c
486]
487[Head version needs cabal-version: >=1.8 due to test stanza
488Duncan Coutts <duncan@haskell.org>**20101017155521
489 Ignore-this: 6652a529071ccb2eb1cdeda3451aac30
490]
491[Remove unused cpp version definition
492Duncan Coutts <duncan@haskell.org>**20101017155218
493 Ignore-this: 8dc3425bd811d60d28c2eaf365ec1e66
494]
495[Change the way we handle the version number during bootstrapping
496Duncan Coutts <duncan@haskell.org>**20101016191252
497 Ignore-this: e21559acc28b7bd811dc4fe147e645b2
498 Means we only need to have the version in one place now. Yay.
499]
500[Restore compatability with ghc-6.8 and 6.6 but drop support for ghc-6.4
501Duncan Coutts <duncan@haskell.org>**20101016182714
502 Ignore-this: 6aef933e4bfb4a9c47021d17370805ea
503]
504[Add the Cabal unit tests as a test-suite stanza
505Duncan Coutts <duncan@haskell.org>**20101016165656
506 Ignore-this: b9abbfe867754b8bf5b02919c1f25509
507 Still some other tests that need hooking up to this mechanism
508]
509[Update the unit tests of the testsuite feature
510Duncan Coutts <duncan@haskell.org>**20101016165615
511 Ignore-this: bc08d2a8609943f40e901c42916072c2
512]
513[Rename test --human-log to just --log
514Duncan Coutts <duncan@haskell.org>**20101016153441
515 Ignore-this: a2ccb95759a67ae2888a2db2d2ba678d
516 Still have --machine-log as a separate flag
517]
518[Remove the test --append-human-log and --replay features
519Duncan Coutts <duncan@haskell.org>**20101016153235
520 Ignore-this: 23d9c6431f929cd4078c54e03928cef2
521]
522[Add instance Text TestShowDetails parsing and use it for --show-details flag
523Duncan Coutts <duncan@haskell.org>**20101016153015
524 Ignore-this: 1018e874b8acbf51bd7081df1210285
525 Rather than Read/Show
526]
527[Fix a cabal-version check so it accepts the field missing entirely
528Duncan Coutts <duncan@haskell.org>**20101016151929
529 Ignore-this: e30f6fe6e7f54cc5c791a3b6761e93de
530]
531[Add testsuites to the allBuildInfo function, used mainly in checks
532Duncan Coutts <duncan@haskell.org>**20101013172229
533 Ignore-this: be876b609bf1266f3928f25e94f87703
534]
535[Update the message for a package check
536Duncan Coutts <duncan@haskell.org>**20101013172206
537 Ignore-this: 875cc7c6a763321f2e3251195c9dfb1e
538]
539[Add a few TODOs about package checks
540Duncan Coutts <duncan@haskell.org>**20101013172128
541 Ignore-this: 837bda043d740f0b92549f3379d43909
542]
543[Check test-suite sections even when they have been disabled at configure time
544Duncan Coutts <duncan@haskell.org>**20101013171851
545 Ignore-this: 938113ec297b2e5c511a72c5ac8a86d
546]
547[Default to Haskell98 for GHC 7.x
548Duncan Coutts <duncan@haskell.org>**20101013022258
549 Ignore-this: c34b946f55e5ec054cc842914f58b5a5
550 GHC 7 defaults to Haskell2010, we stick with 98 for the moment.
551 We will later introduce a new language field to control this.
552]
553[Change the syntax and behaviour of the cabal-version field
554Duncan Coutts <duncan@haskell.org>**20101013014933
555 Ignore-this: c4cb33360d623ff312b5c3f2d78f730c
556 For historical reasons the cabal-version is specified with a version range,
557 to indicate the range of versions of tools that the package will work with.
558 We now think it makes more sense to specify the version of the Cabal spec
559 that the package follows. Old Cabal versions will not be able to parse simple
560 versions in this field. So we initially make the parser allow plain versions
561 but then we add a check to warn about using it prior to Cabal-1.12 at which
562 point it will be allowed.
563 Added a check about using version ranges that are not of the form '>= x.y'.
564 Also change behaviour to ignore upper bounds in the given version range.
565]
566[Fix duplicate import warnings
567Ian Lynagh <igloo@earth.li>**20101012131227
568 Ignore-this: a9b51a864f95206f4d972f1e7506be55
569]
570[Remove the ghc Makefile stuff for the old docbook xml
571Duncan Coutts <duncan@haskell.org>**20101010210026
572 Ignore-this: 6c714ba98b60e15e44577b64d2de3e1c
573 Not woth keeping it, none of it can sensibly be reused. The GHC
574 devs will need to add something new for the markdown user guide.
575]
576[Update Makefile for new markdown user guide
577Duncan Coutts <duncan@haskell.org>**20101010205938
578 Ignore-this: dcb5bd072c619516e23329f170458d72
579]
580[Add a FIXME about parsing cabal files
581Duncan Coutts <duncan@haskell.org>**20101010203421
582 Ignore-this: 12804d54e81b5ea5878e52628717bc1d
583]
584[Refactor the missing VCS info QA check
585Duncan Coutts <duncan@haskell.org>**20101010192346
586 Ignore-this: fa6a50a9bd43cf9069e7cd16e23a2b4e
587 Starting with Marc Weber's code and just moving
588 it about and making it fit in a bit nicer.
589]
590[Remove redundant import
591Duncan Coutts <duncan@haskell.org>**20101010190724
592 Ignore-this: a978a6a257a31a57d07d57471f04af49
593]
594[Rename LocalBuildInfo extraArgs to extraConfigArgs to avoid name clashes
595Duncan Coutts <duncan@haskell.org>**20101010190036
596 Ignore-this: 817061002399a51cbf31da2ba002737b
597]
598[Add a bunch of TODOs about the test feature
599Duncan Coutts <duncan@haskell.org>**20101010173245
600 Ignore-this: f2acc005fef4996a2c5260356eaf219f
601]
602[Change how the test suite interfaces are represented, parsed and used
603Duncan Coutts <duncan@haskell.org>**20101010162526
604 Ignore-this: 8773e7756fc23bc04c9e5b2b14031512
605 Also, stick to version 0.9 of the "detailed" test interface, since it's
606 not quite finalised yet. Misc other minor code cleanups.
607]
608[Added test suites to Cabal User Guide
609Thomas Tuegel <ttuegel@gmail.com>**20100811141332
610 Ignore-this: 3975acc803fdba809ca1c8abeef21677
611 Ticket #215 (Overhaul support for packages' tests).
612]
613[Removed "$stdio" from acceptable template variables
614Thomas Tuegel <ttuegel@gmail.com>**20100810201828
615 Ignore-this: c50e05e9a73c726567eff0a364f29750
616 Ticket #215 (Overhaul support for packages' tests).  In the usage message, the
617 template variable "$stdio" was incorrectly listed as being available in the
618 "--human-log" and "--machine-log" flags.  The variable has been removed.
619]
620[Added --test-option(s) flags
621Thomas Tuegel <ttuegel@gmail.com>**20100809161341
622 Ignore-this: cea82267bbc0b16d5f21bfc086285905
623 Ticket #215 (Overhaul support for packages' tests).  This patch adds the
624 --test-option(s) flags for passing command-line options to test executables.
625]
626[Respect verbosity flag when outputting test log
627Thomas Tuegel <ttuegel@gmail.com>**20100809151517
628 Ignore-this: 73668e49eeea216c27b5233c7e3fe2cb
629 Ticket #215 (Overhaul support for packages' tests).  This patch corrects the
630 printing of the human-readable test log to the terminal so the setting of the
631 verbosity flag is respected.
632]
633[Added --replay option to cabal test
634Thomas Tuegel <ttuegel@gmail.com>**20100803164932
635 Ignore-this: c97d70e21d3847aa4d889304a7e94451
636 Ticket #215 (Overhaul support for packages' tests).  This patch adds support for
637 using machine logs from previous runs to replay tests with the same options.
638 When using --replay, Cabal will replay all test suites listed in the machine log
639 specified; test suite names specified on the command line are ignored.
640]
641[Renamed "library" test suite type to "detailed"
642Thomas Tuegel <ttuegel@gmail.com>**20100803141125
643 Ignore-this: 457c1a155020303962ae55b2bcd8415c
644 Ticket #215 (Overhaul support for packages' tests).
645]
646[Fixed human test log output for failing tests
647Thomas Tuegel <ttuegel@gmail.com>**20100803030246
648 Ignore-this: f9d3ef127cdb849762af79f31a0c80c9
649 Ticket #215 (Overhaul support for packages' tests).  This patch corrects the bug
650 in the human test log output to terminal where the line wrapping code in Cabal
651 caused terminal control codes output by the test framework to be placed
652 incorrectly.  Line wrapping is no longer performed.
653]
654[Displaying human-readable test log when requested
655Thomas Tuegel <ttuegel@gmail.com>**20100730151818
656 Ignore-this: 98f0adb8e47a52a59ccb3581982157ed
657 Ticket #215 (Overhaul support for packages' tests).  This patch causes Cabal to
658 display the contents of the human-readable log file on the terminal when run
659 with --show-details=always or when run with --show-details=failures and a
660 failure is detected.  The structure of the test logging code has been changed
661 for clarity to debug a problem where test executables that write to their stderr
662 channel disrupt terminal output.
663]
664[Added debugging output to test summary
665Thomas Tuegel <ttuegel@gmail.com>**20100730134008
666 Ignore-this: 826d20639f17ae0650d1c9b8a56b43a7
667 Ticket #215 (Overhaul support for packages' tests).
668]
669[Using correct name of log file in human-readable log
670Thomas Tuegel <ttuegel@gmail.com>**20100730041720
671 Ignore-this: 3c6df44f5d6414ce1fe2b58c50590726
672 Ticket #215 (Overhaul support for packages' tests).  Previously, human-readable
673 logs listed the name of the temporary file where test suite output is
674 initially logged.
675]
676[Renamed option '--test-filter' to '--show-details'
677Thomas Tuegel <ttuegel@gmail.com>**20100730023026
678 Ignore-this: 8b78eed5ccf9cb7ed6a55b86d886e5cc
679 Ticket #215 (Overhaul support for packages' tests).
680]
681[Displaying location of test suite log on terminal
682Thomas Tuegel <ttuegel@gmail.com>**20100729141159
683 Ignore-this: e98a67180c6ff1511b86e442f9acf3c1
684 Ticket #215 (Overhaul support for packages' tests).  It was decided that
685 indicating the location of the human-readable test suite log made Cabal's test
686 runner easier to use.
687]
688[Passing names of test suites to run to test stage
689Thomas Tuegel <ttuegel@gmail.com>**20100726150811
690 Ignore-this: bf556a0a06fe26b132f1eb5caec21805
691 Ticket #215 (Overhaul support for packages' tests).
692]
693[Fixed deprecation warning in Distribution.TestSuite
694Thomas Tuegel <ttuegel@gmail.com>**20100726141448
695 Ignore-this: 64cd6a5a936efd6b0ee0f50564440a9d
696 Ticket #215 (Overhaul support for packages' tests).  Warning resulted from use
697 of Control.OldException.
698]
699[Fixed help message for machine-log path template
700Thomas Tuegel <ttuegel@gmail.com>**20100724164652
701 Ignore-this: 52205830166a307eedce807e908f7a0a
702 Ticket #215 (Overhaul support for packages' tests).  The message previously
703 indicated that $test-suite is acceptable in the machine log path template,
704 which is not true.
705]
706[Catching exceptions when lifting pure tests to IO
707Thomas Tuegel <ttuegel@gmail.com>**20100724134336
708 Ignore-this: 89a2265a94ee0082935d236dd64c12d4
709 Ticket #215 (Overhaul support for packages' tests).
710]
711[Using common function to name path environment variables in PathsModule and Test
712Thomas Tuegel <ttuegel@gmail.com>**20100722145840
713 Ignore-this: 5cea1a3e77acb84a162de3d1c85a3fe6
714 Ticket #215 (Overhaul support for packages' tests).  The names of environment
715 variables used to set package paths at runtime were previously hard-coded into
716 the function that generates the paths module.  A function generating the
717 variable names is now exported from Distribution.Simple.Build.PathsModule and
718 used to set the datadir in Distribution.Simple.Test to prevent breakage if the
719 naming scheme changes.
720]
721[Added documentation for machine-readable test log types
722Thomas Tuegel <ttuegel@gmail.com>**20100722140017
723 Ignore-this: 60f934e11b1c3ee4df9f48677528af47
724 Ticket #215 (Overhaul support for packages' tests).
725]
726[Improved documentation for Distribution.TestSuite
727Thomas Tuegel <ttuegel@gmail.com>**20100722124239
728 Ignore-this: f7b1261270c4815b0691ce33c664908c
729 Ticket #215 (Overhaul support for packages' tests).
730]
731[Fixed documentation errors in Distribution.Simple.Test
732Thomas Tuegel <ttuegel@gmail.com>**20100721221844
733 Ignore-this: b111e727b4a556b17c2a1eb4dfd6971b
734 Ticket #215 (Overhaul support for packages' tests).
735]
736[Renamed Distribution.TestSuite.optionLookup to lookupOption
737Thomas Tuegel <ttuegel@gmail.com>**20100721170724
738 Ignore-this: 3a5e79fd0a14d974e664a74af5cb83d1
739 Ticket #215 (Overhaul support for packages' tests.)
740]
741[Added console-style test summary information to human-readable logs
742Thomas Tuegel <ttuegel@gmail.com>**20100721163516
743 Ignore-this: 494c2220285ef4bda036ecdfd7242adf
744 Ticket #215 (Overhaul support for packages' tests).
745]
746[Added flag allowing human-readable test logs to be appended instead of overwritten
747Thomas Tuegel <ttuegel@gmail.com>**20100721160421
748 Ignore-this: f157a4830f82a4a978c1cfb1931a0258
749 Ticket #215 (Overhaul support for packages' tests).
750]
751[Added clarifying comments to Distribution.Simple.Test
752Thomas Tuegel <ttuegel@gmail.com>**20100721160417
753 Ignore-this: 100000890351a75557a6dfa0f71c419f
754 Ticket #215 (Overhaul support for packages' tests).
755]
756[Using a separate PathTemplateEnv for machine test logs
757Thomas Tuegel <ttuegel@gmail.com>**20100720204724
758 Ignore-this: 4920c6e88b8d3d3d788ba42d6b5268af
759 Ticket #215 (Overhaul support for packages' tests).  Previously, the use of a
760 dummy test suite name would lead to unintuitive expansions of the PathTemplate
761 governing the location of the machine-readable package test log.
762]
763[Exporting machine log types from Distribution.Simple.Test
764Thomas Tuegel <ttuegel@gmail.com>**20100720204558
765 Ignore-this: 6920621dbabf471cef7d688904b9b1b8
766 Ticket #215 (Overhaul support for packages' tests).  These types were exported
767 to enable parsing of test logs by external utilities.
768]
769[Added 'check' and 'optionLookup' to Distribution.TestSuite
770Thomas Tuegel <ttuegel@gmail.com>**20100720134707
771 Ignore-this: 21ef44dc0087ff8333b1722309f8fbdd
772 Ticket #215 (Overhaul support for packages' tests).  These functions were added
773 for the benefit of test runner authors.
774]
775[Saving Options from test runs for reproducability
776Thomas Tuegel <ttuegel@gmail.com>**20100715180003
777 Ignore-this: 858c387d83e93e193f7c66df3901f6e3
778 Ticket #215 (Overhaul support for packages' tests).  Saving the Options used
779 required changes to the TestSuite interface, with the Option values now being
780 specified as Strings and not Dynamics.  This was necessary because the lack of
781 a Read instance for Dynamic.
782]
783[Improvements to test suite logging
784Thomas Tuegel <ttuegel@gmail.com>**20100715020549
785 Ignore-this: b47f4358302b283e93ccaff81db123f2
786 Ticket #215 (Overhaul support for packages' tests).  This patch includes proper
787 support for both machine- and human-readable logs.
788]
789[Removed duplicate code for test suite interface version checks
790Thomas Tuegel <ttuegel@gmail.com>**20100713144835
791 Ignore-this: e06c264351013480a66c013ca398db4b
792 Ticket #215 (Overhaul support for packages' tests).  Duplicate code for checking
793 the test suite interface version was replaced with a single function
794 'testVersion1 :: Version -> Bool' exported from Distribution.PackageDescription.
795]
796[Added QA checks for test suite name conflicts
797Thomas Tuegel <ttuegel@gmail.com>**20100712154401
798 Ignore-this: df13e2f16cf4e879f5d5f6538c6e7db8
799 Ticket #215 (Overhaul suppport for packages' tests).
800]
801[New test suite log format
802Thomas Tuegel <ttuegel@gmail.com>**20100708132650
803 Ignore-this: 96a300e6acedd0de63757713fbb1d832
804 Ticket #215 (Overhaul support for package's tests).  This patch adds a new test
805 log file format based on the TestSuiteLog data structure.  The interface between
806 Cabal and the library test suite runner has consequently changed.
807]
808[Inheriting existing environment for test suite executables
809Thomas Tuegel <ttuegel@gmail.com>**20100707222244
810 Ignore-this: 6f08245c83817a85c7da5a05f810abd6
811 Ticket #215 (Overhaul support for packages' tests).  Previously, the test
812 runner replaced the environment for test suite executables with one containing
813 only the datadir path for package data files.  For test suites invoking other
814 programs, it is necessary to preserve the system paths, so the datadir path
815 variable is appended to the inherited environment.
816]
817[Improvements to library test suite runner, including documentation
818Thomas Tuegel <ttuegel@gmail.com>**20100624181304
819 Ignore-this: 45baa7905de5423e91707f52e590bbad
820 Ticket #215 (Overhaul support for packages' tests).
821]
822[Renamed 'result' and 'getResult' to 'run' and 'runM'
823Thomas Tuegel <ttuegel@gmail.com>**20100623184640
824 Ignore-this: 7bb6dd598eaa135fcbf73e82ab0d2ce2
825 Ticket #215 (Overhaul support for packages' tests).
826]
827[Setting datadir environment variables when running tests
828Thomas Tuegel <ttuegel@gmail.com>**20100623183201
829 Ignore-this: 7a9e26c684417871609847f6e4d4883e
830 Ticket #215 (Overhaul support for packages' tests).
831]
832[Added convenience functions and default instances making export of 'Test' constructors unnecessary
833Thomas Tuegel <ttuegel@gmail.com>**20100623151934
834 Ignore-this: 1979265e345e268787b5b6fe49bdfd64
835 Ticket #215 (Overhaul support for packages' tests).
836]
837[Added support for running the default stub executables Cabal creates for library test suites
838Thomas Tuegel <ttuegel@gmail.com>**20100623151903
839 Ignore-this: 2be1bbfb07a7fc0e3a0d2c9e5bdf2252
840 Ticket #215 (Overhaul support for packages' tests).
841]
842[Removed dependency on extensible-exceptions from detailed test suite interface
843Thomas Tuegel <ttuegel@gmail.com>**20100623150227
844 Ignore-this: 50ad3ee8c2dc5f62b48aa84d0318c3e6
845 Ticket #215 (Overhaul support for packages' tests).
846]
847[Added support for building detailed library test suites
848Thomas Tuegel <ttuegel@gmail.com>**20100623150222
849 Ignore-this: 1f2a6034af9adf493088265cc8481df5
850 Ticket #215 (Overhaul support for packages' tests).  This patch preprocesses
851 and builds library test suites.  The fake packages are created for each test
852 suite, where the fake package and test suite share the same name; the packages
853 and libraries are registered in the inplace package database so that test
854 agents can build stub executables against them.
855]
856[Improved security of test log file creation
857Thomas Tuegel <ttuegel@gmail.com>**20100621114726
858 Ignore-this: 6fed3aa4ebcb587b48bb2a256fcbc61b
859 Ticket #215 (Overhaul support for packages' tests).  The algorithm previously
860 used to name the log files for test output suffers from a known vulnerability
861 due to the predictability of chosen names.
862]
863[Added detailed test interface
864Thomas Tuegel <ttuegel@gmail.com>**20100617210631
865 Ignore-this: 161624662d6ec7946a33415ddbff4445
866 Ticket #215 (Overhaul support for packages' tests).  This patch provides the
867 detailed test interface for exposing individual tests to Cabal and other test
868 agents.  It also provides the simple function Cabal will provide as the default
869 test runner.
870]
871[Fixed test suite breakage due to TestSuite API changes
872Thomas Tuegel <ttuegel@gmail.com>**20100629212935
873 Ignore-this: 8de228836efb206e1adb833c841ae757
874 Ticket #215 (Overhaul support for packages' tests).  The update to the
875 TestSuite parser which stopped disallowed configurations during parsing also
876 broke the existing test suite with API changes.
877]
878[Added --test-filter flag
879Thomas Tuegel <ttuegel@gmail.com>**20100624175917
880 Ignore-this: e8fcaddf34a42326d0f3a1081aafb724
881 Ticket #215 (Overhaul support for packages' tests).
882]
883[Qualified import of Distribution.Simple.Setup in Distribution.Simple.Haddock
884Thomas Tuegel <ttuegel@gmail.com>**20100623193755
885 Ignore-this: ec5750f56b22f67e5862036fcdd8ecee
886]
887[Using path templates to name test log files
888Thomas Tuegel <ttuegel@gmail.com>**20100622162317
889 Ignore-this: af6564bf6154e29e363ee343c9fc5806
890 Ticket #215 (Overhaul support for packages' tests).
891]
892[More docs about the meaning of the cabal-version field
893Duncan Coutts <duncan@haskell.org>**20101010154251
894 Ignore-this: 381ede9227f7a9db78f1007364660648
895]
896[Document how Cabal-Version affects behaviour of build-depends
897Ben Millwood <haskell@benmachine.co.uk>**20100926025550
898 Ignore-this: ba6367db93c15906331457a0468db436
899]
900[initial support for building executables with UHC
901Atze Dijkstra <atze@cs.uu.nl>**20100923214130
902 Ignore-this: bbbf1adcec2fcfe87ce1db18c804f21a
903]
904[Added flags related to UHC, uhcbase package
905Atze Dijkstra <atze@cs.uu.nl>**20100706115341
906 Ignore-this: f7dd2b14e3146f8844635ddcb70ac3b9
907]
908[Minor changes to the auto-reconfiguration feature.
909Duncan Coutts <duncan@haskell.org>**20101010144111
910 Ignore-this: 944f595482ea42eb1907fb1150d6d4c0
911 Change the messages slightly. Make configure return the
912 new lbi, rather than having to re-read the lbi from file
913 (avoiding potential infinite loop if the IO failed).
914]
915[Auto-reconfiguration when .cabal is newer than setup-config
916Dmitry Astapov <dastapov@gmail.com>**20100825131106
917 Ignore-this: 22ab2b6de0251f6cf1da7c2538544d4
918 
919 This patch adds "ConfigFlags" to the "LocalBuildInfo" and reuses them to
920 perform "configureAction" when .cabal file is changed. This has
921 the same effect as re-running "configure" with the most recent used
922 set of options, which should be the sensible thing to do.
923 
924 Closes #294, #477, #309 and #518.
925]
926[Fix processing of ghc-shared-options
927Duncan Coutts <duncan@haskell.org>**20101009204809
928 Ignore-this: 571b3d70fbc705282b9fdfdafdc2f009
929 Original patch was:
930   Sun Oct  7 13:41:53 BST 2007  Thorkil Naur <naur@post11.tele.dk>
931     * Fix processing of shared options
932 Re-recorded due to code churn
933]
934[Correct spelling of 'transative'
935Duncan Coutts <duncan@haskell.org>**20101009202836
936 Ignore-this: fe7ec5ae621135024403ae0aa42094c2
937 Original patch by:
938   Thu Aug 21 21:19:51 MDT 2008  dbueno@gmail.com
939     * Correct spelling of 'transative'.
940 Re-recorded due to conflict.
941]
942[print a warning if repository location isn't specified and the cabal project looks like being tracked by a version control system
943marco-oweber@gmx.de**20091129192013
944 Ignore-this: 5ce5073f1793193e437353490eff0276
945]
946[Bump Cabal HEAD version to 1.11.0
947Duncan Coutts <duncan@haskell.org>**20101010154518
948 Ignore-this: 407e2b1c0de8c10f399841b3fbea1dd3
949]
950[TAG 1.10 branch forked
951Duncan Coutts <duncan@haskell.org>**20101010155050
952 Ignore-this: 7b0241166f919e2a374a2a69669b2e6b
953]
954Patch bundle hash:
9551765c4f13bee8349500b32d4717f271897586ead