<<< text/html; charset=ISO-8859-1: Unrecognized >>>
DarcsURL: http://www.abridgegame.org/repos/darcs-unstable
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=_"

--=_
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Mon Feb 13 22:20:42 Pacific Standard Time 2006  Daan Leijen <[EMAIL PROTECTED]
l.org>
  * Extend argument substitution for --external-merge
  Argument substitution used to work on words at the time which made
  it difficult to use Windows merge tools like the supernice tortoiseMerge.
  Now, substitution of "%a" etc. takes place everywhere and we can write:
  =

  --external-merge 'tortoiseMerge /base:"%a" /mine:"%1" /theirs:"%2" /merge=
d:"%o"
  =

  To make it complete, we substitute "%%" to "%".

--=_
Content-Type: text/x-darcs-patch
Content-Transfer-Encoding: quoted-printable
Content-Description: A darcs patch for your repository!


New patches:

[Extend argument substitution for --external-merge
Daan Leijen <[EMAIL PROTECTED]>**20060214062042
 Argument substitution used to work on words at the time which made
 it difficult to use Windows merge tools like the supernice tortoiseMerge.
 Now, substitution of "%a" etc. takes place everywhere and we can write:
 =

 --external-merge 'tortoiseMerge /base:"%a" /mine:"%1" /theirs:"%2" /merged=
:"%o"
 =

 To make it complete, we substitute "%%" to "%".
] {
hunk ./Resolution.lhs 85
+To use \verb!tortoiseMerge!, you can use
+\begin{verbatim}
+--external-merge 'tortoiseMerge /base:"%a" /mine:"%1" /theirs:"%2" /merged=
:"%o"'
+\end{verbatim}
+(\verb!tortoiseMerge! is a nice merge tool that comes with TortoiseSVN and=
 works well
+on Windows.)
hunk ./Resolution.lhs 94
-\verb!exec!ed with the rest as arguments---it is not a shell command.  Als=
o
-the substitution of the \verb!%! escapes is only done on complete words.
-This means that to use Emacs' Ediff package for merging, for example, you =
need
-a helper script as follows; call it \verb!emerge3!, say:%
+\verb!exec!ed with the rest as arguments---it is not a shell command. In p=
articular,
+on Windows this means that the first command path should not contain space=
s and
+you should make sure the command is in your \verb!PATH!. =

+
+The substitution of the \verb!%! escapes is done everywhere. If you need t=
o prevent
+substitution you can use a double percentage sign, i.e. \verb!%%a! is subs=
tituted with
+\verb!%a!. Here is an example script to use the Emacs' Ediff package for m=
erging.
hunk ./Resolution.lhs 142
+or
+\begin{verbatim}
+ALL external-merge tortoiseMerge /base:"%a" /mine:"%1" /theirs:"%2" /merge=
d:"%o"
+\end{verbatim}
+
hunk ./Resolution.lhs 191
-    ec <- run c [("%1", d1///f1), ("%2", d2///f2), ("%a", da///fa),("%o", =
dm///fm)]
+    ec <- runWithSubst c [("%1", d1///f1), ("%2", d2///f2), ("%a", da///fa=
),("%o", dm///fm),("%%", "%")]
hunk ./Resolution.lhs 197
-run :: String -> [(String,String)] -> IO ExitCode
-run c replacements =3D rr $ doreplace replacements $ words c
-    where rr (command:args) =3D do putStrLn $ "Running command '" ++
-                                            unwords (command:args) ++ "'"
-                                 exec command args "/dev/null" "/dev/null"
-          rr [] =3D return ExitSuccess
-          doreplace :: [(String,String)] -> [String] -> [String]
-          doreplace (r:rs) as =3D doreplace rs $ map (rep r) as
-          doreplace [] as =3D as
-          rep (o,n) a =3D if o =3D=3D a then n else a
+-- | Run a command string with a list of replacement patterns.
+runWithSubst :: String -> [(String,String)] -> IO ExitCode
+runWithSubst cmd replacements =

+  =3D runCommand (words (substitute replacements cmd))
+  where
+    runCommand (command:args) | not (null command)
+                              =3D do putStrLn $ "Running command '" ++
+                                               unwords (command:args) ++ "=
'"
+                                   exec command args "/dev/null" "/dev/nul=
l"
+    runCommand _              =3D return ExitSuccess
+
+-- | Substitute (non-recursively) a list of (pattern,replacement) tuples i=
n a string.
+substitute :: [(String,String)] -> String -> String
+substitute reps s
+  =3D case s of
+      ""    -> ""
+      c:cs  -> head ([(rep ++ substitute reps rest) | (pat,rep) <- reps =

+                                                    , let (matches,rest) =
=3D matchPattern pat s
+                                                    , matches ]
+                     ++
+                     [c:substitute reps cs] -- default case if no pattern =
matches
+                    ) =

+
+-- | Match a pattern against a string. Return a tuple where the first comp=
onent is 'True' if
+-- the pattern matched, and the second component the part of the string af=
ter the pattern.
+matchPattern :: String -> String -> (Bool,String)
+matchPattern [] s =

+  =3D (True,s)
+matchPattern (p:ps) s
+  =3D case s of
+      (c:cs) | c =3D=3D p  -> matchPattern ps cs
+      _                -> (False,s)
+
}

Context:

[call unnamed patches "changes" in interactive patch selection dialogue
Tommy Pettersson <[EMAIL PROTECTED]>**20060113203829
 It currently affects record, revert and amend, but will generally do
 "the right thing".
] =

[fix pathname in comment in darcs.cgi.in
[EMAIL PROTECTED] =

[fix win32 build breaks
Will <[EMAIL PROTECTED]>**20060112054853] =

[fix content-type in rss output of cgi
Will <[EMAIL PROTECTED]>**20060110052938] =

[resolve conflict
Tommy Pettersson <[EMAIL PROTECTED]>**20060108173148] =

[Obey normal autoconf conventions.
Dave Love <[EMAIL PROTECTED]>**20051117190231
 Allows you to `make install prefix=3D...', for instance, and doesn't chang=
e
 default for sysconfdir.
] =

[add link to darcs-unstable repo on darcs home page
Tommy Pettersson <[EMAIL PROTECTED]>**20060107212721] =

[Don't say "yes" in an infinite loop.
Bill Trost <[EMAIL PROTECTED]>**20060108162605
 I ended up with this test hanging forever because the while loop wasn't ge=
tting
 a SIGPIPE because of the way my editor environment (no controlling tty?) w=
as
 set up. We have a pretty good idea of how many "y"s are needed anyhow.
] =

[fix crash caused by tests failing on amend-record
Zachary P. Landau <[EMAIL PROTECTED]>**20060108174722] =

[More canonization
Eric Kow <[EMAIL PROTECTED]>**20060108235935
 =

 canonized : Mark Stosberg, Erik Schnetter, Joeri van Ruth =

 identified: Richard Smith, Victor Hugo Borja Rodriguez
 =

] =

[Improved single-character prompt (RT #261)
Eric Kow <[EMAIL PROTECTED]>**20060108225741
 =

 In the dialogue prompting for a single character as a response, if the
 user just presses enter, we behave is if we got an invalid response.
 This way, the user gets a little bit of feedback that he should respond
 differently.
   =

 Also: refactors the case where there is a default answer and where the
 user may press '?' for help.
 =

] =

[Corrections to bugfix for (RT #466)
Eric Kow <[EMAIL PROTECTED]>**20060108225411
 =

 The bug fix for case insensitive filesystems was incorrect because
  1. canonicalizePath does not canonicalise the same filename with
     different cases into the same entry
  2. RT #466 affects case sensitive and case insensitive file =

     systems alike (i.e. the bug description was wrong)
  3. canonicalizePath is not available in ghc 6.2.2
 =

 This correction also has the advantage of being much simpler and closer
 to what David Roundy suggested on the bug tracker.  We remove the old
 file from the slurpy so that it doesn't get mistaken for the new file.  =

 =

] =

[use _darcs/pristine in regression tests
Eric Kow <[EMAIL PROTECTED]>**20060108222000] =

[Make the "record --pipe" docs match the program behavior.
Bill Trost <[EMAIL PROTECTED]>**20060107050910] =

[Make --exact-version also work if darcs is built from "make dist" tar ball
Marnix Klooster <[EMAIL PROTECTED]>**20060106205857
 =

 This is to prevent "darcs --exact-version" outputting something like
 =

   darcs compiled on Mar  2 2005, at 10:56:16
   unknown
 =

 as it does when building from the output of "make dist", e.g., from the
 official tarballs at darcs.net.  (This is what a lot of people and distros=
 do.
 Gentoo does this, and I'm using Gentoo, and I want to be able to do "darcs
 --exact-version" and have it output something sensible.)
 =

 The reason that this problem occurs is that while doing 'make predist' (in=
 the
 'predist' preference), Context.hs was nicely preserved by predist_copy, bu=
t
 then thrown away by distclean which calls clean.  So the resulting tarball=
 has
 no Context.hs, which results in the "unknown" exact version.
 =

 The solution consists of the following:
 =

  * Only remove Context.hs in "clean" if it can be rebuilt using its rule
    in automake.mk (i.e., if _darcs/inventory exists, so if we are in a
    repository).
 =

  * Target realclean is renamed to the newer maintainer-clean and extended =
a
    little, according to the GNU make manual (not strictly necessary).
 =

 As a result of this, we now follow GNU makefile conventions more closely. =
 See
 the rules in the "Standard Targets for Users" section of the GNU make manu=
al
 (currently at http://www.gnu.org/software/make/manual/html_node/make_127.h=
tml),
 and an interpretation of these rules in the "What Gets Cleaned" section of=
 the
 GNU automake manual (currently at
 http://www.gnu.org/software/automake/manual/html_node/Clean.html).
 =

 Thanks to Taral <[EMAIL PROTECTED]> for the above info.
] =

[Coalesce setpref (issue70 and RT #349)
Eric Kow <[EMAIL PROTECTED]>**20051230230842] =

[only create log file when a long comment was requested
Zachary P. Landau <[EMAIL PROTECTED]>**20060108181034] =

[Use temporary file when editing send description.
Zachary P. Landau <[EMAIL PROTECTED]>**20051217212051] =

[Extended date matching functionality. =

Eric Kow <[EMAIL PROTECTED]>**20051228210942
 (issue31 and RT #34)
 =

 Now accepts ISO 8601 intervals (mostly) as well as a larger subset of
 English (including times like "yesterday at noon").
 =

 Note: also includes corrections to ISO 8601 date/time parsing, using
 a more elegant technique of building dates up. =

 =

] =

[Partial implementation of iso 8601 dates
Eric Kow <[EMAIL PROTECTED]>**20051228123040
 (issue31) - first step =

 =

 reluctant to implement (ambiguous!): =

   * years > 9999  =

   * truncated representations with implied century (89 for 1989) =

 unimplemented: =

   * time intervals -- this might be good to have in darcs
   * negative dates (BC)                    =

 =

] =

[Allow rename to different case (RT #466, case-insensitive file systems)
Eric Kow <[EMAIL PROTECTED]>**20060106000141
 =

 Creates an exception in the check that the new name does not already exist=
s;
 it's ok if both names reduce to the same canonical path
 =

] =

[Update "darcs init" documentation to match its behavior.
Bill Trost <[EMAIL PROTECTED]>**20060105040737] =

[Invert 'file exists already' error message in mv
Eric Kow <[EMAIL PROTECTED]>**20051230220431
 =

 mv used the wrong error message for --case-ok and opposite =

 =

] =

[bug fixes for darcs help
Eric Kow <[EMAIL PROTECTED]>**20051230011003] =

[Canonize myself and almost all other contributers.
Eric Kow <[EMAIL PROTECTED]>**20051229140428
 Add function to append name to email address =

 =

 Merged: Marnix Klooster, Eric Kow, Andres Loeh, Esa Ilari Vuokko =

 =

 Looked up name on Google for most orphaned email addresses.
 Hope nobody actually objects to this.
 =

] =

[add a --without-docs option to configure
[EMAIL PROTECTED] =

[only print 'making executable' in verbose mode
Eric Kow <[EMAIL PROTECTED]>**20051226182817] =

[fix for Issue14 remove darcs-createrepo
Jason Dagit <[EMAIL PROTECTED]>**20051224002230] =

[Support --interactive option in changes command (issue #59).
Zachary P. Landau <[EMAIL PROTECTED]>**20051221052049] =

[Fix type incompatibility between C code and Haskell foreign declaration.
Juliusz Chroboczek <[EMAIL PROTECTED]>**20060106154108] =

[Move patchSetToPatches to Repository.lhs
Zachary P. Landau <[EMAIL PROTECTED]>**20051219043719] =

[Use _darcs/pristine instead of _darcs/current.
Juliusz Chroboczek <[EMAIL PROTECTED]>**20051215180814
 All versions of Darcs since 1.0.2rc1 are able to handle either name.  This
 will break compatibility of new repositories with older versions.
] =

[Do not document "darcs query manifest" twice.
Erik Schnetter <[EMAIL PROTECTED]>**20051222125103] =

[Rename git.c to gitlib.c
Erik Schnetter <[EMAIL PROTECTED]>**20051222115318
 =

 On case-insensitive file systems, the source files Git.lhs and git.c
 lead to the same object file git.o.  Renaming git.c to gitlib.c solves
 this problem.
] =

[Remove periods from the AC_MSG_CHECKING call for the release state.
Matt Kraai <[EMAIL PROTECTED]>**20051220174536] =

[Implementation of help command
Eric Kow <[EMAIL PROTECTED]>**20051218172558
 (RT #307)
 =

 Provides a command to display usage information on the screen.
  darcs help           =3D darcs --help
  darcs help --verbose =3D darcs --extended-help
  darcs help command   =3D darcs command --help
 =

 This implementation understands abbreviated commands and subcommands.
 Slightly refactors darcs.lhs.
 =

] =

[reorganize comments (and add a comment) in Depends.lhs.
David Roundy <[EMAIL PROTECTED]>**20051218122029] =

[fix bug in doesDirectoryReallyExist.
David Roundy <[EMAIL PROTECTED]>**20051020121710
 We were failing with an exception if there was no such object.  The error
 message was:
 =

 Fail: getSymbolicLinkStatus: does not exist
] =

[fix type of foreign calls in FastPackedString.
David Roundy <[EMAIL PROTECTED]>**20050920125800] =

[rename RepoTypes to PatchSet.
David Roundy <[EMAIL PROTECTED]>**20050917133920] =

[remove PatchSequence, which has long been obsolete.
David Roundy <[EMAIL PROTECTED]>**20050917133313
 The patch removes remaining vestiges of PatchSequence, which was obsoleted
 long ago by PatchSet (which stores patches in the opposite order (better
 for lazy use) and which has additional information about tags that allows
 us to avoid looking at old history.
] =

[correction for send.sh test
Eric Kow <[EMAIL PROTECTED]>**20051218095652
 previously failed on (at least) MacOS X 10.3.9
 =

] =

[RemoteApply no longer depends on cd, use --repodir instead.
[EMAIL PROTECTED]
 =

 This is a minor change to make darcs no longer use cd
 before applying patches to a remote repository. =

 Now the --repodir option for the apply command is used.
 =

 This patch came from a hack to rssh[http://sf.net/projects/rssh]
 to allow using darcs as a restricted command without depending
 on the cd binary.
 http://sf.net/tracker/index.php?func=3Ddetail&aid=3D1351939&group_id=3D653=
49&atid=3D510643
] =

[Support signed push
Esa Ilari Vuokko <[EMAIL PROTECTED]>**20051129082159] =

[Fix typo in multirepo pull.
Juliusz Chroboczek <[EMAIL PROTECTED]>**20051217201918] =

[Fix merge conflicts.
Juliusz Chroboczek <[EMAIL PROTECTED]>**20051217201903] =

[add changelog entry for multirepo pull.
David Roundy <[EMAIL PROTECTED]>**20051215122808] =

[add support for pulling from multiple repositories simultaneously.
David Roundy <[EMAIL PROTECTED]>**20050919125012] =

[Use POSIX-style option for 'head', instead of obsolescent syntax
Marnix Klooster <[EMAIL PROTECTED]>**20051216111731] =

[Clarify wording for changes that can't be unreverted
[EMAIL PROTECTED] =

[Set attachment filename when sending a patch bundle by e-mail.
Zachary P. Landau <[EMAIL PROTECTED]>**20051217195009] =

[save long comment file if a test fails during record
Zachary P. Landau <[EMAIL PROTECTED]>**20051216023948] =

[properly quote paths so that paths with spaces in them are okay
[EMAIL PROTECTED] =

[fix up debug printouts in cygwin-wrapper.bash
[EMAIL PROTECTED] =

[smoother invocation of cygwin-wrapper.bash -- it detects fully-qualified p=
ath to itself by leading /
[EMAIL PROTECTED] =

[modernize amend-record.pl to be more portable.
Mark Stosberg <[EMAIL PROTECTED]>**20050402133417
 =

 This depends on the new "echo_to_darcs()" function in Test::Darcs
] =

[implementation of --set-scripts-executable on local darcs get
[EMAIL PROTECTED]
 proposed fix for issue38
 =

 The --set-scripts-executable flag is normally evaluated when you apply
 patches.  But when you do a local darcs get, no patches are applied.
 So as a solution, we traverse the directory on local darcs get , and set
 any script files to be executable. =

 =

 Note: one flaw in this patch is that it duplicates the definition of
 what a script is -- a file that starts with #! -- in PatchApply.lhs and
 Get.lhs.  It might be good to refactor these somehow.
 =

] =

[extended set-scripts-executable test
[EMAIL PROTECTED]
 added check for local darcs get (issue 38) as well as initial sanity check
  =

] =

[Fix merge conflicts.
Juliusz Chroboczek <[EMAIL PROTECTED]>**20051214223217] =

[Add --subject flag to 'darcs send'
Joeri van Ruth <[EMAIL PROTECTED]>**20051205120301] =

[print out the patch name when a test fails.
Zachary P. Landau <[EMAIL PROTECTED]>**20051205055109] =

[Fix mistyped /dev/null, fixes --sendmail-command in Windows
Esa Ilari Vuokko <[EMAIL PROTECTED]>**20051129160120] =

[Use \ as path separator for GnuPG in Windows -- makes apply --verify work
Esa Ilari Vuokko <[EMAIL PROTECTED]>**20051129164533] =

[make dangers and recommended use of "Amend" clearer in the docs.
Mark Stosberg <[EMAIL PROTECTED]>**20051213140523
 =

 I think it's important to be clearer about when it's appropriate to use 'a=
mend',
 so I moved some notes into the short and mid-length help texts.
] =

[update web page to reflect 1.0.5 as latest stable source.
Tommy Pettersson <[EMAIL PROTECTED]>**20051213111137] =

[fix handling of absolute paths containing drive letters
Will <[EMAIL PROTECTED]>**20051208054737
 This fixes issue 47 where paths containing drive letters (i.e. on windows)
 are not treated as absolute paths.
] =

[bump version to 1.0.6pre1
Tommy Pettersson <[EMAIL PROTECTED]>**20051208092839] =

[revert maybe_relink and atomic_create to original C code.
David Roundy <[EMAIL PROTECTED]>**20051208131213] =

[resolve conflicts between stable and unstable.
David Roundy <[EMAIL PROTECTED]>**20051206134818] =

[Merge changes
Ian Lynagh <[EMAIL PROTECTED]>**20051008225210] =

[fix mkstemp implementation for win32
Peter Strand <[EMAIL PROTECTED]>**20050810211303] =

[Implement parts of System.Posix.(IO|Files) for win32
[EMAIL PROTECTED] =

[implement RawMode with library functions instead of ffi
[EMAIL PROTECTED] =

[call hsc2hs without output filename argument
[EMAIL PROTECTED] =

[Rename compat.c to c_compat.c to avoid object filename conflict with Compa=
t.hs
[EMAIL PROTECTED] =

[Move atomic_create/sloppy_atomic_create to Compat
Ian Lynagh <[EMAIL PROTECTED]>**20050730141703] =

[Split the raw mode stuff out into its own .hsc file. Windows needs some TL=
C
Ian Lynagh <[EMAIL PROTECTED]>**20050730134030] =

[Move maybe_relink out of compat.c
Ian Lynagh <[EMAIL PROTECTED]>**20050730131205] =

[Remove is_symlink
Ian Lynagh <[EMAIL PROTECTED]>**20050730122255] =

[Move mkstemp to Compat.hs
Ian Lynagh <[EMAIL PROTECTED]>**20050730020918] =

[Start Compat.hs, and move stdout_is_a_pipe from compat.c
Ian Lynagh <[EMAIL PROTECTED]>**20050730004829] =

[TAG 1.0.5
Tommy Pettersson <[EMAIL PROTECTED]>**20051207112730] =

Patch bundle hash:
0063cc9fbfc90709a5cbc2c7b0a5a78db97d1b25

--=_--

.

_______________________________________________
darcs-devel mailing list
[email protected]
http://www.abridgegame.org/cgi-bin/mailman/listinfo/darcs-devel

Reply via email to