Thu Jan 17 13:53:40 CET 2008  [EMAIL PROTECTED]
  * Move rollback to another section of TheCommands.

Thu Jan 17 16:24:43 CET 2008  [EMAIL PROTECTED]
  * Replace unpull by obliterate as much as possible.

Mon Jan 28 23:17:05 CET 2008  [EMAIL PROTECTED]
  * Don't emit \r when the handle is a terminal.

Mon Jan 28 23:18:10 CET 2008  [EMAIL PROTECTED]
  * Extract external-merge from {apply,pull} conflict options.
New patches:

[Move rollback to another section of TheCommands.
[EMAIL PROTECTED] {
hunk ./src/Darcs/TheCommands.lhs 72
-                Command_data rollback,
hunk ./src/Darcs/TheCommands.lhs 83
+                Command_data rollback,
}

[Replace unpull by obliterate as much as possible.
[EMAIL PROTECTED] {
hunk ./src/Darcs/Arguments.lhs 305
-advanced commands like unpull, unrecord or amend-record.
+advanced commands like obliterate, unpull, unrecord or amend-record.
hunk ./src/Darcs/Commands.lhs 104
-unpull & yes & yes\\
+obliterate & yes & yes\\
hunk ./src/Darcs/Commands.lhs 226
-    ++ "\n  unpull        Delete a patch from PATCHES and unapply it from WORKING."
+    ++ "\n  obliterate    Delete a patch from PATCHES and unapply it from WORKING."
hunk ./src/Darcs/Commands/Rollback.lhs 77
- "of those changes.  Unlike unpull and unrecord (which accomplish a similar goal)\n"++
- "rollback is perfectly safe, since it leaves in the repository a record of its\n"++
- "changes.\n"
+ "of those changes. Unlike obliterate and unrecord (which accomplish a similar\n"++
+ "goal) rollback is perfectly safe, since it leaves in the repository a record\n"++
+ "of its changes.\n"
hunk ./src/Darcs/Commands/TrackDown.lhs 127
-would need to unpull in order to make the test succeed.
+would need to obliterate in order to make the test succeed.
hunk ./src/Darcs/Commands/Unrecord.lhs 75
-To do unrecord and revert in one go, you can use \verb!darcs unpull!.
+To do unrecord and revert in one go, you can use \verb!darcs obliterate!.
hunk ./src/Darcs/Commands/Unrecord.lhs 83
-to undo the result of a \emph{pull} operation, use unpull! Unrecord is
+to undo the result of a \emph{pull} operation, use obliterate! Unrecord is
hunk ./src/Darcs/Commands/Unrecord.lhs 216
-unpull_cmd = generic_unpull_cmd "unpull"
+unpull_cmd = generic_obliterate_cmd "unpull"
hunk ./src/Darcs/Commands/Unrecord.lhs 249
-Note that obliterate is currently an alias for unpull.
+Note that unpull was the old name for obliterate. Unpull is still an
+hidden alias for obliterate.
hunk ./src/Darcs/Commands/Unrecord.lhs 258
-Usually you only want to unpull the latest changes, and almost never would
-you want to unpull changes before a tag---you would have to have unpulled
+Usually you only want to obliterate the latest changes, and almost never would
+you want to obliterate changes before a tag---you would have to have obliterated
hunk ./src/Darcs/Commands/Unrecord.lhs 263
-If you do want to unpull more patches in one go, there are the
+If you do want to obliterate more patches in one go, there are the
hunk ./src/Darcs/Commands/Unrecord.lhs 265
-selectable to unpull.
+selectable to obliterate.
hunk ./src/Darcs/Commands/Unrecord.lhs 272
-options can be used to select which patches to unpull, as described in
+options can be used to select which patches to obliterate, as described in
hunk ./src/Darcs/Commands/Unrecord.lhs 276
-by unpull. This is especially useful when you want to unpull patches with
+by obliterate. This is especially useful when you want to obliterate patches with
hunk ./src/Darcs/Commands/Unrecord.lhs 279
-about patches that can't be unpulled due to depending patches.
+about patches that can't be obliterated due to depending patches.
hunk ./src/Darcs/Commands/Unrecord.lhs 302
-obliterate_cmd = generic_unpull_cmd "obliterate"
+obliterate_cmd = generic_obliterate_cmd "obliterate"
hunk ./src/Darcs/Commands/Unrecord.lhs 306
-generic_unpull_cmd :: String -> [DarcsFlag] -> [String] -> IO ()
-generic_unpull_cmd cmdname opts _ = withRepoLock opts $- \repository -> do
+generic_obliterate_cmd :: String -> [DarcsFlag] -> [String] -> IO ()
+generic_obliterate_cmd cmdname opts _ = withRepoLock opts $- \repository -> do
hunk ./src/best_practices.tex 259
-and removed from the repositories with \verb|unpull|.
+and removed from the repositories with \verb|obliterate|.
hunk ./src/best_practices.tex 265
-whereas \verb|unpull| just erases the patch.
-Beware that if you unpull \emph{all} copies of a patch
+whereas \verb|obliterate| just erases the patch.
+Beware that if you obliterate \emph{all} copies of a patch
hunk ./src/best_practices.tex 268
-Therefore you should work with branches when you unpull patches.
-The \verb|unpull| command can wisely be disabled in a dedicated main repository
-by adding \verb|unpull disable| to the repository's defaults file.
+Therefore you should work with branches when you obliterate patches.
+The \verb|obliterate| command can wisely be disabled in a dedicated main repository
+by adding \verb|obliterate disable| to the repository's defaults file.
hunk ./src/best_practices.tex 282
-While \verb|pull| and \verb|unpull| can be used to
+While \verb|pull| and \verb|obliterate| can be used to
hunk ./src/best_practices.tex 376
-\verb|unpull| and \verb|get| don't.
+\verb|obliterate| and \verb|get| don't.
hunk ./src/best_practices.tex 393
-you can \verb|unpull| the conflicting patch you just pulled.
+you can \verb|obliterate| the conflicting patch you just pulled.
}

[Don't emit \r when the handle is a terminal.
[EMAIL PROTECTED] {
hunk ./src/Darcs/Progress.lhs 14
-import Control.Monad ( when )
-import System.IO ( hFlush, stderr, hPutStr, hPutStrLn, hSetBuffering, BufferMode(LineBuffering) )
+import Control.Monad ( when, replicateM_ )
+import System.IO ( stdout, stderr, hFlush, hPutChar, hPutStr, hPutStrLn,
+                   hSetBuffering, hIsTerminalDevice,
+                   Handle, BufferMode(LineBuffering) )
hunk ./src/Darcs/Progress.lhs 70
-simpleput s = do hPutStr stderr $ '\r':s++"\r"
+simpleput s = do hPutCrStderr
+                 hPutStr stderr s
+                 hPutCrStderr
hunk ./src/Darcs/Progress.lhs 74
-                 hPutStr stderr $ map (const ' ') s++"\r"
-                 putStr $ '\r':map (const ' ') s++"\r"
+                 replicateM_ (length s) (hPutChar stderr ' ')
+                 hPutCrStderr
+                 hPutCrStdout
+                 replicateM_ (length s) (hPutChar stdout ' ')
+                 hPutCrStdout
hunk ./src/Darcs/Progress.lhs 180
+mkhPutCr :: Handle -> IO (IO ())
+mkhPutCr fh = do
+  isTerm <- hIsTerminalDevice fh
+  return $ when isTerm $ hPutChar fh '\r'
+
+{-# NOINLINE hPutCrStderr #-}
+hPutCrStderr :: IO ()
+hPutCrStderr = unsafePerformIO $ mkhPutCr stderr
+
+{-# NOINLINE hPutCrStdout #-}
+hPutCrStdout :: IO ()
+hPutCrStdout = unsafePerformIO $ mkhPutCr stdout
+
}

[Extract external-merge from {apply,pull} conflict options.
[EMAIL PROTECTED] {
hunk ./src/Darcs/Arguments.lhs 42
-                        pull_conflict_options,
+                        pull_conflict_options, use_external_merge,
hunk ./src/Darcs/Arguments.lhs 259
-  diff_cmd_flag, store_in_memory,
+  diff_cmd_flag, store_in_memory, use_external_merge,
hunk ./src/Darcs/Arguments.lhs 771
-       DarcsArgOption [] ["external-merge"]
-       ExternalMerge "COMMAND" "use external tool to merge conflicts",
hunk ./src/Darcs/Arguments.lhs 781
-       DarcsArgOption [] ["external-merge"]
-       ExternalMerge "COMMAND" "use external tool to merge conflicts",
hunk ./src/Darcs/Arguments.lhs 783
+use_external_merge = DarcsArgOption [] ["external-merge"]
+                     ExternalMerge "COMMAND" "use external tool to merge conflicts"
hunk ./src/Darcs/Commands/Apply.lhs 35
+                        use_external_merge,
hunk ./src/Darcs/Commands/Apply.lhs 112
+                                              use_external_merge,
hunk ./src/Darcs/Commands/Pull.lhs 29
-                        no_deps, pull_conflict_options,
+                        no_deps, pull_conflict_options, use_external_merge,
hunk ./src/Darcs/Commands/Pull.lhs 96
+                                             use_external_merge,
}

Context:

[Test infrastructure improvement: Add debug mode to Perl test scripts.
Mark Stosberg <[EMAIL PROTECTED]>**20080126154444
   Set this to see the output of every 'darcs' call made through this script:
   DARCS_DEBUG=1 ./bin/prove -v add.pl pull.pl
] 
[reuse ssh connection using transfer-mode.
David Roundy <[EMAIL PROTECTED]>**20080128201613] 
[try using darcs transfer-mode if available.
David Roundy <[EMAIL PROTECTED]>**20080128194406
 Note that this doesn't yet gain us any performance, it's just a step
 towards a faster connection-sharing approach.
] 
[issue227: regression test for get --context with an absolute path
Mark Stosberg <[EMAIL PROTECTED]>**20080126021139] 
[flush output in transfer-mode.
David Roundy <[EMAIL PROTECTED]>**20080128193910] 
[add transfer-mode for faster ssh access.
David Roundy <[EMAIL PROTECTED]>**20080128165256] 
[refactor SSH code into own module.
David Roundy <[EMAIL PROTECTED]>**20080128172658] 
[remove unneeded export from URL.
David Roundy <[EMAIL PROTECTED]>**20080128172534] 
[Fix optimize_relink for POSIX environment (no cp -a or du -l support; now needs perl)
Kevin Quick <[EMAIL PROTECTED]>**20080125220119] 
[Test Fix: make test pass when there is a space in the darcs repo path
Mark Stosberg <[EMAIL PROTECTED]>**20080126170531] 
[Test Fix: replace system calls with quoted function calls
Mark Stosberg <[EMAIL PROTECTED]>**20080126170253] 
[Test fix: work when darcs repo root has a space in it
Mark Stosberg <[EMAIL PROTECTED]>**20080126165818] 
[replace system call with Perl for better portability
Mark Stosberg <[EMAIL PROTECTED]>**20080124013552] 
[Remove more unneeded "--author" flags in the Perl test scripts, because the harness takes care of them
Mark Stosberg <[EMAIL PROTECTED]>**20080120010553] 
[remove now-unused perl_harness
Mark Stosberg <[EMAIL PROTECTED]>**20080120005850] 
[Merge Curl and Libwww to URL module.
Dmitry Kurochkin <[EMAIL PROTECTED]>**20080127182001] 
[Fix darcs version in libwww user agent.
Dmitry Kurochkin <[EMAIL PROTECTED]>**20080127181548] 
[Cleanup libwww module, better error handling, follow redirects (closes issue621).
Dmitry Kurochkin <[EMAIL PROTECTED]>**20080127152710] 
[Rework libcurl module: use multi interface, support pipelining.
Dmitry Kurochkin <[EMAIL PROTECTED]>**20080127151756] 
[Remove TimeDiff experiment.
Eric Kow <[EMAIL PROTECTED]>**20080128115307] 
[Simplify date matcher and fix tz-related bug.
Eric Kow <[EMAIL PROTECTED]>**20080128115214
 
 When matching partial dates, we should not trust the ctYear, etc on the
 CalendarTime because it may vary by timezone.  This also leads to a
 simplification in the tentative date matching.
 
 Note: subtle change in matching.  Now all matching is done
 within a range, excluding the latter date.  We check
            date <  end
 instead of date <= end
] 
[More aggressive testing of date parser.
Eric Kow <[EMAIL PROTECTED]>**20080127164254
 
 Using record --pipe to set patch dates.
] 
[Support more interactive use of echo_to_darcs in test harness.
Eric Kow <[EMAIL PROTECTED]>**20080127164241] 
[Overhaul date parsing code.
Eric Kow <[EMAIL PROTECTED]>**20080127163040
 
 - Add the ability to match on partial ISO 8601 dates, for example,
   treating 2008-08 as matching the whole month and not just the
   first day of that month
 - Fix some bugs in the parsing of fancy English dates
 - Fix bugs in the interpretation of English dates (for example,
   the interpretation of '3 days before last week' was for all
   patches since that date, and not for all patches *on* that
   date)
 - Treat user input as being in the local timezone
 - Make the matching code a bit more compact
] 
[Make documentation on dates more explicit.
Eric Kow <[EMAIL PROTECTED]>**20080127162931] 
[Add ability to see skipped/included patches when verbose flag present.
Kevin Quick <[EMAIL PROTECTED]>**20080127190546] 
[Update patch selection feedback for messages more appropriate to the job being performed.
Kevin Quick <[EMAIL PROTECTED]>**20080126035000] 
[beautify remove_subsequenceFL.
David Roundy <[EMAIL PROTECTED]>**20080125225637] 
[beautify remove_subsequenceRL.
David Roundy <[EMAIL PROTECTED]>**20080125225440] 
[we removed --modernize-patches, so remove the test case.
David Roundy <[EMAIL PROTECTED]>**20080125225423] 
[eliminate --modernize-patches and make --uncompress work (issue620)
David Roundy <[EMAIL PROTECTED]>**20080125220624] 
[make hashed repositories respect --dont-compress.
David Roundy <[EMAIL PROTECTED]>**20080125210529] 
[Add a comment for Real patches.
[EMAIL PROTECTED] 
[resolve conflict with Eric on controlMasterPath.
David Roundy <[EMAIL PROTECTED]>**20080125203903] 
[More concise backup warning.
Eric Kow <[EMAIL PROTECTED]>**20071105012930] 
[Remove now obsolete wrapper for Map (we now require GHC >= 6.4).
Eric Kow <[EMAIL PROTECTED]>**20071105192636] 
[Modernise Data.Map import.
Eric Kow <[EMAIL PROTECTED]>**20071105192530] 
[Give ssh CM socket a unique name for each darcs process.
Eric Kow <[EMAIL PROTECTED]>**20071105021956
 Delete the socket in the unlikely event that a previous darcs had a socket
 with the same name left over.
] 
[Create ssh CM socket in $HOME/.darcs if possible.
Eric Kow <[EMAIL PROTECTED]>**20071105015525] 
[Refactor y/n prompts.
Eric Kow <[EMAIL PROTECTED]>**20071019213307] 
[issue578: steve and monica test for rolling back a rollback
Mark Stosberg <[EMAIL PROTECTED]>**20080118031606] 
[eliminate lazy parsing of patches, which gives bad error messages (issue364)
David Roundy <[EMAIL PROTECTED]>**20080125191836] 
[[issue492] Check that context file actually exists in darcs get.
Eric Kow <[EMAIL PROTECTED]>**20080125183741] 
[[issue227] Platform-independent absolute paths in get --context
Eric Kow <[EMAIL PROTECTED]>**20080125181702] 
[make uniqueoptions.sh test give friendlier output.
David Roundy <[EMAIL PROTECTED]>**20080125183430] 
[fix code to avoid duplicate --verbose in --help (so tests will pass).
David Roundy <[EMAIL PROTECTED]>**20080125183420] 
[Make verbosity flags advanced options universally.
Eric Kow <[EMAIL PROTECTED]>**20080125181005] 
[adding File::Temp 0.20 to tree for more consistent test results. It is GPL-licensed.
Mark Stosberg <[EMAIL PROTECTED]>**20080124033049] 
[update restrictive perms test to run a temporary directory and clean up after itself.
Mark Stosberg <[EMAIL PROTECTED]>**20080123000417
     Running in a tru temporary directory allows the potential to run tests in parallel.
] 
[update some ChangeLog entries to also credit those who contributed through bug reporting, test writing or feedback. 
Mark Stosberg <[EMAIL PROTECTED]>**20080122235435] 
[ issue602: part 1: Always prefer our private copy of Test::More over the system-wide one for more consistent results
Mark Stosberg <[EMAIL PROTECTED]>**20080124005407] 
[ issue602, part 2: freshen our versions of Test::More and Test::Builder
Mark Stosberg <[EMAIL PROTECTED]>**20080123013642] 
[More error messages for libwww.
Dmitry Kurochkin <[EMAIL PROTECTED]>**20080124092600] 
[issue608: a new test for 'mv', following Zooko's bug report
Mark Stosberg <[EMAIL PROTECTED]>**20080124013856] 
[report progress in writing the inventory out for hashed repos.
David Roundy <[EMAIL PROTECTED]>**20080125172017] 
[make empty key case of progress reporting fast.
David Roundy <[EMAIL PROTECTED]>**20080125171859] 
[fix issue where we overwrote prompt with progress info.
David Roundy <[EMAIL PROTECTED]>**20080125164609] 
[fix bug where we used show on an exception (and thus printed "User error").
David Roundy <[EMAIL PROTECTED]>**20080125164209
 This partially addresses issue168 by improving the error message.
] 
[add gnulib sha1.c file as a faster sha1 option.
David Roundy <[EMAIL PROTECTED]>**20080123212502] 
[fix embarrassing bug in External.
David Roundy <[EMAIL PROTECTED]>**20080125152329
 (which demonstrates that I didn't compile before pushing)
] 
[for now, print progress reports to stdout.
David Roundy <[EMAIL PROTECTED]>**20080125152105
 My hope is that this will alleviate some of the issues with progress
 reports overwriting prompts.
] 
[revamp progress reporting, making it more efficient and adding more output.
David Roundy <[EMAIL PROTECTED]>**20080125151540
 Note that there is still at least one time sink that remains to be identified.
] 
[avoid creating darcs-ssh if we aren't using ControlMaster. (issue613)
David Roundy <[EMAIL PROTECTED]>**20080125150846] 
[fix bug where darcs-ssh got even worse name (issue613).
David Roundy <[EMAIL PROTECTED]>**20080125150355] 
[provide more detailed progress reports in HashedIO.
David Roundy <[EMAIL PROTECTED]>**20080124145156] 
[print additional debug data in Progress.
David Roundy <[EMAIL PROTECTED]>**20080124145114] 
[add a few more debug messages in Repository.Internal.
David Roundy <[EMAIL PROTECTED]>**20080124144829] 
[fix incorrect report that we were reading patches.
David Roundy <[EMAIL PROTECTED]>**20080124125040] 
[reenable mandatory sha1 checks, now that we can link with a faster sha1.
David Roundy <[EMAIL PROTECTED]>**20080123203104] 
[remove (broken) git support and add openssl sha1 support.
David Roundy <[EMAIL PROTECTED]>**20080123202025
 These two changes got merged together as I was introducing the configure.ac
 changes to support openssl as a sha1 alternative to our Haskell code.
 
 (Yes, I'm lazy.)
] 
[remove redundant hash checks in hashed IO code.
David Roundy <[EMAIL PROTECTED]>**20080123173022] 
[output nicer progress in convert.
David Roundy <[EMAIL PROTECTED]>**20080123170428] 
[output timings when --timings is specified.
David Roundy <[EMAIL PROTECTED]>**20080123170314] 
[remove inaccurate message in convert.
David Roundy <[EMAIL PROTECTED]>**20080123170243] 
[use debugMessage in HashedIO.
David Roundy <[EMAIL PROTECTED]>**20080123160835] 
[add --timings flag (that as yet does nothing).
David Roundy <[EMAIL PROTECTED]>**20080123154931] 
[Major Perl test suite clean-up.
Mark Stosberg <[EMAIL PROTECTED]>**20080120035651
     The primary purpose of this patch was make sure all the tests are executed in
     randomly named directories, which allows us to run Perl tests in parallel, 
     without the directory names collided. 
 
     This isn't enabled by default for "make test", but it is there to play with.
     In the test directory, you can now do:
 
     ./bin/prove -j9 *.pl 
     
     to run 9 tests in parallel. There is also "--fork"
     option which should be a win on multi-CPU computers. 
     See "perldoc ./bin/prove" for details. 
 
     As part of this, a lot of boiler-plate code at the top and bottom of the
     scripts could be eliminated, and I made few other minor style clean-ups
     while I had the files open. 
 
     There should be no functional changes to the tests. 
] 
[Take advantage of new Perl testing infrastructure by eliminating needless --ignore-time mentions
Mark Stosberg <[EMAIL PROTECTED]>**20080120005242] 
[Take advantage of updated Perl testing infrastructure by removing needless author mentions in tests
Mark Stosberg <[EMAIL PROTECTED]>**20080120004503] 
[use --ignore-time in tests instead of "sleep", for faster, more reliable results
Mark Stosberg <[EMAIL PROTECTED]>**20080118030241] 
[Issue395: avoid single letter patch names in the test suite.  
Mark Stosberg <[EMAIL PROTECTED]>**20080118020634] 
[add regression test for amend-record removed file
Tommy Pettersson <[EMAIL PROTECTED]>**20080122223231] 
[use UTC in date matching test untill match handles time zones
Tommy Pettersson <[EMAIL PROTECTED]>**20080122134322] 
[fix bug with timestamps and obliterate.
David Roundy <[EMAIL PROTECTED]>**20080122224607] 
[Test: unpull may hide changes when using timestamp optimisation.
[EMAIL PROTECTED] 
[avoid printing totals that are less than our current progress.
David Roundy <[EMAIL PROTECTED]>**20080122210546] 
[TAG 2.0.0pre3
David Roundy <[EMAIL PROTECTED]>**20080122200612] 
Patch bundle hash:
6ec869a65e1685f8f82dae65503e01c4cd9c4228
_______________________________________________
darcs-devel mailing list
darcs-devel@darcs.net
http://lists.osuosl.org/mailman/listinfo/darcs-devel

Reply via email to