[darcs-users] darcs patch: Revert --restrict-paths removal. (and 2 more)

Eric Kow kowey at darcs.net
Fri Jan 2 22:49:15 UTC 2009


Florent,

Is there any chance you would be available to review this patch?  I'm
asking because Dmitry's laptop is broken and he is consequently out of
action :-)

Also, darcs users and hackers, any objections in principle?

On Fri, Jan 02, 2009 at 08:39:32 -0800, David Caldwell wrote:
> 2 years ago someone wrote code for the --restrict-paths and
> --dont-restrict-paths option but never hooked them up the the
> appropriate commands. About 2 months ago someone else took the options
> out since they weren't really being used. These patches revert the
> removal and hook the commands up to the darcs pull and darcs apply.
> 
> I can now darcs pull a darcs repo that has another darcs repo
> embedded. Ahhh....
> 
> -David
> 
> Fri Jan  2 02:17:05 PST 2009  David Caldwell <david at porkrind.org>
>   * Revert --restrict-paths removal.
> 
> Fri Jan  2 02:17:26 PST 2009  David Caldwell <david at porkrind.org>
>   * Add --restrict-paths (and --dont-restrict-paths) to "darcs pull".
> 
> Fri Jan  2 02:17:37 PST 2009  David Caldwell <david at porkrind.org>
>   * Add --restrict-paths (and --dont-restrict-paths) to "darcs apply".

Content-Description: A darcs patch for your repository!
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 
> New patches:
> 
> [Revert --restrict-paths removal.
> David Caldwell <david at porkrind.org>**20090102101705
>  Ignore-this: 1fba1f9a589aaabb1fa27a268f7c972e
> ] hunk ./src/Darcs/Arguments.lhs 32
>                           DarcsOption( .. ), option_from_darcsoption,
>                           help, list_options, list_files,
>                           help_on_match,
> - -                         any_verbosity, disable,
> +                         any_verbosity, disable, restrict_paths,
>                           notest, test, working_repo_dir,
>                           testByDefault,
>                           remote_repo,
> hunk ./src/Darcs/Arguments.lhs 463
>  working_repo_dir :: DarcsOption
>  possibly_remote_repo_dir :: DarcsOption
>  disable :: DarcsOption
> +restrict_paths :: DarcsOption
>  
>  pipe_interactive, all_pipe_interactive, all_interactive, all_patches, interactive, pipe,
>    human_readable, diffflags, allow_problematic_filenames, noskip_boring,
> hunk ./src/Darcs/Arguments.lhs 1498
>  \end{code}
>  
>  \begin{options}
> +--dont-restrict-paths, --restrict-paths
> +\end{options}
> +By default darcs is only allowed to manage and modify files and directories
> +contained inside the current repository and not being part of any darcs
> +repository's meta data (including the current one). This is mainly for
> +security, to protect you from spoofed patches modifying arbitrary files
> +with sensitive data---say, in your home directory---or tempering with any
> +repository's meta data to switch off this safety guard.
> +
> +But sometimes you may want to manage a group of ``sub'' repositories'
> +preference files with a global repository, or use darcs in some other
> +advanced way. The best way is probably to put
> +\verb!ALL dont-restrict-paths! in \verb!_darcs/prefs/defaults!. This turns
> +off all sanity checking for file paths in patches.
> +
> +Path checking can be temporarily turned on with \verb!--restrict-paths! on
> +the command line, when pulling or applying unknown patches.
> +
> +\begin{code}
> +restrict_paths =
> +    DarcsMultipleChoiceOption
> +    [DarcsNoArgOption [] ["restrict-paths"] RestrictPaths
> +     "don't allow darcs to touch external files or repo metadata",
> +     DarcsNoArgOption [] ["dont-restrict-paths"] DontRestrictPaths
> +     "allow darcs to modify any file or directory (unsafe)"]
> +\end{code}
> +
> +\begin{options}
>  --allow-unrelated-repos
>  \end{options}
>  By default darcs checks and warns user if repositories are unrelated when
> [Add --restrict-paths (and --dont-restrict-paths) to "darcs pull".
> David Caldwell <david at porkrind.org>**20090102101726
>  Ignore-this: dd3bc04632d341be16709e0aee6753ec
> ] hunk ./src/Darcs/Commands/Pull.lhs 41
>                           test, dry_run,
>                           set_default, summary, working_repo_dir, remote_repo,
>                           set_scripts_executable, nolinks,
> - -                         network_options, umask_option, allow_unrelated_repos
> +                         network_options, umask_option, allow_unrelated_repos, restrict_paths
>                        )
>  import Darcs.Repository ( Repository, SealedPatchSet, identifyRepositoryFor, withGutsOf,
>                            amInRepository, withRepoLock, ($-), tentativelyMergePatches,
> hunk ./src/Darcs/Commands/Pull.lhs 97
>                                                   ignoretimes,
>                                                   remote_repo,
>                                                   set_scripts_executable,
> - -                                                 umask_option] ++
> +                                                 umask_option,
> +                                                 restrict_paths] ++
>                                                  network_options,
>                       command_basic_options = [match_several,
>                                                all_interactive,
> [Add --restrict-paths (and --dont-restrict-paths) to "darcs apply".
> David Caldwell <david at porkrind.org>**20090102101737
>  Ignore-this: f6ab937573bf0d5397361ddefed902c9
> ] hunk ./src/Darcs/Commands/Apply.lhs 46
>                          all_interactive, sendmail_cmd,
>                          leave_test_dir, happy_forwarding, 
>                          dry_run, print_dry_run_message_and_exit,
> - -                        set_scripts_executable
> +                        set_scripts_executable, restrict_paths
>                        )
>  import qualified Darcs.Arguments as DarcsArguments ( cc )
>  import Darcs.RepoPath ( toFilePath, useAbsoluteOrStd )
> hunk ./src/Darcs/Commands/Apply.lhs 108
>                                                    happy_forwarding,
>                                                    sendmail_cmd,
>                                                    ignoretimes, nocompress,
> - -                                                  set_scripts_executable, umask_option],
> +                                                  set_scripts_executable, umask_option,
> +                                                  restrict_paths],
>                        command_basic_options = [verify,
>                                                all_interactive]++dry_run++
>                                                [apply_conflict_options,
> 
> Context:
> 
> [remove --restrct-paths from the manual
> Jason Dagit <dagit at codersbase.com>**20081115205752] 
> [remove unused export restrict_paths in Arguments
> Jason Dagit <dagit at codersbase.com>**20081115205717] 
> [Workaround issue1292: disable Haskeline by default, for now.
> Judah Jacobson <judah.jacobson at gmail.com>**20081230062721
>  Ignore-this: 36e64538118d4788a6f6d50a6bbdb930
>  The Haskeline backend doesn't return non-ASCII input in a way that Darcs can process.  The next
>  release of Haskeline should make it easier to resolve this issue.
> ] 
> [Improve readability of bug reporting.
> Trent W. Buck <trentbuck at gmail.com>**20081226120833
>  Moving "at <location>" to the first line gives the descriptive string
>  a line all to itself.  For example, darcs show bug:
>  
>      darcs: bug at src/Darcs/Commands/ShowBug.lhs:57 compiled Nov  4 2008 12:05:43
>      This is actually a fake bug in darcs.
> ] 
> [Use imperative mood for primitive matcher help.
> Trent W. Buck <trentbuck at gmail.com>**20081228114434] 
> [Check GADT witnesses when doing Cabal-based builds.
> Petr Rockai <me at mornfall.net>**20081228111229] 
> [Fix haddock error
> Eric Kow <kowey at darcs.net>**20081227204218
>  Ignore-this: 60f05d20e5f37312f6b477067114fac7
> ] 
> [Haddock for primitiveMatchers (untested).
> Trent W. Buck <trentbuck at gmail.com>**20081227141921] 
> [Rewrite primitive matcher examples.
> Trent W. Buck <trentbuck at gmail.com>**20081227141845] 
> [Rewrite "darcs help --match" output.
> Trent W. Buck <trentbuck at gmail.com>**20081227141819
>  Add an introductory paragraph, and put all the examples into a single
>  code block, since one-line paragraphs are kind hard to read.
> ] 
> [Delete superfluous "Introduction" headings.
> Trent W. Buck <trentbuck at gmail.com>**20081227034129
>  I don't think it's useful to grant a subsection heading to the single
>  introductory paragraph of a section.
> ] 
> [Refactor error text for readability.
> Trent W. Buck <trentbuck at gmail.com>**20081109144007] 
> [Tweak user manual's title page.
> Trent W. Buck <trentbuck at gmail.com>**20081227011031
>  It annoyed me that the user manual was just called "Darcs", not "Darcs
>  User Manual".
> ] 
> [Improve readability of bug reporting.
> Trent W. Buck <trentbuck at gmail.com>**20081226104243
>  Moving "at <location>" to the first line gives the descriptive string
>  a line all to itself.  For example, darcs show bug:
>  
>      darcs: bug at src/Darcs/Commands/ShowBug.lhs:57 compiled Nov  4 2008 12:05:43
>      This is actually a fake bug in darcs.
> ] 
> [Haddockize developer comment.
> Trent W. Buck <trentbuck at gmail.com>**20081214041902] 
> [Fix a memory leak in Darcs.Repository.Repair.
> Petr Rockai <me at mornfall.net>**20081223122227
>    
>  The way we repaired patches forced the whole repository into memory. We now
>  only store patches that we have actually changed and "zip" them back into the
>  repository using replaceInFL.
> ] 
> [resolve issue1273: Work around a race in download code.
> Petr Rockai <me at mornfall.net>**20081225211634
>  
>  When we had multiple darcsen downloading the same repo, with cache enabled,
>  they would stomp on each other's temporary files and die horribly.
> ] 
> [Fix GNU-isms (cp -a, sed -i) in tests/repair-corrupt.sh.
> Petr Rockai <me at mornfall.net>**20081224083145] 
> [Darcs.ColorPrinter: factor out getPolicy call
> gwern0 at gmail.com**20081222180227
>  Ignore-this: aee5b5415ee8bbfe1dac06e240b90080
>  Less redundancy. 'getPolicy' is being called with the same args, and it's
>  not like the environmental variables are going to change in between each
>  call.
> ] 
> [Add a rudimentary test for repair of a corrupt repository.
> Petr Rockai <me at mornfall.net>**20081223084036] 
> [Make it possible to run just specific tests from cabal commandline.
> Petr Rockai <me at mornfall.net>**20081223083742
>  
>  All of `cabal test repair-corrupt bugs/newlines bugs/issue27.sh` should work as
>  expected. The implementation is not very efficient, but seems to work fine.
> ] 
> [Neatify "cabal test" option munging in Setup.lhs.
> Petr Rockai <me at mornfall.net>**20081223080811] 
> [Sort the list of tests that are run by cabal.
> Petr Rockai <me at mornfall.net>**20081223073642] 
> [Remove now-unused replacePristine.
> Petr Rockai <me at mornfall.net>**20081210065138] 
> [Add missing tests-related files to darcs.cabal.
> Petr Rockai <me at mornfall.net>**20081219012851] 
> [Bump version to 2.2.0pre1.
> Petr Rockai <me at mornfall.net>**20081219010555] 
> [resolve issue948: rewrite darcsman.
> Trent W. Buck <trentbuck at gmail.com>**20081221081934
>  
>  Significant changes are:
>  
>   - Avoid duplicating groups from TheCommands.
>   - Due to growing command_helps, list commands in SYNOPSIS.
>   - Use subsections (.SS) for groups.
>   - Include (with fancy markup!) command arguments.
>   - Include darcs help --match.
>   - Copy-and-paste description from darcs.cabal.
>   - Remove AUTHORS section as suggested by man-pages(7).
>   - Declare my copyright.
>  
> ] 
> [Tweak punctuation in "darcs help --match".
> Trent W. Buck <trentbuck at gmail.com>**20081221080949
>  
>  Manpages treat apostrophes in the first line specially.  Use `TeX
>  style' quotes instead, so this string can be included in the manpage.
>  
>  Also omit mention of &&, || and ! until I find time to clarify that
>  they are aliases for the human-readable and, or and not.
> ] 
> [To "make dist" we need .depend.
> Trent W. Buck <trentbuck at gmail.com>**20081219014641
>  
>  I have also excluded slowdisttest, because it depends on darcs (via
>  test_unit) and thus needs to compile things.
>  
>  Finally, splitting the "include" line in two again hopefully fixes a
>  confusing transient error because to build .depend, autoconf.mk must
>  already be built and sourced!
>  
>  This is essentially a partial rollback of the following patches:
>  
>  Sat Oct 25 12:22:08 EST 2008  Trent W. Buck <trentbuck at gmail.com>
>    * Refactor targets that prevent "include autoconf.mk" (and .depend).
>    As well as being clearer, this is now a good deal more liberal. For
>    example, it won't rebuild .depend during "make maintainer-clean".
>  
>  Sun Nov  2 15:53:59 EST 2008  Trent W. Buck <trentbuck at gmail.com>
>    * Merge autoconf.mk and .depend inclusion.
>  
>    In a declarative expert system like Make, it shouldn't matter where
>    .depend is included.  Actual experiments suggest that it does, and
>    putting it at the top will help avoid illogical behaviour.
> ] 
> [Bump darcs version to 2.2 in cabal file.
> Salvatore Insalaco <kirby81 at gmail.com>**20081217104953
>  Ignore-this: 14e33b627ddde6759addb286f6fe2fa
> ] 
> [Remove pkgconfig check for curl on Windows.
> Salvatore Insalaco <kirby81 at gmail.com>**20081217104754
>  Ignore-this: 663d4019bb8da4277a2b3a96450e3cc4
> ] 
> [Disable haskeline on Windows by default.
> Salvatore Insalaco <kirby81 at gmail.com>**20081217104336
>  Ignore-this: 9c1f7748012a3f836b741632de9c80df
> ] 
> [Add missing modules (Autoconf, ThisVersion) to the cabal file
> Ian Lynagh <igloo at earth.li>**20081216011742] 
> [fix list command to select accepted patches only
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081215201740
>  Ignore-this: 3578f67dfa0a05ac350b4398592233ba
> ] 
> [Have "make tags" generate TAGS, too.
> Trent W. Buck <trentbuck at gmail.com>**20081213085308] 
> [Move format documentation hunks from Init.lhs to formats.tex.
> Trent W. Buck <trentbuck at gmail.com>**20081214032133
>  
>  This discussion already takes place in formats.tex; having parts of it
>  in Init.lhs is confusing both for readers and for contributors trying
>  to keep the documentation up-to-date.
>  
>  This patch doesn't attempt to refactor or properly integrate the
>  hunks; it just moves them verbatim.
> ] 
> [The cache is enabled by default.
> Trent W. Buck <trentbuck at gmail.com>**20081214024439] 
> [Minor cleanups in Get, Convert, Flags
> Florent Becker <florent.becker at ens-lyon.org>**20081212155718
>  Ignore-this: d6e2418e6225d8f40bb22edc94c68fed
> ] 
> [Remove --no-pristine test which is no longer relevant
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081212104743
>  Ignore-this: 6fd58a45ff45c53d723d79057502881f
> ] 
> [Remove unused import
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081212104644
>  Ignore-this: 58ba17e56f47fed8e535b5b3a7f43000
> ] 
> [Do not use replacePristine in copyFullRepository.
> Petr Rockai <me at mornfall.net>**20081210065120] 
> [fix regression in default behavior or check.
> David Roundy <droundy at darcs.net>**20081208131416
>  Ignore-this: 28a7edd9f5b3afddcf246fd1657775f9
>  At the same time, clean up default handling of test just a tad.
> ] 
> [fix bug in check.
> David Roundy <droundy at darcs.net>**20081207141115
>  Ignore-this: a177fb977e77c79cd5d0d0ba4ca987d2
> ] 
> [Tell user it's safe to abort after external merge
> Florent Becker <florent.becker at ens-lyon.org>**20081212100311
>  Ignore-this: 9dcc44849ccf3acb79a4a5dcc35cd6ba
> ] 
> [avoid ln -f flag to fix api doc building
> Simon Michael <simon at joyful.com>**20081209204655
>  Ignore-this: b09aa246e752cfa0a701090b9b94252
> ] 
> [Remove the choice between --pristine-tree and --no-pristine-tree.
> Eric Kow <kowey at darcs.net>**20081209110027
>  Ignore-this: b3e36e81099e912663d3a1b6268f8848
>  This just removes the switches and their documentation, not the code that
>  actually creates such repositories or recognises --no-pristine-tree
>  repositories.
> ] 
> [fix bug in checkpoint generation.
> David Roundy <droundy at darcs.net>**20081210154208
>  Ignore-this: 1eee1b2d44e459096ac59eb0dd837afc
> ] 
> [Remove obsolete (unused) checkPristineAgainstCwd and checkPristine.
> Petr Rockai <me at mornfall.net>**20081210062937] 
> [Fix build flags of darcs executable in cabal.
> Salvatore Insalaco <kirby81 at gmail.com>**20081209184405
>  Ignore-this: fa6c521300d6a60237418e22733ad6fa
> ] 
> [Remove all references to makeRelative
> Salvatore Insalaco <kirby81 at gmail.com>**20081209183850
>  Ignore-this: 846533678645a299a976ec48d2719cdf
> ] 
> [Fix whitespace in Darcs.ProgressPatches
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081209164902
>  Ignore-this: 6e9aa4ae6f857ea904a48744aeb80bf2
> ] 
> [add a list all selected things command to text_select
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081209155352
>  Ignore-this: e3ec0367f2a52aaa0f7bd4e273c12e81
> ] 
> [resolve issue1249: remove makeRelative usage in defaultrepo
> Salvatore Insalaco <kirby81 at gmail.com>**20081209121553
>  Ignore-this: 2670c16531c03c93b7d82111c28d51e4
>  
>  makeRelative causes issues with Windows absolute paths
>  e.g. c:\something. It is used only in defaultrepo, and
>  it appears to be a leftover from previous path management.
>  This patch removes it, making defaultrepo management more
>  like "regular" command line repo management.
>  Note that the makeRelative code is not removed in this
>  patch, just the usage.
> ] 
> [resolve issue1165: tag feedback for progress in get
> florent.becker at ens-lyon.org**20081209115229
>  Ignore-this: 91d3217e38e6b8e5d581ef27059c1cc9
>  Make darcs get print the following as its progression indicator:
>  42/1664 back to: TAG ada strawberry
>  Where "ada strawberry" is the most recent tag that was effectively fetched.
>  This makes it easier to know when to hit Ctrl-C
> ] 
> [Some cleaning in progress.hs, move it to src/, split darcsish bits
> florent.becker at ens-lyon.org**20081209112803
>  Ignore-this: 96ed60798c193b67821399476786f859
>  Split src/Darcs/Progress.hs into:
>   - src/Progress.hs for the general functionalities, might be worth releasing
>   outside darcs proper
>   - src/Darcs/ProgressPatches.hs for the darcsish stuff, progressFL 
>   and progressRL
> ] 
> [Simplify build dependencies: put is_tag in Patch.Info
> florent.becker at ens-lyon.org**20081208102357
>  Ignore-this: b6d44e86a4f12e9dc5f8f32bbc50df23
> ] 
> [cut unused run_test
> David Roundy <droundy at darcs.net>**20081207141201
>  Ignore-this: cdc8a2b58695be5ac318b3e5634339cd
> ] 
> [resolve issue1247: avoid reference to removed $CTAGS variable.
> Trent W. Buck <trentbuck at gmail.com>**20081207022013
>  This was just a simple typo on my part.
> ] 
> [Further simplify "darcs put" help.
> Trent W. Buck <trentbuck at gmail.com>**20081207040323] 
> [Refactor "darcs put" help.
> Trent W. Buck <trentbuck at gmail.com>**20081206112917] 
> [Expose modules as a library in darcs.cabal
> Eric Kow <kowey at darcs.net>**20081125102729
>  Ignore-this: 4bfd8b48d4bf0519e7cb803ae62266b3
> ] 
> [Added support for using the utf8-string library if it's available
> Rob Hoelz <rob at hoelzro.net>**20080809171510] 
> [Refactor "darcs dist" help.
> Trent W. Buck <trentbuck at gmail.com>**20081130011414] 
> [tests/*: rm IFS hack from selected subset
> gwern0 at gmail.com**20081130234814
>  Ignore-this: 46af9351b82f9d8d8b497e9c1cce6b21
> ] 
> [Fix haddock error
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081130111241
>  Ignore-this: ab270cce2bc0aaa5c2d1f284705a027d
> ] 
> [Refactor "darcs tag" help.
> Trent W. Buck <trentbuck at gmail.com>**20081129224224] 
> [Refactor "darcs check" help.
> Trent W. Buck <trentbuck at gmail.com>**20081129120817] 
> [Refactor "darcs unrevert" help.
> Trent W. Buck <trentbuck at gmail.com>**20081129115913] 
> [Enable haskeline by default in the Cabal file.
> Judah Jacobson <judah.jacobson at gmail.com>**20081129165047
>  Ignore-this: feeab33d5e512487a13b1a09300f5a60
> ] 
> [Don't use the terminfo package on Windows (Cabal).
> Judah Jacobson <judah.jacobson at gmail.com>**20081128194821
>  This lets us use terminfo by default while not breaking the Windows build.
> ] 
> [Rollback disabling of terminfo by default.
> Judah Jacobson <judah.jacobson at gmail.com>**20081128173611] 
> [Refactor "darcs mark-conflicts" help.
> Trent W. Buck <trentbuck at gmail.com>**20081129015407] 
> [Refactor "darcs whatsnew" help.
> Trent W. Buck <trentbuck at gmail.com>**20081129045756] 
> [resolve issue1238: refactor "darcs setpref" help.
> Trent W. Buck <trentbuck at gmail.com>**20081128125305] 
> [Disable terminfo by default (Cabal)
> Eric Kow <kowey at darcs.net>**20081128120951
>  Ignore-this: 18de9bcaf3b380cf8c1d1b6565321297
>  Salvatore points out that the terminfo package does not install on Windows
> ] 
> [Refactor take/repeat as replicate.
> Trent W. Buck <trentbuck at gmail.com>**20081128114653] 
> [Refactor "darcs transfer-mode" help.
> Trent W. Buck <trentbuck at gmail.com>**20081127123101] 
> [Bump cabal version to 2.1.2.3
> Eric Kow <kowey at darcs.net>**20081126195252
>  Ignore-this: 78bcf676f83a67ff547ad9aa529166c3
> ] 
> [Disable external-zlib by default (darcs.cabal)
> Eric Kow <kowey at darcs.net>**20081126195237
>  Ignore-this: bfac85e5425df8d8386abd586934d17d
> ] 
> [Remove unit testing modules form darcs.cabal
> Eric Kow <kowey at darcs.net>**20081125101839
>  Ignore-this: 66a158494870dd8d548d66fc6a7658eb
> ] 
> [Refactor "darcs add" help.
> Trent W. Buck <trentbuck at gmail.com>**20081124134407] 
> [Refactor "darcs amend-record" help.
> Trent W. Buck <trentbuck at gmail.com>**20081124134349] 
> [Refactor "darcs repair" help.
> Trent W. Buck <trentbuck at gmail.com>**20081124134152] 
> [Refactor "darcs help" help.
> Trent W. Buck <trentbuck at gmail.com>**20081124133935] 
> [resolve issue1199: Backup files darcs added after external merge
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081125092916
>  Ignore-this: bc5c1365bdf4ca70073a85712f00e21c
> ] 
> [Remove empty literate blocks from src/*.lhs.
> Trent W. Buck <trentbuck at gmail.com>**20081124113021
>  I used perl -pi -0 -e 's/\n*\\end{code}\n*\\begin{code}\n*/\n\n/g'.
> ] 
> [Remove empty literate blocks from src/Darcs/*.lhs.
> Trent W. Buck <trentbuck at gmail.com>**20081124112956
>  I used perl -pi -0 -e 's/\n*\\end{code}\n*\\begin{code}\n*/\n\n/g'.
> ] 
> [Remove empty literate blocks from src/Darcs/Repository/*.lhs.
> Trent W. Buck <trentbuck at gmail.com>**20081124112938
>  I used perl -pi -0 -e 's/\n*\\end{code}\n*\\begin{code}\n*/\n\n/g'.
> ] 
> [Remove empty literate blocks from src/Darcs/Patch/*.lhs.
> Trent W. Buck <trentbuck at gmail.com>**20081124112916
>  I used perl -pi -0 -e 's/\n*\\end{code}\n*\\begin{code}\n*/\n\n/g'.
> ] 
> [Remove empty literate blocks from src/Darcs/Commands/*.lhs.
> Trent W. Buck <trentbuck at gmail.com>**20081124112636
>  I used perl -pi -0 -e 's/\n*\\end{code}\n*\\begin{code}\n*/\n\n/g'.
> ] 
> [Fix haddock for unsafeDiffAtPaths.
> Reinier Lamers <tux_rocker at reinier.de>**20081115211420
>  Ignore-this: f857de0b4f2d3fa2c7daa18b7a52a224
> ] 
> [Add very rudimentary haddocks in Darcs.Patch.{Non,Real}.hs
> Jason Dagit <dagit at codersbase.com>**20081123204958] 
> [Appease ghc-6.10 type witnesses in SelectChanges.
> Jason Dagit <dagit at codersbase.com>**20081123085733
>  Ignore-this: b4db36fc77072c2dbefc27496cbc33e
> ] 
> [Appease ghc-6.10 on witness types in Repository.Internal.
> Jason Dagit <dagit at codersbase.com>**20081123085140
>  Ignore-this: 73899c04b7af77af77a33798abd7ec41
>  Introduce a local function, doChanges, so we can give more rigid types.
> ] 
> [Appease ghc-6.10 on witness types.
> Jason Dagit <dagit at codersbase.com>**20081123083650
>  Ignore-this: 916417e4ae63cf9e966a1c703716690f
>  Introduces f and g_s as local functions to appease the ghc-6.10 type
>  checker.
> ] 
> [Point to new shorter URL for binaries wiki page.
> Eric Kow <kowey at darcs.net>**20081122083014] 
> [Rollback IFS removal
> Eric Kow <kowey at darcs.net>**20081121230952
>  Removing this seems to break for the case where there is a space in the
>  path
>  
>  rolling back:
>  
>  Fri Nov 21 21:29:21 GMT 2008  gwern0 at gmail.com
>    * tests/*.sh: rm vitiated IFS variable
>    Originally there to help portable_pwd on Cygwin. We no longer need it.
> ] 
> [Appease ghc-6.10 witnesses in Real.hs.
> Jason Dagit <dagit at codersbase.com>**20081121174926
>  Ignore-this: 5b9d1a02a88ced416d650bffa2a76645
>  Introduce a local function to get rid of another non-rigid type in a
>  pattern match.
> ] 
> [Appease ghc-6.10 witnesses in Prim.lhs.
> Jason Dagit <dagit at codersbase.com>**20081121173215
>  Ignore-this: 9289f3ece580ccdff1ba583aa1140562
>  I introduce sc in the where-clause so that the case-expression can
>  have a rigid type at the point of pattern match.  This patch would
>  have a few less redundant bits, except that the existentials wouldn't
>  quite unify otherwise.  This is why I introduced p1'.
> ] 
> [tests/*.sh: rm vitiated IFS variable
> gwern0 at gmail.com**20081121212921
>  Ignore-this: f795b7ad4f9a52a9b59cdcca24fa7de9
>  Originally there to help portable_pwd on Cygwin. We no longer need it.
> ] 
> [documentation/website: Fix bigpage compilation.
> Eric Kow <kowey at darcs.net>**20081121092030
>  Bigpage should be compiled from doc/manual/darcs.tex, not src/darcs.tex
>  The first is a giant tex file manufactured by preproc; the second is
>  what used to be the literate source in darcs.lhs.
> ] 
> [Use let to avoid duplication in Darcs.Patch.Real.
> Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081120223434
>  Ignore-this: 76b6f7c7c88c0a95436878b1cdc77caa
> ] 
> [Make darcs.pdf just a copy of darcs_print.pdf and likewise for darcs.ps
> Eric Kow <kowey at darcs.net>**20081119175845
>  Ignore-this: 79407b453c89224d6bb895fff40ba596
>  This fixes a likely regression in which darcs.pdf was compiled from
>  darcs.tex and not darcs_print.tex.  It seems like darcs.tex exists for
>  tools like latex2html.  Perhaps a better solution would be for that file
>  to be called darcs_html.tex.
> ] 
> [Remove seemingly unused ps/pdf targets
> Eric Kow <kowey at darcs.net>**20081119174858
>  Ignore-this: b6765af06196140b3a7934841306da1d
>  These targets, for example, copy src/foo.pdf to doc/manual/foo.pdf
>  But it seems like the makefile is instead designed to compile these
>  from doc/manual/foo.tex directly.
> ] 
> [Remove OPTIONS_GHC that GHC-6.10.1 warns as "deprecated"
> Thorkil Naur <naur at post11.tele.dk>**20081120170402
>  Remove all occurrences of -fallow-undecidable-instances, 
>  -fbang-patterns, and -fffi in {-# OPTIONS_GHC ... #-} lines. GHC-6.10.1 
>  warns that these options are deprecated. In addition, remove nearby -cpp
>  options. The removed OPTIONS_GHC options are all covered by 
>  corrresponding LANGUAGE options.
> ] 
> [add newlines to the default entries so we don't break the file
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081120091932
>  Ignore-this: 47cfad0c016be68d8f21fdd5cc68210f
> ] 
> [bump package version number for hackage
> Jason Dagit <dagit at codersbase.com>**20081120091843] 
> [correctly add Distribution/ShellHarness.hs to darcs.cabal
> Jason Dagit <dagit at codersbase.com>**20081120091826] 
> [sdist errors on trying to move tests/shell_harness
> Jason Dagit <dagit at codersbase.com>**20081120090417
>  This may not be an idea solution, but for now I just remove
>  tests/shell_harness from the cabal file.  Perhaps it should be
>  replaced with mention to the new shell_harness.hs.
> ] 
> [bump version number in darcs.cabal
> Jason Dagit <dagit at codersbase.com>**20081120090401] 
> [issue1043b now also resolved by David
> Eric Kow <kowey at darcs.net>**20081120000307] 
> [resolve issue1043: avoid use of sort_coalesceFL in Patch.Real.
> David Roundy <droundy at darcs.net>**20081119150234
>  Ignore-this: 79003144c8571ef746108e09192cb4ed
>  The trouble was that sort_coalesceFL does the "coalescing" which isn't
>  governed by strict rules.  This might have been fixed by changing
>  sort_coalesceFL to also run canonize, but the cleaner solution is to
>  simply acknowledge that what I really wanted was just to join together
>  pairs of inverses, which is much easier than the problem
>  sort_coalesceFL is trying to solve.
> ] 
> [code clarification
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081025204519] 
> [resolve issue1117: warn if file does not exist in whatsnew
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081119155734
>  Ignore-this: 96cb2370609e7acd9d0137725f5e56b5
> ] 
> [shell_harness.hs hSetBuffering stdout NoBuffering
> Thorkil Naur <naur at post11.tele.dk>**20081118220043
>  Not a big deal, but this makes the output from shell_harness.hs a
>  bit more entertaining.
> ] 
> [Harden release/STATE munger.
> Trent W. Buck <trentbuck at gmail.com>**20081118012512
>  
>  This fixes the short name DARCS_VERSION_WITH_PATCHES when
>  release/STATE looks like "2.1.1rc2 (release candidate 2)" rather than
>  "2.1.1rc2 (+ 533 patches)".
> ] 
> [resolve issue1101: also display cc'ed recipients
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081115133214
>  Ignore-this: 9955a84598aa60e14f5471c02ec0d9b8
> ] 
> [Move make_repo_name after identifyRepoFormat in get.
> Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081118114246
>  Ignore-this: a1d4f7f0b3321652acd3ea1288d6bff5
>  Fixes darcs printing "Directory already exists, creating repository as"
>  in case of bad repo or network failure, when no directory is created in
>  fact.
> ] 
> [Trivially extend unit test to work with Pavel's extended make_email.
> Eric Kow <kowey at darcs.net>**20081118122415
>  Note that this only passes in an empty list of extra headers.  It may
>  also be useful in the future to automatically generate extra headers
>  for our write-read test.
> ] 
> [tests/README: add a section warning about use of 'yes' and 'find'
> gwern0 at gmail.com**20081117205213
>  Ignore-this: 618f92168403e6261fd68218fec82656
> ] 
> [tests/*: per kowey, replace all portable_pwd with hspwd
> gwern0 at gmail.com**20081117193340
>  Ignore-this: bca937aa253b5a13feae0ea8a3edf152
> ] 
> [tests/lib: scrap portable_pwd definition for alias to hspwd
> gwern0 at gmail.com**20081117192517
>  Ignore-this: ff9d290cf3d430c4de2d7e426dff79d3
> ] 
> [Replace workaround with fix (Windows' sort doesn't have -o).
> Trent W. Buck <trentbuck at gmail.com>**20081118014158
>  
>  rolling back:
>  
>  Mon Nov 17 07:44:22 EST 2008  Eric Kow <E.Y.Kow at brighton.ac.uk>
>    * Work around difference between Windows and Cygwin sort program in test
>  
>      M ./tests/query_manifest.sh +2
> ] 
> [Refactor Cabal package description.
> Trent W. Buck <trentbuck at gmail.com>**20081118071254
>  Based on the homepage description.
> ] 
> [Consistently punctuate cabal flag descriptions.
> Trent W. Buck <trentbuck at gmail.com>**20081118105924] 
> [Test for darcs send with --in-reply-to option
> Pavel Shramov <shramov at mexmat.net>**20081117185534] 
> [Add --in-reply-to flag for send command
> Pavel Shramov <shramov at mexmat.net>**20081117102056
>  
>  Patch adds --in-reply-to flag to darcs send and
>  modifies make_email function in Darcs/Email.hs to
>  accept list of additional headers.
>  
>  With --in-reply-to option two additional headers will be
>  added to email - In-Reply-To and References.
> ] 
> [in make file, quote the "$(DARCS_VERSION_WITH_PATCHES)" variable
> zooko at zooko.com**20081117141727
>  Ignore-this: 7f350c4b8b8e815e867dc88b38695b58
>  Because the release candidate version has spaces in its version string.
> ] 
> [Darcs works with regex-compat 0.92.
> Trent W. Buck <trentbuck at gmail.com>**20081117111239] 
> [don't run posthook if the command terminated with exitWith.
> David Roundy <droundy at darcs.net>**20081116230521
>  Ignore-this: d87d2bb442060d54284eef6bc27cc766
>  This is a change in policy, and means that for instance darcs pull -a will
>  only run the posthook if there are patches to pull.  It does mean that we
>  have to be careful how we exit commands, since this adds new meaning to
>  "exitWith ExitSuccess", but my audit of the code shows that this is only
>  used when I wouldn't want to run the posthook anyhow.
>  
>  Actually, I found two gratuitous uses of exitWith ExitSuccess, and have
>  removed them.
> ] 
> [tests/README.test_maintainers.txt: add a section on the use of lib
> gwern0 at gmail.com**20081117155840
>  Ignore-this: 8bdf4592849569c34c209eb40104c72f
> ] 
> [tests/*.sh: remove "set -ev" from all callers of lib
> gwern0 at gmail.com**20081117152754
>  Ignore-this: 8f00e36a574db7cd7ccd64c6610944e4
> ] 
> [tests/lib: rm shebang header
> gwern0 at gmail.com**20081117152152
>  Ignore-this: d6e4907818407ba473bf8ee972aff7fb
> ] 
> [mv lib.sh -> lib & update callers
> gwern0 at gmail.com**20081117152050
>  Ignore-this: 449b1a8deb686421d74afce2e3518fbb
> ] 
> [tests/*.sh: factor out windows abortion
> gwern0 at gmail.com**20081115210959
>  Ignore-this: 4b0d0fb42b53e43d8f3b8ca082566864
> ] 
> [tests/*.sh: factour out ~61 of the 'not' definitions to lib.sh
> gwern0 at gmail.com**20081115205735
>  Ignore-this: 889d88e1a4eb0c17447502fde02fdd0f
> ] 
> [tests/*.sh: factor out definitions of portable_pwd to lib.sh
> gwern0 at gmail.com**20081115201847
>  Ignore-this: dda84abdcd2e833273e5a0f9668deeb
> ] 
> [+tests/lib.sh: library for test scripts
> gwern0 at gmail.com**20081115201608
>  Ignore-this: 639f1e602f31949f93daab6053793127
>  This adds a file to the tests directory for storing function definitions. This will cut down on silliness like 'not' being defined  in 63 different scripts - the exact same way.
> ] 
> [Remove mention of unstable branch from the homepage
> Eric Kow <kowey at darcs.net>**20081117131411] 
> [Add --disable-unit to configure script
> Eric Kow <kowey at darcs.net>**20081117115625
>  Note that with this patch alone, this has no effect other than to disable
>  the test for QuickCheck
> ] 
> [Work around difference between Windows and Cygwin sort program in test
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081116204422] 
> [Add DARCS_TESTING_HOME to shell harness
> Eric Kow <eric.kow at gmail.com>**20081116180124
>  This enables Petr's workaround for Windows not using $HOME by default
> ] 
> [Conditionally compile out reset_umask on Windows
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081116161631] 
> [import Arguments just once in WhatsNew
> Jason Dagit <dagit at codersbase.com>**20081115210750] 
> [clean up unused exports in Arguments.lhs
> Jason Dagit <dagit at codersbase.com>**20081115205224] 
> [tighten up imports in preproc.hs
> Jason Dagit <dagit at codersbase.com>**20081115193944] 
> [tighten imports in Commands.lhs
> Jason Dagit <dagit at codersbase.com>**20081115193414] 
> [tighten up imports in Tag.lhs
> Jason Dagit <dagit at codersbase.com>**20081115192839] 
> [tighten up imports in Replace.lhs
> Jason Dagit <dagit at codersbase.com>**20081115192052] 
> [tighten up imports in Commands.Dist
> Jason Dagit <dagit at codersbase.com>**20081115191113] 
> [remove unused export for isa from Arguments
> Jason Dagit <dagit at codersbase.com>**20081115185607] 
> [Appease Windows by replacing find(1) with globbing.
> Trent W. Buck <trentbuck at gmail.com>**20081116020213
>  
>  On Windows, there are two utilities named "find".  The cygwin version
>  is Unix-like, but the native Windows version behaves more like grep.
>  If %PATH% makes the latter the default, $(shell find) does completely
>  the wrong thing.
>  
>  Therefore we use $(wildcard) instead.  This is actually better in
>  every respect bar one: it does not recurse.  This means that if
>  someone starts creating Haskell files in subsubsubdirs of src, they
>  won't be included by the current globs.
>  
>  Note that in GNU make, a glob expands to nothing if there are no
>  matches.  By contrast, sh globs expand to themselves in that case.
> ] 
> [issue525 fixed by David's patch
> Eric Kow <kowey at darcs.net>**20081115225739] 
> [Fix Darcs.Patch.Prim haddock
> Eric Kow <kowey at darcs.net>**20081115224010] 
> [resolve issue525: canonize output of sort_coalesceFL in AmendRecord.
> David Roundy <droundy at darcs.net>**20081115211925
>  Ignore-this: cb7485c971d7d8d6f7ffce9f9ec40e98
> ] 
> [Make test-network a .PHONY target
> Eric Kow <kowey at darcs.net>**20081114101217
>  Ignore-this: 58b2f5d4ee869f2105f8a05e42766dc4
> ] 
> [Create the .darcs directory in the test-network dir
> Eric Kow <kowey at darcs.net>**20081114101151
>  Ignore-this: d2d05cf3d18ba75c6a00f9c7500c298d
> ] 
> [Remove obsolete test-franchise .PHONY entry from makefile
> Eric Kow <kowey at darcs.net>**20081114101117
>  Ignore-this: 8d5d36dba70acaa297310ac94f7d8256
> ] 
> [Use Control.OldException if compiling shell harness with GHC 6.10
> Eric Kow <kowey at darcs.net>**20081114093740
>  Ignore-this: 5219c7e1b5a1dc4dbc607a729288e54d
> ] 
> [use ShellHarness in Setup.lhs
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081112183809
>  Ignore-this: 5322065b2d5d5595c01d22ca7ff527f
> ] 
> [Use the shell harness in Makefile
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081112194558
>  Ignore-this: bd01f57e24a840ddd474dca912258ef0
> ] 
> [make ShellHarness a module
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081112193615
>  Ignore-this: 814fb721a9a91bf35c189355c21e6e61
> ] 
> [move shell_harness to Distribution/ShellHarness.hs
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081112183642
>  Ignore-this: 1ae7f4587a9542a595e78e6523c8fbb0
> ] 
> [remove bash shell_harness
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081113194438
>  Ignore-this: 3621d4992e6cf5fbe8a1a8e1340a64a0
> ] 
> [on "make darcs-snapshot" make a copy of the executable in a directory named "snapshots" and named with its version number including patch count
> zooko at zooko.com**20081113175008
>  Ignore-this: 75ddfaf921e1e84ddf86cd1fef8cb77e
> ] 
> [replace `test -e' in makefile with either `test -d' or `test -f'
> Karel Gardas <kgardas at objectsecurity.com>**20081113173715
>  Ignore-this: 1ba6cf3262142b0d09f84570aab9b16a
>  This patch replaces usage of `test -e' in makefile with either usage
>  of `test -d' for testing directory of `test -f' for testing file. The
>  reason is that GNU make is using /bin/sh for running its commands and
>  `test -e' is not supported by Solaris' shell.
> ] 
> [Update darcs.cabal to reflect removal of homegrown filepath modules
> Eric Kow <kowey at darcs.net>**20081112162303
>  Ignore-this: 90192f5d97a18402fe43cb6f951755dd
> ] 
> [Generalise use of --optghc to all GHCFLAGS for haddock
> Eric Kow <kowey at darcs.net>**20081112162233
>  Ignore-this: b6bf56c82079b4e722f2faa53dccb9d2
>  This makes it possible for me to make api-doc with GHC 6.10
> ] 
> [Remove deprecated (and now unused) homegrown filepath modules
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081112154607
>  Ignore-this: 61d94b19c737251607d57e91b5b4a8d7
> ] 
> [Replace homegrown code with filepath functions in Darcs.Commands.Dist
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081113171047
>  Ignore-this: 673e6775d0c90b880478e1b0f2ef11e3
> ] 
> [Remove homegrown code with filepath equivalents in Darcs.Commands.Mv
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081112154541
>  Ignore-this: 57950f6ca7c396753fe8f13f05c3ecf2
> ] 
> [Replace homegrown code with filepath equivalents in Darcs.Commands.Add
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081112153944
>  Ignore-this: ee2e76b00e9683c6ffddb149648ae0af
> ] 
> [Specifically import System.FilePath.Posix in darcs commands
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081112153509
>  Ignore-this: 2a024c22ad2122fe5354b2982821273b
>  We want to document the fact that we are only using forward
>  slashes.
> ] 
> [Replace FilePathUtils.(///) with filepath equivalent in Darcs.Diff
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081112153114
>  Ignore-this: 59798326958df9e1c89864a35cd8ab5f
> ] 
> [Copy UglyFileName.patch_filename into Darcs.Commands.Send
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081112150818
>  Ignore-this: 36db426613ee907dad21996b1ab38c55
>  (which is the only place where it is used)
> ] 
> [Replace UglyFileName with filepath equivalents in Darcs.CommandsAux
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081112150646
>  Ignore-this: 79ef4a080cf711300b7953a8901cae98
> ] 
> [Replace our breakup with filepath's splitDirectories in Darcs.Lock
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081112150313
>  Ignore-this: 3b460204007863fe65a71dccac701bed
> ] 
> [make finds more portable
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081113125703
>  Ignore-this: 6f1b6ac29c96d200b93cad86013f5062
>  
>  This patch changes the way find -exec is used before. OpenBSD does
>  not support the -exec rm -f {} + syntax. So we stick to the less
>  performant -exec rm -f {} \;
>  
> ] 
> [Replace liftM with fmap in Darcs.Repository.Prefs
> Eric Kow <kowey at darcs.net>**20081112202148
>  Ignore-this: aa04437e8d10cf9f26c6a760fedbaff6
> ] 
> [Tidy up type signatures in Darcs.Repository.Prefs
> Eric Kow <kowey at darcs.net>**20081112202001
>  Ignore-this: 52b1925994627ce27b982fec4deefbc
> ] 
> [Tidy up global_cache_dir
> Eric Kow <kowey at darcs.net>**20081112201354
>  Ignore-this: f06c8f86c96eda4fe600c6731553b28b
> ] 
> [Resolve conflict between my UserProfile override and DARCS_TESTING_HOME
> Eric Kow <kowey at darcs.net>**20081112200457
>  Ignore-this: bceb8957061cea385cb8b4bbb7eec49e
>  We undo the UserProfile because it had no useful effect
> ] 
> [Enable .darcs location override through DARCS_TESTING_HOME that also works on Windows.
> Petr Rockai <me at mornfall.net>**20081111222806
>  
>  With only overriding $HOME, on win32 we get darcs still looking into the
>  windows-specific user data directory for .darcs, which in turn breaks the
>  testsuite (which relies on overriding HOME). This patch should address that
>  problem, albeit in a little inelegant fashion.
> ] 
> [Override UserProfile environment variable in (Perl) shell_harness
> Eric Kow <kowey at darcs.net>**20081112171634
>  Ignore-this: 36fcf89e63d690a662288f34432c472b
> ] 
> [Replace UglyFileName with filepath equivalents in Darcs.RepoPath
> Eric Kow <eric.kow at gmail.com>**20081028141522
>  Ignore-this: c685595782a0eb01e7b7c37da991e7b9
> ] 
> [Replace FilePathUtils.(///) with filepath equivalent in preproc
> Eric Kow <eric.kow at gmail.com>**20081027173947
>  Ignore-this: 99a21202f798d6423d047afe4b417403
> ] 
> [Specify that we want System.FilePath.Posix in Darcs.External
> Eric Kow <eric.kow at gmail.com>**20081027172514
>  Ignore-this: 8548e7e86f2c5dff1ddf0806e48bda15
>  to prevent the accidental creation of patches with backslashes
>  in their paths.
> ] 
> [Replace UglyFileName normalisation in Darcs.External
> Eric Kow <eric.kow at gmail.com>**20081027170454
>  Ignore-this: 53c57c63eead2574dcf3e211b376fd7f
>  with System.FilePath equivalent
> ] 
> [Replace basename with filepath's takeDirectory in Darcs.External.
> Eric Kow <eric.kow at gmail.com>**20081027165405
>  Ignore-this: 2a3eec675e9f63cc0549317564bfee54
>  Note that basename was a misnomer in the original code.
> ] 
> [Replace (++ "/" ++) with filepath's (</>) in Darcs.External.cloneTree
> Eric Kow <eric.kow at gmail.com>**20081027165044
>  Ignore-this: 2c820b01f52de3544dd05f87e88dbc50
> ] 
> [Replace absolute_dir with ioAbsoluteOrRemote in Darcs.Repository
> Eric Kow <eric.kow at gmail.com>**20081027155955
>  Ignore-this: 8f745c354308ca9406dbb2e54f66b600
>  only very superficially though
> ] 
> [Switch from absolute_dir to ioAbsoluteOrRemote in commands
> Eric Kow <eric.kow at gmail.com>**20081027142933
>  Ignore-this: 79e892ea2f0732367b8d293b550946e9
>  Note that this is only a superficial change, but it brings
>  us one step closer to getting rid of FilePathUtils.
> ] 
> [Add an AbsoluteOrRemotePath type
> Eric Kow <eric.kow at gmail.com>**20081024170048
>  Ignore-this: 8b2ec1303eea170b88f2c8081efd1315
> ] 
> [Trivial style improvement
> Duncan Coutts <duncan at haskell.org>**20081112133456] 
> [Fix compile failure in gzReadFilePS without HAVE_OLD_BYTESTRING
> Duncan Coutts <duncan at haskell.org>**20081112131210
>  The previous #ifdef HAVE_OLD_BYTESTRING changes made it work for
>  ghc-6.6 but fail for ghc-6.8+. This should work both ways round.
> ] 
> [Isolate overriding-defaults.sh failures to that test.
> Petr Rockai <me at mornfall.net>**20081111222759
>  
>  When this test previously failed, it left broken .darcs/defaults around. We
>  trap exits now and fixup the broken file.
> ] 
> [Fix shell_harness so it uses --ignore-times
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081112105646
>  Ignore-this: 4b07a9727f723ad917ec6145728c21e2
> ] 
> [Silence haskell_policy complaining about Setup.lhs.
> Petr Rockai <me at mornfall.net>**20081111222951] 
> [Allow "cabal test tests network bugs" as suggested by Trent.
> Petr Rockai <me at mornfall.net>**20081111110411] 
> [Include the testsuite in Cabal sdist.
> Petr Rockai <me at mornfall.net>**20081111095747] 
> [Fixes to the release/distributed-* file generation in Cabal sDistHook.
> Petr Rockai <me at mornfall.net>**20081111095332] 
> [Bundle the version/context data (produced by Setup.lhs sdist) in the tarball.
> Petr Rockai <me at mornfall.net>**20081111093452] 
> [Update Cabal file lists to match reality.
> Petr Rockai <me at mornfall.net>**20081111093426] 
> [Bundle version and context data in Cabal source distribution.
> Petr Rockai <me at mornfall.net>**20081111093342] 
> [Implement runTests hook for Cabal.
> Petr Rockai <me at mornfall.net>**20081111082551
>  
>  This makes it possible to run "cabal test", "cabal test bugs" and "cabal test
>  network". It has some Ctrl+C issues which probably relate to naive use of
>  "system" to run programs.
> ] 
> [Darcs works with regex-compat 0.91.
> Trent W. Buck <trentbuck at gmail.com>**20081111023911
>  Debian has been using this version for some time.
> ] 
> [Refactor DARCS_FILES to work around Solaris' buggy find(1).
> Trent W. Buck <trentbuck at gmail.com>**20081112010502
>  Sorry this is so ugly; at least it's still much shorter than the
>  whitelist that existed before I started refactoring the makefile.
> ] 
> [Remove silly sort.
> Trent W. Buck <trentbuck at gmail.com>**20081107023723
>  If .depend is doing its job, this list shouldn't need to be sorted,
>  and in any case $^ (but not $+) implicitly sorts and uniquifies.
> ] 
> [Fix filepath test
> Eric Kow <kowey at darcs.net>**20081111210909
>  Ignore-this: 5d3e1f532ce652620b964a9e693a82e5
> ] 
> [Fix get test (it was assuming a clean directory)
> Eric Kow <kowey at darcs.net>**20081111210615
>  Ignore-this: f73f5529f1f14d257ec3009492411444
>  Also make it clean up after itself and use more standard temp names.
> ] 
> [Resolve issue1223: Fix broken init.sh test
> Eric Kow <kowey at darcs.net>**20081111205233
>  Ignore-this: 6c619ab1614abe13d7eb15b320211733
> ] 
> [Fix regression in configure test for zlib.
> Eric Kow <kowey at darcs.net>**20081111171554
>  Ignore-this: df51bbbe12ebaf20d66e193f6960548f
>  I had replaced an
>    if test foo -a bar = baz
>  with
>    if bar = baz
> ] 
> [Use conditional compilation for Salvatore's strict readFile fix
> Eric Kow <kowey at darcs.net>**20081111145114
>  Ignore-this: bf4e3159d1bdd2cadbb7b007c64f5e6d
> ] 
> [Fix gzReadFilePS to close file descriptor even on old bytestrings.
> Salvatore Insalaco <kirby81 at gmail.com>**20081108084939
>  BL.readFile is not strict enough, and it actually leaves the file descriptor opened. This should not happen, and probably it's a bug with older bytestrings (the one shipped with ghc 6.8.x).
>  This causes issues on Windows, where an opened file cannot be deleted.
>  Using strict bytestring readFile, and then converting them to lazy bytestring (should be O(1)) fix the problem.
> ] 
> [Add configure check for bytestring 0.9.1
> Eric Kow <kowey at darcs.net>**20081111115319
>  Ignore-this: f25fef6236879a1a2ad0ab44e337faee
>  This introduces a HAVE_OLD_BYTESTRING flag
> ] 
> [Simplify bytestring check.
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081111115258
>  Ignore-this: 58feb27fd83415b6b539bd4a2ebd7216
>  Either base-2.0 (which includes Data.ByteString) or the bytestring package
>  are now required.
> ] 
> [resolve issue844: don't call gzwrite with zero length.
> David Roundy <droundy at darcs.net>**20081111145122
>  Ignore-this: ac80c1db0fad3279ccee3b7b5f1f87ea
> ] 
> [Avoid exporting cleanupRepositoryReplay.
> Petr Rockai <me at mornfall.net>**20081111100548
>  
>  We instead let replayRepository take the post-replay action as a parameter and
>  clean up automatically when it's done. Looks like a safer API to me.
> ] 
> [Remove literacy stub from Darcs.Patch.Choices.
> Trent W. Buck <trentbuck at gmail.com>**20081109110636] 
> [Remove literacy stub from Darcs.Patch.Info.
> Trent W. Buck <trentbuck at gmail.com>**20081109110434] 
> [Remove literacy stub from Darcs.Patch.Read.
> Trent W. Buck <trentbuck at gmail.com>**20081109110254] 
> [Remove literacy stub from Darcs.Patch.Test.
> Trent W. Buck <trentbuck at gmail.com>**20081109110103] 
> [Remove literacy stub from Darcs.Patch.Real.
> Trent W. Buck <trentbuck at gmail.com>**20081109105434] 
> [Remove literacy stub from Darcs.Patch.Non.
> Trent W. Buck <trentbuck at gmail.com>**20081109105400] 
> [Remove literacy stub from Darcs.Patch.Depends.
> Trent W. Buck <trentbuck at gmail.com>**20081109105308] 
> [Remove literacy stub from Darcs.Patch.Check.
> Trent W. Buck <trentbuck at gmail.com>**20081109105222] 
> [Remove literacy stub from Darcs.Patch.Viewing.
> Trent W. Buck <trentbuck at gmail.com>**20081109104757] 
> [Remove literacy stub from Darcs.Patch.Unit.
> Trent W. Buck <trentbuck at gmail.com>**20081109104720] 
> [Remove literacy stub from Darcs.Patch.QuickCheck.
> Trent W. Buck <trentbuck at gmail.com>**20081109104633] 
> [Remove literacy stub from Darcs.Patch.Permutations.
> Trent W. Buck <trentbuck at gmail.com>**20081109104610] 
> [Remove literacy stub from Darcs.Patch.Patchy.
> Trent W. Buck <trentbuck at gmail.com>**20081109104516] 
> [Remove literacy stub from Darcs.Patch.Bundle.
> Trent W. Buck <trentbuck at gmail.com>**20081109104403] 
> [Remove literacy stub from Darcs.Patch.FileName.
> Trent W. Buck <trentbuck at gmail.com>**20081109103658] 
> [Remove literacy stub from Darcs.Patch.Set.
> Trent W. Buck <trentbuck at gmail.com>**20081109102952] 
> [Remove literacy stub from Darcs.Patch.MatchData.
> Trent W. Buck <trentbuck at gmail.com>**20081109102546] 
> [Remove literacy stub from Darcs.Repository.HashedRepo.
> Trent W. Buck <trentbuck at gmail.com>**20081109105612
>  The deleted comments here are duplicated elsewhere.
> ] 
> [Remove literacy stub from Darcs.Repository.Pristine.
> Trent W. Buck <trentbuck at gmail.com>**20081109105012] 
> [Remove literacy stub from Darcs.Repository.HashedIO.
> Trent W. Buck <trentbuck at gmail.com>**20081109104947] 
> [Remove literacy stub from Darcs.Repository.Cache.
> Trent W. Buck <trentbuck at gmail.com>**20081109104933] 
> [Remove literacy stub from Darcs.Repository.
> Trent W. Buck <trentbuck at gmail.com>**20081109104840] 
> [Remove literacy stub from Darcs.Repository.Format.
> Trent W. Buck <trentbuck at gmail.com>**20081109103758] 
> [Remove literacy stub from Darcs.Repository.ApplyPatches.
> Trent W. Buck <trentbuck at gmail.com>**20081109102829] 
> [Remove literacy stub from Darcs.Repository.InternalTypes.
> Trent W. Buck <trentbuck at gmail.com>**20081109102801] 
> [Remove literacy stub from Darcs.Repository.Checkpoint.
> Trent W. Buck <trentbuck at gmail.com>**20081109102321] 
> [Make --match 'date "after year"' work into the future.
> Petr Rockai <me at mornfall.net>**20081109211305] 
> [Add a test for matching 'date "after year"' working for future patches.
> Petr Rockai <me at mornfall.net>**20081109203045] 
> [Remove franchise build file and test scripts.
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081110153528
>  Ignore-this: 85d1b68798815121f5b2ed24d54fc9eb
>  David feels that having more than one build system is a bad idea.
> ] 
> [Restore configure check for QuickCheck 2.1
> Eric Kow <kowey at darcs.net>**20081110152808
>  Ignore-this: 470ec554bb115c783fb105b29ae3bd44
> ] 
> [Fix Repair.applyAndFix.
> Petr Rockai <me at mornfall.net>**20081106101557
>  
>  The way I have got the recursion versus syncing slurpies backwards is actually
>  pretty embarassing.  We also use syncSlurpy to avoid unneccessary (likely slow)
>  syncs while keeping memory use at bay. This fix should make repair and check
>  run much faster in much less memory.
> ] 
> [Resolve conflicts between darcs repair and literacy removal patches
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081110152620
>  Ignore-this: d7f097d054a22db40ac135551da48da1
> ] 
> [Introduce syncSlurpy, that syncs slurpy to disk as needed.
> Petr Rockai <me at mornfall.net>**20081106102101
>  
>  syncSlurpy takes an IO action that does the actual syncing, but only calls it
>  when neccessary to prevent memory blowups. It is fairly cheap to call often
>  (ie. after every applied patch). The sync threshold is currently hardcoded to
>  ~100M.
> ] 
> [Move Cabal based build to repository root
> Eric Kow <eric.kow at gmail.com>**20081109112502
>  Note that we use the Setup.lhs extension because the franchise based
>  build uses Setup.hs and we want to avoid introducing a spurious
>  dependency on the franchise patches.
> ] 
> [Remove makefile instructions to test franchise build
> Eric Kow <eric.kow at gmail.com>**20081108001051] 
> [Remove now superfluous darcs.cabal.in
> Eric Kow <eric.kow at gmail.com>**20081108000445] 
> [Refactor Repository.Repair.replayRepository to get rid of CanRepair.
> Petr Rockai <me at mornfall.net>**20081105234638
>  
>  We now instead return the new (repaired) patchset that needs to be written out
>  to the caller, and let them handle it.
> ] 
> [Remove literacy stub from Darcs.SlurpDirectory.Internal.
> Trent W. Buck <trentbuck at gmail.com>**20081109105853] 
> [Remove literacy stub from Darcs.SelectChanges.
> Trent W. Buck <trentbuck at gmail.com>**20081109105159] 
> [Remove literacy stub from Darcs.Ordered.
> Trent W. Buck <trentbuck at gmail.com>**20081109104306] 
> [Remove literacy stub from Darcs.SignalHandler.
> Trent W. Buck <trentbuck at gmail.com>**20081109103602] 
> [Remove literacy stub from Darcs.Sealed.
> Trent W. Buck <trentbuck at gmail.com>**20081109103520] 
> [Remove literacy stub from Darcs.TheCommands.
> Trent W. Buck <trentbuck at gmail.com>**20081109103449] 
> [Remove literacy stub from Darcs.TouchesFiles.
> Trent W. Buck <trentbuck at gmail.com>**20081109103419] 
> [Remove literacy stub from Darcs.RemoteApply.
> Trent W. Buck <trentbuck at gmail.com>**20081109103301] 
> [Remove literacy stub from Darcs.PrintPatch.
> Trent W. Buck <trentbuck at gmail.com>**20081109103028] 
> [Remove literacy stub from Darcs.Show.
> Trent W. Buck <trentbuck at gmail.com>**20081109102720] 
> [Remove literacy stub from Darcs.SlurpDirectory.
> Trent W. Buck <trentbuck at gmail.com>**20081109102637] 
> [Work around grep -Fw platform differences in haskell_policy.sh
> Thorkil Naur <naur at post11.tele.dk>**20081110013603
>  Experiments have demonstrated that grep -Fw behaviour depends on the platform,
>  even for the same grep --version. This patch removes the F flag which, in the
>  present context, seems unnecessary. Removing the F flag appears to iron out the platform
>  differences.
> ] 
> [shell_harness script in haskell
> Christian Kellermann <Christian.Kellermann at nefkom.net>**20081107121607
>  Ignore-this: 46d1138c233788cb00b71071e5f9b8ff
> ] 
> [Avoid test issue1017_whatsnew_stack.sh looping under buildbot control
> Thorkil Naur <naur at post11.tele.dk>**20081109122052
>  The replaced "yes | head -n count" mechanism for generating a large file loops when
>  run via Python under Mac OS X. This, apparently, makes the test loop when run by the Mac OS X buildbot
>  slaves. The replacement mechanism is not nearly as elegant as I would like, so better suggestions are
>  welcome.
> ] 
> [Remove literacy stub from CommandLine.
> Trent W. Buck <trentbuck at gmail.com>**20081109102016] 
> [Remove literacy stub from Darcs.Hopefully.
> Trent W. Buck <trentbuck at gmail.com>**20081109101604] 
> [Remove literacy stub from Darcs.Global.
> Trent W. Buck <trentbuck at gmail.com>**20081109101536] 
> [Remove literacy stub from Darcs.CheckFileSystem.
> Trent W. Buck <trentbuck at gmail.com>**20081109101331] 
> [Remove literacy stub from Darcs.Bug.
> Trent W. Buck <trentbuck at gmail.com>**20081109101257] 
> [Remove literacy stub from Darcs.IO.
> Trent W. Buck <trentbuck at gmail.com>**20081109101235] 
> [Remove literacy stub from Darcs.Flags.
> Trent W. Buck <trentbuck at gmail.com>**20081109100625] 
> [Haddockize Darcs.Lock.
> Trent W. Buck <trentbuck at gmail.com>**20081109111134] 
> [Fix haddock bugs in ByteStringUtils
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081109012226] 
> [Reformat Darcs.URL comments as haddock.
> Eric Kow <eric.kow at gmail.com>**20081023233730] 
> [Resolve conflicts (lstat vs de-literate)
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081109153040
>  Ignore-this: 39ae84ed11bd9fe823fcc5cd8596674a
>  The conflits were between Reinier's lstat-saving patches on the one
>  hand and the Diff haddockisation on the other.
> ] 
> [hopefully less buggy version of get_unrecorded_in_files
> Reinier Lamers <tux_rocker at reinier.de>**20081031215944
>  Ignore-this: 9f4f2320a1784cf6f7546ab23eb6bf61
> ] 
> [make whatsnew use the lstat-saving functions to scan the working copy
> tux_rocker at reinier.de**20081026194636
>  Ignore-this: 54b7a07b7b1d49b3d20050bc905db665
> ] 
> [make get_unrecorded_private work with type witnesses again
> tux_rocker at reinier.de**20081026190612
>  Ignore-this: 97418e6487ef9c9508473d4c65f295ca
> ] 
> [add a get_unrecorded_in_files to check for unrecorded changes in a subset of working directory
> tux_rocker at reinier.de**20081026164009
>  Ignore-this: 7d36ff983e8745049101a92f5b2326fb
> ] 
> [Keep OS X happy by passing a path to find(1).
> Trent W. Buck <trentbuck at gmail.com>**20081109113440] 
> [Remove tabs in franchise build.
> Eric Kow <kowey at darcs.net>**20081109005653
>  Ignore-this: c5f57b86fa6bfd5f5f006dd0923d631
> ] 
> [Move issue1017 test back into tests
> Eric Kow <kowey at darcs.net>**20081109005826
>  Ignore-this: 8b4f4f4673e6a07405a4c279385c373c
>  It was not consistently failing, and we still don't know why
>  it failed the last time.
>  rolling back:
>  Fri Nov  7 13:11:17 GMT 2008  Eric Kow <kowey at darcs.net>
>    * Move issue1017 test back to bugs.
> ] 
> [make unrecord work with type witnesses.
> David Roundy <droundy at darcs.net>**20081107123400
>  Ignore-this: 183ca39f8ec9af923468ecc243cba26
> ] 
> [add franchise target for type witness testing.
> David Roundy <droundy at darcs.net>**20081107123051
>  Ignore-this: 5df886520744de6d11992e9e6b3f9758
> ] 
> [cut dead code from Unrecord.
> David Roundy <droundy at darcs.net>**20081103021520
>  Ignore-this: 847fdfc20ab9a65a9d3527590fe51f3b
> ] 
> [be more verbose when type witnesses are enabled in franchise.
> David Roundy <droundy at darcs.net>**20081103014635
>  Ignore-this: d417d1b1aafbbedd5f9b6d1e4dbb25a2
> ] 
> [enable type witnesses for show commands.
> David Roundy <droundy at darcs.net>**20081103014338
>  Ignore-this: 5c538bb49432f16bc8dc03140d17cb1d
> ] 
> [Fix cabal file for lhs -> hs transition.
> Salvatore Insalaco <kirby81 at gmail.com>**20081108080448] 
> [Add issue1189 fix suggested by Duncan to Cabal build
> Eric Kow <eric.kow at gmail.com>**20081108000200] 
> [Haddockize Lcs.
> Trent W. Buck <trentbuck at gmail.com>**20081108082950] 
> [Extend zlib franchise test to look for zlib 0.5.0.0
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081102141525
>  Ignore-this: 1cf8e14867b91c05b34d978980d9188a
> ] 
> [switch to zlib 0.5.0.0 with new interface for specifying decompressed size
> Ganesh Sittampalam <ganesh at earth.li>**20081026102650] 
> [Move issue1017 test back to bugs.
> Eric Kow <kowey at darcs.net>**20081107131117
>  Ignore-this: 9e19d7392378f4d5e8d029b15e6f962d
>  One of our Mac buildbots owners reports that their buildbot
>  was taking forever to run.  It seemed to be hanging on this
>  step.
> ] 
> [Remove dangling .lhs references.
> Trent W. Buck <trentbuck at gmail.com>**20081107024222
>  Sorry about this, folks; it seems my conflict merging had a few bugs.
> ] 
> [Add comment to test pref
> Eric Kow <kowey at darcs.net>**20081106161155
>  Ignore-this: 634b224e4338a1ff0abc47a6903220be
> ] 
> [Fix typo in documentation
> Eric Kow <kowey at darcs.net>**20081106153606
>  Ignore-this: b52ecbb2fb3aa432c04a9abb6086239
> ] 
> [resolve issue1189: define HAVE_SIGNALS in franchise build.
> David Roundy <droundy at darcs.net>**20081106130431
>  Ignore-this: db3217e4ba459bb32d489b744227f5b8
>  Incidentally, ctrl-C handling seems also to be broken on the non-Windows
>  cabal build in release/, but I can't see how to fix it.  Or maybe
>  HAVE_SIGNALS is defined using some Deep Magic?
> ] 
> [Use make -j4 to run disttest.
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081106114326
>  Ignore-this: 5818b80001e1ce589057b6adc61c4973
>  Trent had done some Makefile cleanups to eliminate the naughty practice
>  of calling $(MAKE) -j4 within make.  This patch restores the parallel
>  builds (which makes tests run faster) without the naughtiness.
> ] 
> [Change "Repairing patch" to "Replaying patch" as progress report in replayRepository.
> Petr Rockai <me at mornfall.net>**20081105224132] 
> [Tweak issue1012 test to use temp1 as tempdir name
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081106112750
>  Ignore-this: e2d0263a3652f01a6e202deeaef19408
> ] 
> [Clean up after previous tests in issue1017 test
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081106112723
>  Ignore-this: 9e6c6f1f3f617cfb9ec93666ee13c51d
> ] 
> [Refactor test_network target.
> Trent W. Buck <trentbuck at gmail.com>**20081106013245] 
> [Let DARCS_FILES and UNIT_FILES cope with .lhs/.hs renames.
> Trent W. Buck <trentbuck at gmail.com>**20081106094142
>  
>  I'm sorry this makes UNIT_FILES so ugly.
>  
>  The big advantage of this is that it lets me rename .lhs files without
>  editing the GNUmakefile in the same patch -- thereby avoiding some
>  icky conflictors.
> ] 
> [clean up .lhs versions of ThisVersion and Autoconf to make transition easier
> Ganesh Sittampalam <ganesh at earth.li>**20081105090209
>  Ignore-this: e8448d3962aeb832fc8fcdc0da8f9e32
> ] 
> [resolve issue864: check non-force replace against pending
> Tommy Pettersson <ptp at lysator.liu.se>**20081004235719
>  The replace was checked against pure pristine, so the answer to if it could
>  be applied to pending without force was sometimes wrong.
> ] 
> [Avoid using pkgconfig-depends for libcurl (cabal)
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081103150412
>  Ignore-this: 681d35599ab44961a2164ca54b4d5617
>  
>  This is a workaround to a Cabal library bug in "which ldOptions are
>  passed directly to ghc without any escaping" whereas "they should be
>  escaped with the -optl prefix"
>  http://hackage.haskell.org/trac/hackage/ticket/389
> ] 
> [change tabs to spaces in cabal's Setup.hs
> Jason Dagit <dagit at codersbase.com>**20081028032910] 
> [Use exceptions again in cabal Setup.hs
> Duncan Coutts <duncan at haskell.org>**20081027043635
>  Needed to handle calling darcs when it's not available.
>  Uses CPP to make it work with ghc-6.8 and 6.10
> ] 
> [Make building with HTTP package work via cabal
> Duncan Coutts <duncan at haskell.org>**20081027034031] 
> [Add the location of the darcs repo to the cabal file
> Duncan Coutts <duncan at haskell.org>**20081027004425
>  Cabal-1.6 allows this meta-data to be given in the .cabal file
>  and in a machine readable format.
> ] 
> [Update cabal file for renamed ByteStringUtils module
> Duncan Coutts <duncan at haskell.org>**20081027003824] 
> [When not using external zlib binding require z C lib (in cabal file)
> Duncan Coutts <duncan at haskell.org>**20081027003414
>  It was working before but probably only because some other C lib
>  needed zlib, probably curl. This is more correct.
> ] 
> [Add the other modules and extra src files to the cabal file
> Duncan Coutts <duncan at haskell.org>**20081027003315
>  Needed for cabal sdist to work.
> ] 
> [Support building with libwww via Cabal
> Duncan Coutts <duncan at haskell.org>**20081026232738] 
> [Update darcs.cabal for HAVE_SIGINFO_H
> Duncan Coutts <duncan at haskell.org>**20081026232647] 
> [Make Setup.hs work with ghc-6.8 and 6.10 by not using exceptions
> Duncan Coutts <duncan at haskell.org>**20081026202912
>  The exceptions api changed between 6.8 and 6.10.
> ] 
> [Add cabal support files under release/ directory
> Duncan Coutts <duncan at haskell.org>**20081026195706] 
> [Add all required language extensions to .cabal.in file
> Don Stewart <dons at galois.com>**20081025225427] 
> [issue 1017 now fixed
> Ganesh Sittampalam <ganesh at earth.li>**20081025122754] 
> [Restore 'pass/fail' output in shell_harness.
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081105093446
>  Ignore-this: 93d9a4fba1f83b79a5b7b63c87e0e955
>  
>  rolling back accidentally applied patch:
>  
>  Fri Oct 24 06:57:55 BST 2008  Trent W. Buck <trentbuck at gmail.com>
>    * Colour test output in Emacs' M-x compile.
> ] 
> [Refactor away boilerplate in naughty ./configure-circumventing profile targets.
> Trent W. Buck <trentbuck at gmail.com>**20081105052235] 
> [Resolve conflicts.
> Trent W. Buck <trentbuck at gmail.com>**20081105014527
>  
>  Mostly conflicts were between Trent's make refactoring and Kowey's
>  copy-and-paste job to add support for building profiled object files
>  and executables in parallel to the non-profiled build.
> ] 
> [Typo: make distclean and maintainer-clean rules cumulative.
> Trent W. Buck <trentbuck at gmail.com>**20081104235641] 
> [Refactor TAGS targets.
> Trent W. Buck <trentbuck at gmail.com>**20081104132834
>  
>  Renamed targets to match default output files, obviating PHONY.
>  Removed the ugly manual sorting, as exuberant ctags sorts by default.
>  Moved cleanup into distclean.
>  Added C inputs to dependency list.
>  Avoid abusing $ETAGS and $CTAGS for hasktags.
> ] 
> [autoconf.mk doesn't depend on darcs.cgi.in.
> Trent W. Buck <trentbuck at gmail.com>**20081104130338
>  
>  The old version was saying things "autoconf.mk depends on
>  darcs.cgi.in", which isn't quite right.  The replacement is shorter
>  and more correct.
> ] 
> [Delete unused "register" target.
> Trent W. Buck <trentbuck at gmail.com>**20081104124530] 
> [Move cleanup rules to appropriate target (clean/distclean).
> Trent W. Buck <trentbuck at gmail.com>**20081104124116] 
> [Resolve conflicts.
> Trent W. Buck <trentbuck at gmail.com>**20081104123359] 
> [Merge autoconf.mk and .depend inclusion.
> Trent W. Buck <trentbuck at gmail.com>**20081102045359
>  
>  In a declarative expert system like Make, it shouldn't matter where
>  .depend is included.  Actual experiments suggest that it does, and
>  putting it at the top will help avoid illogical behaviour.
>  
>  It also reduces the makefile's length by several lines.
> ] 
> [Make .hs.in of trivial .lhs.in files.
> Trent W. Buck <trentbuck at gmail.com>**20081029025407] 
> [Make .hs of trivial .lhs files.
> Trent W. Buck <trentbuck at gmail.com>**20081029025326] 
> [Split darcs.lhs into darcs.tex and darcs.hs.
> Trent W. Buck <trentbuck at gmail.com>**20081026063231
>  After all, the Main module and main function don't really have
>  anything to do with the introductory chapters of the user manual.
>  
>  I used these commands and then some touch-ups:
>  
>  $ sed '/\\begin{code}/,/\\end{code}/d' src/darcs.lhs >src/darcs.tex
>  $ darcs mv src/darcs.lhs src/darcs.hs
>  $ sed --in-place '/\\end{code}/,/\\begin{code}/d' src/darcs.hs
> ] 
> [Only .lhs (not .hs) files could possibly be TeX sources.
> Trent W. Buck <trentbuck at gmail.com>**20081025141537] 
> [Typo: remove silly circular dependency.
> Trent W. Buck <trentbuck at gmail.com>**20081025121957] 
> [Don't warn unless ALL alternatives are missing.
> Trent W. Buck <trentbuck at gmail.com>**20081025120102] 
> [If installed, use rubber(1) to quieten TeX.
> Trent W. Buck <trentbuck at gmail.com>**20081025113643] 
> [Typo.
> Trent W. Buck <trentbuck at gmail.com>**20081025113607] 
> [Turn procedural assignments (:=) into declarations (=).
> Trent W. Buck <trentbuck at gmail.com>**20081025100744] 
> [Refactor .hi rule.
> Trent W. Buck <trentbuck at gmail.com>**20081025100732] 
> [Refactor install rules.
> Trent W. Buck <trentbuck at gmail.com>**20081025100527
>  
>  Importantly, this means that if you just do "make" it will either
>  build PDF or PS, but not both (with a preference for PDF).
>  
>  The "installbin" target has been renamed to "install", since 1) that's
>  the convention, and 2) it was already installing non-binary stuff,
>  namely the bash completion and manpage.
>  
>  Leverages concatenative rules (::) to reduce repetition.
> ] 
> [Refactor targets that prevent "include autoconf.mk" (and .depend).
> Trent W. Buck <trentbuck at gmail.com>**20081025012208
>  As well as being clearer, this is now a good deal more liberal. For
>  example, it won't rebuild .depend during "make maintainer-clean".
> ] 
> [Generate TEXSOURCES programmatically.
> Trent W. Buck <trentbuck at gmail.com>**20081025011935] 
> [Generate DARCS_FILES by blacklist, not whitelist.
> Trent W. Buck <trentbuck at gmail.com>**20081025010803
>  This attempt is far from perfect, but at least it works.
> ] 
> [Use $@ and $* to shrink test_harness.
> Trent W. Buck <trentbuck at gmail.com>**20081024085740
>  
>  Note that I have also removed the use of @ to hide what make is doing.
>  
>  It is better to use "make --silent" to hide such noise, because then I
>  can debug problems in the makefile by running *without* --silent,
>  rather than having to temporarily remove the @'s.
> ] 
> [Refactor test rules.
> Trent W. Buck <trentbuck at gmail.com>**20081024034429
>  Now the target names correspond to the darcs switches, e.g. "make
>  test-darcs-2" instead of "make test-format2".  There are some legacy
>  pointers so the old targets still work, but they probably put the
>  results in a different directory.
> ] 
> [Don't call GHC on autoconf.mk in .depend rule.
> Trent W. Buck <trentbuck at gmail.com>**20081024031700
>  I don't know why, but $^ included autoconf.mk.  I used $(filter) to
>  remove it, and put all the deps on one line while I was at it.
> ] 
> [Miscellaneous refactoring.
> Trent W. Buck <trentbuck at gmail.com>**20081023050926] 
> [Replace procedural := with declarative =.
> Trent W. Buck <trentbuck at gmail.com>**20081023034044
>  
>  When you do "x = a b" in make, it doesn't get evaluated until you
>  actually attempt to refer to $x in a rule, because make is an expert
>  system.  The reason := exists is because if you do
>  
>      f = $(shell really-slow-command)
>  
>  and then try to build a bunch of object files, $f will cause
>  really-slow-command to be run separately for each one.  Since we're
>  just doing internal stuff like $(patsubst), we don't need := and using
>  it makes it harder to reason about the system, because it's no longer
>  declarative.
> ] 
> [Obviate SRC_DIRS altogether.
> Trent W. Buck <trentbuck at gmail.com>**20081023030139
>  
>  Note that find -delete would be better, but it is not standard:
>  http://www.opengroup.org/onlinepubs/009695399/utilities/find.html
> ] 
> [Ameliorative ChangeLog mode hint for Emacs.
> Trent W. Buck <trentbuck at gmail.com>**20081104125751
>  
>  This patch makes Emacs use outline (hierarchical) mode, and to
>  recognize "darcs (N)" as a first-level heading and " * foo" as a
>  third-level heading.  Treating the latter correctly, as second-level
>  headings, is beyond my capabilities.
>  
>  I'd prefer that this file be moved to "NEWS" and formatted as outline-
>  mode expects: each Nth-level heading starts with N stars and a space.
> ] 
> [quickCheck tests  for QuickCheck 2.1
> Florent Becker <florent.becker at ens-lyon.org>**20081006135708] 
> [add yet another braindead file path to file path canonicalization test
> Reinier Lamers <tux_rocker at reinier.de>**20081103222552
>  Ignore-this: a2b2f6f8c47a14943dd99a6a1d0a5c7d
> ] 
> [Add bug script for issue1196
> Reinier Lamers <tux_rocker at reinier.de>**20081103222106
>  Ignore-this: a91333382a944602881b388da4606eca
> ] 
> [Fix "make bugs" target in makefile
> Reinier Lamers <tux_rocker at reinier.de>**20081103221941
>  Ignore-this: 541567455acb0308bbbcf8eb4fe4c83b
> ] 
> [Try a bit harder to hack darcs pathname canonicalization in tests
> Reinier Lamers <tux_rocker at reinier.de>**20081103211112
>  Ignore-this: 3b419ed6b5c3b4d8529ca045d8c63548
> ] 
> [Typo: install-pdf was trying to install *.ps.
> Trent W. Buck <trentbuck at gmail.com>**20081025122922] 
> [Typo.
> Trent W. Buck <trentbuck at gmail.com>**20081025083214] 
> [Add conventional install-ps/pdf/html targets.
> Trent W. Buck <trentbuck at gmail.com>**20081024085052
>  See info page (make)Standard Targets.
> ] 
> [Use new "ps", "pdf" and "html" targets.
> Trent W. Buck <trentbuck at gmail.com>**20081024084215] 
> [Clean hspwd.
> Trent W. Buck <trentbuck at gmail.com>**20081024081050] 
> [Colour test output in Emacs' M-x compile.
> Trent W. Buck <trentbuck at gmail.com>**20081024055755
>  
>  This change means doing M-x compile RET make test RET in an ordinary
>  Emacs will highlight failed tests in red, and working tests in green.
>  This makes it easier to spot problems.
>  
>  The down side is that yes/no is less clear than passed/failed.
> ] 
> [Reduce loquacity of haddock targets.
> Trent W. Buck <trentbuck at gmail.com>**20081023072048
>  I think that if someone runs "make api-doc", it's not useful to
>  immediately print
>  
>      echo "Generating html"
>      Generating html
>  
>  Therefore I'm removing these lines.
> ] 
> [Fix some predicates I accidentally reversed.
> Trent W. Buck <trentbuck at gmail.com>**20081023072013] 
> [release/debian is long gone.
> Trent W. Buck <trentbuck at gmail.com>**20081023071427] 
> [Make it obvious why deps are being filtered.
> Trent W. Buck <trentbuck at gmail.com>**20081023070847] 
> [Leverage gmake's order-only dependencies.
> Trent W. Buck <trentbuck at gmail.com>**20081023051023] 
> [-fregs-graph seems to be a problem on both ghc 6.6 and 6.10
> Jason Dagit <dagit at codersbase.com>**20081028032741
>  This flag doesn't seem to cause a problem on 6.8, but having
>  does seem to cause a problem for 6.6 and 6.10.
> ] 
> [Resolve conflict between make darcs_p and make continuous
> Eric Kow <E.Y.Kow at brighton.ac.uk>**20081102122954
>  Ignore-this: 385fc4a7bd4b617f1c073f97c860c6ad
> ] 
> [restore -auto-all to profiling options
> Ganesh Sittampalam <ganesh at earth.li>**20081026144023] 
> [avoid .depend doubling in size on every make
> Ganesh Sittampalam <ganesh at earth.li>**20081026141924
>  Ignore-this: e106a7ba53738279ebb8293eeea16679
> ] 
> [Also clean intermediate profiling files.
> Eric Kow <eric.kow at gmail.com>**20081026145926] 
> [Do not use -threaded when building darcs_p
> Eric Kow <eric.kow at gmail.com>**20081026145415] 
> [Clean up how darcs_p is built
> Eric Kow <eric.kow at gmail.com>**20081026145406
>  Treat GHCFLAGS_P as an alternative to GHCFLAGS, not an addition.
> ] 
> [Rename DARCS_OBJS_P and GHCFLAGS_P
> Eric Kow <eric.kow at gmail.com>**20081026145619
>  from   DARCS_P_OBJS and GHC_PROF_FLAGS
> ] 
> [Allow the profiling and non-profiling versions of darcs to co-exist
> Eric Kow <eric.kow at gmail.com>**20081026135910
>  by teaching the Makefile about the suffixes .p_hi and .p_o.
> ] 
> [Add -fregs-graph to build instructions for SHA1.o
> Eric Kow <eric.kow at gmail.com>**20081026133031
>  This helps us avoid a GHC error when building the profiling version of darcs,
>  namely: RegAllocLinear.getStackSlotFor: out of stack slots, try -fregs-graph
> ] 
> [replace a hoogle workaround with a comment, we now index names beginning with _
> Simon Michael <simon at joyful.com>**20081103165516
>  Ignore-this: 537874d6183556322091ff063ba1015b
> ] 
> [Make haddock aware of CommandLine module comment.
> Trent W. Buck <trentbuck at gmail.com>**20081102011801] 
> [Refactor QuickCheck 2 test.
> Trent W. Buck <trentbuck at gmail.com>**20081103101155
>  This makes the output resemble autoconf, so Emacs colours it by default.
>  It also means the user gets information before the test starts.
>  Lastly, it redirects the stderr of grep, as GNU grep's manpage recommends.
> ] 
> [Use cute short form of $(dir) and $(notdir).
> Trent W. Buck <trentbuck at gmail.com>**20081025113759] 
> [Refactor dependency declaration for helper utils.
> Trent W. Buck <trentbuck at gmail.com>**20081025011633
>  The .hs/.lhs deps that "disappear" are still in autoconf.mk.in.
> ] 
> [Turn descriptive commands into comments.
> Trent W. Buck <trentbuck at gmail.com>**20081024032405
>  I don't think there's any point in printing "I'm deleting information
>  you can't recover" immediately before doing so, without offering an
>  abort step.  Therefore, that message can just be an ordinary comment
>  in the makefile.
> ] 
> [Quieten removal of "Main" intermediaries.
> Trent W. Buck <trentbuck at gmail.com>**20081023093107
>  This matches the quietness in the "darcs" target in GNUmakefile.
> ] 
> [Add conventional "pdf", "ps" and "html" targets.
> Trent W. Buck <trentbuck at gmail.com>**20081023070550
>  See info page (make)Standard Targets.
> ] 
> [Don't override MAKEFLAGS's -j.
> Trent W. Buck <trentbuck at gmail.com>**20081023065134
>  
>  Make does hairy things within $MAKEFLAGS (which is included in $MAKE)
>  to ensure that -j does the right thing in the presence of nested
>  makes.  Overriding this with $(MAKE) -j4 is almost certainly naughty.
>  Instead, you should do "make -j4 disttest" or implicitly, with
>  "MAKEFLAGS=j4 darcs record --test".
> ] 
> [Use ANNOUNCE_GHC convention for darcs.
> Trent W. Buck <trentbuck at gmail.com>**20081024085359] 
> [Conventionalize make rule for hspwd.
> Trent W. Buck <trentbuck at gmail.com>**20081024033900] 
> [Reduce disttest noise for teetotalers.
> Trent W. Buck <trentbuck at gmail.com>**20081103094530
>  
>  Without wine installed, "make disttest" was printing nine copies of:
>  
>      /bin/sh: wine: not found
>      test: 1: =: argument expected
>  
>  This DOES NOT fix the case where wine is installed, but GHC is not
>  available from wine:
>  
>      wine runghc Setup.hs configure
>      wine: could not load L"C:\\windows\\system32\\runghc.exe": Module not found
>      make: *** [disttest] Error 126
> ] 
> [resolve conflict in makefile.
> David Roundy <droundy at darcs.net>**20081103002009
>  Ignore-this: 3677a2bad189f858b1ac06e56b9e4c2f
> ] 
> [fixup SRC_DIRS
> Ganesh Sittampalam <ganesh at earth.li>**20081029190715] 
> [a slight simplification
> Ganesh Sittampalam <ganesh at earth.li>**20081028185358] 
> [clarify SlurpDirectory interface
> Ganesh Sittampalam <ganesh at earth.li>**20081028072911] 
> [cleanup some patterns
> Ganesh Sittampalam <ganesh at earth.li>**20081028065424] 
> [simplify slurp_has_anycase
> Ganesh Sittampalam <ganesh at earth.li>**20081026200442] 
> [another obvious use of the SlurpyMap
> Ganesh Sittampalam <ganesh at earth.li>**20081026192715] 
> [bug fix
> Ganesh Sittampalam <ganesh at earth.li>**20081026185518] 
> [make use of the SlurpyDir Map in the obvious places
> Ganesh Sittampalam <ganesh at earth.li>**20081026153749] 
> [dumb changeover of SlurpDir contents from [] to Map
> Ganesh Sittampalam <ganesh at earth.li>**20081026135906] 
> [refactor Slurpy to common up name component between File/Dir
> Ganesh Sittampalam <ganesh at earth.li>**20081026123722] 
> [TAG stable 2008-11-17 (with 2.1.2)
> Eric Kow <kowey at darcs.net>**20081117104434] 
> Patch bundle hash:
> d662ec4f6b4cfd8013f99806dc3fa383b30c8ec6
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.3 (Darwin)
> 
> iQCVAwUBSV5DOaf81MBhyqGFAQJ5kgP/cDz+zI0Mzb4pktPAMwtRdTUlbSFGXDcM
> q8PbNtFJ//Cbdh+y+Hr7iH9wsuYxFoaumlcM9q553Yw9lQxUJgH85Dr2F3P4eDtp
> 77QDPU9y0x+70vxn6jJwbaiMZjyp/4nn+pPTCJY5pplEUAv9Ls4azGJnZtIyZnV3
> ZeZDWhnsOAE=
> =klu/
> -----END PGP SIGNATURE-----

> _______________________________________________
> darcs-users mailing list
> darcs-users at darcs.net
> http://lists.osuosl.org/mailman/listinfo/darcs-users


-- 
Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
PGP Key ID: 08AC04F9
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 194 bytes
Desc: not available
Url : http://lists.osuosl.org/pipermail/darcs-users/attachments/20090102/a7ee0e6c/attachment-0001.pgp 


More information about the darcs-users mailing list