Dmitry Kurochkin <[email protected]> added the comment:

2 patches for repository http://darcs.net:

Fri Apr 16 02:47:39 MSD 2010  Dmitry Kurochkin <[email protected]>
  * Fix hscurl.c when URL is downloaded during the first call to 
curl_multi_perform.
  Turns out that the first call to curl_multi_perform() can fetch the URL or
  result in error. I can easily reproduce this using HTTP server on localhost.
  This means that situation when running_handles is zero is valid, so remove the
  error and handle it correctly.

Mon Apr 19 02:37:52 MSD 2010  Dmitry Kurochkin <[email protected]>
  * URL: keep notify MVars in a single place.
  This will prevent deadlocks when we wait for one MVar and notification is done
  through another. Such situations can happen when one URL is requested several
  times during a short period of time.

__________________________________
Darcs bug tracker <[email protected]>
<http://bugs.darcs.net/patch207>
__________________________________
New patches:

[Fix hscurl.c when URL is downloaded during the first call to curl_multi_perform.
Dmitry Kurochkin <[email protected]>**20100415224739
 Ignore-this: c62e88cc36664062ceca1db2462ab8ea
 Turns out that the first call to curl_multi_perform() can fetch the URL or
 result in error. I can easily reproduce this using HTTP server on localhost.
 This means that situation when running_handles is zero is valid, so remove the
 error and handle it correctly.
] hunk ./src/hscurl.c 19
     RESULT_MULTI_INIT_FAIL,
     RESULT_EASY_INIT_FAIL,
     RESULT_SLIST_APPEND_FAIL,
-    RESULT_NO_RUNNING_HANDLES,
     RESULT_MULTI_INFO_READ_FAIL,
     RESULT_UNKNOWN_MESSAGE,
     RESULT_FILE_OPEN_FAIL
hunk ./src/hscurl.c 32
     "curl_multi_init() failed",
     "curl_easy_init() failed",
     "curl_slist_append() failed",
-    "curl_multi_perform() - no running handles",
     "curl_multi_info_read() failed",
     "curl_multi_info_read() returned unknown message",
     "fopen() failed"
hunk ./src/hscurl.c 65
   error = curl_multi_perform(multi, &running_handles);
   if (error != CURLM_OK && error != CURLM_CALL_MULTI_PERFORM)
     return curl_multi_strerror(error);
-  if (running_handles == 0)
-    return error_strings[RESULT_NO_RUNNING_HANDLES];
 
   running_handles_last = running_handles;
hunk ./src/hscurl.c 67
-  while (1)
+  while (running_handles_last > 0)
     {
       while (error == CURLM_CALL_MULTI_PERFORM)
         error = curl_multi_perform(multi, &running_handles);
[URL: keep notify MVars in a single place.
Dmitry Kurochkin <[email protected]>**20100418223752
 Ignore-this: d9d96011cd94325084b599539c3fba0e
 This will prevent deadlocks when we wait for one MVar and notification is done
 through another. Such situations can happen when one URL is requested several
 times during a short period of time.
] hunk ./src/URL.hs 41
 data UrlRequest = UrlRequest { url :: String
                              , file :: FilePath
                              , cachable :: Cachable
-                             , priority :: Priority
-                             , notifyVar :: MVar String }
+                             , priority :: Priority }
 
 data Cachable = Cachable | Uncachable | MaxAge !CInt
                 deriving (Show, Eq)
hunk ./src/URL.hs 48
 
 data UrlState = UrlState { inProgress :: Map String ( FilePath
                                                     , [FilePath]
-                                                    , Cachable
-                                                    , (MVar String) )
+                                                    , Cachable )
                          , waitToStart :: Q String
                          , pipeLength :: Int
                          , randomJunk :: String }
hunk ./src/URL.hs 149
                  st <- get
                  let p = inProgress st
                      w = waitToStart st
-                     e = (f, [], c, notifyVar r)
+                     e = (f, [], c)
                      new_w = case priority r of
                                High -> pushQ u w
                                Low  -> insertQ u w
hunk ./src/URL.hs 156
                      new_st = st { inProgress = Map.insert u e p
                                  , waitToStart = new_w }
                  case Map.lookup u p of
-                   Just (f', fs', c', v) -> do
+                   Just (f', fs', c') -> do
                      let new_c = minCachable c c'
hunk ./src/URL.hs 158
-                     when (c /= c') $ let new_p = Map.insert u (f', fs', new_c, v) p
+                     when (c /= c') $ let new_p = Map.insert u (f', fs', new_c) p
                                       in do modify (\s -> s { inProgress = new_p })
                                             dbg $ "Changing "++u++" request cachability from "++show c++" to "++show new_c
                      when (u `elemQ` w && priority r == High) $ do
hunk ./src/URL.hs 165
                        modify (\s -> s { waitToStart = pushQ u (deleteQ u w) })
                        dbg $ "Moving "++u++" to head of download queue."
                      if f `notElem` (f':fs')
-                        then let new_p = Map.insert u (f', f:fs', new_c, v) p
+                        then let new_p = Map.insert u (f', f:fs', new_c) p
                              in do modify (\s -> s { inProgress = new_p })
                                    dbg "Adding new file to existing UrlRequest."
                         else dbg "Ignoring UrlRequest of file that's already queued."
hunk ./src/URL.hs 186
     case readQ w of
       Just (u,rest) -> do
         case Map.lookup u (inProgress st) of
-          Just (f, _, c, v) -> do
+          Just (f, _, c) -> do
             dbg ("URL.request_url ("++u++"\n"++
                  "              -> "++f++")")
             let f_new = f++"-new_"++randomJunk st
hunk ./src/URL.hs 198
                                 , pipeLength = l + 1 }
                else do dbg $ "Failed to start download URL "++u++": "++err
                        liftIO $ do removeFileMayNotExist f_new
-                                   putMVar v err
+                                   downloadComplete u err
                        put $ st { waitToStart = rest }
           _              -> bug $ "Possible bug in URL.checkWaitToStart "++u
         checkWaitToStart
hunk ./src/URL.hs 217
   v <- newEmptyMVar
   let fn _ old_val = old_val
   modifyMVar_ urlNotifications (return . (Map.insertWith fn u v))
-  let r = UrlRequest u f c p v
+  let r = UrlRequest u f c p
   writeChan urlChan r
 
 waitNextUrl :: StateT UrlState IO ()
hunk ./src/URL.hs 232
                                 , pipeLength = l - 1 }
                 liftIO $ if null e
                          then case Map.lookup u p of
-                                Just (f, fs, _, v) -> do
+                                Just (f, fs, _) -> do
                                   renameFile (f++"-new_"++randomJunk st) f
                                   mapM_ (safeCopyFile st f) fs
hunk ./src/URL.hs 235
-                                  putMVar v e
+                                  downloadComplete u e
                                   debugMessage $ "URL.waitNextUrl succeeded: "++u++" "++f
                                 Nothing -> bug $ "Possible bug in URL.waitNextUrl: "++u
                          else case Map.lookup u p of
hunk ./src/URL.hs 239
-                                Just (f, _, _, v) -> do
+                                Just (f, _, _) -> do
                                   removeFileMayNotExist (f++"-new_"++randomJunk st)
hunk ./src/URL.hs 241
-                                  putMVar v e
+                                  downloadComplete u e
                                   debugMessage $ "URL.waitNextUrl failed: "++
                                                u++" "++f++" "++e
                                 Nothing -> bug $ "Another possible bug in URL.waitNextUrl: "++u++" "++e
hunk ./src/URL.hs 250
                                 in do copyFile f new_t
                                       renameFile new_t t
 
+downloadComplete :: String -> String -> IO ()
+downloadComplete u e = do
+  r <- withMVar urlNotifications (return . (Map.lookup u))
+  case r of
+    Just notifyVar -> putMVar notifyVar e
+    Nothing -> debugMessage $ "downloadComplete URL '"++u++"' downloaded several times"
+
 waitUrl :: String -> IO ()
 waitUrl u = do debugMessage $ "URL.waitUrl "++u
                r <- withMVar urlNotifications (return . (Map.lookup u))

Context:

[Create manual directory if it doesn't exist
Matthias Kilian <[email protected]>**20100413155518
 Ignore-this: d04fb2f93c3ca2f2063de65d37cb845c
] 
[Camel case IsoDate.
Eric Kow <[email protected]>**20100413090324
 Ignore-this: 28711c4f06efbca91d32e58cccbd4aef
] 
[Camel case Printer and Darcs.ColorPrinter.
Eric Kow <[email protected]>**20100413090019
 Ignore-this: ac34462e93c124a525a701613888ebcf
] 
[Camel case Exec, Darcs.Utils and Darcs.External.
Eric Kow <[email protected]>**20100413084749
 Ignore-this: af802a1f850a6b4a9b11748ae98373fa
] 
[Also update release date on homepage
Reinier Lamers <[email protected]>**20100412203602
 Ignore-this: aebc0ebf001f605c6c5976b513181c42
] 
[Update website for 2.4.1 release
Reinier Lamers <[email protected]>**20100412203338
 Ignore-this: 2836e036539c6e909b1a6a730bb4da4f
] 
[Implemented all test cases from the discussion of bug 1645
Dmitry Astapov <[email protected]>**20100406055346
 Ignore-this: 315cde3de56fabf831ba0eccd9b05dcd
] 
[Fix darcs bug tip (missing space).
Eric Kow <[email protected]>**20100408095322
 Ignore-this: b4efd917ad2640b42d66dc8289dc9935
] 
[Disable DARCS_PATCHES_XML posthook test on Windows.
Eric Kow <[email protected]>**20100406090852
 Ignore-this: 94599a3c536d6918b676a37c1c515c09
] 
[Make issue1739 test skip instead of fail on non-UTF-8 locales
Reinier Lamers <[email protected]>**20100405182339
 Ignore-this: 5dac9d7dc54f00ce0ea7ebd05fbadc8
] 
[Accept issue1363: mark-conflicts inconsistency with duplicate patches.
Eric Kow <[email protected]>**20100405162547
 Ignore-this: c0e670a8b86320a2f49d44e40700ee05
] 
[Accept issue1737: confusing darcs move error message.
Eric Kow <[email protected]>**20100404232819
 Ignore-this: 6b4724073f797920079fb8f18186c4e1
] 
[drop unnecessary GHC extensions from test helper
Ganesh Sittampalam <[email protected]>**20100330060645
 Ignore-this: 8f680413627f62d2a64367b09566d4e9
] 
[speed up test by compiling helper once
Ganesh Sittampalam <[email protected]>**20100330060335
 Ignore-this: 9a99e3313b15ae22fd66c7d41990e783
] 
[add type witnesses to trackdown --bisect
Ganesh Sittampalam <[email protected]>**20100330055445
 Ignore-this: 6a7461b8379b0fa2435b8c520d2bd0f0
] 
[fix warning
Ganesh Sittampalam <[email protected]>**20100330055412
 Ignore-this: c63adb3883ec2755ee42c4865227c823
] 
[resolve-issue1208: trackdown --bisect (PatchTree).
[email protected]**20100329221033
 Ignore-this: 2cf3fae3067034ba33b03e597c31be3f
] 
[Test for issue183.
Eric Kow <[email protected]>**20100402201819
 Ignore-this: 749fd958582f0066da64ffef2ba654af
 This fails with Darcs 2.2 but passes with my "Resolve issue183" patch.
] 
[Fix bug in issue1645 test.
Eric Kow <[email protected]>**20100401131100
 Ignore-this: dfcf454712d2a5bbcdd68c663f4c5218
] 
[Avoid a direct multibyte string in issue1739 test that confuses ShellHarness.
Petr Rockai <[email protected]>**20100330234535
 Ignore-this: bce2d83738d201cd25dcc644a9f45fe2
] 
[Refactor makeRemovePatch: use foldM and split in two
Reinier Lamers <[email protected]>**20100321101733
 Ignore-this: 2be7c48e7b74377519f3d6dcb33bdeeb
] 
[Rename issue1765 test to reflect that it succeeds
Reinier Lamers <[email protected]>**20100320172808
 Ignore-this: 1f72ba012bb3cb79a6e05e75f5befdc6
] 
[resolve issue1765: refuse to remove non-tracked directories recursively
Reinier Lamers <[email protected]>**20100320165913
 Ignore-this: ee68c106b9320035e66563387c82d1de
 
 The modifyTree function from hashed-storage makes any directories on the path
 to modify exist. When removing a non-tracked file, this made darcs assume that
 its parent directory was tracked, even when it wasn't.
 
 This patch makes darcs do the modifyTree only when the remove of a file
 actually succeeded, so that when a remove of a non-tracked file fails, darcs
 won't have a data structure that reflects a world where this removal succeeded.
 
] 
[Tidy up issue1727 test.
Eric Kow <[email protected]>**20100329152507
 Ignore-this: cd01b4e40793c07bcd8fc4b0ba3fc570
] 
[Accept issue1727: darcs move . target fails.
Sean Erle Johnson <[email protected]>**20100329152220
 Ignore-this: a03afb31163d1cd9e4bf39775c2231a9
] 
[resolve issue1427 accept gzipped patch bundles in darcs apply
Guillaume Hoffmann <[email protected]>**20100321105908
 Ignore-this: eb582991fcd855ba6836919559c4e305
] 
[accept issue1427 accept gzipped patch bundles in darcs apply
Guillaume Hoffmann <[email protected]>**20100321105638
 Ignore-this: 4607b02530f8de85e9e9165f993b1080
] 
[Extend issue1645 with additional pathologies.
Trent W. Buck <[email protected]>**20100327061617
 Ignore-this: f0ade119d4126af22b88cc21f23215ec
] 
[Resolve issue1756: new h-s handles file removals correctly in Index.
Petr Rockai <[email protected]>**20100324212453
 Ignore-this: bbedaa58cc6630492efed346332ee21d
] 
[disable unused do binding warnings for now
Ganesh Sittampalam <[email protected]>**20100317190703
 Ignore-this: f95d7ccbde494a04eeed2391800e14b7
 The alternative to this would be to go through the code and actually fix
 the warnings, and it's not obvious this is desirable.
] 
[add PatternGuards extension to witnesses build
Ganesh Sittampalam <[email protected]>**20100317190650
 Ignore-this: 4ec25389175f525264b359d08a01939b
] 
[add cabal flag to control build of darcs library
Ganesh Sittampalam <[email protected]>**20100317190648
 Ignore-this: d2ab724f18b7b52ec3f90b3638856cf7
] 
[Make commuteFL symmetrical with commuteRL
Florent Becker <[email protected]>**20100321150747
 Ignore-this: 89401ec18692de220c8c0717ab390923
] 
[useless string concatenation plus useless $.
[email protected]**20100320231905
 Ignore-this: 5ae00cbb8df010b049448b9680fc759f
] 
[use isPrefixOf instead of take x y == "string" in some places
Guillaume Hoffmann <[email protected]>**20100321144255
 Ignore-this: c5c2dc8a3862c46b6f6c2d206eedff8f
] 
[accept issue1763: pull on non-ascii filenames
Reinier Lamers <[email protected]>**20100321144249
 Ignore-this: b09a1beef9dbb6a6bd46d5b03cb04712
] 
[resolve issue1739: make ColorPrinter handle characters > 255
Reinier Lamers <[email protected]>**20100221155614
 Ignore-this: ff06ddd7ef801f92cbf66cfd9ba4e467
] 
[remove the hardcoded string "_darcs" in some places and replace it with the global darcsdir
David Markvica <[email protected]>**20100110201836
 Ignore-this: 37f9eb21f1e6af46283a1ee985843b2f
] 
[export stdout in RepoPath
Florent Becker <[email protected]>**20100215153909
 Ignore-this: 7e5aaea98f7931aae8176d6ede188961
] 
[demonadify useAbsoluteOrStd
Florent Becker <[email protected]>**20100215152808
 Ignore-this: 3bf358bcbefa08b3e9121fad91014b8
] 
[Put presentParticiple into the English module
Florent Becker <[email protected]>**20100204140434
 Ignore-this: 5edb03b4ae71697774715244342315fc
] 
[add --keep-date option to amend-record
Ganesh Sittampalam <[email protected]>**20100320233508
 Ignore-this: 98c0e9dea29abe79f63bf15d82d3dc38
] 
[Resolve conflict between tar dependency and hashed-storage bump
Reinier Lamers <[email protected]>**20100321123909
 Ignore-this: 58bf27fb7550445f7ad3c74456786f96
] 
[Bump hashed-storage dependency to 0.4.8
Salvatore Insalaco <[email protected]>**20100321103955
 Ignore-this: 3e54bef5ade88f3c402c8e9eecbd7ca
] 
[Accept issue1765: recursive remove on root
Luca Molteni <[email protected]>**20100320143438
 Ignore-this: 90de508f42c0d4b5b4379fefb6a92995
] 
[Resolve issue643 darcs send -o outputs remote repo email address
Guillaume Hoffmann <[email protected]>**20100320162730
 Ignore-this: ba9b2380b2e327f45a2ae038fad2d3e3
] 
[useless string concatenation
Guillaume Hoffmann <[email protected]>**20100320135054
 Ignore-this: 78e61463ba38c7fbc023b6eccbb33571
] 
[Add --match option to apply
Florent Becker <[email protected]>**20100320150651
 Ignore-this: f4fb470e62d58da25c74a42a9f7e96e0
] 
[use library function 'not' for checking failure
Ganesh Sittampalam <[email protected]>**20100320150215
 Ignore-this: be9fc5ba5f1811d94f3a0694c1037453
] 
[Resolve issue1473: annotate command accepts "." and treats "" as invalid input
[email protected]**20100320141718
 Ignore-this: 5faea0580f9cf17ee59964a509f90613
] 
[Only use stderr in install-deps, avoiding stderr/stdout interleaving issues.
Petr Rockai <[email protected]>**20100320143212
 Ignore-this: 7fe9820f10015867f17d70f39ef5e201
] 
[Pass the install-deps options down to second cabal install call as well.
Petr Rockai <[email protected]>**20100320134009
 Ignore-this: 5061ea1965ed6856ee0cf455c27e2ae0
] 
[We also need tar to build witnesses.
Petr Rockai <[email protected]>**20100320133306
 Ignore-this: cb1dc2f700b84d5564927fb95245c39f
] 
[make dist.sh test check the archive created by dist
Guillaume Hoffmann <[email protected]>**20100320095521
 Ignore-this: 5261970d6966520b0d2bb70acc98982d
] 
[resolve issue1456 by using Tar and GZip haskell modules for dist
Guillaume Hoffmann <[email protected]>**20100319163315
 Ignore-this: 88ac3e7b6b545dc284a829ca1c2f6082
] 
[Removed -cpp flag as suggested by HLint
Stefan Wehr <[email protected]>**20100319142241
 Ignore-this: 2ffd2a7a3f52bc2117b0033079177173
] 
[New bugtracker reporting page.
Eric Kow <[email protected]>**20100318215106
 Ignore-this: 436df165c5621e18029dcaf5838faa59
] 
[replace if-statement with guard in elegant_merge
Jason Dagit <[email protected]>**20100318030051
 Ignore-this: 8e359f579041af4f5ea2a6deca40341c
] 
[Resolve issue1750: uncover help text for darcs show pristine.
Eric Kow <[email protected]>**20100221125933
 Ignore-this: 46c8575ff5889d6092f9e5a221275732
 f r { foo = bar } means           f (r { foo = bar })
 whereas what we really wanted was (f r) { foo = bar }
] 
[Correct online help text for aliases of subcommands.
Eric Kow <[email protected]>**20100221125653
 Ignore-this: e33fe432bc0ef53205103cabdcd33a61
] 
[Augment the .boring file to cover the generated manual bits.
Petr Rockai <[email protected]>**20100120201503
 Ignore-this: e01e6731b72711d565e47c0c8cd4222d
] 
[Update tests/README.test_maintainers.txt to cabalized build system
Reinier Lamers <[email protected]>**20100315171511
 Ignore-this: 3b869e68133c1c79dcbe44aa811ec40
] 
[Include tests/README.test_maintainers.txt in distribution tarballs
Reinier Lamers <[email protected]>**20100314130520
 Ignore-this: 5b326ecc806c89dc64b297ab93bbc665
] 
[Fix update_roundup.pl for the case where only one patch is applied.
Eric Kow <[email protected]>**20100315131029
 Ignore-this: 94d433b30629456470cd337f1404132a
 
 We need to avoid the XML::Simple feature that uses simple scalar values for
 tags that only have one elment in them.  For more information, perldoc
 XML::Simple::FAQ.
] 
[resolve issue1767: send CRC warnings to stderr
Ganesh Sittampalam <[email protected]>**20100314224948
 Ignore-this: b0555759c3fa55fc9689f9a957d9eb1
] 
[Fix my posthook test (sorry!).
Eric Kow <[email protected]>**20100314204956
 Ignore-this: 1644ca3a512ac4b020d992ab1a61608c
] 
[Test for DARCS_PATCHES_XML.
Eric Kow <[email protected]>**20100314195355
 Ignore-this: b48913e1dc123d75e688ab9d0b949180
] 
[Also add PatchInfo test module to darcs.cabal
Reinier Lamers <[email protected]>**20100313225611
 Ignore-this: b5cc937839f36206c5a7c11fde15305c
] 
[Test release tarballs more thoroughly in release.sh
Reinier Lamers <[email protected]>**20100313225454
 Ignore-this: 423fe1d4b4a8c97758c937fae9df3c7a
] 
[Add missing unit test modules to darcs.cabal
Reinier Lamers <[email protected]>**20100313221428
 Ignore-this: 22eb7e0530a1b81cd8da21c35974a4e1
] 
[resolve conflict between witnesses and Origin import
Ganesh Sittampalam <[email protected]>**20100306185527
 Ignore-this: 74eb31398aa3576b430d3e81d9943b3d
] 
[resolve conflict between witness addition and issue1749 fix
Ganesh Sittampalam <[email protected]>**20100306185242
 Ignore-this: c33d05a6410a452c005ecac1362d594f
] 
[add witnesses to Darcs.Commands.Replace
Ganesh Sittampalam <[email protected]>**20100210210633
 Ignore-this: 96da24a06dde4b3eba357230cf054c7a
] 
[fix witnesses in Darcs.Commands.Remove using gaps
Ganesh Sittampalam <[email protected]>**20100210210003
 Ignore-this: 352fa85ba57dd1d1a907a42ced4324f7
] 
[add witnesses to Darcs.Commands.Check
Ganesh Sittampalam <[email protected]>**20100210191307
 Ignore-this: 4d197c1f543741abaa78d9dac26573b7
] 
[add witnesses to Darcs.Repository.Repair
Ganesh Sittampalam <[email protected]>**20100210190716
 Ignore-this: 23432ed7f437a4d7fc964ec4e6f8db99
] 
[add witnesses to treeDiff
Ganesh Sittampalam <[email protected]>**20100210184308
 Ignore-this: 2d73685b18d3132b6d27eb47a9239ca1
] 
[everything now compiles with witnesses
Ganesh Sittampalam <[email protected]>**20100211184608
 Ignore-this: 78389082d81bcf4d56b6ca17c83a9344
 Note that because of some bits of conditional compilation, this doesn't
 mean we can turn witnesses on for the real build yet.
 
] 
[add witnesses to Darcs.Commands.Rollback
Ganesh Sittampalam <[email protected]>**20100211184435
 Ignore-this: 160f72201755ce5b42ac23ade377fccd
] 
[add witnesses to Darcs.Commands.Convert
Ganesh Sittampalam <[email protected]>**20100211181613
 Ignore-this: c248f20a43b06b92b45c3c01ddbd93f9
] 
[add witnesses to Darcs.Commands.MarkConflicts
Ganesh Sittampalam <[email protected]>**20100211113510
 Ignore-this: 6ab56b2f81bf05be63b1ea68f90604f9
] 
[add witnesses to Darcs.Commands.Revert
Ganesh Sittampalam <[email protected]>**20100211113418
 Ignore-this: 8c04a7f6c4f43e21b43235e2cff49901
] 
[add witnesses to Darcs.Commands.AmendRecord
Ganesh Sittampalam <[email protected]>**20100211113324
 Ignore-this: 8e4866806ec8fd82ee57e8385fd7bc12
] 
[use tentative repo in askAboutDepends
Ganesh Sittampalam <[email protected]>**20100211113157
 Ignore-this: d1937b4194d0a5e32fd543ebb7139457
] 
[add witnesses to Darcs.Commands.Optimize
Ganesh Sittampalam <[email protected]>**20100211111941
 Ignore-this: c89c41e7e3a33186df876c8139b065e4
] 
[add witnesses to Darcs.Commands.Put
Ganesh Sittampalam <[email protected]>**20100211111204
 Ignore-this: 2fa39ac0cd590d9fd6051a201605b7c6
] 
[return new repo from applyToWorking
Ganesh Sittampalam <[email protected]>**20100211110410
 Ignore-this: b5aea13a912440abfe4e645f8a9c80ef
] 
[add witnesses to Darcs.Commands.Get
Ganesh Sittampalam <[email protected]>**20100210205723
 Ignore-this: 485a129fd292695b5b8e4f5cf714be70
] 
[add witnesses to Darcs.Commands.Add
Ganesh Sittampalam <[email protected]>**20100210203754
 Ignore-this: dcb548d2e96b50c3cccede82e84758da
] 
[add witnesses to Darcs.Commands.Record
Ganesh Sittampalam <[email protected]>**20100210193209
 Ignore-this: ef01c3841210514485e13621ca5f5a12
] 
[add witnessed toFL operation
Ganesh Sittampalam <[email protected]>**20100210193104
 Ignore-this: f1585c7f0d8e15edb216b9750e591ddb
] 
[add witnesses to Darcs.Commands.Move
Ganesh Sittampalam <[email protected]>**20100210191544
 Ignore-this: c55d6910e4d79a2a8bfe47f1cdc150ad
] 
[add witnessed variant of PatchInfo
Ganesh Sittampalam <[email protected]>**20100210185926
 Ignore-this: b9f54295d9eca8687a4a785b5d8e9028
] 
[reduce conditionalisation on witnesses in Darcs.Patch.Commute
Ganesh Sittampalam <[email protected]>**20100126201933
 Ignore-this: 6ba0e070aff1bbac7a0f4d508aced1cb
] 
[add TypeOperators to witnesses build
Ganesh Sittampalam <[email protected]>**20091221190333
 Ignore-this: 22808f3dad964cb930d44436080c93e2
] 
[add docs to Gap and related types
Ganesh Sittampalam <[email protected]>**20100212180627
 Ignore-this: 9013feebb49e489e1d1c7c5770d191da
] 
[add concept of gaps
Ganesh Sittampalam <[email protected]>**20091211010754
 Ignore-this: afe3115fd2333f00cb5a4c8a1f7ec281
] 
[return new repository state from tentativelyAdd etc
Ganesh Sittampalam <[email protected]>**20091202191833
 Ignore-this: 72a9c476023fa0c22cd0aa21d1f6ef1e
] 
[adding patches should affect the tentative state
Ganesh Sittampalam <[email protected]>**20091127174439
 Ignore-this: a98e2488424993191bd790f76ee819c0
] 
[make tentativelyRemove return the new repo state
Ganesh Sittampalam <[email protected]>**20091127174338
 Ignore-this: 683cba083ab428a231d8b2c2a144980c
] 
[Resolve issue1753: restrict mmap to version used by hashed-storage.
Eric Kow <[email protected]>**20100301163950
 Ignore-this: a53ca223c957f80ff5b021fc6c2026d8
 Looks like we'll have to be careful about synchronising the dependencies.
] 
[Remove intermediary files from "cabal sdist" tarball.
Trent W. Buck <[email protected]>**20100219003943
 Ignore-this: ddb9caa7bf9025c8e8b0ea8897e82844
 AFAICT these files are generated during "make html pdf", and are thus
 unnecessary in the source tarball.  Removing them makes "cabal sdist"
 work in clean checkout.
] 
[Update the install-deps script to work with Cabal 1.8.
Petr Rockai <[email protected]>**20100302221215
 Ignore-this: 4d5f29b28f09727d3686bc9883c88878
] 
[fix issue458.sh failing on systems with xattrs
Jens Petersen <[email protected]>**20100305052023
 Ignore-this: 8dd7c366bf87f3f9106974e66cdccbe6
 
 Systems with selinux or other extended fs attributes give output
 with trailing-dot like "-rw-------." instead of "-rw-------".
 The change just filters off any trailing "." with sed.
] 
[Resolve issue1755: fix apparent hard line break in homepage.
Eric Kow <[email protected]>**20100301152459
 Ignore-this: 673fd7b5e9b2c023a7940464feb7d979
 
 I'm not entirely clear on why this should work, as the document
 is supposed to be XHTML.  Thanks to Wagner Ferenc for pointing
 out the solution!
] 
[Add a darcs get link to the homepage.
Eric Kow <[email protected]>**20100301134519
 Ignore-this: 3f3f789429f86dcbb9487e5651286443
] 
[update link to stable source
Ganesh Sittampalam <[email protected]>**20100227224104
 Ignore-this: 4ae61bd0c5fae4f056e9bf2e546effcc
] 
[resolve conflict in index.html
Ganesh Sittampalam <[email protected]>**20100227222851
 Ignore-this: e899f6fbadc1f21724c459ce406ab042
] 
[Add 2.4 release announcement to web site
Reinier Lamers <[email protected]>**20100227115055
 Ignore-this: 38945035d233abb0565c16785e67fa9f
] 
[Restore import of Origin needed for witness builds.
Eric Kow <[email protected]>**20100224203351
 Ignore-this: a41dbc86bd32a67df437223badc6e213
] 
[fix unused imports warnings
Benedikt Schmidt <[email protected]>**20100214083818
 Ignore-this: f3c4c975434d038e6a6b7aa505c9b916
] 
[Purge unused bits of checkpoint reading.
Petr Rockai <[email protected]>**20100212101946
 Ignore-this: f13352b4e4c2c19a5b598001966b6891
] 
[Add a missing Functor constraint on ReadableDirectory TreeMonad instance.
Petr Rockai <[email protected]>**20100210235039
 Ignore-this: 951c03c12a89d89b4c67a987b876663c
] 
[Replace Slurpy usage in Commands.Diff.
Petr Rockai <[email protected]>**20100208182027
 Ignore-this: 5f21f441a96d0848edc015972426a29d
] 
[Remove unused force_replace_slurpy.
Petr Rockai <[email protected]>**20091116080225
 Ignore-this: 96647125058765f7e59f1e645f553f8c
] 
[Accept issue1740: darcs is confused if you move a tracked dir.
Eric Kow <[email protected]>**20100208150632
 Ignore-this: 261c70603212f3dfa7d8824f6beb6aa1
] 
[Rename and adjust issue 1749 tests now that it succeeds
Reinier Lamers <[email protected]>**20100221113933
 Ignore-this: f6cdd7665dc6f18ee26f1b85ccf58f70
] 
[accept issue1749 - darcs remove <dir> can make broken patches
Ganesh Sittampalam <[email protected]>**20100220005547
 Ignore-this: a4e39aabef93199397485d753fe80992
] 
[Add a special thank-you to some of our bigger donors.
Eric Kow <[email protected]>**20100215142944
 Ignore-this: 3b548b13803c4ac4835b4735f910b792
] 
[Retire list of buildbot friends on thank-you page.
Eric Kow <[email protected]>**20100215142054
 Ignore-this: 5ba4310672fd8caa574223a9de8657a8
 I think we have to occasionally retire bits of the thank-you page to
 accommodate more recent entries.
] 
[CSS support for testimonials.
Eric Kow <[email protected]>**20100211120557
 Ignore-this: a9f169253bf95b16a96d649ea0fba7a2
] 
[News: darcs 2010 fundraising complete - we did it!
Eric Kow <[email protected]>**20100215081937
 Ignore-this: c4c5aee9aca2536a8de88d37daf54f4e
] 
[Point out upcoming Darcs 2.4 release on homepage news.
Eric Kow <[email protected]>**20100214204739
 Ignore-this: 589fd5649c11f00a81efd28e3baa6d0b
] 
[Add witnesses to Commands.Changes
Florent Becker <[email protected]>**20100208150003
 Ignore-this: 227a56c5e4194a180081e678241a931c
] 
[Allow PatchSets not to start at the origin of the repo
Florent Becker <[email protected]>**20100131215519
 Ignore-this: 604b85a56a69aec994d81d7e20a1ea8d
] 
[Remove useless case in Patch.Bundle
Florent Becker <[email protected]>**20100131162539
 Ignore-this: ace697c626b94e109ecd1dedff2e6058
] 
[add seals in Changes to prepare for witnesses
Florent Becker <[email protected]>**20100208144050
 Ignore-this: 2a798d89a7a1d560eed8710bfd466aba
] 
[Give Darcs.SelectChanges.text_view a sane type
Florent Becker <[email protected]>**20100129095822
 Ignore-this: a47f33f6a7f265ef5b6819b6776218f9
] 
[Rename filterFL to filterFLFL, replace it with a version using Sealed2
Florent Becker <[email protected]>**20100127131924
 Ignore-this: 262689c3125ab67f2e9e334a10d2c750
] 
[Camel case Darcs.RunCommand.
Eric Kow <[email protected]>**20100209131811
 Ignore-this: 289c8c9f2a4185489669e04ed401621c
] 
[Simplify sourcing of lib in EXAMPLE.sh.
Eric Kow <[email protected]>**20100208150505
 Ignore-this: 68ae4d80537abdd6cde0ac142f9ebaba
 The old way made sense when we had regression tests in different directories.
 Now it just makes things cumbersome.
] 
[resolve issue 1719
Florent Becker <[email protected]>**20100105150215
 Ignore-this: b90e43b1d3120b28261c7a5ff5056dc3
] 
[Warn for extra patches before selection in apply
Florent Becker <[email protected]>**20100105143046
 Ignore-this: 70e488bade5ef86970a97d158f007bec
] 
[Remove default $20 donation as this confuses people.
Eric Kow <[email protected]>**20100203120706
 Ignore-this: 129846c12c38ffce2918abad83cffd3b
] 
[resolve issue1250: check for newlines in setpref values
Florent Becker <[email protected]>**20100105141018
 Ignore-this: ea1194357318edb8953e0387bfe5841d
] 
[Camel case Darcs.Patch.ReadMonads.
Eric Kow <[email protected]>**20100122123736
 Ignore-this: 2e462a282d79c13f8bc53f8e9e7f6b71
] 
[haddock ReadMonads
Jason Dagit <[email protected]>**20100113163357
 Ignore-this: e664cf636d093ba71b60e766f99726e4
] 
[Remove (unused) lazy parser monad
Jason Dagit <[email protected]>**20100113162918
 Ignore-this: c68d14ba2ad873d1edda71e9445bfcd7
] 
[Require Cabal 1.8, fix the build-deps dump in --exact-version.
Petr Rockai <[email protected]>**20100120215158
 Ignore-this: 42f643a0c36c6718580656f2dc4db6d
] 
[Do more in makefile `clean' target.
Dave Love <[email protected]>**20100109114916
 Ignore-this: 82598bec9cb2ed442a2d031f7fbcae8
] 
[switch to extensible exceptions
Ganesh Sittampalam <[email protected]>**20091216013022
 Ignore-this: 14aecf51a3363031a4a6effbd6fec1bc
] 
[Tidy up donations page a little bit.
Eric Kow <[email protected]>**20100119192754
 Ignore-this: 2b4b15d6a18f79126ae0b61d8b128ce8
] 
[Encourage more use of Google Checkout (no fees) for donations.
Eric Kow <[email protected]>**20100119192523
 Ignore-this: b2b678ea4111206ff2e7611a88cee0d6
] 
[Better characterisation of Eric's time.
Eric Kow <[email protected]>**20100118093217
 Ignore-this: d933c93683620b8a19e3becdbddd2b02
] 
[Include the exact package versions darcs was compiled with in --exact-version.
Petr Rockai <[email protected]>**20100112205841
 Ignore-this: ba32c0022e565cfa40ebe2bbc98ec1fa
] 
[Resolve issue121: add --ask-deps support to amend-record
Ganesh Sittampalam <[email protected]>**20091228223636
 Ignore-this: 8dc5e5728eb91e96db5fcc56c1a2d8f1
] 
[remove utf-8 message-spam
Florent Becker <[email protected]>**20091229113701
 Ignore-this: 4991d2f7ccb928c6a3f579f18ae81115
] 
[fix conflict between commutex -> commute rename and utf8-metadata
Florent Becker <[email protected]>**20091218134217
 Ignore-this: 36e29bec81129244975dbfd820790cc0
] 
[Kill unused import warning in Darcs.Utils
Reinier Lamers <[email protected]>**20091122174023
 Ignore-this: a467c43dd666b5a8a2add7e7beab760
] 
[Make darcs depend on a haskeline that doesn't choke on malformed UTF-8
Reinier Lamers <[email protected]>**20091122145038
 Ignore-this: abc185f8d67f8c666acbdf78ba4660a1
] 
[Fix another conflict between UTF-8 and main branch
Reinier Lamers <[email protected]>**20091122144924
 Ignore-this: 49c1b440c55ad797a9da67415f6921d3
] 
[Autodetect UTF-8 encoded metadata
Reinier Lamers <[email protected]>**20091115155304
 Ignore-this: 6e1d6048fcf08a044076e0b20ad5e682
 
 It adapts the unit tests accordingly.
 
] 
[Resolve conflicts with import warnings and with the addition of a newline to the author file
Reinier Lamers <[email protected]>**20091109214809
 Ignore-this: 2287539c9ec129cfb99105e180cc3b78
] 
[Add tests for function of UTF-8 marker line and for NFC normalization
Reinier Lamers <[email protected]>**20091101165936
 Ignore-this: e3411834cfc81d53a821104dac8a20a7
] 
[Stop handling all command line arguments as Unicode text
Reinier Lamers <[email protected]>**20091101144836
 Ignore-this: 36378aff05acba9cb1da5cb98b9b2793
] 
[Add C wrappers for ICU functions to work around changing symbol names
Reinier Lamers <[email protected]>**20091031214649
 Ignore-this: 533d863a04caa0a3a7c7268400a83606
] 
[Resolve conflict about the handling of the author pref file
Reinier Lamers <[email protected]>**20091031212525
 Ignore-this: 6d9d1b81780af984bb0517388941e771
] 
[Resolve conflict with darcs-hs merge
Reinier Lamers <[email protected]>**20091010212534
 Ignore-this: a868ea1795626ae72b0ff756c448c09f
] 
[Normalize Unicode of the patch metadata for comparison.
Reinier Lamers <[email protected]>**20091007181812
 Ignore-this: a4b0be23898a1f9cbb3feb7d309aed63
 
 This also includes two other changes: the change from the utf8-string
 package to the text package for encoding matters, and the change from a single
 'Ignore-this' line to two separate ones for the hash and the UTF-8 marker.
 
] 
[Test that patches with non-latin1 metadata can be safely moved between repos
Reinier Lamers <[email protected]>**20091004113213
 Ignore-this: 83acc078930dc42ec6d5225836ebcaef
] 
[Move locale conversion out of IO monad
Reinier Lamers <[email protected]>**20091004112511
 Ignore-this: 831e4d0993e52ad6be1c0cc9d1a022c3
 
 This is motivated by the circumstance that GHC 6.12 will offer locale
 conversion with a pure type.
 
] 
[Test that darcs tag stores metadata in UTF-8
Reinier Lamers <[email protected]>**20090927175836
 Ignore-this: 4339aae7f53b40edf2e2237cda8c1b79
] 
[Make _darcs/prefs/author be locale-encoded
Reinier Lamers <[email protected]>**20090927175820
 Ignore-this: 72dd25c4ce3e9ce8578085edf4b48a03
] 
[Make amend-record store metadata as UTF-8
Reinier Lamers <[email protected]>**20090925162134
 Ignore-this: 637ef55122360eb4a655dab758b9762b
] 
[Add tests for rollback's storing metadata as UTF-8
Reinier Lamers <[email protected]>**20090925161841
 Ignore-this: b76c41118719f1ba9fa0981fc21f709d
] 
[Make UTF-8 test a bit more compact
Reinier Lamers <[email protected]>**20090923090008
 Ignore-this: 6d032b6a9658af21a313dc55e6e8904a
] 
[Add tests to check that amend-record stores metadata in UTF-8
Reinier Lamers <[email protected]>**20090922200745
 Ignore-this: 1cde8b52b4946c3a05b89c30481af2b5
] 
[Resolve conflicts between UTF-8 and main branch
Reinier Lamers <[email protected]>**20090922200654
 Ignore-this: 6b882e6cdd1b0657b708098152cec1e1
] 
[Add test for UTF-8 metadata
Reinier Lamers <[email protected]>**20090917165327
 Ignore-this: 3e81237e8af61a45d64ac60269e1fe90 UTF-8
] 
[Make record store patch metadata in UTF-8
Reinier Lamers <[email protected]>**20090917165301
 Ignore-this: 6640e121987d6a76479e46d9cc14413b
] 
[TAG 2.4
Reinier Lamers <[email protected]>**20100226180900
 Ignore-this: 36ce0456c214345f55a7bc5fc142e985
] 
Patch bundle hash:
d23500488f9fa3f2571957b1ae0a0720c16fa12b
.



_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to