Thu Oct 2 22:35:09 CEST 2008 florent.becker@ens-lyon.org * haddock documentation for ColorPrinter New patches: [haddock documentation for ColorPrinter florent.becker@ens-lyon.org**20081002203509] hunk ./src/Darcs/ColorPrinter.lhs 38 - -data Policy = Policy { poColor, -- overall use of color - poEscape, -- overall use of escaping - poLineColor,-- overall use of colored lines (only hunks for now) - poAltColor, -- alternative to color (bold, inverse) - poIsprint, -- don't escape isprints - po8bit -- don't escape 8-bit chars - :: Bool, - poNoEscX, -- extra chars to never escape - poEscX -- extra chars to always escape - :: String, - poTrailing, -- escape trailing spaces - poCR, -- ignore \r at end of lines - - poSpace -- escape spaces (used with poTrailing) - :: Bool +-- | the 'Policy' type is a record containing the variables which control +-- how 'Doc's will be rendered on some output. +data Policy = Policy { poColor :: Bool -- ^ overall use of color + , poEscape :: Bool -- ^ overall use of escaping + , poLineColor :: Bool -- ^ overall use of colored lines (only hunks for now) + , poAltColor :: Bool -- ^ alternative to color (bold, inverse) + , poIsprint :: Bool -- ^ don't escape isprints + , po8bit :: Bool -- ^ don't escape 8-bit chars + , poNoEscX :: String -- ^ extra chars to never escape + , poEscX :: String -- ^ extra chars to always escape + , poTrailing :: Bool -- ^ escape trailing spaces + , poCR :: Bool -- ^ ignore \r at end of lines + , poSpace :: Bool -- ^ escape spaces (used with poTrailing) hunk ./src/Darcs/ColorPrinter.lhs 54 +-- | 'getPolicy' returns a suitable policy for a given handle. +-- The policy is chosen according to environment variables, and to the +-- type of terminal which the handle represents hunk ./src/Darcs/ColorPrinter.lhs 102 +-- | @'fancyPrinters' h@ returns a set of printers suitable for outputting +-- to @h@ hunk ./src/Darcs/ColorPrinter.lhs 114 +-- | @'lineColorTrans' policy@ tries to color a Doc, according to policy po. +-- That is, if @policy@ has @poLineColor@ set, then colors the line, otherwise +-- does nothing. hunk ./src/Darcs/ColorPrinter.lhs 180 +-- | @'escape' policy string@ escapes @string@ according to the rules +-- defined in 'policy', turning it into a 'Doc'. hunk ./src/Darcs/ColorPrinter.lhs 191 +-- | @'no_escape' policy c@ tells wether @c@ will be left as-is +-- when escaping according to @policy@ hunk ./src/Darcs/ColorPrinter.lhs 203 +-- | 'isPrintableAscii' tells wether a character is a printable character +-- of the ascii range. hunk ./src/Darcs/ColorPrinter.lhs 209 --- quote - +-- | 'quoteChar' represents a special character as a string. +-- * @quoteChar '^c'@ (where @^c@ is a control character) is @"^c"@ +-- * Otherwise, @quoteChar@ returns "\hex", where 'hex' is the +-- hexadecimal number of the character. hunk ./src/Darcs/ColorPrinter.lhs 225 +-- | @'mark_escape' policy doc@ marks @doc@ with the appropriate +-- marking for escaped characters according to @policy@ hunk ./src/Darcs/ColorPrinter.lhs 232 +-- | @'color' policy color doc@ colors @doc@ with color @color@ if +-- @policy@ is not set to use an alternative to color. In that case, +-- it makes the text bold instead. hunk ./src/Darcs/ColorPrinter.lhs 260 +-- | the string to reset the terminal's color. hunk ./src/Darcs/ColorPrinter.lhs 264 +-- | @'with_color' color doc@ returns a colorized version of @doc@. +-- @color@ is a string that represents a color, given by 'set_color' hunk ./src/Darcs/ColorPrinter.lhs 272 -make_bold, make_invert :: Doc -> Doc + +-- | 'make_bold' boldens a doc. +make_bold :: Doc -> Doc +-- | 'make_invert' returns an invert video version of a doc. +make_invert :: Doc -> Doc Context: [TAG 2.1.0pre3 Eric Kow **20081002091241] [Bump version number to 2.1.0pre3. Eric Kow **20081002091226] [ChangeLog entries for darcs 2.1.0pre3 Eric Kow **20081002091155] [make boring file and tests work with hpc. David Roundy **20081001202849 Ignore-this: a699af014f672cc32c1a88863db8ffec ] [trim exports of IsoDate. David Roundy **20081001194015 Ignore-this: 6f1ef595002c05c07821c2d1332e054b ] [fix bugs in second issue1110 test. David Roundy **20081001171147 Ignore-this: 2757852f2b599cfd55936cccd1b83b5f ] [Add another test case for issue1110. Eric Kow **20080930220818] [resolve issue1110: fix get --hashed. David Roundy **20080929175725 Ignore-this: d0aaaa26583dd3ab37bedfc738fb6117 ] [generate a tidier hoogle frame, add required files, simplify framed doc generation Simon Michael **20080930204518 Ignore-this: e60b456f1fdd001b5ae456f9aae05999 ] [make installdocs should not install TeX intermediaries. Trent W. Buck **20080930030315 I'm unilaterally classing the DVI and PostScript versions as "intermediaries" to the PDF version, and only installing the latter. ] [Add test cases for issue1043. Eric Kow **20080930105032 There are two known variants, one of which was fixed by resolve issue1043: fix bug in mergeAfterConflicting. ] [resolve issue1043: fix bug in mergeAfterConflicting. David Roundy **20080926211928 Ignore-this: 1416605539b44b32c18b348f3b4f459d This is moderately deep in the internals of the darcs-2 conflict handling code. I had made an assumption that turned out not to be correct. I fix this by switching to use a variant of the commute function that doesn't allow conflicting patches to commute, which I think should restore correctness here. It's a scary bug, though, and if anyone were to create a moderately small test case, I'd be extremely grateful. ] [add test that show bug works right. David Roundy **20080929152909 Ignore-this: 4829e300015120adeed108079324e5e2 ] [Add a test case for issue1110. Eric Kow **20080929151743] [Tone down unnecessarily scary language when cancelling Simon Michael **20080928004013 Ignore-this: c5940d14099953b7bc963c70591739d1 ] [darcshoogle script and emacs integration example Simon Michael **20080927210609 Ignore-this: 93d5a0ff269d314d32f213dfbe4325be ] [Fix doubled verb `be' in documentation on apply posthooks in _darcs/prefs/defaults. Taylor R Campbell **20080928200954] [the issue864 test was misnamed Simon Michael **20080928231942 Ignore-this: a0b643bf0abc6f4b6237e5683e9f6dad ] [add tests for pull --union and --intersection. David Roundy **20080929150711 Ignore-this: 356f506f79ca89a2d1246d068aaa8b2b --intersection fails, which is issue1111. ] [add more output to URL bug message. David Roundy **20080929145544 Ignore-this: 868e0ba5819dba2a4f5b8819080e9407 I triggered this bug a few times, but once I added the extra output, I wasn't able to do it again. So I'm leaving the extra information in the bug message so if someone else runs into it, we can more easily track down the issue. ] [answer darcs-doc question: no, that would be wrong. David Roundy **20080926220229 Ignore-this: 419afd7bd9832e06d3dca45880276296 ] [Make UglyFileName.super_name work with "/foo" paths. Dmitry Kurochkin **20080926223753 Ignore-this: 6e4abb72087272ed03e5839a5420f82f ] ["make api-doc-frames" converts api docs to a frame layout Simon Michael **20080927091919 Ignore-this: 2a600aefe4399d17a4c2f14ea1cec350 ] [hoogleindex no longer depends on api-doc dir Simon Michael **20080927090139 Ignore-this: 3a29b9bbd1ba1cdbccea03f4c04727c8 ] [make hoogle targets more robust Simon Michael **20080927083125 Ignore-this: 2aac81020d3855ce8ffc9c4deef3e949 ] [fix makefile indentation Simon Michael **20080927020444 Ignore-this: 847051698f40dc1fd03a8e1db93ff7a1 ] ["make hoogleweb" configures the hoogle web interface in hoogle/ Simon Michael **20080927015904 Ignore-this: dcc4e2526b3c92859ccf9a6f1cb57ad2 The hoogle index target is now "make hoogleindex". Requires the hoogle source tree (perhaps patched to configure result link urls). Tested on GNU/Linux with hoogle 4.0.0.5. ] [make haddock less noisy Simon Michael **20080927012958 Ignore-this: 84921fbd34b1f7345dec2571c3ec32ae ] [Rollback 'simplify patches in rollback' Eric Kow **20080926225411 I made the mistake of pulling this into stable despite a darcs 2.1 feature freeze. rolling back: Tue Sep 23 16:06:19 BST 2008 David Roundy * simplify patches in rollback. ] [Resolve issue1102: recognise but do not generate patch log 'junk'. Eric Kow **20080926220119 This is a partial rollback of the two issue27 patches below. The patches exist to (a) generate patch log 'junk' and (b) hide such junk from users' view. Because of a feature freeze, we do not want junk generation to be part of darcs 2.1; however, we do anticipate junk-generation being part of subsequent versions of darcs. To avoid users being confused by this future junk, we only rollback the junk-generation part, retaining the junk-hiding part. rolling back: Wed Sep 17 16:46:57 BST 2008 David Roundy * resolve issue27: add junk to patch identifiers. Wed Sep 17 18:09:13 BST 2008 David Roundy * hokey fix to allow unit tests to generate random input. ] [Roll back Dmitry's drop_dotdot change in Darcs.Patch.Filename. David Roundy **20080926145013 Ignore-this: d432374bbbe4cc006a26deeb3d15c3ec The key here is that he didn't want to change the internal patch-handling code, just the use of drop_dotdots in Darcs.RepoPath, which now uses UglyFileName for this purpose (which has Dmitry's code in it). rolling back: Thu Sep 25 13:57:11 EDT 2008 Dmitry Kurochkin * Make FileName.drop_dotdot work with absolute paths. M ./src/Darcs/Patch/FileName.lhs -7 +12 ] [split FileName into two modules. David Roundy **20080926144501 Ignore-this: dbb6650c6300745101bacd41bef431f0 This duplicates some code, and makes a Darcs.Patch.FileName into the module (which FileName originally was) for handling paths within a darcs repository. Code that had gotten agglomerated into this module is now in UglyFileName.lhs, which I hope to eliminate. I went through the imports of FileName and tried to separate them between those that use FileName to deal with paths in a repository and those that use the extra functions what were added there, and those that abuse FileName to handle other sorts of paths (absolute paths, in particular). ] ["make api-doc-with-source" generates docs with links to colourised source code Simon Michael **20080925213719 Ignore-this: c16b935c727838c606fa5daa29ccc41f This works with current hs-colour on GNU/Linux but may not be portable; I made it a separate make target to start with. Only per-module source links are enabled until there is a fix for the haddock/hoogle issue noted. ] [issue27.sh is still sporadically buggy. David Roundy **20080926134948 Ignore-this: ec2bf07485a6dc0fda83c786a7982df1 ] [add test that fails sporadically on nfs under ghc 6.6. David Roundy **20080925202350 Ignore-this: 8aae9073ea132935f1951f7e187bc2ea I haven't time to track this down, but it doesn't look like a bug in the test script. This was the issue27 test. ] [haddock documenation for DateTester florent.becker@ens-lyon.org**20080926165323] [haddock documentation for DateMatcher florent.becker@ens-lyon.org**20080926164753] [haddockification of IsoDate florent.becker@ens-lyon.org**20080926163257 Docstrings by Eric Kow ] [Move issue1078 test from bugs to tests. Dmitry Kurochkin **20080925180103 Ignore-this: f735ee2e36bdf8f446cab61d1f7ac334 ] [Resolve issue1078: make ioAbsolute work with symbolic links in file paths. Dmitry Kurochkin **20080925175726 Ignore-this: af4cf0bd842b9aae5e2fffe4500a1aa5 ] [Make FileName.drop_dotdot work with absolute paths. Dmitry Kurochkin **20080925175711 Ignore-this: 46c625a35bb11bea19b0749756d1a225 ] [Force hidden conflicts test to use the darcs-2 format. Eric Kow **20080925175251 Move it to the tests directory because it passes if we do this. We consider this to be a bug that is solved by using the darcs 2 format. ] [Use init+pull instead of get in issue27 test. Dmitry Kurochkin **20080925142606 Ignore-this: e8be404b0ccbc56d8f547b11b6e58c76 This would hopefully make it pass on NFS. ] [Exceptions to GPL granted as of 2008-09-11. Eric Kow **20080911120758] [Update manual to reflect --darcs-2 default. Eric Kow **20080925142538] [resolve issue1003: don't sever transfer-mode connection on IO error. David Roundy **20080925145150 Ignore-this: 3aecb8cffa83170847b0a2452c5763f0 There was a bug in Ssh, in which unless the very first file we access on a given server was present, we severed the connection. This fixes that bug. ] [preliminary hoogle indexing Simon Michael **20080925084432 If haddock and hoogle are installed, "make hoogle" generates api-doc/main.hoo. Use it at the command-line like so: hoogle --data=api-doc/main.hoo something ] [TAG 2.1.0pre2 Eric Kow **20080925081049 Ignore-this: 99b608f2401e8f14358e121e9b95e211 ] [Bump version number to 2.1.0pre2. Eric Kow **20080925081019 Ignore-this: 9d1aa701ce0b8cfc87007216207166fe It was initially planned that the upcoming release be called 2.0.3, but since we are initializing darcs-2 format repositories by default, we are bumping the version number higher. ] [ChangeLog entries for 2.1.0pre2 Eric Kow **20080925080141 Ignore-this: 1b1e57d425f8528e00e03e7b4a23ad78 ] [ChangeLog entries: more stuff to ignore Eric Kow **20080925080129 Ignore-this: 45362ed8bbabdacf222928cba6756aa4 ] [resolve issue805: make darcs-2 format the default for new repositories. David Roundy **20080924141158 Ignore-this: e7952cb0cdc3124ffa50b0775822000e ] [make flagsToPristine obey repository format. David Roundy **20080924135319 Ignore-this: 6038a7d05126af9e446406022ca608a0 This reduces the number of places we set the default repository format (hopefully to one?). ] [simplify patches in rollback. David Roundy **20080923150619 Ignore-this: fd3d327f800e2f1799ec97bc4524f612 This makes it nicer to incrementally rollback changes from one large change: you aren't prompted for changes that have already been rolled back. ] [More readable length comparison. Eric Kow **20080924142304] [Haddock some primitive patch functions. Eric Kow **20080924142157] [move issue27 test to bugs directory, since it fails. David Roundy **20080923215936 Ignore-this: 4556b273a9f8728de8ac855aae8442d0 ] [Add test for issue27. Dmitry Kurochkin **20080918135923] [Add a test case for issue1078 Eric Kow **20080923081757 Ignore-this: 33f7f1f63c7b707ff148531f8229ceb0 ] [give more useful failure message in HTTP for proxy errors. David Roundy **20080923153400 Ignore-this: 3d6d204da399175eedf68bedfed8e504 ] [HTTP: detect proxy server (failing if we want one) Eric Kow **20080923123539 The HTTP package has proxy server support, but putting it to use seems to be complicated. Since fetchUrl seems to be used only in optional situations, it seems safe to just return an error message (as opposed to waiting around for a timeout). ] [fix filepath code to work with FilePath package that preceded filepath. droundy@darcs.net**20080923000405 Ignore-this: 6aa0d8b357b0f966403ebe5965dcdec4 ] [fix type witness bug in createRepository. David Roundy **20080922234321 Ignore-this: 2c50393ca25740ce3e210dd24fe8d8fa ] [Resolve conflict between replace patches in Darcs.Arguments Eric Kow **20080922202647] [Resolve issue53: check for windows filename validity in darcs add/mv. Eric Kow **20080922172004] [Use --reserved-ok to allow a file with ':' in it in tests. Eric Kow **20080922171519 It's likely that this test will just fail under Windows and we will have to disable it. ] [Add test for issue53. Eric Kow **20080922152256] [Add --reserved-ok flag for darcs add and mv. Eric Kow **20080922141532 This is just the flag, not the actual effect. ] [Check for filepath package in configure. Eric Kow **20080922140520] [simplify fix for issue1041. David Roundy **20080922233019 Ignore-this: a3002e9bba5271790c62ac634e08f472 It turns out that the simple solution works once a bug in the conflict-doppleganger test was fixed! ] [translate conflict-doppleganger test to bash. David Roundy **20080922232839 Ignore-this: de2a050022dea4251cdc2cc5e8b55c8c ] [Translate mark-conflicts test into shell. Eric Kow **20080922224858 It was failing because it expects init to be completely silent. Since we were going to tweak it anyway, we might as well simplify the script. ] [Stop calling the darcs-2 format experimental. Eric Kow **20080922221024] [Move repository creation to Darcs.Repository. Eric Kow **20080922215913 This is just to avoid importing the DarcsRepo and HashedRepo code in higher level code. ] [remove test_unit from disttest to speed things up. David Roundy **20080922225355 Ignore-this: b3b21bcd3fa72c8d602b5bd0e601021a The unit test is only affected by very rarely-modified code, and it's overkill to run it absolutely every single time we push code (particularly as it sometimes takes exponentially long to generate its test cases). ] [resolve issue1041: add test for issue1041. David Roundy **20080922183320 Ignore-this: 5a6330158d16a24d45f58268c0edb823 Note that this issue was actually resolved by Vlad Dogaru. I just wrote the test. ] [Get: if URL is invalid, direcotry is not created (#1041) Vlad Dogaru **20080922171705] [Replace --without-docs with less ambiguous --without-manual (issue1082). Trent W. Buck **20080922002602 It's confusing for ./configure --without-docs to complain about missing haddock. ] [Documentation for --allow-unrelated-repos. Dmitry Kurochkin **20080922121122 Ignore-this: d2630826313c8aeb00acb6853030c22d ] [Rename --ignore-unrelated-repos to --allow-unrelated-repos. Dmitry Kurochkin **20080922120727 Ignore-this: a5990f1741c867316a948e6721118651 ] [fix bug I introduced into issue1039 test. David Roundy **20080921213043 Ignore-this: 5b3c6476abae6bb050be014555d05bbe ] [Fix hang after a user input error (for example, EOF). Judah Jacobson **20080918163017] [replace consRLSealed with a more general mapFlipped. David Roundy **20080921185241 Ignore-this: c28f73f165254582cba6a14ba6ce93 ] [make issue1039 fix allow small dissimilar repositories. David Roundy **20080921184515 Ignore-this: 918a09df18ef48c649c1bfaa866d6176 ] [revert refactor that breaks type witnesses. David Roundy **20080921182331 Ignore-this: dd692cffc1a238d6726448bacfe9cacc ] [Add '--ignore-unrelated-repos' option to disable unrelated repositories check. Dmitry Kurochkin **20080919152631] [Resolve issue1039: detect seemingly unrelated repositories when doing push, pull and send. Dmitry Kurochkin **20080919144553] [Refactor in pull_cmd. Dmitry Kurochkin **20080919135349 Ignore-this: e26a489a7a53aeaba544ae5ad0006700 ] [Test for issue1039. Dmitry Kurochkin **20080919153011] [manual: add an example of record --pipe prompts similar to tag --pipe docs Simon Michael **20080918205353] [user manual corrections regarding what record and tag --pipe prompt for Simon Michael **20080918204500] [clarify the short help for --pipe Simon Michael **20080918193717] [Use gmakeisms for prettier output. Trent W. Buck **20080919071358] [Spaces in Darcs.Arguments. Dmitry Kurochkin **20080919150440] [Spaces in Darcs.Commands.Send. Dmitry Kurochkin **20080919150139] [Spaces in Darcs.Commands.Pull. Dmitry Kurochkin **20080919145812] [Spaces in Darcs.Commands.Push. Dmitry Kurochkin **20080919145553] [Print "We have the following patches to send:" only when we really have somthing to send. Dmitry Kurochkin **20080919114229] [fix changes.pl test (translating to bash) David Roundy **20080917182432 Ignore-this: 5f8bc7e1f9eadc073402a935142281c4 This test made assumptions such as that darcs wouldn't ever add a long comment to its internal representation of changes, which are now broken. ] [hokey fix to allow unit tests to generate random input. David Roundy **20080917170913 Ignore-this: 31e847e82eef741f4c6cc857fd79a245 A nicer fix would be to move namepatch and patchinfo into some sort of random-number monad rather than leaving them in IO and using unsafePerformIO in the example-generation scripts. ] [resolve issue27: add junk to patch identifiers. David Roundy **20080917154657 Ignore-this: b91ab6f6e05e0fda25488fa51653b741 ] [TAG 2.0.3pre1 Eric Kow **20080918023645] Patch bundle hash: ed2b10cf6e7a95fdaba11099f89708bfc6011fcc