[darcs-devel] bug in get_extra revival

Tomasz Zielonka tomasz.zielonka at gmail.com
Sun May 1 14:29:53 PDT 2005


On Sat, Apr 30, 2005 at 12:47:38AM +0200, Tommy Pettersson wrote:
> I found out that if I first unpull the patch
> 
>   Tue Apr 26 02:25:35 CEST 2005  Tomasz Zielonka <tomasz.zielonka at gmail.com>
>     * bump version number to 1.0.3rc1 and update ChangeLog
> 
> it stops happening.

I managed to reduce the test case. I attach three patch bundles, all
to be applied to tag 1.0.2:

  to      - a repo to pull to
  from    - a repo to pull from, causes get_extra bug
  from-ok - a repo to pull from, doesn't cause get_extra bug

Note that 'from' and 'from-ok' contain the same set of patches,
but in different order.

Good night!
Tomasz
-------------- next part --------------

New patches:

[changelog updates
Mark Stosberg <mark at summersault.com>**20050206030948] {
hunk ./ChangeLog 1
+ 
+  * New feature: Automatically add parent directories for darcs add. (RT#20)
+    Coded by Benedikt Schmidt. 
+
+  * Add helpful diagnostic message when there is a failure while pulling (RT#201)
+
}

[a test for whatsnew with absolute paths
Mark Stosberg <mark at summersault.com>**20041023235658
 It was recently reported on the -users list that 'whatsnew' doesn't work with absolute paths.
 This test confirms that bug (It current fails). 
] {
addfile ./tests/whatsnew.pl
hunk ./tests/whatsnew.pl 1
+#!/usr/bin/env perl
+
+# Some tests for 'darcs whatsnew '
+
+use Test::More qw/no_plan/;
+use strict;
+use vars qw/$DARCS/;
+$DARCS = $ENV{DARCS} || "$ENV{PWD}/../darcs";
+
+`rm -rf temp1`;
+`mkdir temp1`;
+chdir 'temp1';
+`$DARCS init`;
+
+###
+
+my $test_name = 'whatsnew works with absolute paths';
+
+`date >> date.t`;
+`darcs add date.t`;
+
+like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
+
+###
+
+chdir '../';
+`rm -rf temp1`;
+ok((!-d 'temp1'), 'temp1 directory was deleted');
+
+
+
+
}

[convert whatsnew-with-absolutes-paths tests to a TODO test.
Mark Stosberg <mark at summersault.com>**20050309025427
 
 TODO tests still 'succeed' when the test fails, thus test should now be OK to
 'apply' to darcs before the code is written to match it. Hopefully, it may even
 be an incentive to help get started on that. 
 
] {
hunk ./tests/whatsnew.pl 15
-###
-
-my $test_name = 'whatsnew works with absolute paths';
-
-`date >> date.t`;
-`darcs add date.t`;
-
-like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
-
-###
+TODO: {
+    local $TODO =  "waiting on code for whatsnews to work with absolute paths";
+    my $test_name = 'whatsnew works with absolute paths';
+    `date >> date.t`;
+    `darcs add date.t`;
+    like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
+}
}

[more changelog updates: mention diff, unrecord, unpull and put improvements
Mark Stosberg <mark at summersault.com>**20050309002610] {
hunk ./ChangeLog 7
+  * Performance improvement: Using 'darcs diff' is now exponentially faster
+    when comparing specific files in the working directory to the most recent   
+    copy in the repo. Coded by kannan at cakoose.com. 
+
+  * New feature: darcs put, the easiest way to create a remote repo, symmetric
+    with 'darcs get'. Coded by Josef Svenningsson. 
+
+  * New feature: unrecord and unpull have a more powerful interface similar  to
+    'darcs pull'.  This allows for multiple patch selection. Coded by Tommy
+    Pettersson.
+
}

[RT#143, adding ChangeLog entry
Mark Stosberg <mark at summersault.com>**20050308151004] {
hunk ./ChangeLog 1
- 
+
+  * New feature: darcs tag can now accept the tag name on the command line
+    (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
+
}

[MOre ChangeLog updates
Mark Stosberg <mark at summersault.com>**20050312140805] {
hunk ./ChangeLog 1
+  * Internals: RT#255, several welcome refactors were made to the test suite,
+    including comprehensible shell test script output, improved portability,
+    and easier maintenance. (Michael Schwern).
+  
+  * Fixed: RT#206, involving deleting large files over NFS (Kartik Agaram,
+    David Roundy)
hunk ./ChangeLog 8
+  * Fixed: RT#10, a missed conflict resolution case. More accurately, we
+    noticed at had been fixed some point. A regression test for it was added.
+    (Tomasz Zielonka, Mark Stosberg) 
+  
hunk ./ChangeLog 13
-    (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
+  (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
}

[RT#266 - add ChangeLog entry
Mark Stosberg <mark at summersault.com>**20050319152907] {
hunk ./ChangeLog 1
+  * Fixed: RT#266: Adding a non-existent dir and file gives the expected
+    message now. (Tomasz Zielonka).
+
}

[RT#245 - ChangeLog update and test
Mark Stosberg <mark at summersault.com>**20050319154739] {
hunk ./ChangeLog 1
+  * New Feature: RT#245: Using --look-for-adds with 'whatsnew' implies
+    --summary. This should save some typing for the common case. 
+    (Karel Gardas, Mark Stosberg)
+
hunk ./tests/whatsnew.pl 15
+{
+    my $test_name = 'RT#245 --look-for-adds implies --summary';
+    touch 'look_summary.txt';
+    like( darcs('whatsnew -l'), qr!a ./look_summary.txt!i, $test_name);
+}
+
+
}

[RT#231 - ChangeLog update
Mark Stosberg <mark at summersault.com>**20050319162549] {
hunk ./ChangeLog 1
+  * New Feature: RT#231: darcs gives better feedback now if you try to record
+    nonexistent files or directories. (Karel Gardas, Mark Stosberg)
+
}

[update Changelog for RT#305 - "--patch" removed from 'darcs changes'
Mark Stosberg <mark at summersault.com>**20050331212123] hunk ./ChangeLog 1
+  * Bug fix: RT#305: Removed '--patch' from the 'changes', which conflicted
+  with the new '--patches' option.
+

[Changelog update
Mark Stosberg <mark at summersault.com>**20050401133627] {
hunk ./ChangeLog 37
+  * Peformance improvement: RT#222: darcs performs better on files with
+  massive changes. Coded by Benedikt Schmidt.
+
}

[changelog update for "darcs annotate missing_file.txt" fix
Mark Stosberg <mark at summersault.com>**20050403005547] {
hunk ./ChangeLog 1
+  * Bug fix: "darcs annotate missing_file.txt" no longer displays unnecessary
+    debugging output. (Thomas Zander) 
+    
}

[changelog update -- "--modernize-patches":
Mark Stosberg <mark at summersault.com>**20050403005708] {
hunk ./ChangeLog 7
+  * New Feature: darcs optimize now has a "--modernize-patches" flag.
+    See the manual for details. 
+
}

[mention --reorder-patches in the ChangeLog
Mark Stosberg <mark at summersault.com>**20050408160402] {
hunk ./ChangeLog 7
-  * New Feature: darcs optimize now has a "--modernize-patches" flag.
-    See the manual for details. 
+  * New Feature: darcs optimize now has "--modernize-patches" and
+  "--reorder-patches" flags.  See the manual for details. 
}

[explain darcs.cgi caching in the ChangeLog
Mark Stosberg <mark at summersault.com>**20050408160547] {
hunk ./ChangeLog 7
+  * New Feature: darcs.cgi now uses appropriate caching headers. This will
+    make repeated calls to the same pages by cache-aware browsers much faste in
+    some cases. It also means that darcs.cgi can be usefully combined with a
+    cache-aware proxy for even better performance. (Will Glozer)
+
}

[Update ChangeLog with note about lazy patch reading. 
Mark Stosberg <mark at summersault.com>**20050410003207] {
hunk ./ChangeLog 44
+  * Performance improvement: Several commands now read patches lazily,
+    which reduces memory usage. A test of 'darcs check' on the Linux kernel
+    repository showed the memory usage was nearly cut in half, from about 700 Megs  
+    to 400. Coded by David Roundy.
+
}

[typo fix
Mark Stosberg <mark at summersault.com>**20050410003237] {
hunk ./ChangeLog 53
-  * Peformance improvement: RT#222: darcs performs better on files with
+  * Performance improvement: RT#222: darcs performs better on files with
}

[Fix spacing in ChangeLog
Ian Lynagh <igloo at earth.li>**20050414203007] {
hunk ./ChangeLog 2
-    debugging output. (Thomas Zander) 
-    
+    debugging output. (Thomas Zander)
+
hunk ./ChangeLog 5
-  with the new '--patches' option.
+    with the new '--patches' option.
hunk ./ChangeLog 13
-  "--reorder-patches" flags.  See the manual for details. 
+    "--reorder-patches" flags.  See the manual for details.
hunk ./ChangeLog 19
-    --summary. This should save some typing for the common case. 
+    --summary. This should save some typing for the common case.
hunk ./ChangeLog 28
-  
+
hunk ./ChangeLog 34
-    (Tomasz Zielonka, Mark Stosberg) 
-  
+    (Tomasz Zielonka, Mark Stosberg)
+
hunk ./ChangeLog 37
-  (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
+    (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
hunk ./ChangeLog 40
-    Coded by Benedikt Schmidt. 
+    Coded by Benedikt Schmidt.
hunk ./ChangeLog 42
-  * Add helpful diagnostic message when there is a failure while pulling (RT#201)
+  * Add helpful diagnostic message when there is a failure while pulling
+    (RT#201)
hunk ./ChangeLog 51
-    when comparing specific files in the working directory to the most recent   
-    copy in the repo. Coded by kannan at cakoose.com. 
+    when comparing specific files in the working directory to the most recent
+    copy in the repo. Coded by kannan at cakoose.com.
hunk ./ChangeLog 55
-  massive changes. Coded by Benedikt Schmidt.
+    massive changes. Coded by Benedikt Schmidt.
hunk ./ChangeLog 58
-    with 'darcs get'. Coded by Josef Svenningsson. 
+    with 'darcs get'. Coded by Josef Svenningsson.
hunk ./ChangeLog 60
-  * New feature: unrecord and unpull have a more powerful interface similar  to
+  * New feature: unrecord and unpull have a more powerful interface similar to
hunk ./ChangeLog 99
-    This is the new name for the cache stored in _darcs/current/. 
+    This is the new name for the cache stored in _darcs/current/.
hunk ./ChangeLog 118
-  * Made a few documentation improvements. 
+  * Made a few documentation improvements.
hunk ./ChangeLog 152
-    Darcs' chapter  in the manual for more details. 
-  * darcs now supports an arbitrary number of concurrent connections when 
+    Darcs' chapter in the manual for more details.
+  * darcs now supports an arbitrary number of concurrent connections when
hunk ./ChangeLog 155
-    in the 'Configuring Darcs' chapter in the manual for more details. 
+    in the 'Configuring Darcs' chapter in the manual for more details.
hunk ./ChangeLog 258
-  * Fixed bug in darcs --commands when called outside a repo.  
+  * Fixed bug in darcs --commands when called outside a repo.
hunk ./ChangeLog 317
-  * Fixed bug in --ask-deps option of record. 
+  * Fixed bug in --ask-deps option of record.
hunk ./ChangeLog 572
- -- David Roundy <droundy at abridgegame.org>  
+ -- David Roundy <droundy at abridgegame.org>
hunk ./ChangeLog 595
- -- David Roundy <droundy at abridgegame.org>  
+ -- David Roundy <droundy at abridgegame.org>
}

[Add suffix to version number
Erik Schnetter <schnetter at aei.mpg.de>**20050417172053
 Add a suffix (release candidate #n/release/stable/unstable) etc. to
 the darcs version number.  This suffix should describe which branch
 (stable or unstable) a particulay darcs executable came from, and
 whether it includes additional modifications.
 
 Since there are no global changeset numbers in darcs, this suffix is
 necessarily incomplete and cannot replace --exact-version.
 
 The changes between the states have to be made manually in
 configure.ac.
] {
hunk ./Autoconf.lhs.in 39
-darcs_version = "@DARCS_VERSION@"
+darcs_version = "@DARCS_VERSION@ (@DARCS_VERSION_STATE@)"
hunk ./GNUmakefile 118
-	./darcs dist --dist-name darcs-`./darcs --version`
-	ln -sf darcs-`darcs --version`.tar.gz darcs-latest.tar.gz
+	./darcs dist --dist-name darcs-$(DARCS_VERSION)
+	ln -sf darcs-$(DARCS_VERSION).tar.gz darcs-latest.tar.gz
hunk ./configure.ac 15
+dnl The version string must not contain any spaces.
+dnl Set the version state to any of
+dnl    [release candidate #n]
+dnl    [release]
+dnl    [unstable]
+dnl    [stable]
+
+dnl It is darcs custom to increase the version number not directly
+dnl after a release, but directly before a release candidate is created.
+
hunk ./configure.ac 26
+DARCS_VERSION_STATE=[unstable]
hunk ./configure.ac 28
+AC_SUBST(DARCS_VERSION_STATE)
}

[update ChangeLog (colorization and escaping, --sendmail-command)
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050424204421] {
hunk ./ChangeLog 63
+
+  * New feature: more control over color and escaping in printed patches,
+    alternative color scheme, escaping of trailing spaces (Tommy Pettersson)
+
+  * New feature: send accepts --sendmail-command that allows to customize the
+    command used for sending patch bundles (Benedikt Schmidt)
}

[adjust version suffix for the stable repository
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050420121711] {
hunk ./configure.ac 26
-DARCS_VERSION_STATE=[unstable]
+DARCS_VERSION_STATE=[stable]
}

[bump version number to 1.0.3rc1 and update ChangeLog
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050426002535] {
merger 0.0 (
hunk ./ChangeLog 2
-    debugging output. (Thomas Zander) 
-    
+    debugging output. (Thomas Zander)
+
merger 0.0 (
hunk ./ChangeLog 1
+  * Bug fix: "darcs annotate missing_file.txt" no longer displays unnecessary
+    debugging output. (Thomas Zander) 
+    
hunk ./ChangeLog 1
+  * Performance improvement: Using 'darcs diff' is now exponentially faster
+    when comparing specific files in the working directory to the most recent   
+    copy in the repo. Coded by kannan at cakoose.com. 
+
+  * New feature: darcs put, the easiest way to create a remote repo, symmetric
+    with 'darcs get'. Coded by Josef Svenningsson.
+
+darcs (1.0.3rc1)
+
+ -- Tomasz Zielonka <tomasz.zielonka at gmail.com>  Sun, 24 Apr 2005 22:49:22 +0200
+
)
)
merger 0.0 (
hunk ./ChangeLog 51
-  * Peformance improvement: RT#222: darcs performs better on files with
+  * Performance improvement: RT#222: darcs performs better on files with
merger 0.0 (
hunk ./ChangeLog 57
-  * New feature: unrecord and unpull have a more powerful interface similar  to
+  * New feature: unrecord and unpull have a more powerful interface similar to
merger 0.0 (
hunk ./ChangeLog 55
-    with 'darcs get'. Coded by Josef Svenningsson. 
+    with 'darcs get'. Coded by Josef Svenningsson.
merger 0.0 (
hunk ./ChangeLog 52
-  massive changes. Coded by Benedikt Schmidt.
+    massive changes. Coded by Benedikt Schmidt.
merger 0.0 (
hunk ./ChangeLog 48
-    when comparing specific files in the working directory to the most recent   
-    copy in the repo. Coded by kannan at cakoose.com. 
+    when comparing specific files in the working directory to the most recent
+    copy in the repo. Coded by kannan at cakoose.com.
merger 0.0 (
hunk ./ChangeLog 42
+  * Performance improvement: Several commands now read patches lazily,
+    which reduces memory usage. A test of 'darcs check' on the Linux kernel
+    repository showed the memory usage was nearly cut in half, from about 700 Megs  
+    to 400. Coded by David Roundy.
+
merger 0.0 (
hunk ./ChangeLog 46
+  * Peformance improvement: RT#222: darcs performs better on files with
+  massive changes. Coded by Benedikt Schmidt.
+
hunk ./ChangeLog 42
-  * Performance improvement: Using 'darcs diff' is now exponentially faster
-    when comparing specific files in the working directory to the most recent   
-    copy in the repo. Coded by kannan at cakoose.com. 
-
-  * New feature: darcs put, the easiest way to create a remote repo, symmetric
-    with 'darcs get'. Coded by Josef Svenningsson. 
-
)
)
)
)
)
)
)
hunk ./ChangeLog 58
+
+  * Fixed: fixed bug manifesting with failed createDirectory (David Roundy)
hunk ./configure.ac 17
-dnl    [release candidate #n]
-dnl    [release]
-dnl    [unstable]
-dnl    [stable]
+dnl    "release candidate #n"
+dnl    "release"
+dnl    "unstable"
+dnl    "stable"
hunk ./configure.ac 25
-DARCS_VERSION=1.0.2
-DARCS_VERSION_STATE=[stable]
+DARCS_VERSION=1.0.3rc1
+DARCS_VERSION_STATE="release candidate 1"
}

Context:

[TAG 1.0.2
David Roundy <droundy at abridgegame.org>**20050204123805] 
Patch bundle hash:
3980478bbe10bcde808aabe069778d43c0007c66
-------------- next part --------------

New patches:

[changelog updates
Mark Stosberg <mark at summersault.com>**20050206030948] {
hunk ./ChangeLog 1
+ 
+  * New feature: Automatically add parent directories for darcs add. (RT#20)
+    Coded by Benedikt Schmidt. 
+
+  * Add helpful diagnostic message when there is a failure while pulling (RT#201)
+
}

[a test for whatsnew with absolute paths
Mark Stosberg <mark at summersault.com>**20041023235658
 It was recently reported on the -users list that 'whatsnew' doesn't work with absolute paths.
 This test confirms that bug (It current fails). 
] {
addfile ./tests/whatsnew.pl
hunk ./tests/whatsnew.pl 1
+#!/usr/bin/env perl
+
+# Some tests for 'darcs whatsnew '
+
+use Test::More qw/no_plan/;
+use strict;
+use vars qw/$DARCS/;
+$DARCS = $ENV{DARCS} || "$ENV{PWD}/../darcs";
+
+`rm -rf temp1`;
+`mkdir temp1`;
+chdir 'temp1';
+`$DARCS init`;
+
+###
+
+my $test_name = 'whatsnew works with absolute paths';
+
+`date >> date.t`;
+`darcs add date.t`;
+
+like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
+
+###
+
+chdir '../';
+`rm -rf temp1`;
+ok((!-d 'temp1'), 'temp1 directory was deleted');
+
+
+
+
}

[convert whatsnew-with-absolutes-paths tests to a TODO test.
Mark Stosberg <mark at summersault.com>**20050309025427
 
 TODO tests still 'succeed' when the test fails, thus test should now be OK to
 'apply' to darcs before the code is written to match it. Hopefully, it may even
 be an incentive to help get started on that. 
 
] {
hunk ./tests/whatsnew.pl 15
-###
-
-my $test_name = 'whatsnew works with absolute paths';
-
-`date >> date.t`;
-`darcs add date.t`;
-
-like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
-
-###
+TODO: {
+    local $TODO =  "waiting on code for whatsnews to work with absolute paths";
+    my $test_name = 'whatsnew works with absolute paths';
+    `date >> date.t`;
+    `darcs add date.t`;
+    like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
+}
}

[more changelog updates: mention diff, unrecord, unpull and put improvements
Mark Stosberg <mark at summersault.com>**20050309002610] {
hunk ./ChangeLog 7
+  * Performance improvement: Using 'darcs diff' is now exponentially faster
+    when comparing specific files in the working directory to the most recent   
+    copy in the repo. Coded by kannan at cakoose.com. 
+
+  * New feature: darcs put, the easiest way to create a remote repo, symmetric
+    with 'darcs get'. Coded by Josef Svenningsson. 
+
+  * New feature: unrecord and unpull have a more powerful interface similar  to
+    'darcs pull'.  This allows for multiple patch selection. Coded by Tommy
+    Pettersson.
+
}

[RT#143, adding ChangeLog entry
Mark Stosberg <mark at summersault.com>**20050308151004] {
hunk ./ChangeLog 1
- 
+
+  * New feature: darcs tag can now accept the tag name on the command line
+    (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
+
}

[MOre ChangeLog updates
Mark Stosberg <mark at summersault.com>**20050312140805] {
hunk ./ChangeLog 1
+  * Internals: RT#255, several welcome refactors were made to the test suite,
+    including comprehensible shell test script output, improved portability,
+    and easier maintenance. (Michael Schwern).
+  
+  * Fixed: RT#206, involving deleting large files over NFS (Kartik Agaram,
+    David Roundy)
hunk ./ChangeLog 8
+  * Fixed: RT#10, a missed conflict resolution case. More accurately, we
+    noticed at had been fixed some point. A regression test for it was added.
+    (Tomasz Zielonka, Mark Stosberg) 
+  
hunk ./ChangeLog 13
-    (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
+  (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
}

[RT#266 - add ChangeLog entry
Mark Stosberg <mark at summersault.com>**20050319152907] {
hunk ./ChangeLog 1
+  * Fixed: RT#266: Adding a non-existent dir and file gives the expected
+    message now. (Tomasz Zielonka).
+
}

[RT#245 - ChangeLog update and test
Mark Stosberg <mark at summersault.com>**20050319154739] {
hunk ./ChangeLog 1
+  * New Feature: RT#245: Using --look-for-adds with 'whatsnew' implies
+    --summary. This should save some typing for the common case. 
+    (Karel Gardas, Mark Stosberg)
+
hunk ./tests/whatsnew.pl 15
+{
+    my $test_name = 'RT#245 --look-for-adds implies --summary';
+    touch 'look_summary.txt';
+    like( darcs('whatsnew -l'), qr!a ./look_summary.txt!i, $test_name);
+}
+
+
}

[RT#231 - ChangeLog update
Mark Stosberg <mark at summersault.com>**20050319162549] {
hunk ./ChangeLog 1
+  * New Feature: RT#231: darcs gives better feedback now if you try to record
+    nonexistent files or directories. (Karel Gardas, Mark Stosberg)
+
}

[update Changelog for RT#305 - "--patch" removed from 'darcs changes'
Mark Stosberg <mark at summersault.com>**20050331212123] hunk ./ChangeLog 1
+  * Bug fix: RT#305: Removed '--patch' from the 'changes', which conflicted
+  with the new '--patches' option.
+

[Changelog update
Mark Stosberg <mark at summersault.com>**20050401133627] {
hunk ./ChangeLog 37
+  * Peformance improvement: RT#222: darcs performs better on files with
+  massive changes. Coded by Benedikt Schmidt.
+
}

[changelog update for "darcs annotate missing_file.txt" fix
Mark Stosberg <mark at summersault.com>**20050403005547] {
hunk ./ChangeLog 1
+  * Bug fix: "darcs annotate missing_file.txt" no longer displays unnecessary
+    debugging output. (Thomas Zander) 
+    
}

[changelog update -- "--modernize-patches":
Mark Stosberg <mark at summersault.com>**20050403005708] {
hunk ./ChangeLog 7
+  * New Feature: darcs optimize now has a "--modernize-patches" flag.
+    See the manual for details. 
+
}

[mention --reorder-patches in the ChangeLog
Mark Stosberg <mark at summersault.com>**20050408160402] {
hunk ./ChangeLog 7
-  * New Feature: darcs optimize now has a "--modernize-patches" flag.
-    See the manual for details. 
+  * New Feature: darcs optimize now has "--modernize-patches" and
+  "--reorder-patches" flags.  See the manual for details. 
}

[Add suffix to version number
Erik Schnetter <schnetter at aei.mpg.de>**20050417172053
 Add a suffix (release candidate #n/release/stable/unstable) etc. to
 the darcs version number.  This suffix should describe which branch
 (stable or unstable) a particulay darcs executable came from, and
 whether it includes additional modifications.
 
 Since there are no global changeset numbers in darcs, this suffix is
 necessarily incomplete and cannot replace --exact-version.
 
 The changes between the states have to be made manually in
 configure.ac.
] {
hunk ./Autoconf.lhs.in 39
-darcs_version = "@DARCS_VERSION@"
+darcs_version = "@DARCS_VERSION@ (@DARCS_VERSION_STATE@)"
hunk ./GNUmakefile 118
-	./darcs dist --dist-name darcs-`./darcs --version`
-	ln -sf darcs-`darcs --version`.tar.gz darcs-latest.tar.gz
+	./darcs dist --dist-name darcs-$(DARCS_VERSION)
+	ln -sf darcs-$(DARCS_VERSION).tar.gz darcs-latest.tar.gz
hunk ./configure.ac 15
+dnl The version string must not contain any spaces.
+dnl Set the version state to any of
+dnl    [release candidate #n]
+dnl    [release]
+dnl    [unstable]
+dnl    [stable]
+
+dnl It is darcs custom to increase the version number not directly
+dnl after a release, but directly before a release candidate is created.
+
hunk ./configure.ac 26
+DARCS_VERSION_STATE=[unstable]
hunk ./configure.ac 28
+AC_SUBST(DARCS_VERSION_STATE)
}

[adjust version suffix for the stable repository
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050420121711] {
hunk ./configure.ac 26
-DARCS_VERSION_STATE=[unstable]
+DARCS_VERSION_STATE=[stable]
}

[update ChangeLog (colorization and escaping, --sendmail-command)
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050424204421] {
hunk ./ChangeLog 52
+
+  * New feature: more control over color and escaping in printed patches,
+    alternative color scheme, escaping of trailing spaces (Tommy Pettersson)
+
+  * New feature: send accepts --sendmail-command that allows to customize the
+    command used for sending patch bundles (Benedikt Schmidt)
}

[explain darcs.cgi caching in the ChangeLog
Mark Stosberg <mark at summersault.com>**20050408160547] {
hunk ./ChangeLog 7
+  * New Feature: darcs.cgi now uses appropriate caching headers. This will
+    make repeated calls to the same pages by cache-aware browsers much faste in
+    some cases. It also means that darcs.cgi can be usefully combined with a
+    cache-aware proxy for even better performance. (Will Glozer)
+
}

[Update ChangeLog with note about lazy patch reading. 
Mark Stosberg <mark at summersault.com>**20050410003207] {
hunk ./ChangeLog 44
+  * Performance improvement: Several commands now read patches lazily,
+    which reduces memory usage. A test of 'darcs check' on the Linux kernel
+    repository showed the memory usage was nearly cut in half, from about 700 Megs  
+    to 400. Coded by David Roundy.
+
}

[Fix spacing in ChangeLog
Ian Lynagh <igloo at earth.li>**20050414203007] {
hunk ./ChangeLog 2
-    debugging output. (Thomas Zander) 
-    
+    debugging output. (Thomas Zander)
+
hunk ./ChangeLog 5
-  with the new '--patches' option.
+    with the new '--patches' option.
hunk ./ChangeLog 13
-  "--reorder-patches" flags.  See the manual for details. 
+    "--reorder-patches" flags.  See the manual for details.
hunk ./ChangeLog 19
-    --summary. This should save some typing for the common case. 
+    --summary. This should save some typing for the common case.
hunk ./ChangeLog 28
-  
+
hunk ./ChangeLog 34
-    (Tomasz Zielonka, Mark Stosberg) 
-  
+    (Tomasz Zielonka, Mark Stosberg)
+
hunk ./ChangeLog 37
-  (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
+    (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
hunk ./ChangeLog 40
-    Coded by Benedikt Schmidt. 
+    Coded by Benedikt Schmidt.
hunk ./ChangeLog 42
-  * Add helpful diagnostic message when there is a failure while pulling (RT#201)
+  * Add helpful diagnostic message when there is a failure while pulling
+    (RT#201)
hunk ./ChangeLog 51
-    when comparing specific files in the working directory to the most recent   
-    copy in the repo. Coded by kannan at cakoose.com. 
+    when comparing specific files in the working directory to the most recent
+    copy in the repo. Coded by kannan at cakoose.com.
hunk ./ChangeLog 55
-  massive changes. Coded by Benedikt Schmidt.
+    massive changes. Coded by Benedikt Schmidt.
hunk ./ChangeLog 58
-    with 'darcs get'. Coded by Josef Svenningsson. 
+    with 'darcs get'. Coded by Josef Svenningsson.
hunk ./ChangeLog 60
-  * New feature: unrecord and unpull have a more powerful interface similar  to
+  * New feature: unrecord and unpull have a more powerful interface similar to
hunk ./ChangeLog 105
-    This is the new name for the cache stored in _darcs/current/. 
+    This is the new name for the cache stored in _darcs/current/.
hunk ./ChangeLog 124
-  * Made a few documentation improvements. 
+  * Made a few documentation improvements.
hunk ./ChangeLog 158
-    Darcs' chapter  in the manual for more details. 
-  * darcs now supports an arbitrary number of concurrent connections when 
+    Darcs' chapter in the manual for more details.
+  * darcs now supports an arbitrary number of concurrent connections when
hunk ./ChangeLog 161
-    in the 'Configuring Darcs' chapter in the manual for more details. 
+    in the 'Configuring Darcs' chapter in the manual for more details.
hunk ./ChangeLog 264
-  * Fixed bug in darcs --commands when called outside a repo.  
+  * Fixed bug in darcs --commands when called outside a repo.
hunk ./ChangeLog 323
-  * Fixed bug in --ask-deps option of record. 
+  * Fixed bug in --ask-deps option of record.
hunk ./ChangeLog 578
- -- David Roundy <droundy at abridgegame.org>  
+ -- David Roundy <droundy at abridgegame.org>
hunk ./ChangeLog 601
- -- David Roundy <droundy at abridgegame.org>  
+ -- David Roundy <droundy at abridgegame.org>
}

[typo fix
Mark Stosberg <mark at summersault.com>**20050410003237] {
hunk ./ChangeLog 54
-  * Peformance improvement: RT#222: darcs performs better on files with
+  * Performance improvement: RT#222: darcs performs better on files with
}

[bump version number to 1.0.3rc1 and update ChangeLog
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050426002535] {
merger 0.0 (
hunk ./ChangeLog 2
-    debugging output. (Thomas Zander) 
-    
+    debugging output. (Thomas Zander)
+
merger 0.0 (
hunk ./ChangeLog 1
+  * Bug fix: "darcs annotate missing_file.txt" no longer displays unnecessary
+    debugging output. (Thomas Zander) 
+    
hunk ./ChangeLog 1
+  * Performance improvement: Using 'darcs diff' is now exponentially faster
+    when comparing specific files in the working directory to the most recent   
+    copy in the repo. Coded by kannan at cakoose.com. 
+
+  * New feature: darcs put, the easiest way to create a remote repo, symmetric
+    with 'darcs get'. Coded by Josef Svenningsson.
+
+darcs (1.0.3rc1)
+
+ -- Tomasz Zielonka <tomasz.zielonka at gmail.com>  Sun, 24 Apr 2005 22:49:22 +0200
+
)
)
merger 0.0 (
hunk ./ChangeLog 51
-  * Peformance improvement: RT#222: darcs performs better on files with
+  * Performance improvement: RT#222: darcs performs better on files with
merger 0.0 (
hunk ./ChangeLog 57
-  * New feature: unrecord and unpull have a more powerful interface similar  to
+  * New feature: unrecord and unpull have a more powerful interface similar to
merger 0.0 (
hunk ./ChangeLog 55
-    with 'darcs get'. Coded by Josef Svenningsson. 
+    with 'darcs get'. Coded by Josef Svenningsson.
merger 0.0 (
hunk ./ChangeLog 52
-  massive changes. Coded by Benedikt Schmidt.
+    massive changes. Coded by Benedikt Schmidt.
merger 0.0 (
hunk ./ChangeLog 48
-    when comparing specific files in the working directory to the most recent   
-    copy in the repo. Coded by kannan at cakoose.com. 
+    when comparing specific files in the working directory to the most recent
+    copy in the repo. Coded by kannan at cakoose.com.
merger 0.0 (
hunk ./ChangeLog 42
+  * Performance improvement: Several commands now read patches lazily,
+    which reduces memory usage. A test of 'darcs check' on the Linux kernel
+    repository showed the memory usage was nearly cut in half, from about 700 Megs  
+    to 400. Coded by David Roundy.
+
merger 0.0 (
hunk ./ChangeLog 46
+  * Peformance improvement: RT#222: darcs performs better on files with
+  massive changes. Coded by Benedikt Schmidt.
+
hunk ./ChangeLog 42
-  * Performance improvement: Using 'darcs diff' is now exponentially faster
-    when comparing specific files in the working directory to the most recent   
-    copy in the repo. Coded by kannan at cakoose.com. 
-
-  * New feature: darcs put, the easiest way to create a remote repo, symmetric
-    with 'darcs get'. Coded by Josef Svenningsson. 
-
)
)
)
)
)
)
)
hunk ./ChangeLog 58
+
+  * Fixed: fixed bug manifesting with failed createDirectory (David Roundy)
hunk ./configure.ac 17
-dnl    [release candidate #n]
-dnl    [release]
-dnl    [unstable]
-dnl    [stable]
+dnl    "release candidate #n"
+dnl    "release"
+dnl    "unstable"
+dnl    "stable"
hunk ./configure.ac 25
-DARCS_VERSION=1.0.2
-DARCS_VERSION_STATE=[stable]
+DARCS_VERSION=1.0.3rc1
+DARCS_VERSION_STATE="release candidate 1"
}

Context:

[TAG 1.0.2
David Roundy <droundy at abridgegame.org>**20050204123805] 
Patch bundle hash:
ed485b5d85fd586071698fa06622168707abbfc5
-------------- next part --------------

New patches:

[changelog updates
Mark Stosberg <mark at summersault.com>**20050206030948] {
hunk ./ChangeLog 1
+ 
+  * New feature: Automatically add parent directories for darcs add. (RT#20)
+    Coded by Benedikt Schmidt. 
+
+  * Add helpful diagnostic message when there is a failure while pulling (RT#201)
+
}

[a test for whatsnew with absolute paths
Mark Stosberg <mark at summersault.com>**20041023235658
 It was recently reported on the -users list that 'whatsnew' doesn't work with absolute paths.
 This test confirms that bug (It current fails). 
] {
addfile ./tests/whatsnew.pl
hunk ./tests/whatsnew.pl 1
+#!/usr/bin/env perl
+
+# Some tests for 'darcs whatsnew '
+
+use Test::More qw/no_plan/;
+use strict;
+use vars qw/$DARCS/;
+$DARCS = $ENV{DARCS} || "$ENV{PWD}/../darcs";
+
+`rm -rf temp1`;
+`mkdir temp1`;
+chdir 'temp1';
+`$DARCS init`;
+
+###
+
+my $test_name = 'whatsnew works with absolute paths';
+
+`date >> date.t`;
+`darcs add date.t`;
+
+like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
+
+###
+
+chdir '../';
+`rm -rf temp1`;
+ok((!-d 'temp1'), 'temp1 directory was deleted');
+
+
+
+
}

[convert whatsnew-with-absolutes-paths tests to a TODO test.
Mark Stosberg <mark at summersault.com>**20050309025427
 
 TODO tests still 'succeed' when the test fails, thus test should now be OK to
 'apply' to darcs before the code is written to match it. Hopefully, it may even
 be an incentive to help get started on that. 
 
] {
hunk ./tests/whatsnew.pl 15
-###
-
-my $test_name = 'whatsnew works with absolute paths';
-
-`date >> date.t`;
-`darcs add date.t`;
-
-like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
-
-###
+TODO: {
+    local $TODO =  "waiting on code for whatsnews to work with absolute paths";
+    my $test_name = 'whatsnew works with absolute paths';
+    `date >> date.t`;
+    `darcs add date.t`;
+    like(`darcs whatsnew \`pwd\`/date.t 2>&1`, qr/hunk/i, $test_name);
+}
}

[more changelog updates: mention diff, unrecord, unpull and put improvements
Mark Stosberg <mark at summersault.com>**20050309002610] {
hunk ./ChangeLog 7
+  * Performance improvement: Using 'darcs diff' is now exponentially faster
+    when comparing specific files in the working directory to the most recent   
+    copy in the repo. Coded by kannan at cakoose.com. 
+
+  * New feature: darcs put, the easiest way to create a remote repo, symmetric
+    with 'darcs get'. Coded by Josef Svenningsson. 
+
+  * New feature: unrecord and unpull have a more powerful interface similar  to
+    'darcs pull'.  This allows for multiple patch selection. Coded by Tommy
+    Pettersson.
+
}

[RT#143, adding ChangeLog entry
Mark Stosberg <mark at summersault.com>**20050308151004] {
hunk ./ChangeLog 1
- 
+
+  * New feature: darcs tag can now accept the tag name on the command line
+    (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
+
}

[MOre ChangeLog updates
Mark Stosberg <mark at summersault.com>**20050312140805] {
hunk ./ChangeLog 1
+  * Internals: RT#255, several welcome refactors were made to the test suite,
+    including comprehensible shell test script output, improved portability,
+    and easier maintenance. (Michael Schwern).
+  
+  * Fixed: RT#206, involving deleting large files over NFS (Kartik Agaram,
+    David Roundy)
hunk ./ChangeLog 8
+  * Fixed: RT#10, a missed conflict resolution case. More accurately, we
+    noticed at had been fixed some point. A regression test for it was added.
+    (Tomasz Zielonka, Mark Stosberg) 
+  
hunk ./ChangeLog 13
-    (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
+  (RT#143). (Josef Svenningsson, Mark Stosberg, David Roundy)
}

[RT#266 - add ChangeLog entry
Mark Stosberg <mark at summersault.com>**20050319152907] {
hunk ./ChangeLog 1
+  * Fixed: RT#266: Adding a non-existent dir and file gives the expected
+    message now. (Tomasz Zielonka).
+
}

[RT#245 - ChangeLog update and test
Mark Stosberg <mark at summersault.com>**20050319154739] {
hunk ./ChangeLog 1
+  * New Feature: RT#245: Using --look-for-adds with 'whatsnew' implies
+    --summary. This should save some typing for the common case. 
+    (Karel Gardas, Mark Stosberg)
+
hunk ./tests/whatsnew.pl 15
+{
+    my $test_name = 'RT#245 --look-for-adds implies --summary';
+    touch 'look_summary.txt';
+    like( darcs('whatsnew -l'), qr!a ./look_summary.txt!i, $test_name);
+}
+
+
}

[RT#231 - ChangeLog update
Mark Stosberg <mark at summersault.com>**20050319162549] {
hunk ./ChangeLog 1
+  * New Feature: RT#231: darcs gives better feedback now if you try to record
+    nonexistent files or directories. (Karel Gardas, Mark Stosberg)
+
}

[update Changelog for RT#305 - "--patch" removed from 'darcs changes'
Mark Stosberg <mark at summersault.com>**20050331212123] hunk ./ChangeLog 1
+  * Bug fix: RT#305: Removed '--patch' from the 'changes', which conflicted
+  with the new '--patches' option.
+

[Add suffix to version number
Erik Schnetter <schnetter at aei.mpg.de>**20050417172053
 Add a suffix (release candidate #n/release/stable/unstable) etc. to
 the darcs version number.  This suffix should describe which branch
 (stable or unstable) a particulay darcs executable came from, and
 whether it includes additional modifications.
 
 Since there are no global changeset numbers in darcs, this suffix is
 necessarily incomplete and cannot replace --exact-version.
 
 The changes between the states have to be made manually in
 configure.ac.
] {
hunk ./Autoconf.lhs.in 39
-darcs_version = "@DARCS_VERSION@"
+darcs_version = "@DARCS_VERSION@ (@DARCS_VERSION_STATE@)"
hunk ./GNUmakefile 118
-	./darcs dist --dist-name darcs-`./darcs --version`
-	ln -sf darcs-`darcs --version`.tar.gz darcs-latest.tar.gz
+	./darcs dist --dist-name darcs-$(DARCS_VERSION)
+	ln -sf darcs-$(DARCS_VERSION).tar.gz darcs-latest.tar.gz
hunk ./configure.ac 15
+dnl The version string must not contain any spaces.
+dnl Set the version state to any of
+dnl    [release candidate #n]
+dnl    [release]
+dnl    [unstable]
+dnl    [stable]
+
+dnl It is darcs custom to increase the version number not directly
+dnl after a release, but directly before a release candidate is created.
+
hunk ./configure.ac 26
+DARCS_VERSION_STATE=[unstable]
hunk ./configure.ac 28
+AC_SUBST(DARCS_VERSION_STATE)
}

[adjust version suffix for the stable repository
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050420121711] {
hunk ./configure.ac 26
-DARCS_VERSION_STATE=[unstable]
+DARCS_VERSION_STATE=[stable]
}

[update ChangeLog (colorization and escaping, --sendmail-command)
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050424204421] {
hunk ./ChangeLog 43
+
+  * New feature: more control over color and escaping in printed patches,
+    alternative color scheme, escaping of trailing spaces (Tommy Pettersson)
+
+  * New feature: send accepts --sendmail-command that allows to customize the
+    command used for sending patch bundles (Benedikt Schmidt)
}

[bump version number to 1.0.3rc1 and update ChangeLog
Tomasz Zielonka <tomasz.zielonka at gmail.com>**20050426002535] {
hunk ./ChangeLog 1
+  * Performance improvement: Using 'darcs diff' is now exponentially faster
+    when comparing specific files in the working directory to the most recent   
+    copy in the repo. Coded by kannan at cakoose.com. 
+
+  * New feature: darcs put, the easiest way to create a remote repo, symmetric
+    with 'darcs get'. Coded by Josef Svenningsson.
+
+darcs (1.0.3rc1)
+
+ -- Tomasz Zielonka <tomasz.zielonka at gmail.com>  Sun, 24 Apr 2005 22:49:22 +0200
+
hunk ./ChangeLog 44
-  * Performance improvement: Using 'darcs diff' is now exponentially faster
-    when comparing specific files in the working directory to the most recent   
-    copy in the repo. Coded by kannan at cakoose.com. 
-
-  * New feature: darcs put, the easiest way to create a remote repo, symmetric
-    with 'darcs get'. Coded by Josef Svenningsson. 
-
hunk ./ChangeLog 53
+
+  * Fixed: fixed bug manifesting with failed createDirectory (David Roundy)
hunk ./configure.ac 17
-dnl    [release candidate #n]
-dnl    [release]
-dnl    [unstable]
-dnl    [stable]
+dnl    "release candidate #n"
+dnl    "release"
+dnl    "unstable"
+dnl    "stable"
hunk ./configure.ac 25
-DARCS_VERSION=1.0.2
-DARCS_VERSION_STATE=[stable]
+DARCS_VERSION=1.0.3rc1
+DARCS_VERSION_STATE="release candidate 1"
}

Context:

[TAG 1.0.2
David Roundy <droundy at abridgegame.org>**20050204123805] 
Patch bundle hash:
abcc1c9f117815f7dcdd4c8f891b0d3a58816983


More information about the darcs-devel mailing list