[libsvn-notify-mirror-perl] 01/01: Imported Upstream version 0.04000

Salvatore Bonaccorso carnil at debian.org
Sat Oct 12 08:44:54 UTC 2013


This is an automated email from the git hooks/post-receive script.

carnil pushed a commit to annotated tag upstream/0.04000
in repository libsvn-notify-mirror-perl.

commit b337d9f71d9786076871ba5ac7368119c4b41118
Author: Salvatore Bonaccorso <carnil at debian.org>
Date:   Sat Oct 12 10:00:42 2013 +0200

    Imported Upstream version 0.04000
---
 Build.PL                       |   10 +-
 Changes                        |  484 ++++++++++++++++++++++++++++++++++------
 MANIFEST                       |    4 +-
 MANIFEST.SKIP                  |    5 +
 META.json                      |   51 +++++
 META.yml                       |   36 +--
 README                         |    3 +
 SIGNATURE                      |   41 ----
 lib/SVN/Notify/Mirror.pm       |   39 ++--
 lib/SVN/Notify/Mirror/Rsync.pm |    3 +-
 lib/SVN/Notify/Mirror/SSH.pm   |    3 +-
 t/005_shortest_path.t          |   17 ++
 t/coretests.pm                 |    1 +
 13 files changed, 542 insertions(+), 155 deletions(-)

diff --git a/Build.PL b/Build.PL
index 579155b..627d2c6 100644
--- a/Build.PL
+++ b/Build.PL
@@ -7,7 +7,7 @@ my $class = Module::Build->subclass
     code => q{
 	sub ACTION_dist{
 	    my $self = shift;
-	    $self->do_system('my-changelog.pl > Changes');
+	    $self->do_system('hg log -b default --style changelog > Changes');
 	    $self->SUPER::ACTION_dist();
 	}
     }
@@ -17,11 +17,11 @@ my $mb = $class->new
     ( module_name     => 'SVN::Notify::Mirror',
       license         => 'perl',
       dist_author     => 'John Peacock <jpeacock at cpan.org>',
-      sign            => 1,
+      configure_requires => { 'Module::Build' => 0.38 },
       requires        => {
-	  'Module::Build' => 0.2805,
-	  'SVN::Notify'   => 2.70,
-	  'YAML'          => 0.62,
+	  'Module::Build' => 0.38,
+	  'SVN::Notify'   => 2.83,
+	  'YAML'          => 0.81,
       },
       auto_features   => {
 	  ssh_support => { 
diff --git a/Changes b/Changes
index 7ea2cde..119a2ad 100644
--- a/Changes
+++ b/Changes
@@ -1,113 +1,465 @@
-[Changes for 0.037 - 2008-03-02]
+2012-07-04  John Peacock  <john.peacock at havurah-software.org>
 
-Release to CPAN
+	* .hgtags:
+	Tagging version '0.040' using shipit.
+	[d841fdcb122b] [tip]
 
-[Changes for 0.03603 - 2007-05-16]
+	* .shipit, MANIFEST.SKIP:
+	Final release bits related to ShipIt
+	[08ac8b953514] [0.040]
 
-Enabled rsync test to be optional (like ssh tests).
-Added Copyright text.
-Added explicit $VERSION to implementation classes (to match main $VERSION).
+	* .hgignore, Build.PL, MANIFEST.SKIP, README,
+	lib/SVN/Notify/Mirror.pm, lib/SVN/Notify/Mirror/Rsync.pm,
+	lib/SVN/Notify/Mirror/SSH.pm:
+	Prep for release of 0.040 to CPAN
+	[1f9264ef17d5]
 
-[Changes for 0.03602 - 2007-03-14]
+2012-07-04  Salvatore Bonaccorso  <carnil at debian.org>
 
-* --minimal would fail to create new directory if there wasn't also a
-  file modified higher in the tree.
+	* t/coretests.pm:
+	Work with changed output from subversion 1.7 Patch t/corelist.pm to
+	work with changed output of svnnotify. Fix FTBFS "tests failed".
 
-[Changes for 0.03601 - 2007-03-02]
+	Closes: #678791
+	--- t/coretests.pm | 1 + 1 file changed, 1 insertion(+)
+	[b4d0a6f371f3]
 
-* Quick release to fix brokeness in --tag-regex handling.
+2012-07-04  John Peacock  <john.peacock at havurah-software.org>
 
-[Changes for 0.036 - 2007-03-02]
+	* .hgignore, Build.PL, MANIFEST, MANIFEST.SKIP:
+	Finish work to migrate to Mercurial. Eliminate SIGNATURE for now
+	[329152d3aabb]
 
-* Handle multiple targets (i.e. To) which to_regex_map and S::N::Config
-  can produce.
+2009-11-28  convert-repo  <convert-repo>
 
-* Improve and document tunneling of http[s]:// paths.
+	* .hgtags:
+	update tags
+	[450f8073b39a]
 
-[Changes for 0.035 - 2007-01-29]
+2008-12-18  jpeacock  <jpeacock>
 
-* New option '--minimal' to update the smallest containing path at each
-  revision.  Will lead to mixed revision working copies, but is guaranteed
-  to be faster for deep trees.
+	* MANIFEST, lib/SVN/Notify/Mirror.pm, lib/SVN/Notify/Mirror/Rsync.pm,
+	lib/SVN/Notify/Mirror/SSH.pm, t/005_shortest_path.t:
+	Apply patch from JSWARTZ to make shortest_path more robust.
+	[e0e56db793c7]
 
-* All tests run once with and once without '--minimal' except for
-  config-style which has that as a default (since it is a cheap
-  operation).
+2008-05-17  jpeacock  <jpeacock>
 
-[Changes for 0.03403 - 2006-11-21]
+	* README, lib/SVN/Notify/Mirror.pm, lib/SVN/Notify/Mirror/Rsync.pm,
+	lib/SVN/Notify/Mirror/SSH.pm, t/002_config.t.PL:
+	Fix problem with the Module::Build released with Perl 5.10.0
+	[aa3a65796550] [RELEASE_0_038]
 
-* Use lessons learned from testing SVN::Notify::Config about external
-  binaries.  No actual code changes, just test tweaks.
+2008-03-02  jpeacock  <jpeacock>
 
-[Changes for 0.03402 - 2006-11-01]
+	* README:
+	Consistently forget to update README before prep for release.
+	[9ff0afe70294] [RELEASE_0.037]
 
-* More robustness in tests.
+2008-02-27  jpeacock  <jpeacock>
 
-* Don't rely on svnadmin being in the path for testing.
+	* Build.PL, Makefile.PL, lib/SVN/Notify/Mirror.pm,
+	lib/SVN/Notify/Mirror/Rsync.pm, lib/SVN/Notify/Mirror/SSH.pm:
+	New feature to support generic ssh configation stanzas. Suggested by
+	Wolfgang Kohnen <wk at ko-sys.com>
+	[11eb8f0e5f32]
 
-[Changes for 0.034 - 2006-07-07]
+2007-05-16  jpeacock  <jpeacock>
 
-* Quick release to cope with backwards incompatible API changes in
-  SVN::Notify 2.61.
+	* Build.PL, README, lib/SVN/Notify/Mirror.pm,
+	lib/SVN/Notify/Mirror/Rsync.pm, lib/SVN/Notify/Mirror/SSH.pm,
+	t/004_rsynctest.t.PL:
+	Enabled rsync test to be optional (like ssh tests). Added Copyright
+	text. Added explicit $VERSION to implementation classes (to match
+	main $VERSION).
+	[ee2604decbb4] [RELEASE_0.03603]
 
-* Depends on SVN-Notify-Config that is fixed for above as well.
+2007-03-14  jpeacock  <jpeacock>
 
-[Changes for 0.033 - 2006-02-25]
+	* README, lib/SVN/Notify/Mirror.pm:
+	--minimal would fail to create new directory if there wasn't also a
+	file modified higher in the tree.
+	[ca2204191b91] [RELEASE_0.03602]
 
-* Depend on the newly minted SVN::Notify-2.53.
+2007-03-02  jpeacock  <jpeacock>
 
-* Use SVN::Notify->find_exe() to locate the 'svn' binary.
+	* README, lib/SVN/Notify/Mirror.pm, lib/SVN/Notify/Mirror/SSH.pm:
+	Quick release to fix brokeness in --tag-regex handling.
+	[e2c68db35199] [RELEASE_0.03601]
 
-[Changes for 0.032 - 2006-02-24]
+	* README:
+	Ready to release to CPAN.
+	[a56d525f4d88] [RELEASE_0.036]
 
-* Further improvements in making sure that the svn_binary is found.
+	* lib/SVN/Notify/Mirror.pm, lib/SVN/Notify/Mirror/SSH.pm:
+	Handle multiple targets (i.e. To) which to_regex_map and
+	S::N::Config can produce. Also improve tunneling of e.g. http[s]
+	paths.
+	[0b21664f8604]
 
-* Add explicit dependency on SVN::Notify.  Duh.
+2007-01-29  jpeacock  <jpeacock>
 
-* Improve documentation of optional features.
+	* t/005_minimal.t:
+	Don't require standalone test for '--minimal' now.
+	[b1784ec33cba] [RELEASE_0.035]
 
-* Don't hardcode path to svn executable.
+	* lib/SVN/Notify/Mirror.pm, lib/SVN/Notify/Mirror/Rsync.pm,
+	lib/SVN/Notify/Mirror/SSH.pm, t/001_basic.t, t/003_sshtest.t.PL,
+	t/004_rsynctest.t.PL:
+	Replace _get_prefix() with inline call to _cd_run(). Change
+	_cd_run() signature to return list. Change all tests to run both
+	with and without '--minimal'.
+	[56dd8ba41e07]
 
-[Changes for 0.031 - 2006-02-16]
+2007-01-28  jpeacock  <jpeacock>
 
-* Older Subversion clients choke if you give them the repos path when 
-  they weren't expecting it (go figure).
+	* lib/SVN/Notify/Mirror.pm, t/002_config.t.PL, t/005_minimal.t:
+	Support and test for '--minimal' flag. Only works with local
+	mirrors and all config-driven mirrors.
+	[8b584fb7f7b7]
 
-[Changes for 0.03 - 2006-01-03]
+2006-11-23  jpeacock  <jpeacock>
 
-* Non-alpha release to CPAN of working Rsync and SSH subclasses.
+	* MANIFEST:
+	Need to add SIGNATURE to the MANIFEST so that release won't barf.
+	[fdde4bec9cd9]
 
-[Changes for 0.02_09 - 2005-12-29]
+2006-11-21  jpeacock  <jpeacock>
 
-* Re-add Rsync.pm and tests for same.
+	* README, lib/SVN/Notify/Mirror.pm, t/001_basic.t, t/002_config.t.PL,
+	t/coretests.pm:
+	Use lessons learned from testing SVN::Notify::Config about external
+	binaries. No actual code changes, just test tweaks.
+	[bef57e0f11f3] [RELEASE_0.03403, RELEASE_0.3403]
 
-[Changes for 0.02_07 - 2005-12-29]
+2006-11-14  jpeacock  <jpeacock>
 
-* Take Rsync.pm out until design questions are resolved.
+	* Build.PL:
+	Bring Build.PL up to date
+	[cf78e2625eea]
 
-* Split out the SSH and add Rsync subclasses.
+2006-11-01  jpeacock  <jpeacock>
 
-* Complexify the testing regime to handle realworld repositories
-  with multiple projects.
+	* README, lib/SVN/Notify/Mirror.pm, t/001_basic.t:
+	More robustness in tests
+	[0dec4b824ec8] [RELEASE_0.03402, RELEASE_0_03402]
 
-* Rename all internal attributes to use underscore (as this is
-  what YAML does anyways).
+2006-10-31  jpeacock  <jpeacock>
 
-* Working switch case for tags.
+	* MANIFEST, MANIFEST.SKIP:
+	Add MANIFEST.SKIP so that release script is happy
+	[1aac676e7036]
 
-[Changes for 0.02 - 2005-12-03]
+	* t/coretests.pm:
+	ENV overrides find_exev() call
+	[21793c062ea0]
 
-* Implement support for remote mirrors via SSH.
-* Structure to permit intelligent testing.
-* Replace underbar with hyphens in all parameters.
-* Remove dynamically created files from repository.
-* Add dynamic creation of Changes from repos log.
-* Add tests to compare files at each rev.
+	* README, lib/SVN/Notify/Mirror.pm, t/coretests.pm:
+	Don't rely on svnadmin being in the path for testing.
+	[5d8ddea98f78]
 
+2006-07-07  jpeacock  <jpeacock>
 
-[Changes for 0.01 - 2005-09-11]
+	* README:
+	Ready to release to CPAN (now that SVN-Notify-Config is fixed).
+	[ed63e887f7c3] [RELEASE_0.034, RELEASE_0_034]
 
-For some reason, I never added this to the repository before
-releasing to CPAN.  I'm not even sure where I did this
-development now... ;-)
+2006-06-30  jpeacock  <jpeacock>
+
+	* lib/SVN/Notify/Mirror.pm:
+	This should be working but is having some problems
+	[bf3a6a48890e]
+
+	* Build.PL, lib/SVN/Notify/Mirror.pm:
+	Quick release to cope with backwards incompatible API changes in
+	SVN::Notify 2.61. Don't release until POD is rewritten and I hear
+	from Audrey Tang about SVN::Notify::Config fixes (to add to README).
+	[0023caf4af26]
+
+2006-02-25  jpeacock  <jpeacock>
+
+	* Build.PL, lib/SVN/Notify/Mirror.pm:
+	* Build.PL Depend on the newly minted SVN::Notify-2.53.
+
+	* lib/SVN/Notify/Mirror.pm Use SVN::Notify->find_exe() to locate
+	the 'svn' binary.
+	[fb7e6c8b77bd] [RELEASE_0.033, RELEASE_0_033]
+
+2006-02-24  jpeacock  <jpeacock>
+
+	* lib/SVN/Notify/Mirror.pm:
+	Further improvements in making sure that the svn_binary is found.
+	[78ab8a18cea4] [RELEASE_0.032, RELEASE_0_032]
+
+2006-02-17  jpeacock  <jpeacock>
+
+	* Build.PL, README, lib/SVN/Notify/Mirror.pm:
+	* Build.PL Add explicit dependency on SVN::Notify. Duh.
+
+	* README lib/SVN/Notify/Mirror.pm Improve documentation of
+	optional features.
+	[924d7e47475f]
+
+	* README, lib/SVN/Notify/Mirror.pm:
+	Don't hardcode path to svn executable.
+	[2ee8a722bf22]
+
+2006-02-16  jpeacock  <jpeacock>
+
+	* README, lib/SVN/Notify/Mirror.pm, t/coretests.pm:
+	Older Subversion clients choke if you give them the repos path when
+	they weren't expecting it (go figure).
+	[03b026173f01] [RELEASE_0.031, RELEASE_0_031]
+
+2006-01-03  jpeacock  <jpeacock>
+
+	* README, lib/SVN/Notify/Mirror.pm:
+	Release 0.03 to CPAN.
+
+	* README Clarify a few points.
+
+	* lib/SVN/Notify/Mirror.pm Bump the $VERSION.
+	[56a571b18def] [RELEASE_0.03, RELEASE_0_03]
+
+2005-12-29  jpeacock  <jpeacock>
+
+	* lib/SVN/Notify/Mirror/Rsync.pm:
+	One last file to add.
+
+	* lib/SVN/Notify/Mirror/Rsync.pm Forgot to add this back to the
+	repository in its current form.
+	[7c4ec8ac2657] [RELEASE_0.02_09, RELEASE_0_02_09]
+
+	* MANIFEST:
+	Nearly forgot to add files to the MANIFEST.
+
+	* MANIFEST Add Rsync.pm and tests for same.
+	[95428e3362bb]
+
+	* Build.PL, README, lib/SVN/Notify/Mirror.pm, t/004_rsynctest.t.PL,
+	t/coretests.pm:
+	* Build.PL Add support structure for Rsync class.
+
+	* README Simplify and discuss features that have changed.
+
+	* lib/SVN/Notify/Mirror.pm Update $VERSION. Add POD describing
+	tag-regex option.
+
+	* t/coretests.pm Replicate wc_map structure for Rsync tests.
+
+	* t/004_rsynctest.t.PL New test for Rsync transport method.
+	[a0fca6f6646b]
+
+	* MANIFEST, README, lib/SVN/Notify/Mirror.pm,
+	lib/SVN/Notify/Mirror/Rsync.pm, t/coretests.pm, t/survey_repos:
+	Ready to release alpha code to CPAN.
+
+	* MANIFEST Need to add new file or it doesn't get included in
+	tar.
+
+	* README Mention Mirror::SSH in example.
+
+	* lib/SVN/Notify/Mirror/Rsync.pm Take this out until design
+	questions are resolved.
+
+	* lib/SVN/Notify/Mirror.pm Bump $VERSION and standardize
+	whitespace.
+
+	* t/coretests.pm Tweak $changes slightly to test empty updates,
+	too.
+
+	* t/survey_repos First pass at improving code to autogenerate
+	test cases.
+	[18419d75ce5c] [RELEASE_0.02_07, RELEASE_0_02_07]
+
+2005-12-28  jpeacock  <jpeacock>
+
+	* lib/SVN/Notify/Mirror.pm, lib/SVN/Notify/Mirror/Rsync.pm,
+	lib/SVN/Notify/Mirror/SSH.pm, t/002_config.t.PL, t/coretests.pm:
+	Finally have tests succeeding 100% (not testing Rsync yet).
+
+	* t/coretests.pm Rework test framework to only test the right
+	things at the right time.
+
+	* t/002_config.t.PL Change test to call SVN::Notify::Mirror::SSH
+	directly.
+
+	* lib/SVN/Notify/Mirror.pm Add compatibility for SSH call for
+	next release.
+
+	* lib/SVN/Notify/Mirror/SSH.pm
+	* lib/SVN/Notify/Mirror/Rsync.pm Use parent module's $VERSION (to
+	each maintainence).
+	[15ae10791c6f]
+
+	* lib/SVN/Notify/Mirror.pm, lib/SVN/Notify/Mirror/Rsync.pm,
+	lib/SVN/Notify/Mirror/SSH.pm, t/coretests.pm:
+	Split out the SSH and add Rsync subclasses (tests still not
+	working).
+
+	* t/coretests.pm More tweaks to test framework but still no
+	solution.
+
+	* lib/SVN/Notify/Mirror.pm Remove SSH code and place in seperate
+	file. Deprecate using SSH from parent module.
+
+	* lib/SVN/Notify/Mirror/SSH.pm Completely working subclass based
+	on code stripped from parent.
+
+	* lib/SVN/Notify/Mirror/Rsync.pm Skeleton subclass (not tested
+	at all). Suggested by Guillaume Rousse
+	<Guillaume.Rousse at inria.fr>
+	[5b2546e432f3]
+
+2005-12-27  jpeacock  <jpeacock>
+
+	* lib/SVN/Notify/Mirror.pm, t/002_config.t.PL, t/coretests.pm:
+	Tests 001_basic.t and 003_sshtest.t pass 100% but 002_config.t fails
+	due to out-of-order evaluation.
+
+	* lib/SVN/Notify/Mirror.pm Simplify non-switch path. Chop
+	URL from wc and source on /tags/ then stitch together. Echo the
+	command run in the error case.
+
+	* t/coretests.pm Working test framework to loop over each WC in
+	turn. _compare_directories() stubbed out for now.
+	[4a321c1b820c]
+
+	* t/coretests.pm, t/test-repos.dump:
+	Interim commit (tests still fail).
+
+	* t/coretests.pm Add wc_map to try and make it easier to keep
+	track of what wc contains what path.
+
+	* t/test-repos.dump Actually didn't save the correct dumpfile
+	last time.
+	[fd7fd720710c]
+
+2005-12-26  jpeacock  <jpeacock>
+
+	* t/coretests.pm, t/recreate, t/survey_repos, t/test-repos.dump:
+	Complexify the testing regime to handle realworld repositories with
+	multiple projects. Testing does not work yet.
+
+	* t/recreate t/survey_repos Private scripts to recreate the
+	repository and to survey the repository structure and create the
+	appropriate test structure within coretests.pm.
+
+	* t/coretests.pm Partially updated with new repository structure
+	(tests fail).
+
+	* t/test-repos.dump New repository dump (not really related to
+	previous dump).
+	[efb3da119271]
+
+2005-12-24  jpeacock  <jpeacock>
+
+	* lib/SVN/Notify/Mirror.pm, t/002_config.t.PL:
+	Completely working switch feature.
+
+	* lib/SVN/Notify/Mirror.pm Modularize _cd_run and _ssh_run to
+	work exactly the same way. Run `svn info` on target directory to
+	get URL.
+
+	* t/002_config.t.PL Add 'tags/' target to both local and SSH
+	configfile.
+	[71f61c612931]
+
+2005-12-23  jpeacock  <jpeacock>
+
+	* MANIFEST, lib/SVN/Notify/Mirror.pm, t/002_config.t.PL,
+	t/coretests.pm, t/test-repos.dump:
+	Working switch case for tags, but only on local dir.
+
+	* MANIFEST Need to have Makefile.PL so `release` doesn't get
+	confused
+
+	* lib/SVN/Notify/Mirror.pm Rename all internal attributes to use
+	underscore (as this is what YAML does anyways. Add
+	'switch' case for tags.
+
+	* t/002_config.t.PL Add stanza for 'tags/' path.
+
+	* t/coretests.pm Add new wc-tag directory. Add tests for
+	switch case in tags.
+
+	* t/test-repos.dump Append two tags to repos dump.
+	[35702240e9c4]
+
+2005-12-03  jpeacock  <jpeacock>
+
+	* Makefile.PL:
+	Need compatibility Makefile.PL so release works
+	[f1fd53a9b444] [RELEASE_0.02, RELEASE_0_02]
+
+	* Build.PL, README, lib/SVN/Notify/Mirror.pm:
+	Final changes for 0.02 release
+	[c8b90e39f4d8]
+
+2005-11-23  jpeacock  <jpeacock>
+
+	* Build.PL, Changes, META.yml, lib/SVN/Notify/Mirror.pm,
+	t/coretests.pm:
+	Remove dynamically created files from repository. Add dynamic
+	creation of Changes from repos log. Add tests to compare files at
+	each rev. Ready for next CPAN beta release.
+	[8686fe050e5e]
+
+	* Build.PL, t/002_config.t.PL, t/coretests.pm:
+	All three testfiles working (though not optimal)
+	[812679e3b767]
+
+2005-11-21  jpeacock  <jpeacock>
+
+	* Build.PL, MANIFEST, t/001_basic.t, t/002_config.t.PL,
+	t/003_sshtest.t.PL, t/coretests.pm, t/test-repos.dump:
+	Working 001 and 003 tests. 002 test does something, but need more
+	robust way to check it.
+	[26ecf686b508]
+
+	* lib/SVN/Notify/Mirror.pm:
+	Fix stupid global replace errors.
+	[6f227b6218d5]
+
+2005-11-20  jpeacock  <jpeacock>
+
+	* Build.PL, t/001_basic.t, t/001_basic.t.PL:
+	Always run the basic test without extracting files
+	[65409e878245]
+
+	* Build.PL, MANIFEST, t/001_basic.t.PL, t/003_sshtest.t.PL,
+	t/coretests.pm:
+	First cut at adding tests
+	[1395aa2e779c]
+
+	* lib/SVN/Notify/Mirror.pm:
+	Replace underbar with hyphens in all parameters
+	[3a5e6ade89c9]
+
+2005-11-18  jpeacock  <jpeacock>
+
+	* Build.PL, MANIFEST, META.yml, README, lib/SVN/Notify/Mirror.pm,
+	t/001_basic.t.PL, t/002_config.t.PL, t/003_sshtest.t.PL:
+	Structure to permit intelligent testing
+	[a4eaa49895c6]
+
+2005-11-16  jpeacock  <jpeacock>
+
+	* Build.PL, META.yml, lib/SVN/Notify/Mirror.pm:
+	r434 at dsl092-168-024: jpeacock | 2005-11-15 10:41:18 -0500 Prepare
+	to add SSH support. r435 at dsl092-168-024: jpeacock | 2005-11-16
+	16:49:43 -0500 Implement support for remote mirrors via ssh
+	[31e903eb40ae]
+
+2005-09-11  jpeacock  <jpeacock>
+
+	* Build.PL, Changes, LICENSE, MANIFEST, META.yml, README, Todo,
+	lib/SVN/Notify/Mirror.pm:
+	For some reason, I never added this to the repository before
+	releasing to CPAN. I'm not even sure where I did this development
+	now... ;-)
+	[4c21c404dd91] [0.01, RELEASE_0.01]
+
+	* Directory for svk import.
+	[0634bc2c1ece]
 
diff --git a/MANIFEST b/MANIFEST
index 454cb6e..3ced347 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -9,12 +9,12 @@ MANIFEST
 MANIFEST.SKIP
 META.yml
 README
-SIGNATURE
 t/001_basic.t
 t/002_config.t.PL
 t/003_sshtest.t.PL
 t/004_rsynctest.t.PL
+t/005_shortest_path.t
 t/coretests.pm
 t/test-repos.dump
 Todo
-SIGNATURE    Added here by Module::Build
+META.json
diff --git a/MANIFEST.SKIP b/MANIFEST.SKIP
index 712d20d..bf30c6c 100644
--- a/MANIFEST.SKIP
+++ b/MANIFEST.SKIP
@@ -1,12 +1,17 @@
 \~$
+.hg
 .gz$
 .bak$
 .diff$
 .patch$
+.orig$
 .lwpcookies
 .releaserc
+.shipit
 _build
 ^Build$
 ^Makefile$
+t/002_config
 t/recreate
 t/survey_repos
+t/testconfig
diff --git a/META.json b/META.json
new file mode 100644
index 0000000..64e3876
--- /dev/null
+++ b/META.json
@@ -0,0 +1,51 @@
+{
+   "abstract" : "Keep a mirrored working copy of a repository path",
+   "author" : [
+      "John Peacock <jpeacock at cpan.org>"
+   ],
+   "dynamic_config" : 1,
+   "generated_by" : "Module::Build version 0.38, CPAN::Meta::Converter version 2.112150",
+   "license" : [
+      "perl_5"
+   ],
+   "meta-spec" : {
+      "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
+      "version" : "2"
+   },
+   "name" : "SVN-Notify-Mirror",
+   "prereqs" : {
+      "configure" : {
+         "requires" : {
+            "Module::Build" : "0.38"
+         }
+      },
+      "runtime" : {
+         "requires" : {
+            "Module::Build" : "0.38",
+            "SVN::Notify" : "2.83",
+            "YAML" : "0.81"
+         }
+      }
+   },
+   "provides" : {
+      "SVN::Notify::Mirror" : {
+         "file" : "lib/SVN/Notify/Mirror.pm",
+         "version" : "0.040"
+      },
+      "SVN::Notify::Mirror::Rsync" : {
+         "file" : "lib/SVN/Notify/Mirror/Rsync.pm",
+         "version" : "0.040"
+      },
+      "SVN::Notify::Mirror::SSH" : {
+         "file" : "lib/SVN/Notify/Mirror/SSH.pm",
+         "version" : "0.040"
+      }
+   },
+   "release_status" : "stable",
+   "resources" : {
+      "license" : [
+         "http://dev.perl.org/licenses/"
+      ]
+   },
+   "version" : "0.040"
+}
diff --git a/META.yml b/META.yml
index b0b214d..e139bf5 100644
--- a/META.yml
+++ b/META.yml
@@ -1,27 +1,31 @@
 ---
-name: SVN-Notify-Mirror
-version: 0.038
+abstract: 'Keep a mirrored working copy of a repository path'
 author:
   - 'John Peacock <jpeacock at cpan.org>'
-abstract: Keep a mirrored working copy of a repository path
+build_requires: {}
+configure_requires:
+  Module::Build: 0.38
+dynamic_config: 1
+generated_by: 'Module::Build version 0.38, CPAN::Meta::Converter version 2.112150'
 license: perl
-resources:
-  license: http://dev.perl.org/licenses/
-requires:
-  Module::Build: 0.2805
-  SVN::Notify: 2.7
-  YAML: 0.62
+meta-spec:
+  url: http://module-build.sourceforge.net/META-spec-v1.4.html
+  version: 1.4
+name: SVN-Notify-Mirror
 provides:
   SVN::Notify::Mirror:
     file: lib/SVN/Notify/Mirror.pm
-    version: 0.038
+    version: 0.040
   SVN::Notify::Mirror::Rsync:
     file: lib/SVN/Notify/Mirror/Rsync.pm
-    version: 0.038
+    version: 0.040
   SVN::Notify::Mirror::SSH:
     file: lib/SVN/Notify/Mirror/SSH.pm
-    version: 0.038
-generated_by: Module::Build version 0.2808
-meta-spec:
-  url: http://module-build.sourceforge.net/META-spec-v1.2.html
-  version: 1.2
+    version: 0.040
+requires:
+  Module::Build: 0.38
+  SVN::Notify: 2.83
+  YAML: 0.81
+resources:
+  license: http://dev.perl.org/licenses/
+version: 0.040
diff --git a/README b/README
index f5e2d82..f709e7e 100644
--- a/README
+++ b/README
@@ -7,6 +7,9 @@ DESCRIPTION
     made to the repository. This directory can either be on the same box as
     the repository itself, or it can be remote.
 
+    NEW in version 0.040
+    Bugfix for Subversion 1.7.x output (test changes only)
+
     NEW in version 0.038
     Bugfix for Module::Build and Perl 5.10.0
 
diff --git a/SIGNATURE b/SIGNATURE
deleted file mode 100644
index 4fda97b..0000000
--- a/SIGNATURE
+++ /dev/null
@@ -1,41 +0,0 @@
-This file contains message digests of all files listed in MANIFEST,
-signed via the Module::Signature module, version 0.55.
-
-To verify the content in this distribution, first make sure you have
-Module::Signature installed, then type:
-
-    % cpansign -v
-
-It will check each file's integrity, as well as the signature's
-validity.  If "==> Signature verified OK! <==" is not displayed,
-the distribution may already have been compromised, and you should
-not run its Makefile.PL or Build.PL.
-
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-SHA1 fe157888bb9d9b4a9161122834bb3ed0c1564cb7 Build.PL
-SHA1 7b7d7abdbe3bd8a2ecec574935a14d403959b82a Changes
-SHA1 f235ba4160673bcb7c9d58c2f09dbc7fc0efadea LICENSE
-SHA1 39eeb03ee23fb784d0d088dbb7d3d6a9b4236db7 MANIFEST
-SHA1 7281666fe4dbb3f1cccd4d64a3a56930c8b3ab29 MANIFEST.SKIP
-SHA1 ec3c922af9dec3cc44b16b764abf98bfd63af5d7 META.yml
-SHA1 96dc70ff02cd5002108c56f4579806e68a1a0452 Makefile.PL
-SHA1 1e7e70275b21edaa06b6c13ec80532af3e56899d README
-SHA1 7e5e3601384ff724512e4eec5540f4e1577a850d Todo
-SHA1 2c417aacb1d92c6985c6ab56515c0faf97d66c4b lib/SVN/Notify/Mirror.pm
-SHA1 551d2d09d8320b28de750ccc51dd1d22e27276e8 lib/SVN/Notify/Mirror/Rsync.pm
-SHA1 8f192a33183346f5ad6280fb0bb84759c85653e3 lib/SVN/Notify/Mirror/SSH.pm
-SHA1 2828d9959617fc9c1369a729c30fe0b76e7d05ff t/001_basic.t
-SHA1 0152c628dce1442d18e319700101d7157c8f921a t/002_config.t.PL
-SHA1 eeca73e531262ec5152610fff1d59f2e1a503601 t/003_sshtest.t.PL
-SHA1 21452b84efe89d7f35cb2ae742807e7e0718fed0 t/004_rsynctest.t.PL
-SHA1 9417ac53a16259e5cc589300f2c206cd07fe39d4 t/coretests.pm
-SHA1 af719d83aa699b230d2f1853f2b4e4e94644ad3e t/test-repos.dump
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.4-svn0 (GNU/Linux)
-
-iD8DBQFILjDtimg5mLGPahYRAoBcAJ4sq15iUY4iomdux+aVyGRXT4s/+gCeNO5m
-zxZr8SXK1A/ZKSH7dopmLZ8=
-=qST6
------END PGP SIGNATURE-----
diff --git a/lib/SVN/Notify/Mirror.pm b/lib/SVN/Notify/Mirror.pm
index 0519f44..ab23310 100644
--- a/lib/SVN/Notify/Mirror.pm
+++ b/lib/SVN/Notify/Mirror.pm
@@ -5,7 +5,8 @@ use base qw/SVN::Notify/;
 use strict;
 
 use vars qw ($VERSION);
-$VERSION = 0.038;
+$VERSION = '0.040';
+$VERSION = eval $VERSION;
 
 __PACKAGE__->register_attributes(
     'ssh_host'     => 'ssh-host=s',
@@ -101,6 +102,7 @@ sub _cd_run {
     my ($self, $path, $binary, $command, @args) = @_;
     my @message;
     my $cmd ="$binary $command " . join(" ", at args);
+    $self->_dbpnt("running 'cd $path; $cmd'") if $self->{verbose} > 1;
 
     chdir ($path) or die "Couldn't CD to $path: $!";
 
@@ -115,29 +117,20 @@ sub _cd_run {
 }
 
 sub _shortest_path {
-    my @dirs = @_;
-    my @shortest;
-
-DIR: foreach my $thisdir (@dirs) {
-	my @this = split "/", $thisdir;
-	pop @this; # either remove the filename or the last directory entry
-	unless (@shortest) {
-	    # if we don't have anything yet
-	    @shortest = @this;
-	    next DIR;
-	}
-	if ( $#shortest > $#this ) {
-	    # swap the shorter path around
-	    my @temp = @shortest;
-	    @shortest = @this;
-	    @this = @temp;
-	}
-	while ( $shortest[$#shortest] ne $this[$#shortest] ) {
-	    # keep removing the last term until we match
-	    pop @shortest;
-	}
+    my @dirs = grep { /\S/ } @_;
+
+    # Set shortest_path to first dir
+    my $shortest_path = shift(@dirs) || '';
+
+    # Find common prefix between each dir and shortest_path
+    foreach my $dir (@dirs) {
+        chop $shortest_path while (index($dir, $shortest_path) != 0);
     }
-    return join "/", @shortest;
+
+    # Remove final / and anything after
+    $shortest_path =~ s{/[^/]*?$}{};
+
+    return $shortest_path;
 }
 
 1;
diff --git a/lib/SVN/Notify/Mirror/Rsync.pm b/lib/SVN/Notify/Mirror/Rsync.pm
index e0b562d..588660a 100644
--- a/lib/SVN/Notify/Mirror/Rsync.pm
+++ b/lib/SVN/Notify/Mirror/Rsync.pm
@@ -7,7 +7,8 @@ use strict;
 BEGIN {
     use vars qw ($VERSION);
     use base qw(SVN::Notify::Mirror);
-    $VERSION = 0.038;
+    $VERSION = '0.040';
+    $VERSION = eval $VERSION;
 }
 
 __PACKAGE__->register_attributes(
diff --git a/lib/SVN/Notify/Mirror/SSH.pm b/lib/SVN/Notify/Mirror/SSH.pm
index 17640cb..f354dad 100644
--- a/lib/SVN/Notify/Mirror/SSH.pm
+++ b/lib/SVN/Notify/Mirror/SSH.pm
@@ -6,7 +6,8 @@ use strict;
 BEGIN {
     use vars qw ($VERSION);
     use base qw(SVN::Notify::Mirror);
-    $VERSION = 0.038;
+    $VERSION = '0.040';
+    $VERSION = eval $VERSION;
 }
 
 __PACKAGE__->register_attributes(
diff --git a/t/005_shortest_path.t b/t/005_shortest_path.t
new file mode 100644
index 0000000..ff6092c
--- /dev/null
+++ b/t/005_shortest_path.t
@@ -0,0 +1,17 @@
+#!/usr/bin/perl 
+require SVN::Notify::Mirror;
+use Test::More tests => 12;
+
+sub shortest {
+    my ( $dirs, $expected ) = @_;
+
+    is(SVN::Notify::Mirror::_shortest_path(@$dirs), $expected);
+    is(SVN::Notify::Mirror::_shortest_path(reverse(@$dirs)), $expected);
+}
+
+shortest(['/foo/bar', '/foo/baz', '/foo/blargh'], '/foo');
+shortest(['/foo/bar', '/foo/bar'], '/foo');
+shortest(['/foo/bar'], '/foo');
+shortest(['/foo/bar/a', '/foo/bar/b', '/blar/blagh'], '');
+shortest(['/'], '');
+shortest(['', '/foo/bar', '', '/foo/baz'], '/foo');
diff --git a/t/coretests.pm b/t/coretests.pm
index 0be09e2..f167eeb 100644
--- a/t/coretests.pm
+++ b/t/coretests.pm
@@ -178,6 +178,7 @@ sub _test {
     open $TESTER, '-|', _build_command($command, %args);
     while (<$TESTER>) {
 	chomp;
+	next if ( /^Updating '.+':/ );
 	if ( /^At revision (\d+)\./ ) {
 	    ok ( $1 == $args{revision} , "No changes in $prefix at revision: "
 	    	. $args{revision} );

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libsvn-notify-mirror-perl.git



More information about the Pkg-perl-cvs-commits mailing list