# # # patch "ChangeLog" # from [79900a0a7bee9d815c77f6561187cc15947b555a] # to [1fe761def851084b1b8748ee2ca6163eabf4af6b] # # patch "Makefile.am" # from [8cc7674ddf7aa3c512d10a5fe22da5bae32ec73e] # to [a056a379689ed17f2721f38b0720e06e180aa92c] # # patch "NEWS" # from [da39a3ee5e6b4b0d3255bfef95601890afd80709] # to [a9b8cb5b3dc0ec686519bbb81dc1058d30fb1099] # # clear "ChangeLog" # attr "mtn:execute" # ============================================================ --- ChangeLog 79900a0a7bee9d815c77f6561187cc15947b555a +++ ChangeLog 1fe761def851084b1b8748ee2ca6163eabf4af6b @@ -1,89 +1,2 @@ -#!/usr/bin/perl - -use strict; - -my $num=15; -my $db; -my $rev; - -while (@ARGV) { - my $arg = $ARGV[0]; - if ($arg eq "-d") { - shift @ARGV; - $db = shift(@ARGV); - } elsif ($arg eq "-r") { - shift @ARGV; - $rev = shift(@ARGV); - } else { - $num = shift(@ARGV); - } -} - -if (not defined($rev)) { - $rev=`mtn automate get_base_revision_id 2>/dev/null`; - chomp $rev; - $rev=undef if $rev eq ""; -} - -my $mtn="mtn"; -if (defined($db)) { - $mtn = $mtn . " -d $db"; -} -if (not defined($rev) or not defined($db)) { - `mtn status >/dev/null 2>&1`; - die "Both -d and -r must be given if not run inside a workspace." if $?; -} -my $revlister = "$mtn automate ancestors $rev | $mtn automate toposort -@ - | tail -n $num"; -open(my $revs, "-|", $revlister) or die "Cannot get rev list"; -my @revisions; -while(<$revs>) { - unshift(@revisions, $_); -} -close($revs); - -my @certs; -foreach (@revisions) { - open(my $certs, "$mtn ls certs $_ |") or die "Cannot get certs of $_"; - - my %certs; - my $certname; - my $in_value = 0; - my $certval = ""; - while(<$certs>) { - if (/^Name *:/) { - s/^Name *: //; - chomp; - $certname = $_; - } elsif (/^Value *:/) { - $in_value = 1; - s/^Value *: //; - $certval = $_; - } elsif (/^-{4}/) { - $in_value = 0; - $certs{$certname} = $certval; - } elsif ($in_value and / *: /) { - s/^ *: //; - $certval .= $_; - } - } - if ($in_value) { - $certs{$certname} = $certval; - } - close($certs); - push(@certs, \%certs); -} - -for my $revcerts (@certs) { - my $header = $revcerts->{"date"} . " " . $revcerts->{"author"}; - $header =~ s/[\r\n]//g; - my $text = $revcerts->{"changelog"}; - - if ($text =~ /^[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}/) { - ($header, $text) = split(/\n/, $text, 2); - } - - print($header, "\n\n"); - - $text =~ s/^/\t/gm; - print($text, "\n"); -} +Please see NEWS for a short list of changes, or the versioning history for a +more detailed list. ============================================================ --- Makefile.am 8cc7674ddf7aa3c512d10a5fe22da5bae32ec73e +++ Makefile.am a056a379689ed17f2721f38b0720e06e180aa92c @@ -19,11 +19,7 @@ TESTS=test/run-tests.sh TESTS=test/run-tests.sh -EXTRA_DIST = ChangeLog.txt test +EXTRA_DIST = test mostlyclean-local: rm -rf test-dir - -distcleancheck_listfiles = find . -type f -a ! -name ChangeLog.txt -print -ChangeLog.txt: - $(srcdir)/ChangeLog > $@ ============================================================ --- NEWS da39a3ee5e6b4b0d3255bfef95601890afd80709 +++ NEWS a9b8cb5b3dc0ec686519bbb81dc1058d30fb1099 @@ -0,0 +1,24 @@ +Xxx Xxx 99 99:99:99 UTC 2010 + + 0.99 release. + + General + + - This is the first actual release. + + - Usher is a proxy that provides name-based virtual hosting for + monotone. It can proxy connection to remote monotone servers or + even other usher instances, and it can also proxy connections to + managed local servers. These managed monotone instances will be + (re-)started as needed and killed after being idle for too long. + + - The preferred way to dispatch incoming connections is for clients + to use the mtn:// URI syntax as mtn://host/NAME ; the NAME should + match one of the servers defined by the usher and will be used to + dispatch the connection. If you expect to have clients older than + monotone 0.48 you will also need to use either "host" or "pattern" + dispatch. Host dispatch relies on having a separate DNS name for + each server, most likely through a wildcard DNS entry. Pattern + dispatch looks at the initial substring of the client's include + pattern; it relies heavily on branch naming conventions and requires + that all servers behind the usher use the same server key.