[darcs-users] darcs patch: resolve issue628: reuse the long comment code from Dar...

Christian Kellermann Christian.Kellermann at nefkom.net
Fri Oct 24 11:58:59 UTC 2008


* Eric Kow <kowey at darcs.net> [081024 12:24]:
> This is nice and minimal.  Now let's shave it down some more!
Thanks!

> > -\end{code}
> > -Each tagged version has a version name.
> > -\begin{code}
> 
> Note that you've lost this bit of user manual

OOps!

> 
> > -get_patchname :: [DarcsFlag] -> IO String
> > -get_patchname (PatchName n:_) = return $ "TAG "++n
> > -get_patchname (_:flags) = get_patchname flags
> > -get_patchname [] = do
> > -    n <- askUser "What is the version name? "
> > -    if n == "" then get_patchname []
> > -               else return $ "TAG "++n
> 
> Unless I am mistaken, by using Darcs.Record.get_log, we now no longer
> ask "What is the version name?" but "What is the patch name?"

That's right, at the moment I don't see that as a problem since a
tag is nothing more than a patch right?

> 
> > +  where  get_name_log :: [DarcsFlag] -> [String] -> IO (String, [String])
> 
> This is going to sound like the opposite of what I suggested last
> time, is there a reason why get_name_log is in a where block and not a
> top-level function?  It's not always easy to get a feel for when to do
> one or the other, so it'll be good see your thoughts on it.  I was
> mainly asking because not moving it may allow you make an even more
> minimal patch, but you have had some design-thinking in there...
> 
> If you want to put it in a where block, maybe we can get rid of some
> arguments, like the [DarcsFlag] one and just use the one from the
> surrounding function.

Well this is mainly based on David's comment that he would not make
functions available that are used only once.  I am not sure whether
I understand your argument about making an even shorter patch when
moving it...

> 
> > +         get_name_log o [] = do (name, comment, _) <- get_log o Nothing (world_readable_temp "darcs-tag") NilFL
> > +                                return (add_tag name, comment)
> 
> > +         get_name_log o a = do let name = add_tag $ unwords a
> > +                               (comment_name , comment, _) <- get_log (add_patch_name o name) Nothing (world_readable_temp "darcs-tag") NilFL
> > +                               putStrLn $ "Comment " ++ comment_name ++ unlines comment
> > +                               return (name, comment)
> 
> 
> Also, is the putStrLn deliberate, or is it left-over debuggin information?

left-over is gone now...

> 
> Now it looks to me like you can make this a bit clearer by combining the
> two cases
> 
> get_name_log o a = do let o2 = if null a then o else (add_patch_name o (unwords a))
>                       (name, comment, _) <- get_log o2 Nothing (world_readable_temp "darcs-tag") NilFL
>                       return (add_tag name, comment)

right.

> 
> > +         add_tag :: String -> String
> > +         add_tag [] = []
> > +         add_tag n | "TAG " `isPrefixOf` n = n
> > +                   | otherwise = "TAG " ++ n
> 
> Note that this represents a change in behaviour.  Now you can no longer
> name your tags TAG something (which would be silly to do anyway on the
> other hand).

Could you do that before? Then I don't get the check in get_log at Record.lhs.

> > +         add_patch_name :: [DarcsFlag] -> String -> [DarcsFlag]
> > +         add_patch_name o a| has_patch_name o = o
> > +                           | otherwise = [PatchName a] ++ o
> 
> So if the user specified a patch name with -m, we ignore the patch
> name supplied on the command line args... fair enough, I guess :-)
 
That's how its been before as well if IIRC.

Please find another patch bundle attached to this email.

Thanks,

Christian

-- 
You may use my gpg key for replies:
pub  1024D/47F79788 2005/02/02 Christian Kellermann (C-Keen)
-------------- next part --------------
Fri Oct 24 13:55:14 CEST 2008  Christian Kellermann <Christian.Kellermann at nefkom.net>
  * resolve issue628: reuse the long comment code from Darcs.record
  
  This patch reuses the get_log function from Record.lhs. It enables
  users to add long comments to darcs tag.
  

New patches:

[resolve issue628: reuse the long comment code from Darcs.record
Christian Kellermann <Christian.Kellermann at nefkom.net>**20081024115514
 
 This patch reuses the get_log function from Record.lhs. It enables
 users to add long comments to darcs tag.
 
] hunk ./src/Darcs/Commands/Tag.lhs 22
 \begin{code}
 module Darcs.Commands.Tag ( tag ) where
 import Control.Monad ( when, liftM )
+import Data.List ( isPrefixOf )
 
 import Darcs.Commands
 import Darcs.Arguments
hunk ./src/Darcs/Commands/Tag.lhs 26
-import Darcs.Utils ( askUser )
 import Darcs.Hopefully ( n2pia )
 import Darcs.Repository ( amInRepository, withRepoLock, ($-), read_repo,
                     tentativelyAddPatch, finalizeRepositoryChanges, 
hunk ./src/Darcs/Commands/Tag.lhs 34
 import Darcs.Patch
 import Darcs.Patch.Info
 import Darcs.Patch.Depends
-import Darcs.Commands.Record ( get_date )
+import Darcs.Commands.Record ( get_date, get_log )
+import Darcs.Ordered ( FL(..) )
+import Darcs.Lock ( world_readable_temp )
+import Darcs.Flags ( DarcsFlag(..) )
 \end{code}
 \begin{code}
 tag_description :: String
hunk ./src/Darcs/Commands/Tag.lhs 75
                     command_basic_options = [patchname_option, author,
                                             checkpoint,
                                             pipe_interactive,
+                                            ask_long_comment,
                                             working_repo_dir]}
 \end{code}
 \begin{code}
hunk ./src/Darcs/Commands/Tag.lhs 84
     date <- get_date opts
     the_author <- get_author opts
     deps <- get_tags_right `liftM` read_repo repository
-    name <- if (not . null) args
-            then return $ "TAG " ++ unwords args
-            else get_patchname opts
-    myinfo <- patchinfo date name the_author []
+    (name, long_comment)  <- get_name_log opts args
+    myinfo <- patchinfo date name the_author long_comment
     let mypatch = infopatch myinfo identity
hunk ./src/Darcs/Commands/Tag.lhs 87
-       in do
-       tentativelyAddPatch repository opts $ n2pia $ adddeps mypatch deps
-       finalizeRepositoryChanges repository
-       when (CheckPoint `elem` opts) $ write_recorded_checkpoint repository myinfo
-       putStrLn $ "Finished tagging patch '"++name++"'"
-\end{code}
-Each tagged version has a version name.
-\begin{code}
-get_patchname :: [DarcsFlag] -> IO String
-get_patchname (PatchName n:_) = return $ "TAG "++n
-get_patchname (_:flags) = get_patchname flags
-get_patchname [] = do
-    n <- askUser "What is the version name? "
-    if n == "" then get_patchname []
-               else return $ "TAG "++n
+    tentativelyAddPatch repository opts $ n2pia $ adddeps mypatch deps
+    finalizeRepositoryChanges repository
+    when (CheckPoint `elem` opts) $ write_recorded_checkpoint repository myinfo
+    putStrLn $ "Finished tagging patch '"++name++"'"
+  where  get_name_log :: [DarcsFlag] -> [String] -> IO (String, [String])
+         get_name_log o a = do let o2 = if null a then o else (add_patch_name o (unwords a))
+                               (name, comment, _) <- get_log o2 Nothing (world_readable_temp "darcs-tag") NilFL
+                               return (add_tag name, comment)
+         add_tag :: String -> String
+         add_tag [] = []
+         add_tag n | "TAG " `isPrefixOf` n = n
+                   | otherwise = "TAG " ++ n
+         add_patch_name :: [DarcsFlag] -> String -> [DarcsFlag]
+         add_patch_name o a| has_patch_name o = o
+                           | otherwise = [PatchName a] ++ o
+         has_patch_name (PatchName _:_) = True
+         has_patch_name (_:fs) = has_patch_name fs
+         has_patch_name [] = False
 \end{code}
hunk ./src/Darcs/Commands/Tag.lhs 106
+
+Each tagged version has a version name.
 The version is also flagged with the person who tagged it (taken by default
 from the `DARCS\_EMAIL' or `EMAIL' environment variable).  The date is also
 included in the version information.

Context:

[avoid needless work in Setup.hs
David Roundy <droundy at darcs.net>**20081020200931
 Ignore-this: 52f3e0416edfd888d926a01ced7b6714
] 
[enable franchise build tests under wine 1.0.
David Roundy <droundy at darcs.net>**20081020182156
 Ignore-this: 2b6ea78bb8ae5e432c4823019ef6e589
] 
[enable test of franchise build.
David Roundy <droundy at darcs.net>**20081020172147
 Ignore-this: bf5e21492195919296450851c07789c2
] 
[only build ChangeLog if we're in a darcs repository.
David Roundy <droundy at darcs.net>**20081020143550
 Ignore-this: e79c7ca9ca2525ff4489a4c6926cbcaa
] 
[remove dependence on haskell98 package from preproc.hs and make_changelog.hs.
David Roundy <droundy at darcs.net>**20081019220256
 Ignore-this: 2bda2dcb172e3c815bd5a2c068a064e2
] 
[we don't need to announce we're on windows, just log it.
David Roundy <droundy at darcs.net>**20081019213320
 Ignore-this: 23d4ca75eb60dcf4ef52123a5cb6c4eb
] 
[reorganize and comment ./Setup.hs flags.
David Roundy <droundy at darcs.net>**20081019211118
 Ignore-this: 954c53a14e398fc0e037c8a1371bd598
] 
[simplify checking for windows using franchise.
David Roundy <droundy at darcs.net>**20081019211048
 Ignore-this: 37e425429c107b80776dc3c28ca7c544
] 
[test for endianness using franchise.
David Roundy <droundy at darcs.net>**20081018213539
 Ignore-this: 9c418723de4ae70bc83cd0e6bc9b1dfd
] 
[fix test-franchise-build.sh to work with renamed Setup.hs.
David Roundy <droundy at darcs.net>**20081018183619
 Ignore-this: 7b810e0be231c6088e5fc0cde9533192
] 
[Capitalise Setup.hs for consistency.
Eric Kow <eric.kow at gmail.com>**20081018152001] 
[add CURSES test to setup.hs.
David Roundy <droundy at darcs.net>**20081017164048
 Ignore-this: 1262a90b249d39c916e8e36bfdb6b63b
] 
[half-resolve issue1138: make it possible in setup.hs to not use -Werror.
David Roundy <droundy at darcs.net>**20081016201336
 Ignore-this: 4f4f31cf24e25774a8217c26813ddbd3
] 
[use unlessFlag in setup.hs to simplify haskeline check.
David Roundy <droundy at darcs.net>**20081016200649
 Ignore-this: 5a2b4ced454b56180f4b9422ff03c41f
] 
[add haskeline test to setup.hs.
David Roundy <droundy at darcs.net>**20081014201513
 Ignore-this: 1472b07696d83f70bf8ad8f7b3d5cf1
] 
[clean up setup.hs by using lookForModule instead of catching exceptions.
David Roundy <droundy at darcs.net>**20081014160159
 Ignore-this: 8f5c7bd5be2ca099fda5bd52d35dc429
] 
[add test for siginfo.h (which shows up on SunOS maybe?)
David Roundy <droundy at darcs.net>**20081014154814
 Ignore-this: 72d32ff1b4b57dbf75eab937be5a0e22
] 
[clean up test-franchise-build.sh a bit more...
David Roundy <droundy at darcs.net>**20081013175711
 Ignore-this: 619fff6a0be4bc8172cd8c39a5591079
] 
[clean up test-franchise-build.sh
David Roundy <droundy at darcs.net>**20081013162935
 Ignore-this: a1bd36f8bb8d3d75519abcc8d8388a99
 Among other infelicities, it wasn't using a clean franchise build
 except under wine.
] 
[clean up setup.hs configure a bit.
David Roundy <droundy at darcs.net>**20081010154959
 Ignore-this: 10855edc3e6fda315e03b6ea1c64b05e
 This removes redundant output, and warns when fast http libraries
 aren't found (or no http library at all).
] 
[Fix curl version in setup.hs.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081012094214
 Ignore-this: 5c44008cb7105279c37a2297e668a070
] 
[avoid re-checking for windows.
David Roundy <droundy at darcs.net>**20081011223905
 Ignore-this: 93c42ffc6b67c6cca803e1dcb18a9497
] 
[setup.hs: don't fail if darcs doesn't yet exist.
David Roundy <droundy at darcs.net>**20081011223824
 Ignore-this: 6d318961490a9343f5e792f2d740fd27
] 
[fix spelling error in setup.hs.
David Roundy <droundy at darcs.net>**20081011205353
 Ignore-this: 6d521f633d74aae8705391eff9489b2c
] 
[make setup.hs look for libcurl
David Roundy <droundy at darcs.net>**20081011195923
 Ignore-this: c9a267184e89b188f074171f8887b3b4
] 
[ratify use of readFile in setup.hs
David Roundy <droundy at darcs.net>**20081010150105
 Ignore-this: 92627010ec07e16d271bcc5e7f325c64
] 
[add script for testing the franchise build.
David Roundy <droundy at darcs.net>**20081010142711
 Ignore-this: 5aa40dc14c0827b199b9d23d1c7ef27d
 This includes testing the cross-compile to windows using wine.  It's
 part of my scripts that are run on each push to darcs-unstable.
] 
[add franchise setup file.
David Roundy <droundy at darcs.net>**20081009203410
 Ignore-this: f1738c7608e6093aa18e808d3d41d000
] 
[call $(MAKE) instead of 'make', because GNUMake is not called 'make' everywhere
Chistian Kellermann <Christian.Kellermann at nefkom.net>**20081021123122] 
[on windows, try renameFile before deleting target file.
David Roundy <droundy at darcs.net>**20081010204009
 Ignore-this: 6946caec86d1c7177510baf62e2ed275
 The trouble was that if we were renaming a file to itself, we ended up
 deleting the file we were renaming (oops!).  It's a stupid hack, but
 that's what we're forced to do when running on windows.  (Note that
 it's potentially hard to determine if two paths describe the same
 file.)
] 
[Simplify Darcs.Lock.withDir.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081011110639
 Ignore-this: c01257f9e0fc40c415562448cb52d67d
] 
[Do not remove temporary directories if DARCS_KEEP_TMPDIR environment variable is set.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081011105808
 Ignore-this: 5ea0e206e45dc9be73c29c3bf89643b9
] 
[eliminate autogeneration of Workaround.hs.
David Roundy <droundy at darcs.net>**20081010134727
 Ignore-this: 784a4b08bab1e22c93f54c1c5cd710f1
] 
[Add import list for System.Process in Exec.lhs
J. Garrett Morris <jgmorris at cecs.pdx.edu>**20081017195920] 
[Use command_control_list directly in run_the_command.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081015181141
 Ignore-this: 8c4fb4d8602638648ba4afc6d2e9eeb8
] 
[Fix imports in Darcs.ArgumentDefaults.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081015180629
 Ignore-this: e57422b5a224179b7b1431de262bf8ea
] 
[Refactor Darcs.ArgumentDefaults to use command_control_list directly.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081015175540
 Ignore-this: c832abf95dc438a3b71ed2b9a84cc413
] 
[Refactor Darcs.Commands, move command run code to Darcs.RunCommand.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081015174031
 Ignore-this: 3b8c32701f62f3d7b1e0834eaa406dc5
] 
[Remove unused extended_usage.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081015142503
 Ignore-this: 1d86f17d2bc3ec0c004e3cd1016d303
] 
[Use help_cmd instead of usage in main.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081015134236
 Ignore-this: fced70e6714d5294783bbe98f0d81e47
] 
[Use help_cmd directly in main.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081015132942
 Ignore-this: 8ded4d8a8cf51f862794a78eea4ef137
] 
[Refactor 'darcs --commands' to list_available_commands.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081015125827
 Ignore-this: 114b79a90e6446169dd87ff8591bc6ff
] 
[fix Submitting patches to darcs with respect to send -u
Thorkil Naur <naur at post11.tele.dk>**20081015073751] 
[finished cleanup of default_boring entries
benjamin.franksen at bessy.de**20081014100840
 Ignore-this: e5ad0567cabe64142bf3876c2d73535e
] 
[simplify pull_many_files.sh.
David Roundy <droundy at darcs.net>**20081014165155
 Ignore-this: 9f7a7cc5b02a9d51810149a8875e987f
] 
[Use fgrep in printer.sh test (more portable than grep -F)
Eric Kow <eric.kow at gmail.com>**20081014135138] 
[have makefile make hspwd rather than shell_harness.
David Roundy <droundy at darcs.net>**20081013192943
 Ignore-this: 31008f1993c5a2281b229b9c5cdca66c
 I think there was a problem that make -j check could cause ghc --make
 to be run simultaneously.  Now it's run just once, before running any
 tests.
] 
[slightly hokey approach to solving pwd problem.
David Roundy <droundy at darcs.net>**20081013184209
 Ignore-this: 762f0339c99f1d4a529ab031ad353cd0
 I think this may help the Solaris/BSD test portability issue, and it's
 also (I think) a slightly cleaner alternative to the portable_pwd
 hack.
] 
[Remove bashisms and GNUisms
Matthias Kilian <kili at outback.escape.de>**20081012123017
 
 Replace some bashisms and GNUisms by more standards compliant command
 lines, i.e.:
 
 - Don't use `\|' in BREs, since it's undefined according to POSIX.
   Instead just use grep -E with an ERE.
 
 - Don't create "funny" strings with the $'\x01...' bashism but use
   printf(1) instead. Note that this isn't strictly necessary to fix
   printer.sh on non-GNUish systems, but it makes it much simpler to test
   what's going on.
 
 - In test_line(), just use grep -F, and unescape all second arguments
   passed to test_line(). This makes the script much more readable and
   actually fixes it for non-GNUish systems.
] 
[Restore quiet grep in portable_pwd
Eric Kow <eric.kow at gmail.com>**20081005164212
 Only this time, we use > /dev/null.
] 
[Disable a test that triggers a setCooked failure under Windows.
Eric Kow <eric.kow at gmail.com>**20081005145124] 
[further makefile cleanups.
David Roundy <droundy at darcs.net>**20081005124353
 Ignore-this: 8c498e4b793b7049e273d6ac98441256
] 
[Simplify testing in makefile.
Eric Kow <eric.kow at gmail.com>**20081005092416] 
[Revise test documentation to reflect consolidation to shell tests.
Eric Kow <eric.kow at gmail.com>**20081005091131] 
[Remove Perl test harness and convenience copies.
Eric Kow <eric.kow at gmail.com>**20081005090921] 
[Do not use Perl test harness.
Eric Kow <eric.kow at gmail.com>**20081005090903] 
[Hopefully fix issue595 test on Solaris.
Eric Kow <eric.kow at gmail.com>**20081005090156
 
 I'm not entirely clear on what is causing this to fail.
 The basic test is:
   mkdir -p restrictive/liberal
   chmod 111 restrictive
   cd restrictive/liberal
   darcs get
 
 This is apparantly known to fail under Solaris.  The original Perl test
 claims it's because you can't cd into restrictive/liberal, but the shell
 variant seems to manage fine.  In any case, I think this touch file
 check is simpler.
] 
[fix bug in external.sh translation.
David Roundy <droundy at darcs.net>**20081005122814
 Ignore-this: 1291ebf27ea9c4a04d79c877b0f6f82d
] 
[Translate printer test into shell.
Eric Kow <eric.kow at gmail.com>**20081005020140] 
[Translate still more Perl tests into shell.
Eric Kow <eric.kow at gmail.com>**20081005012058] 
[Translate pull_many_files tests into shell and avoid redoing work.
Eric Kow <eric.kow at gmail.com>**20081005004120
 Just use whatever format is in .darcs/defaults
] 
[Skip filepath test which does not work on Windows.
Eric Kow <E.Y.Kow at brighton.ac.uk>**20081004234806] 
[Fix non-portable use of grep -q in tests.
Eric Kow <E.Y.Kow at brighton.ac.uk>**20081004234524] 
[Make sed usage more portable in hidden_conflict2 test.
Eric Kow <E.Y.Kow at brighton.ac.uk>**20081004233717] 
[Translate some more Perl tests into shell.
Eric Kow <eric.kow at gmail.com>**20081004201632] 
[add test that timestamps are properly set.
David Roundy <droundy at darcs.net>**20081013152933
 Ignore-this: caf36b9fff70f9a44b0f35078f3a5aee
] 
[simplify write_default_prefs.
David Roundy <droundy at darcs.net>**20081013121512
 Ignore-this: 4f72699d2406802e771a0ceadc913550
 It's easier to read this way, and shorter, too.
] 
[documented provenance of .tmp_versions and .DS_Store files in default boring
ben.franksen at online.de**20081012220207] 
[resolve issue1139: make special cases handle no arguments gracefully.
David Roundy <droundy at darcs.net>**20081011161059
 Ignore-this: 12b17a3940558860dd4caf7bb2619ec7
 I accidentally broke this when refactoring Darcs.Match.  This change
 restores some efficiency when no arguments are given and thus we are
 creating copies of all the files in the repository.
] 
[remove reimplementation of zipWith.
David Roundy <droundy at darcs.net>**20081010191051
 Ignore-this: 277f49de513ec84bc6db0b4da6c633b1
] 
[fix incompatibilities with ghc 6.6
David Roundy <droundy at darcs.net>**20081009165845
 Ignore-this: 18739c880a49b976ec151363f4ff9296
] 
[refactor Match to handle --store-in-memory itself.
David Roundy <droundy at darcs.net>**20081008172748
 Ignore-this: 647c75f78d2d4981e67039ae1b6e96df
 This reduces the amount of duplicate code, at the cost of adding a
 class to Darcs.Match--but at least it isn't exported.
] 
[make writeSlurpy work properly when given "."
David Roundy <droundy at darcs.net>**20081008172207
 Ignore-this: 9d5d077bcdf3a9bb7bfa8477ab9d96d5
 This isn't a bugfix per se, but rather a feature addition.
 writeSlurpy has a "safety feature" that it refuses to overwrite a
 directory, but that safety feature doesn't really apply to the
 directory ".", since "." explicitly means that we want to overwrite
 the directory.
] 
[add tests for issue1139.
David Roundy <droundy at darcs.net>**20081011155324
 Ignore-this: ff50784059114f969fb4657ea5e92025
] 
[Copyright and licensing notes and rationales.
Trent W. Buck <trentbuck at gmail.com>**20081011035925] 
[Document DARCS_KEEP_TMPDIR in manual.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081011115026
 Ignore-this: bd77d5a85fa44094dcd1a867c2a63d2e
] 
[Documentation for DARCS_KEEP_TMPDIR.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081011113042
 Ignore-this: 5e3d6598aed4b681a099341c3ec5017a
] 
[add new test that optimize --reorder behaves itself on lazy repos.
David Roundy <droundy at darcs.net>**20081010194834
 Ignore-this: 5246d20700c153490da1997caede4369
] 
[give more debug output in test.
David Roundy <droundy at darcs.net>**20081010191209
 Ignore-this: a13ec79ae69f4fe9621ea3c16c9b41d6
] 
[add a --prompt-for-dependencies to restore the default behaviour
florent.becker at ens-lyon.org**20081010123240
 Ignore-this: 92480353c19dea1b67aff89b933759a2
 Add a --prompt-for-dependencies flag so that one can put
 --dont-prompt-for-dependencies in their defaults file and
 still get back the default behavior when needed.
] 
[cleanup default boring
ben.franksen at online.de**20081011234148
 
 Also turn default_boring and default_binaries into (pure) CAFs.
] 
[Fix spurious diff and missing cd in diff test.
Eric Kow <eric.kow at gmail.com>**20081008192142
 
 If tests are run in parallel, each instance of the diff test may
 attempt to create temporary directories for use by darcs diff.
 Darcs itself handles this fine; only the test script gets confused
 by the spurious difference that results.
] 
[Help the test harness clean to up after tests.
Eric Kow <eric.kow at gmail.com>**20081008190340
 A typical use case is if a test sets restrictive permissions
 and dies.  Notes:
 * we do this after each test so that one test result doesn't
   contaminate others
 * we explicitly do /not/ remove these temporary directories
   because you may want them around for forensics
] 
[Minor refactor in URL.urlThread.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081010071649
 Ignore-this: 809d750f10adc8073ebe0dd3d432f2a2
] 
[clean up code formatting in Hopefully.
David Roundy <droundy at darcs.net>**20081010144943
 Ignore-this: 65a4dbb17505adbc0c0c615c445a8926
] 
[clean up unused exports in Hopefully.
David Roundy <droundy at darcs.net>**20081010144918
 Ignore-this: a016b66fd64f756295555255b268e80a
] 
[haddock documentation for Hopefully
florent.becker at ens-lyon.org**20081001081315] 
[resolve issue1062: ignore setCooked and setEcho errors.
Eric Kow <eric.kow at gmail.com>**20081010122047
 Ignore-this: 2f8c8710faefdcdb6b224244995a00af
 The issue in question is only about setCooked.
 I presume setEcho can similarly fail.
] 
[add missing createLink to win32/System/Posix/Files.hsc.
David Roundy <droundy at darcs.net>**20081010133500
 Ignore-this: 39d246ab1db8c31f78e0b8362ad05ca3
] 
[make make_changelog default to quiet output.
David Roundy <droundy at darcs.net>**20081009203322
 Ignore-this: 55eba7a68a3c8a5683d23cc99848bd6f
 You can restore previous behavior by defining the VERBOSE environment
 variable.
] 
[remove unused and unneeded Workarounds.
David Roundy <droundy at darcs.net>**20081009194541
 Ignore-this: bca5a7a2444d4ddffeed673cbbfa19ec
] 
[rename lazy-deps to dont-prompt-for-dependencies.
David Roundy <droundy at darcs.net>**20081009171030
 Ignore-this: 78393e28c184c9339c89cecaa852dbc9
] 
[basic tests for --lazy-deps
Florent Becker <florent.becker at ens-lyon.org>**20081008124956
 Ignore-this: 79d8a312943813e9fe5448bc2ab86aa0
] 
[added a --lazy-deps option
Florent Becker <florent.becker at ens-lyon.org>**20081008122224
 Ignore-this: d934868e56f0084067f5aedf0512a533
 This option means that you don't get asked about patches which do not match
 a --match, but are depended upon by a patch that does. These patches will get
 ilently selected. 
 
] 
[refactor of SelectChanges
Florent Becker <florent.becker at ens-lyon.org>**20081008100551
 Ignore-this: e620d36d6e52eb62a2205fe5122d7076
] 
[rewrite push_coalesce_patch to avoid calls to lengthFL.
David Roundy <droundy at darcs.net>**20080924161517
 Ignore-this: cf746702c3b1e06ab2d400878e20e305
] 
[change a bit of code to accept FilePathLike arguments.
David Roundy <droundy at darcs.net>**20081008172047
 Ignore-this: 87032e071bb49117133d99a90bdfd0e1
 These functions really should expect FileName, and this is an
 incremental move in that direction.
] 
[Implement Commands.Check in terms of Repository.Repair functionality.
me at mornfall.net**20080926144006] 
[Implement Commands.Repair in terms of Repository.Repair functionality.
me at mornfall.net**20080926143919] 
[Export testTentative from Darcs.Repository.
me at mornfall.net**20080926143839] 
[Implement Repository.Repair to provide primitives for check and repair commands.
me at mornfall.net**20080926143721] 
[keep changepref patches from breaking the toSimple optimization.
David Roundy <droundy at darcs.net>**20080924162022
 Ignore-this: 404a4386b048b74dd9afcdde47bc1b11
] 
[make various autoconf simplifications.
David Roundy <droundy at darcs.net>**20080923150742
 Ignore-this: 213c53eda0b54c01909c8d15b2a5fdd6
] 
[Translate merging_newlines bug into shell and restore bug context.
Eric Kow <eric.kow at gmail.com>**20081005085031
 
 This used to be a TODO item at the end of the merging_newlines
 test, but when it was moved out, the actions required to set up
 a bug were forgotten.  This patch restores those actions.
] 
[Remove residual Perlisms in match-date.
Eric Kow <eric.kow at gmail.com>**20081005000324] 
[Use example.com in external.pl tests.
Eric Kow <E.Y.Kow at brighton.ac.uk>**20080928082407
 This avoids timing out in some DNS lookup.  When I first wrote this
 test, I did not know that RFC2606 has reserved example.{com,net,org}
 which seems to be useful in precisely this situation.
] 
[fix incorrect merging_newlines.sh test.
David Roundy <droundy at darcs.net>**20081004223547
 Ignore-this: 33ebc10cd54112ec101750dd6c75fdf9
] 
[Move merging_newlines test to bugs and add a simpler version.
Eric Kow <eric.kow at gmail.com>**20081004135724
 
 There are two issues I noticed when converting this Perl test into
 shell.  This test was passing, but I made some mistakes translating it,
 and in doing so, noticed two potential bugs.
 
 The first is a potentially hidden conflict.  If we start from
 a file
   from temp1
   <EOF>
 And then it seems that a change which adds an empty line should
 conflict with a change that adds a line with content.
 
 The second is that if you do omit the newline, as the original
 test does,
   from temp1<EOF>
 you get some strange-looking changes, namely that appending a
 line to this yields two addline changes and not one.
] 
[Restore send-external.sh test.
David Roundy <droundy at darcs.net>**20081009140121
 Ignore-this: 700f9c538033108cac397c1d757fbfc4
] 
[use minimum Cachable time in corner case where f/=f' and c/=c'.
David Roundy <droundy at darcs.net>**20081008173804
 Ignore-this: 51f2a68ac4139420bd116e8293cc5cc2
] 
[add test of Ignore-this functionality.
David Roundy <droundy at darcs.net>**20081008192621
 Ignore-this: 47b7bf225e2997dd78c351763c769738
] 
[warn users if they try to record a change beginning with Ignore-this:.
David Roundy <droundy at darcs.net>**20081008192001
 Ignore-this: 94828726d609f46e384c2ab8091e49db
 Ignore-this: I am testing the functionality of this feature.
] 
[allow users to add their own ignored information to patches.
David Roundy <droundy at darcs.net>**20081008190038
 Ignore-this: fe8294776896b6fdcd489752a29d1069
] 
[remove excessive indentation that made the code very hard to read.
David Roundy <droundy at darcs.net>**20081008173358
 Ignore-this: d93e312c27f0d9a1ef993855c6872257
] 
[When requesting same URL with different cachability choose least cachable.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20081008145049
 Ignore-this: fddacf3e706a68c55871f81438d283b
] 
[Improve test pull.sh cleanup
Thorkil Naur <naur at post11.tele.dk>**20081008115539] 
[Allow dist command to take a tag argument (issue 286).
Stephen Hicks <sdh33 at cornell.edu>**20081006075133
 It should probably be a "match_one_context" instead of a "match_one"
 option type, and then instead of using the "nonranged" matcher, we'd
 use the "patchset" ones (that don't exist yet).  But I couldn't figure
 out how to blend "get_nonrange_match" and "get_one_patchset" in any
 sensical way to get immediate pristine output (and all the more so for
 the "_s" variants).  So for now, contexts are not supported, but it
 would be nice if they were someday.
] 
[clean up RepoPath a bit (removing unused methods from classes).
David Roundy <droundy at darcs.net>**20081008161906
 Ignore-this: 4e69882ebe10f20bb67350b106bd10af
] 
[clean up exportation of SlurmMonad private internals.
David Roundy <droundy at darcs.net>**20081008151758
 Ignore-this: 3763cc352b6f28fa83d8fbe5b1077985
] 
[Optimize clean_hashdir's use of cleanCaches.
Petr Rockai <me at mornfall.net>**20081007191237
 
 We now only ask cleanCaches to look at files we have unlinked and therefore
 might have caused their cached equivalents to drop link-count to 1. Limits
 number of stats to O(n), n = number of cleaned out files.
] 
[partial haddock documentation of Arguments.lhs
Florent Becker <florent.becker at ens-lyon.org>**20081007131122] 
[mv nfs-failure test to the bugs/ folder, since it fails.
David Roundy <droundy at darcs.net>**20081005130112
 Ignore-this: 73c6e55558233f1b56d7ff51f327f454
] 
[Translate some Perl bugs into shell.
Eric Kow <eric.kow at gmail.com>**20081005084157] 
[Translate date matching test to shell.
Eric Kow <eric.kow at gmail.com>**20081005000243] 
[Translate some more Perl tests into shell.
Eric Kow <eric.kow at gmail.com>**20081004163850
 Shell equivalents already exist for these particular tests,
 but they may not do the same thing.
] 
[Move non-date-matching code out of match.pl
Eric Kow <eric.kow at gmail.com>**20081004145445
 The goal is to minimise and eventually eliminate our use of Perl
 for regression tests.
] 
[Fix minor bug in conflict-doppelganger test.
Eric Kow <eric.kow at gmail.com>**20081004163746
 It does not account for --old-fashioned-inventory being
 in .darcs/defaults
] 
[Update tests to reflect --darcs-2 default.
Eric Kow <E.Y.Kow at brighton.ac.uk>**20080925143252
 We need to explicitly say --old-fashioned-inventory to test
 accordingly.
] 
[Translate some more Perl tests into shell.
Eric Kow <eric.kow at gmail.com>**20081004092507] 
[remove -q from diff in test, not supported on solaris
Tommy Pettersson <ptp at lysator.liu.se>**20081003205756] 
[Translate some Perl tests into shell.
Eric Kow <eric.kow at gmail.com>**20081003183746] 
[Convert tag.pl test into shell.
Eric Kow <eric.kow at gmail.com>**20081003095231] 
[make default_boring and default_binaries NOINLINE
David Roundy <droundy at darcs.net>**20081001202731
 Ignore-this: f74741738a612bb283d1e871d70aa492
 This is primarily so I won't have to recompile all of darcs when these
 change, but also because they shouldn't be inlined.  It would just be
 a waste of space (and would slow down darcs).
] 
[fix bug in 1105 fix that led to improper overrides of defaults
David Roundy <droundy at darcs.net>**20081001175907
 Ignore-this: 8413d2596f97076ccb096900585f0c62
 The problem is illustrated in the tests/override-defaults.sh that I've
 recorded separately.  We want conflicting defaults in
 ~/.darcs/defaults and _darcs/prefs/defaults to be resolved in favor of
 the default residing in _darcs/prefs/defaults.
] 
[add test that overriding of defaults works right.
David Roundy <droundy at darcs.net>**20081001175645
 Ignore-this: aedfd923676b1fa35c25c72abb88c8f3
] 
[Test for issue1105.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20080929142205
 Ignore-this: 5b7c2f7d270ab614eb1294566048a586
] 
[Resolve issue1105: check if default options are valid.
Dmitry Kurochkin <dmitry.kurochkin at gmail.com>**20080929141948
 Ignore-this: 17b4b27e31545689f21496f7fc9c9fe7
] 
[Restore 'simplify patches in rollback'.
Eric Kow <E.Y.Kow at brighton.ac.uk>**20080926225429] 
[Restore issue27 patches.
Eric Kow <E.Y.Kow at brighton.ac.uk>**20080926222522
 
 rolling back:
 
 Fri Sep 26 23:01:19 BST 2008  Eric Kow <E.Y.Kow at brighton.ac.uk>
   * Resolve issue1102: recognise but do not generate patch log 'junk'.
   
] 
[TAG 2.1.0
Eric Kow <E.Y.Kow at brighton.ac.uk>**20081009120532] 
Patch bundle hash:
302a51d06519e0a510dacda053fbd641f969c7b7
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.osuosl.org/pipermail/darcs-users/attachments/20081024/444b402f/attachment-0001.pgp 


More information about the darcs-users mailing list