Fri Oct 19 22:33:07 BST 2007 Eric Kow <[EMAIL PROTECTED]> * Refactor y/n prompts.
Mon Nov 5 01:55:25 GMT 2007 Eric Kow <[EMAIL PROTECTED]> * Create ssh CM socket in $HOME/.darcs if possible. Mon Nov 5 02:19:56 GMT 2007 Eric Kow <[EMAIL PROTECTED]> * Give ssh CM socket a unique name for each darcs process. Delete the socket in the unlikely event that a previous darcs had a socket with the same name left over. Mon Nov 5 19:25:30 GMT 2007 Eric Kow <[EMAIL PROTECTED]> * Modernise Data.Map import. Mon Nov 5 19:26:36 GMT 2007 Eric Kow <[EMAIL PROTECTED]> * Remove now obsolete wrapper for Map (we now require GHC >= 6.4). Mon Nov 5 01:29:30 GMT 2007 Eric Kow <[EMAIL PROTECTED]> * More concise backup warning. Mon Nov 19 04:13:26 GMT 2007 Eric Kow <[EMAIL PROTECTED]> * Simplify getCurrentDirectorySansDarcs out of existence. It was buggy and needlessly complicated. Mon Nov 19 17:44:22 GMT 2007 Eric Kow <[EMAIL PROTECTED]> * Fix corner case in sansDarcs. Pointed out by Kevin Quick. Fri Jan 18 07:37:20 GMT 2008 Eric Kow <[EMAIL PROTECTED]> * Fix conflicts. - my sansDarcs - Kevin Quick's tempdir_loc simplifications
New patches: [Refactor y/n prompts. Eric Kow <[EMAIL PROTECTED]>**20071019213307] { hunk ./src/Darcs/Commands/MarkConflicts.lhs 84 - " in the working directory.\nAre you sure? ") "yn" + " in the working directory.\nAre you sure? ") replace ./src/Darcs/Commands/MarkConflicts.lhs [A-Za-z_0-9] promptChar promptYorn hunk ./src/Darcs/Commands/Record.lhs 313 - do yorn <- promptChar "Do you want to add a long comment?" "yn" + do yorn <- promptChar "Do you want to add a long comment?" replace ./src/Darcs/Commands/Record.lhs [A-Za-z_0-9] promptChar promptYorn hunk ./src/Darcs/Repository/Internal.lhs 502 - ++ unwords fs++"\nProceed?") "yn" + ++ unwords fs++"\nProceed?") hunk ./src/Darcs/Repository/Internal.lhs 713 - do yorn <- promptChar - "This operation will make unrevert impossible!\nProceed?" - "yn" + do yorn <- promptChar "This operation will make unrevert impossible!\nProceed?" replace ./src/Darcs/Repository/Internal.lhs [A-Za-z_0-9] promptChar promptYorn hunk ./src/Darcs/Utils.lhs 14 - view_file, edit_file, promptChar, promptCharFancy, without_buffering, + view_file, edit_file, promptYorn, promptCharFancy, without_buffering, hunk ./src/Darcs/Utils.lhs 202 -promptChar :: String -> [Char] -> IO Char -promptChar p chs = promptCharFancy p chs Nothing [] +promptYorn :: [Char] -> IO Char +promptYorn p = promptCharFancy p "yn" Nothing [] } [Create ssh CM socket in $HOME/.darcs if possible. Eric Kow <[EMAIL PROTECTED]>**20071105015525] { hunk ./src/Darcs/External.hs 766 - tmp <- tempdir_loc - let tmpDarcsSsh = tmp ++ "darcs-ssh" - createDirectoryIfMissing False tmpDarcsSsh - return $ tmpDarcsSsh ++ "/" ++ addr + tmp <- (fmap (/// ".darcs") $ getEnv "HOME") + `catch` \_ -> tempdir_loc + let tmpDarcsSsh = tmp /// "darcs-ssh" + createDirectoryIfMissing True tmpDarcsSsh + return $ tmpDarcsSsh /// addr + +(///) :: FilePath -> FilePath -> FilePath +d /// f = d ++ "/" ++ f } [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. ] { hunk ./src/Darcs/External.hs 25 +import System.Posix.Process ( getProcessID ) hunk ./src/Darcs/External.hs 28 - renameFile, renameDirectory, copyFile ) + removeFile, renameFile, renameDirectory, copyFile ) hunk ./src/Darcs/External.hs 65 +#ifdef WIN32 +import Darcs.Utils ( showHexLen ) +import Data.Bits ( (.&.) ) +import System.Random ( randomIO ) +#endif hunk ./src/Darcs/External.hs 751 + removeFile cmPath `catch` \_ -> return () hunk ./src/Darcs/External.hs 775 +#ifdef WIN32 + r <- randomIO + let suffix = (showHexLen 6 (r .&. 0xFFFFFF :: Int)) +#else + suffix <- show `fmap` getProcessID +#endif hunk ./src/Darcs/External.hs 783 - return $ tmpDarcsSsh /// addr + return $ tmpDarcsSsh /// addr ++ suffix } [Modernise Data.Map import. Eric Kow <[EMAIL PROTECTED]>**20071105192530] { hunk ./src/Lcs.lhs 45 -import qualified Map ( lookup, empty, insertWith ) +import qualified Data.Map as Map ( lookup, empty, insertWith ) } [Remove now obsolete wrapper for Map (we now require GHC >= 6.4). Eric Kow <[EMAIL PROTECTED]>**20071105192636] { hunk ./GNUmakefile 50 - Lcs.lhs Map.hs \ + Lcs.lhs \ hunk ./src/Map.hs 1 -{-# OPTIONS -cpp #-} --- --- Copyright (C) 2004-5 Don Stewart - http://www.cse.unsw.edu.au/~dons --- --- This program is free software; you can redistribute it and/or --- modify it under the terms of the GNU General Public License as --- published by the Free Software Foundation; either version 2 of --- the License, or (at your option) any later version. --- --- This program is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- General Public License for more details. --- --- You should have received a copy of the GNU General Public License --- along with this program; see the file COPYING. If not, write to --- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, --- Boston, MA 02110-1301, USA. --- - --- --- Compatibility code between Data.FiniteMap and Data.Map --- We use the function names from Data.Map. --- -module Map ( -#if __GLASGOW_HASKELL__ >= 604 - module Data.Map, -#else - Map, - empty, - insert, - insertWith, - delete, - lookup, - fromList, - size, - elems, - singleton, - member, - keys, -#endif - ) where - -import Prelude hiding (lookup) -#if __GLASGOW_HASKELL__ >= 604 -import Data.Map -#else --- --- compatibility code for deprecated FiniteMap --- -import Prelude hiding (lookup) -import qualified Data.FiniteMap as FM - -type Map k a = FM.FiniteMap k a - -empty :: Map k a -empty = FM.emptyFM - -singleton :: k -> a -> Map k a -singleton = FM.unitFM - -insert :: Ord k => k -> a -> Map k a -> Map k a -insert = \k e m -> FM.addToFM m k e - -insertWith :: Ord k => (a -> a -> a) -> k -> a -> Map k a -> Map k a -insertWith = \f k e m -> FM.addToFM_C (flip f) m k e - -delete :: Ord k => k -> Map k a -> Map k a -delete = flip FM.delFromFM - -lookup :: Ord k => k -> Map k a -> Maybe a -lookup = flip FM.lookupFM - -fromList :: Ord k => [(k,a)] -> Map k a -fromList = FM.listToFM - -size :: Map k a -> Int -size = FM.sizeFM - -elems :: Map k a -> [a] -elems = FM.eltsFM - -member :: Ord k => k -> Map k a -> Bool -member = FM.elemFM - -keys :: Map k a -> [k] -keys = FM.keysFM - -#endif rmfile ./src/Map.hs } [More concise backup warning. Eric Kow <[EMAIL PROTECTED]>**20071105012930] { hunk ./src/Darcs/External.hs 98 - else do putStrLn $ "Backing up " ++ f ++ " as " ++ next + else do putStrLn $ "Backing up " ++ f ++ "(" ++ suffix ++ ")" hunk ./src/Darcs/External.hs 100 - where next = f ++ "-darcs-backup" ++ show i + where next = f ++ suffix + suffix = "-darcs-backup" ++ show i } [Simplify getCurrentDirectorySansDarcs out of existence. Eric Kow <[EMAIL PROTECTED]>**20071119041326 It was buggy and needlessly complicated. ] { merger 0.0 ( hunk ./src/Darcs/Lock.lhs 36 -import Data.List ( isInfixOf, inits ) +import Data.List ( inits ) merger 0.0 ( hunk ./src/Darcs/Lock.lhs 36 -import Data.List ( isPrefixOf, inits ) -import System ( exitWith, ExitCode(..), getEnv ) +import Data.List ( isInfixOf, inits ) +import Data.Maybe ( listToMaybe ) +import System ( exitWith, ExitCode(..) ) hunk ./src/Darcs/Lock.lhs 36 -import Data.List ( isPrefixOf, inits ) ) ) hunk ./src/Darcs/Lock.lhs 65 -#include "impossible.h" merger 0.0 ( hunk ./src/Darcs/Lock.lhs 170 -tempdir_loc = do td <- ((head . words) `liftM` readBinFile "_darcs/prefs/tmpdir") - `catchall` resort_to_environment - try_directory td resort_to_environment - where resort_to_environment = look_for_tmp ["DARCS_TMPDIR", "TMPDIR"] - look_for_tmp (p:ps) = do t <- getEnv p - try_directory t $ look_for_tmp ps - `catchall` look_for_tmp ps - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs - try_directory d backup_plan = do exist <- doesDirectoryExist d - if exist then return $ d++"/" - else backup_plan - -getCurrentDirectorySansDarcs :: IO FilePath +tempdir_loc = firstJustIO [ readBinFile "_darcs/prefs/tmpdir" >>= return . Just . head.words >>= chkdir, + maybeGetEnv "DARCS_TMPDIR" >>= chkdir, + maybeGetEnv "TMPDIR" >>= chkdir, + chkdir (Just "/tmp"), + getCurrentDirectorySansDarcs, + return $ Just "." -- always returns a Just + ] + >>= return . fromJust + where chkdir Nothing = return Nothing + chkdir (Just d) = doesDirectoryExist d >>= return . \e -> if e then Just (d++"/") else Nothing + +getCurrentDirectorySansDarcs :: IO (Maybe FilePath) hunk ./src/Darcs/Lock.lhs 177 - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs + look_for_tmp [] = try_directory "/tmp" (sansDarcs `fmap` getCurrentDirectory) ) merger 0.0 ( hunk ./src/Darcs/Lock.lhs 186 - where no_darcs x = not $ "_darcs" `isInfixOf` x + where no_darcs x = not $ "_darcs" `elem` breakup x merger 0.0 ( hunk ./src/Darcs/Lock.lhs 185 - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of - [] -> impossible - (d:_) -> return d - where no_darcs x = not $ "_darcs" `isPrefixOf` x + return $ listToMaybe $ drop 5 $ reverse $ takeWhile no_darcs $ inits c + where no_darcs x = not $ "_darcs" `isInfixOf` x merger 0.0 ( merger 0.0 ( hunk ./src/Darcs/Lock.lhs 177 - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs + look_for_tmp [] = try_directory "/tmp" (sansDarcs `fmap` getCurrentDirectory) hunk ./src/Darcs/Lock.lhs 170 -tempdir_loc = do td <- ((head . words) `liftM` readBinFile "_darcs/prefs/tmpdir") - `catchall` resort_to_environment - try_directory td resort_to_environment - where resort_to_environment = look_for_tmp ["DARCS_TMPDIR", "TMPDIR"] - look_for_tmp (p:ps) = do t <- getEnv p - try_directory t $ look_for_tmp ps - `catchall` look_for_tmp ps - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs - try_directory d backup_plan = do exist <- doesDirectoryExist d - if exist then return $ d++"/" - else backup_plan - -getCurrentDirectorySansDarcs :: IO FilePath +tempdir_loc = firstJustIO [ readBinFile "_darcs/prefs/tmpdir" >>= return . Just . head.words >>= chkdir, + maybeGetEnv "DARCS_TMPDIR" >>= chkdir, + maybeGetEnv "TMPDIR" >>= chkdir, + chkdir (Just "/tmp"), + getCurrentDirectorySansDarcs, + return $ Just "." -- always returns a Just + ] + >>= return . fromJust + where chkdir Nothing = return Nothing + chkdir (Just d) = doesDirectoryExist d >>= return . \e -> if e then Just (d++"/") else Nothing + +getCurrentDirectorySansDarcs :: IO (Maybe FilePath) ) hunk ./src/Darcs/Lock.lhs 182 -getCurrentDirectorySansDarcs :: IO FilePath -getCurrentDirectorySansDarcs = do - c <- getCurrentDirectory - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of - [] -> impossible - (d:_) -> return d - where no_darcs x = not $ "_darcs" `isPrefixOf` x +sansDarcs :: FilePath -> FilePath +sansDarcs "" = "" +sansDarcs ('/':'_':'d':'a':'r':'c':'s':_) = "" +sansDarcs (x:xs) = x : sansDarcs xs ) ) ) } [Fix corner case in sansDarcs. Eric Kow <[EMAIL PROTECTED]>**20071119174422 Pointed out by Kevin Quick. ] { merger 0.0 ( merger 0.0 ( merger 0.0 ( hunk ./src/Darcs/Lock.lhs 185 - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of - [] -> impossible - (d:_) -> return d - where no_darcs x = not $ "_darcs" `isPrefixOf` x + return $ listToMaybe $ drop 5 $ reverse $ takeWhile no_darcs $ inits c + where no_darcs x = not $ "_darcs" `isInfixOf` x merger 0.0 ( merger 0.0 ( hunk ./src/Darcs/Lock.lhs 177 - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs + look_for_tmp [] = try_directory "/tmp" (sansDarcs `fmap` getCurrentDirectory) hunk ./src/Darcs/Lock.lhs 170 -tempdir_loc = do td <- ((head . words) `liftM` readBinFile "_darcs/prefs/tmpdir") - `catchall` resort_to_environment - try_directory td resort_to_environment - where resort_to_environment = look_for_tmp ["DARCS_TMPDIR", "TMPDIR"] - look_for_tmp (p:ps) = do t <- getEnv p - try_directory t $ look_for_tmp ps - `catchall` look_for_tmp ps - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs - try_directory d backup_plan = do exist <- doesDirectoryExist d - if exist then return $ d++"/" - else backup_plan - -getCurrentDirectorySansDarcs :: IO FilePath +tempdir_loc = firstJustIO [ readBinFile "_darcs/prefs/tmpdir" >>= return . Just . head.words >>= chkdir, + maybeGetEnv "DARCS_TMPDIR" >>= chkdir, + maybeGetEnv "TMPDIR" >>= chkdir, + chkdir (Just "/tmp"), + getCurrentDirectorySansDarcs, + return $ Just "." -- always returns a Just + ] + >>= return . fromJust + where chkdir Nothing = return Nothing + chkdir (Just d) = doesDirectoryExist d >>= return . \e -> if e then Just (d++"/") else Nothing + +getCurrentDirectorySansDarcs :: IO (Maybe FilePath) ) hunk ./src/Darcs/Lock.lhs 182 -getCurrentDirectorySansDarcs :: IO FilePath -getCurrentDirectorySansDarcs = do - c <- getCurrentDirectory - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of - [] -> impossible - (d:_) -> return d - where no_darcs x = not $ "_darcs" `isPrefixOf` x +sansDarcs :: FilePath -> FilePath +sansDarcs "" = "" +sansDarcs ('/':'_':'d':'a':'r':'c':'s':_) = "" +sansDarcs (x:xs) = x : sansDarcs xs ) ) hunk ./src/Darcs/Lock.lhs 186 - where no_darcs x = not $ "_darcs" `isInfixOf` x + where no_darcs x = not $ "_darcs" `elem` breakup x ) merger 0.0 ( merger 0.0 ( merger 0.0 ( merger 0.0 ( hunk ./src/Darcs/Lock.lhs 177 - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs + look_for_tmp [] = try_directory "/tmp" (sansDarcs `fmap` getCurrentDirectory) hunk ./src/Darcs/Lock.lhs 170 -tempdir_loc = do td <- ((head . words) `liftM` readBinFile "_darcs/prefs/tmpdir") - `catchall` resort_to_environment - try_directory td resort_to_environment - where resort_to_environment = look_for_tmp ["DARCS_TMPDIR", "TMPDIR"] - look_for_tmp (p:ps) = do t <- getEnv p - try_directory t $ look_for_tmp ps - `catchall` look_for_tmp ps - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs - try_directory d backup_plan = do exist <- doesDirectoryExist d - if exist then return $ d++"/" - else backup_plan - -getCurrentDirectorySansDarcs :: IO FilePath +tempdir_loc = firstJustIO [ readBinFile "_darcs/prefs/tmpdir" >>= return . Just . head.words >>= chkdir, + maybeGetEnv "DARCS_TMPDIR" >>= chkdir, + maybeGetEnv "TMPDIR" >>= chkdir, + chkdir (Just "/tmp"), + getCurrentDirectorySansDarcs, + return $ Just "." -- always returns a Just + ] + >>= return . fromJust + where chkdir Nothing = return Nothing + chkdir (Just d) = doesDirectoryExist d >>= return . \e -> if e then Just (d++"/") else Nothing + +getCurrentDirectorySansDarcs :: IO (Maybe FilePath) ) hunk ./src/Darcs/Lock.lhs 182 -getCurrentDirectorySansDarcs :: IO FilePath -getCurrentDirectorySansDarcs = do - c <- getCurrentDirectory - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of - [] -> impossible - (d:_) -> return d - where no_darcs x = not $ "_darcs" `isPrefixOf` x +sansDarcs :: FilePath -> FilePath +sansDarcs "" = "" +sansDarcs ('/':'_':'d':'a':'r':'c':'s':_) = "" +sansDarcs (x:xs) = x : sansDarcs xs ) hunk ./src/Darcs/Lock.lhs 185 - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of - [] -> impossible - (d:_) -> return d - where no_darcs x = not $ "_darcs" `isPrefixOf` x + return $ listToMaybe $ drop 5 $ reverse $ takeWhile no_darcs $ inits c + where no_darcs x = not $ "_darcs" `isInfixOf` x ) merger 0.0 ( merger 0.0 ( hunk ./src/Darcs/Lock.lhs 182 -getCurrentDirectorySansDarcs :: IO FilePath -getCurrentDirectorySansDarcs = do - c <- getCurrentDirectory - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of - [] -> impossible - (d:_) -> return d - where no_darcs x = not $ "_darcs" `isPrefixOf` x +sansDarcs :: FilePath -> FilePath +sansDarcs "" = "" +sansDarcs ('/':'_':'d':'a':'r':'c':'s':_) = "" +sansDarcs (x:xs) = x : sansDarcs xs merger 0.0 ( hunk ./src/Darcs/Lock.lhs 177 - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs + look_for_tmp [] = try_directory "/tmp" (sansDarcs `fmap` getCurrentDirectory) hunk ./src/Darcs/Lock.lhs 170 -tempdir_loc = do td <- ((head . words) `liftM` readBinFile "_darcs/prefs/tmpdir") - `catchall` resort_to_environment - try_directory td resort_to_environment - where resort_to_environment = look_for_tmp ["DARCS_TMPDIR", "TMPDIR"] - look_for_tmp (p:ps) = do t <- getEnv p - try_directory t $ look_for_tmp ps - `catchall` look_for_tmp ps - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs - try_directory d backup_plan = do exist <- doesDirectoryExist d - if exist then return $ d++"/" - else backup_plan - -getCurrentDirectorySansDarcs :: IO FilePath +tempdir_loc = firstJustIO [ readBinFile "_darcs/prefs/tmpdir" >>= return . Just . head.words >>= chkdir, + maybeGetEnv "DARCS_TMPDIR" >>= chkdir, + maybeGetEnv "TMPDIR" >>= chkdir, + chkdir (Just "/tmp"), + getCurrentDirectorySansDarcs, + return $ Just "." -- always returns a Just + ] + >>= return . fromJust + where chkdir Nothing = return Nothing + chkdir (Just d) = doesDirectoryExist d >>= return . \e -> if e then Just (d++"/") else Nothing + +getCurrentDirectorySansDarcs :: IO (Maybe FilePath) ) ) hunk ./src/Darcs/Lock.lhs 184 -sansDarcs ('/':'_':'d':'a':'r':'c':'s':_) = "" +sansDarcs "/_darcs" = "" +sansDarcs ('/':'_':'d':'a':'r':'c':'s':'/':_) = "" ) ) ) } [Fix conflicts. Eric Kow <[EMAIL PROTECTED]>**20080118073720 - my sansDarcs - Kevin Quick's tempdir_loc simplifications ] { hunk ./src/Darcs/Lock.lhs 36 -import Data.List ( isPrefixOf, inits ) -import System ( exitWith, ExitCode(..), getEnv ) +import System ( exitWith, ExitCode(..) ) hunk ./src/Darcs/Lock.lhs 58 -import FileName ( breakup ) hunk ./src/Darcs/Lock.lhs 63 +#include "impossible.h" hunk ./src/Darcs/Lock.lhs 169 -tempdir_loc = do td <- ((head . words) `liftM` readBinFile "_darcs/prefs/tmpdir") - `catchall` resort_to_environment - try_directory td resort_to_environment - where resort_to_environment = look_for_tmp ["DARCS_TMPDIR", "TMPDIR"] - look_for_tmp (p:ps) = do t <- getEnv p - try_directory t $ look_for_tmp ps - `catchall` look_for_tmp ps - look_for_tmp [] = try_directory "/tmp" getCurrentDirectorySansDarcs - try_directory d backup_plan = do exist <- doesDirectoryExist d - if exist then return $ d++"/" - else backup_plan +tempdir_loc = firstJustIO [ readBinFile "_darcs/prefs/tmpdir" >>= return . Just . head.words >>= chkdir, + maybeGetEnv "DARCS_TMPDIR" >>= chkdir, + maybeGetEnv "TMPDIR" >>= chkdir, + chkdir (Just "/tmp"), + fmap (Just . sansDarcs) getCurrentDirectory >>= chkdir, + return $ Just "." -- always returns a Just + ] + >>= return . fromJust + where chkdir Nothing = return Nothing + chkdir (Just d) = doesDirectoryExist d >>= return . \e -> if e then Just (d++"/") else Nothing hunk ./src/Darcs/Lock.lhs 180 -getCurrentDirectorySansDarcs :: IO FilePath -getCurrentDirectorySansDarcs = do - c <- getCurrentDirectory - case drop 5 $ reverse $ takeWhile no_darcs $ inits c of - [] -> impossible - (d:_) -> return d - where no_darcs x = not $ "_darcs" `isPrefixOf` x +sansDarcs :: FilePath -> FilePath +sansDarcs "" = "" +sansDarcs "/_darcs" = "" +sansDarcs ('/':'_':'d':'a':'r':'c':'s':'/':_) = "" +sansDarcs (x:xs) = x : sansDarcs xs } Context: [fix bug in darcs repair (issue586). David Roundy <[EMAIL PROTECTED]>**20080114204243] [A test for unrecording checkpoint tags, inspired by issue517 Mark Stosberg <[EMAIL PROTECTED]>**20080113025555] [resolve conflict. David Roundy <[EMAIL PROTECTED]>**20080111160045] [Conflict backup files are boring. Trent W. Buck <[EMAIL PROTECTED]>**20080110163822] [more boring extensions [EMAIL PROTECTED] Added extensions for CLISP, CMUCL, and "part" files which result in failed KDE copy operations. ] [resolve conflict in Libwww. David Roundy <[EMAIL PROTECTED]>**20080110234609] [Some error reporting for libwww. Dmitry Kurochkin <[EMAIL PROTECTED]>**20080110221921] [add optional support for using the pure haskell Network.HTTP http implementation John Meacham <[EMAIL PROTECTED]>**20080110215859] [make darcs-2 repositories store patches in more-nicely-formated format David Roundy <[EMAIL PROTECTED]>**20080110220413] [fix filename encoding issue in ShowFiles. David Roundy <[EMAIL PROTECTED]>**20080110204120] [add debug message when grabbing files using libcurl. David Roundy <[EMAIL PROTECTED]>**20080110202200] [make using libwww no longer the default, even if it's present. David Roundy <[EMAIL PROTECTED]>**20080110195753 There is a bug in our libwww bindings that I haven't located... if it isn't fixed, we should definitely remove this binding before the darcs 2.0 release. ] [make Libwww.copyUrls provide debug output. David Roundy <[EMAIL PROTECTED]>**20080110195733] [test: Exibit a falling test about rollback. [EMAIL PROTECTED] Indeed the only test about rollback was br0ken by a prior test that creates a directory and remove read permissions to it. The rollback test do some records that silently fail by lack of permissions, finally the rollback is cancelled since the named patch doesn't exist. This shows that rollback need some care. ] [Canonize Gwern Branwen, Nicolas Pouillard, Eric Kow. Eric Kow <[EMAIL PROTECTED]>**20080109152727] [Eliminate configure test for Text.PrettyPrint. Eric Kow <[EMAIL PROTECTED]>**20080109152927] [Use our own Printer instead of Text.PrettyPrint (make_changelog). Eric Kow <[EMAIL PROTECTED]>**20080109172910] [Add parens functionality to the printer code. Eric Kow <[EMAIL PROTECTED]>**20080109144956] [issue567: regression test for moving a file to the same location as itself Mark Stosberg <[EMAIL PROTECTED]>**20080109032346] [restore behavior where we display conflicts in --summary mode. David Roundy <[EMAIL PROTECTED]>**20080110004605] [regression test for issue406 Mark Stosberg <[EMAIL PROTECTED]>**20080109044500] [fix latex bug in docs. David Roundy <[EMAIL PROTECTED]>**20080108211102] [fix latex bug in docs. David Roundy <[EMAIL PROTECTED]>**20080108205912] [fix bug in show_tags.sh cleanup. David Roundy <[EMAIL PROTECTED]>**20080108204430] [doc,typo: some s/darcs commit/darcs record/ [EMAIL PROTECTED] [test: Add a test for darcs show tags. [EMAIL PROTECTED] [document the three repo format flags for "darcs init" Mark Stosberg <[EMAIL PROTECTED]>**20080108041024] [improve the one-paragraph docs for "darcs init" Mark Stosberg <[EMAIL PROTECTED]>**20080108040941] [Quit defining inventory format options recursively. Provide user-oriented descriptions. Mark Stosberg <[EMAIL PROTECTED]>**20080108035256] [update partial.sh to show off improved darcs-2/partial functionality Mark Stosberg <[EMAIL PROTECTED]>**20080108024712] [typo and bug fix in partial.sh. Mark Stosberg <[EMAIL PROTECTED]>**20080108022808 It turned out the call to "darcs optimize" was silently failing to create a checkpoint because there was no tag. This caused the remaining tests for --partial to run against a full repo, not a partial one. ] [issue55: document that darcs handles some types of binary files automatically. Mark Stosberg <[EMAIL PROTECTED]>**20080108010043] [correct apparent typo in test. Mark Stosberg <[EMAIL PROTECTED]>**20080108005710 The fix made more sense than the former behavior of comparing a file to itself. ] [issue395: eliminate patches with a single character name from shell scripts in the test suite. Mark Stosberg <[EMAIL PROTECTED]>**20080106051821] [prevent warning in test script and remove mysterious exit(1) call. Mark Stosberg <[EMAIL PROTECTED]>**20080106052622] [issue526: improve Perl test suite. Mark Stosberg <[EMAIL PROTECTED]>**20080106045548 - better compatibility when path to darcs includes a space - better portability by eliminating some system calls - general style improvements ] [minor white-space and code style improvements Mark Stosberg <[EMAIL PROTECTED]>**20080105183641] [typo fix on GNUmakefile comment Mark Stosberg <[EMAIL PROTECTED]>**20080105183027] [refactor: improve style and portability of pull.pl test script. Mark Stosberg <[EMAIL PROTECTED]>**20080105181751 Many direct system calls were eliminated. No functional changes. ] [issue347 - document that single quotes should be used in .darcs/defaults Mark Stosberg <[EMAIL PROTECTED]>**20080101164428] [add feature requested in issue576. David Roundy <[EMAIL PROTECTED]>**20080105150125] [fix bug in issue576. David Roundy <[EMAIL PROTECTED]>**20080105144929] [add test that triggers bug in issue576. David Roundy <[EMAIL PROTECTED]>**20080105144812] [Make sure we test the 'darcs' we just built and not one in a global path. Mark Stosberg <[EMAIL PROTECTED]>**20080102002235 This done by using "$DARCS" instead of 'darcs'. However, in my case the updated test FAILS unexplainably with 2.0.0pre3, by failing to detect that a file has changed. If I follow along in a shell and run the same commands with Darcs 2, the problem does not appear. ] [add configure support for libwww. David Roundy <[EMAIL PROTECTED]>**20080104201255] [make bug message more explicit. David Roundy <[EMAIL PROTECTED]>**20080104004253] [Initial implementation of HTTP pipelining using libwww. Dmitry Kurochkin <[EMAIL PROTECTED]>**20071222144902] [make indent slightly more concise using lines and unlines. David Roundy <[EMAIL PROTECTED]>**20080104003953] [refactor: replace recursive indent with more concise find-and-replace syntax Mark Stosberg <[EMAIL PROTECTED]>**20080101200447] [simplify (and debug) pending handling. David Roundy <[EMAIL PROTECTED]>**20071227133618 Note that this change could lead to performance regressions, but I believe that these regressions would be strongly bounded (never worse than a whatsnew), and this simplification makes the code much easier to safely modify. ] [make updating of pending on pull much more efficient. David Roundy <[EMAIL PROTECTED]>**20071224131059] [simplify a bit of code. David Roundy <[EMAIL PROTECTED]>**20071224131023] [fix type-witness bug in HopefullyPrivate. David Roundy <[EMAIL PROTECTED]>**20071223141149] [simplify Get David Roundy <[EMAIL PROTECTED]>**20071223025108] [simplify tentativelyAddPatch by removing unused return value. David Roundy <[EMAIL PROTECTED]>**20071223024400] [simplify away np2prims and nps2prims. David Roundy <[EMAIL PROTECTED]>**20071223022145] [try to avoid rewriting patches that we've just read. David Roundy <[EMAIL PROTECTED]>**20071222190029] [generalize CommandsAux utility functions. David Roundy <[EMAIL PROTECTED]>**20071222162952] [add new instances for PatchInfoAnd. David Roundy <[EMAIL PROTECTED]>**20071222144439] [change tentativelyAddPatch to accept a PatchInfoAnd p. David Roundy <[EMAIL PROTECTED]>**20071222140517] [internal prepration for optimization saving patch writing. David Roundy <[EMAIL PROTECTED]>**20071222134834] [add changelog entry. David Roundy <[EMAIL PROTECTED]>**20071219162646] [add fixme indicating where the code could be simplified. David Roundy <[EMAIL PROTECTED]>**20071221135649] [make reading of hashed inventories lazier. David Roundy <[EMAIL PROTECTED]>**20071221133453] [resolve conflicts in mv_and_remove_tests.sh. David Roundy <[EMAIL PROTECTED]>**20071219144638] [Fix !(...|...) in mv_and_remove_tests.sh. Dave Love <[EMAIL PROTECTED]>**20071218001826 Assume the original construct should have been `! ... | ...' and replace with a portable version of that. ] [[issue571] Redo last HAVE_TERMIO_H fix. Dave Love <[EMAIL PROTECTED]>**20071218140508 Not the most direct fix, but simpler. ] [Fix configure test for gadt type witnesses. Dave Love <[EMAIL PROTECTED]>**20071218120139] [use --ignore-times in all tests. David Roundy <[EMAIL PROTECTED]>**20071217225159 This is because the hashed repository is a bit pickier, in that it no longer checks file lengths when the file modification times match. ] [enable modification time checking on hashed repositories. David Roundy <[EMAIL PROTECTED]>**20071217220237] [Pass two args to `cmp' in tests, following POSIX. Dave Love <[EMAIL PROTECTED]>**20071216180503 Fixes some failures on Solaris. ] [resolve silly conflict with myself. David Roundy <[EMAIL PROTECTED]>**20071217200855] [clean up SelectChanges (eliminating Bools) David Roundy <[EMAIL PROTECTED]>**20071217191809] [make a few more files compile with type witnesses. David Roundy <[EMAIL PROTECTED]>**20071217183234] [fix bug in revert (in writing the unrevert file). David Roundy <[EMAIL PROTECTED]>**20071216215225] [make a few more files compile with type witnesses. David Roundy <[EMAIL PROTECTED]>**20071217164815] [remove tabs. David Roundy <[EMAIL PROTECTED]>**20071216224617] [bump version number preemptively to 2.0.0pre3. David Roundy <[EMAIL PROTECTED]>**20071216222823] [fix doc bug in show contents. David Roundy <[EMAIL PROTECTED]>**20071216214002] [TAG 2.0.0pre2 David Roundy <[EMAIL PROTECTED]>**20071216201647] Patch bundle hash: 26646ec8467779569b2f29c3be3662ec7cec4894
_______________________________________________ darcs-devel mailing list darcs-devel@darcs.net http://lists.osuosl.org/mailman/listinfo/darcs-devel