diff options
author | Russ Allbery <rra@cpan.org> | 2022-01-19 20:56:05 -0800 |
---|---|---|
committer | Russ Allbery <rra@cpan.org> | 2022-01-19 20:56:05 -0800 |
commit | 13e3dad9b573c16ed25535574b37bea52f469b6d (patch) | |
tree | 248812be7b3a6048ce1ab4c7e06b3df7cd6b1b1c | |
parent | 9efafd60f2dcfdad14e21873c51e99068ee4e7d0 (diff) | |
parent | c7e9e66ae14206f8b42015600839eb492410980d (diff) |
New upstream version 7.01
-rw-r--r-- | Changes | 13 | ||||
-rw-r--r-- | META.json | 30 | ||||
-rw-r--r-- | META.yml | 30 | ||||
-rw-r--r-- | README | 6 | ||||
-rw-r--r-- | README.md | 4 | ||||
-rw-r--r-- | docs/docknot.yaml | 8 | ||||
-rw-r--r-- | lib/App/DocKnot.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Command.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Config.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Dist.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Generate.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Release.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Spin.pm | 12 | ||||
-rw-r--r-- | lib/App/DocKnot/Spin/Pointer.pm | 3 | ||||
-rw-r--r-- | lib/App/DocKnot/Spin/RSS.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Spin/Sitemap.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Spin/Thread.pm | 4 | ||||
-rw-r--r-- | lib/App/DocKnot/Spin/Versions.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Update.pm | 2 | ||||
-rw-r--r-- | lib/App/DocKnot/Util.pm | 2 | ||||
-rwxr-xr-x | t/cli/generate.t | 8 | ||||
-rw-r--r-- | t/data/generate/docknot/output/thread | 10 | ||||
-rwxr-xr-x | t/data/regenerate-data | 4 | ||||
-rw-r--r-- | t/data/spin/output/usefor/index.html | 2 | ||||
-rwxr-xr-x | t/docs/spdx-license.t | 4 | ||||
-rwxr-xr-x | t/update/spin.t | 22 |
26 files changed, 100 insertions, 82 deletions
@@ -1,5 +1,18 @@ Revision history for DocKnot +7.01 - 2022-01-19 + + - Correctly handle Unicode output from commands run by pointers and from + POD processing by Pod::Thread. Previous versions since 6.01 were + double-encoding. Thanks to Julien ÉLIE for the report. + + - Follow symlinks to ordinary files in docknot spin, just not + directories. The Path::Iterator::Rule conversion in 6.01 broke copying + of files referenced by symlink. + + - The \size spin always used 1024-based units. It now correctly uses the + KiB, MiB, etc. abbreviations to match. + 7.00 - 2022-01-17 - Various module APIs now take Path::Tiny objects instead of string @@ -53,59 +53,59 @@ "provides" : { "App::DocKnot" : { "file" : "lib/App/DocKnot.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Command" : { "file" : "lib/App/DocKnot/Command.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Config" : { "file" : "lib/App/DocKnot/Config.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Dist" : { "file" : "lib/App/DocKnot/Dist.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Generate" : { "file" : "lib/App/DocKnot/Generate.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Release" : { "file" : "lib/App/DocKnot/Release.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Spin" : { "file" : "lib/App/DocKnot/Spin.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Spin::Pointer" : { "file" : "lib/App/DocKnot/Spin/Pointer.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Spin::RSS" : { "file" : "lib/App/DocKnot/Spin/RSS.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Spin::Sitemap" : { "file" : "lib/App/DocKnot/Spin/Sitemap.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Spin::Thread" : { "file" : "lib/App/DocKnot/Spin/Thread.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Spin::Versions" : { "file" : "lib/App/DocKnot/Spin/Versions.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Update" : { "file" : "lib/App/DocKnot/Update.pm", - "version" : "7.00" + "version" : "7.01" }, "App::DocKnot::Util" : { "file" : "lib/App/DocKnot/Util.pm", - "version" : "7.00" + "version" : "7.01" } }, "release_status" : "stable", @@ -123,6 +123,6 @@ "web" : "https://github.com/rra/docknot" } }, - "version" : "7.00", + "version" : "7.01", "x_serialization_backend" : "JSON::PP version 4.04" } @@ -17,46 +17,46 @@ name: App-DocKnot provides: App::DocKnot: file: lib/App/DocKnot.pm - version: '7.00' + version: '7.01' App::DocKnot::Command: file: lib/App/DocKnot/Command.pm - version: '7.00' + version: '7.01' App::DocKnot::Config: file: lib/App/DocKnot/Config.pm - version: '7.00' + version: '7.01' App::DocKnot::Dist: file: lib/App/DocKnot/Dist.pm - version: '7.00' + version: '7.01' App::DocKnot::Generate: file: lib/App/DocKnot/Generate.pm - version: '7.00' + version: '7.01' App::DocKnot::Release: file: lib/App/DocKnot/Release.pm - version: '7.00' + version: '7.01' App::DocKnot::Spin: file: lib/App/DocKnot/Spin.pm - version: '7.00' + version: '7.01' App::DocKnot::Spin::Pointer: file: lib/App/DocKnot/Spin/Pointer.pm - version: '7.00' + version: '7.01' App::DocKnot::Spin::RSS: file: lib/App/DocKnot/Spin/RSS.pm - version: '7.00' + version: '7.01' App::DocKnot::Spin::Sitemap: file: lib/App/DocKnot/Spin/Sitemap.pm - version: '7.00' + version: '7.01' App::DocKnot::Spin::Thread: file: lib/App/DocKnot/Spin/Thread.pm - version: '7.00' + version: '7.01' App::DocKnot::Spin::Versions: file: lib/App/DocKnot/Spin/Versions.pm - version: '7.00' + version: '7.01' App::DocKnot::Update: file: lib/App/DocKnot/Update.pm - version: '7.00' + version: '7.01' App::DocKnot::Util: file: lib/App/DocKnot/Util.pm - version: '7.00' + version: '7.01' requires: Date::Parse: '0' File::BaseDir: '0' @@ -83,5 +83,5 @@ resources: homepage: https://www.eyrie.org/~eagle/software/docknot license: http://www.opensource.org/licenses/mit-license.php repository: https://github.com/rra/docknot.git -version: '7.00' +version: '7.01' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' @@ -1,4 +1,4 @@ - DocKnot 7.00 + DocKnot 7.01 (Static web site and documentation generator) Maintained by Russ Allbery <rra@cpan.org> @@ -145,11 +145,11 @@ SOURCE REPOSITORY or by cloning the repository at: - https://git.eyrie.org/git/devel/docknot.git + https://git.eyrie.org/git/web/docknot.git or view the repository via the web at: - https://git.eyrie.org/?p=devel/docknot.git + https://git.eyrie.org/?p=web/docknot.git The eyrie.org repository is the canonical one, maintained by the author, but using GitHub is probably more convenient for most purposes. Pull @@ -147,10 +147,10 @@ couple of months. DocKnot is maintained using Git. You can access the current source on [GitHub](https://github.com/rra/docknot) or by cloning the repository at: -https://git.eyrie.org/git/devel/docknot.git +https://git.eyrie.org/git/web/docknot.git or [view the repository on the -web](https://git.eyrie.org/?p=devel/docknot.git). +web](https://git.eyrie.org/?p=web/docknot.git). The eyrie.org repository is the canonical one, maintained by the author, but using GitHub is probably more convenient for most purposes. Pull diff --git a/docs/docknot.yaml b/docs/docknot.yaml index 4f84fb9..3b35642 100644 --- a/docs/docknot.yaml +++ b/docs/docknot.yaml @@ -15,7 +15,7 @@ format: v1 name: DocKnot maintainer: Russ Allbery <rra@cpan.org> -version: '7.00' +version: '7.01' synopsis: Static web site and documentation generator license: @@ -33,7 +33,7 @@ distribution: package: docknot summary: | DocKnot is packaged in Debian 11 (bullseye) and later as docknot. - section: devel + section: web tarname: App-DocKnot version: docknot support: @@ -41,12 +41,12 @@ support: github: rra/docknot web: https://www.eyrie.org/~eagle/software/docknot/ vcs: - browse: https://git.eyrie.org/?p=devel/docknot.git + browse: https://git.eyrie.org/?p=web/docknot.git github: rra/docknot status: workflow: build type: Git - url: https://git.eyrie.org/git/devel/docknot.git + url: https://git.eyrie.org/git/web/docknot.git quote: author: Murphy's Fourth Corollary diff --git a/lib/App/DocKnot.pm b/lib/App/DocKnot.pm index 947b9d2..d4c2449 100644 --- a/lib/App/DocKnot.pm +++ b/lib/App/DocKnot.pm @@ -11,7 +11,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot 7.00; +package App::DocKnot 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Command.pm b/lib/App/DocKnot/Command.pm index a0fa90c..3992081 100644 --- a/lib/App/DocKnot/Command.pm +++ b/lib/App/DocKnot/Command.pm @@ -10,7 +10,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Command 7.00; +package App::DocKnot::Command 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Config.pm b/lib/App/DocKnot/Config.pm index 597e6cb..05fff02 100644 --- a/lib/App/DocKnot/Config.pm +++ b/lib/App/DocKnot/Config.pm @@ -9,7 +9,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Config 7.00; +package App::DocKnot::Config 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Dist.pm b/lib/App/DocKnot/Dist.pm index 585d243..8cdf203 100644 --- a/lib/App/DocKnot/Dist.pm +++ b/lib/App/DocKnot/Dist.pm @@ -10,7 +10,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Dist 7.00; +package App::DocKnot::Dist 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Generate.pm b/lib/App/DocKnot/Generate.pm index 72eb686..c195622 100644 --- a/lib/App/DocKnot/Generate.pm +++ b/lib/App/DocKnot/Generate.pm @@ -10,7 +10,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Generate 7.00; +package App::DocKnot::Generate 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Release.pm b/lib/App/DocKnot/Release.pm index b118281..1634ddb 100644 --- a/lib/App/DocKnot/Release.pm +++ b/lib/App/DocKnot/Release.pm @@ -10,7 +10,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Release 7.00; +package App::DocKnot::Release 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Spin.pm b/lib/App/DocKnot/Spin.pm index f7a5978..c461d61 100644 --- a/lib/App/DocKnot/Spin.pm +++ b/lib/App/DocKnot/Spin.pm @@ -11,7 +11,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Spin 7.00; +package App::DocKnot::Spin 7.01; use 5.024; use autodie; @@ -23,6 +23,7 @@ use App::DocKnot::Spin::Sitemap; use App::DocKnot::Spin::Thread; use App::DocKnot::Spin::Versions; use App::DocKnot::Util qw(is_newer print_checked print_fh); +use Encode qw(decode); use Git::Repository (); use IPC::System::Simple qw(capture); use Path::Iterator::Rule (); @@ -186,6 +187,7 @@ sub _cl2xhtml { my ($self, $source, $output, $options, $style) = @_; $style ||= $self->{style_url} . 'changelog.css'; my @page = capture("cl2xhtml $options -s $style $source"); + @page = map { decode('utf-8', $_) } @page; my $footer = sub { my ($blurb, $id) = @_; if ($blurb) { @@ -216,6 +218,7 @@ sub _cvs2xhtml { # Run the converter and write the output. my @page = capture("(cd $dir && cvs log $name) | cvs2xhtml $options"); + @page = map { decode('utf-8', $_) } @page; my $footer = sub { my ($blurb, $id, $file) = @_; if ($blurb) { @@ -234,6 +237,7 @@ sub _faq2html { my ($self, $source, $output, $options, $style) = @_; $style ||= $self->{style_url} . 'faq.css'; my @page = capture("faq2html $options -s $style $source"); + @page = map { decode('utf-8', $_) } @page; my $footer = sub { my ($blurb, $id, $file) = @_; if ($blurb) { @@ -270,6 +274,7 @@ sub _pod2html { my $data; $podthread->output_string(\$data); $podthread->parse_file("$source"); + $data = decode('utf-8', $data); # Spin that thread into HTML. my $page = $self->{thread}->spin_thread($data); @@ -573,16 +578,17 @@ sub spin { #>>> # Process the input tree. + my %options = (follow_symlinks => 0, report_symlinks => 1); $rule = Path::Iterator::Rule->new(); $rule = $rule->skip($rule->new()->name($self->{excludes}->@*)); - $iter = $rule->iter("$input", { follow_symlinks => 0 }); + $iter = $rule->iter("$input", \%options); while (defined(my $file = $iter->())) { $self->_process_file(path($file)); } # Remove stray files from the output tree. if ($self->{delete}) { - my %options = (depthfirst => 1, follow_symlinks => 0); + $options{depthfirst} = 1; $iter = $rule->iter("$output", \%options); while (defined(my $file = $iter->())) { $self->_delete_files(path($file)); diff --git a/lib/App/DocKnot/Spin/Pointer.pm b/lib/App/DocKnot/Spin/Pointer.pm index a16250c..d074b41 100644 --- a/lib/App/DocKnot/Spin/Pointer.pm +++ b/lib/App/DocKnot/Spin/Pointer.pm @@ -10,7 +10,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Spin::Pointer 7.00; +package App::DocKnot::Spin::Pointer 7.01; use 5.024; use autodie; @@ -136,6 +136,7 @@ sub _spin_pod { my $data; $podthread->output_string(\$data); $podthread->parse_file("$source"); + $data = decode('utf-8', $data); # Spin that page into HTML. $self->{thread}->spin_thread_output($data, $source, 'POD', $output); diff --git a/lib/App/DocKnot/Spin/RSS.pm b/lib/App/DocKnot/Spin/RSS.pm index 2b0e0fc..dc2e5ff 100644 --- a/lib/App/DocKnot/Spin/RSS.pm +++ b/lib/App/DocKnot/Spin/RSS.pm @@ -9,7 +9,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Spin::RSS 7.00; +package App::DocKnot::Spin::RSS 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Spin/Sitemap.pm b/lib/App/DocKnot/Spin/Sitemap.pm index 884765c..8a39e8a 100644 --- a/lib/App/DocKnot/Spin/Sitemap.pm +++ b/lib/App/DocKnot/Spin/Sitemap.pm @@ -12,7 +12,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Spin::Sitemap 7.00; +package App::DocKnot::Spin::Sitemap 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Spin/Thread.pm b/lib/App/DocKnot/Spin/Thread.pm index 1d1ef52..089582b 100644 --- a/lib/App/DocKnot/Spin/Thread.pm +++ b/lib/App/DocKnot/Spin/Thread.pm @@ -9,7 +9,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Spin::Thread 7.00; +package App::DocKnot::Spin::Thread 7.01; use 5.024; use autodie; @@ -1333,7 +1333,7 @@ sub _cmd_size { } # Format the size using SI units. - my @suffixes = qw(K M G T); + my @suffixes = qw(Ki Mi Gi Ti); my $suffix = q{}; while ($size > 1024 && @suffixes) { $size /= 1024; diff --git a/lib/App/DocKnot/Spin/Versions.pm b/lib/App/DocKnot/Spin/Versions.pm index 2b6f759..05537dd 100644 --- a/lib/App/DocKnot/Spin/Versions.pm +++ b/lib/App/DocKnot/Spin/Versions.pm @@ -12,7 +12,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Spin::Versions 7.00; +package App::DocKnot::Spin::Versions 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Update.pm b/lib/App/DocKnot/Update.pm index 4b43fba..6157910 100644 --- a/lib/App/DocKnot/Update.pm +++ b/lib/App/DocKnot/Update.pm @@ -9,7 +9,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Update 7.00; +package App::DocKnot::Update 7.01; use 5.024; use autodie; diff --git a/lib/App/DocKnot/Util.pm b/lib/App/DocKnot/Util.pm index cffa4f5..f705ca7 100644 --- a/lib/App/DocKnot/Util.pm +++ b/lib/App/DocKnot/Util.pm @@ -9,7 +9,7 @@ # Modules and declarations ############################################################################## -package App::DocKnot::Util 7.00; +package App::DocKnot::Util 7.01; use 5.024; use autodie; diff --git a/t/cli/generate.t b/t/cli/generate.t index f3d37f3..7d4b766 100755 --- a/t/cli/generate.t +++ b/t/cli/generate.t @@ -29,15 +29,12 @@ BEGIN { use_ok('App::DocKnot::Command') } my $docknot = App::DocKnot::Command->new(); isa_ok($docknot, 'App::DocKnot::Command'); -# Create a temporary directory for test output. -my $tempdir = Path::Tiny->tempdir(); - # Generate the package README file to a temporary file, read it into memory, # and compare it to the actual README file. This duplicates part of the # generate/self.t test, but via the command-line parser. Do this in a # separate block so that $tempfile goes out of scope and will be cleaned up. { - my $tempfile = $tempdir->tempfile(); + my $tempfile = Path::Tiny->tempfile(); $docknot->run('generate', 'readme', "$tempfile"); my $output = $tempfile->slurp_utf8(); is_file_contents($output, 'README', 'Generated README from argument list'); @@ -45,7 +42,7 @@ my $tempdir = Path::Tiny->tempdir(); # Do the same thing again, but using arguments from @ARGV. { - my $tempfile = $tempdir->tempfile(); + my $tempfile = Path::Tiny->tempfile(); local @ARGV = ('generate', 'readme-md', "$tempfile"); $docknot->run(); my $output = $tempfile->slurp_utf8(); @@ -59,6 +56,7 @@ my $metadata_path = path('docs', 'docknot.yaml')->realpath(); # Generate all of the files using generate-all in a new temporary directory. my $cwd = getcwd(); +my $tempdir = Path::Tiny->tempdir(); chdir($tempdir); $docknot->run('generate-all', '-m', "$metadata_path"); my $output = path('README')->slurp_utf8(); diff --git a/t/data/generate/docknot/output/thread b/t/data/generate/docknot/output/thread index 5f49a3e..8ef3cfa 100644 --- a/t/data/generate/docknot/output/thread +++ b/t/data/generate/docknot/output/thread @@ -32,7 +32,7 @@ \h2[Download] \download[DocKnot][docknot] - [devel/App-DocKnot-\version[docknot]] + [web/App-DocKnot-\version[docknot]] \link[https://packages.debian.org/source/sid/docknot] [Debian packages] \break @@ -52,7 +52,7 @@ [GitHub] \break \link[https://github.com/rra/docknot/issues] [Bug tracker] \break - \link[https://git.eyrie.org/?p=devel/docknot.git] + \link[https://git.eyrie.org/?p=web/docknot.git] [Git repository] \break \link[https://metacpan.org/release/App-DocKnot] [MetaCPAN] \break @@ -131,7 +131,7 @@ The distribution: \table[][ \program[DocKnot][docknot] - [devel/App-DocKnot-\version[docknot]] + [web/App-DocKnot-\version[docknot]] ] An \link[https://archives.eyrie.org/software/ARCHIVE/App-DocKnot/] @@ -149,10 +149,10 @@ DocKnot is maintained using the Git version control system. To check out the current development tree, see \link[https://github.com/rra/docknot][GitHub] or clone: -\pre[ https://git.eyrie.org/git/devel/docknot.git] +\pre[ https://git.eyrie.org/git/web/docknot.git] Pull requests on GitHub are welcome. You can also -\link[https://git.eyrie.org/?p=devel/docknot.git][browse the current +\link[https://git.eyrie.org/?p=web/docknot.git][browse the current development source]. \h2[Documentation] diff --git a/t/data/regenerate-data b/t/data/regenerate-data index f796f8f..ac93310 100755 --- a/t/data/regenerate-data +++ b/t/data/regenerate-data @@ -43,6 +43,10 @@ for my $package (@packages) { } } +# Regenerate the README and README.md for DocKnot itself. +my $docknot = App::DocKnot::Generate->new(); +$docknot->generate_all(); + # The test of spinning a tree of files uses a reference to App::DocKnot's own # POD documentation. Regenerate the expected output in case the POD has # changed. diff --git a/t/data/spin/output/usefor/index.html b/t/data/spin/output/usefor/index.html index 964c216..be5cda5 100644 --- a/t/data/spin/output/usefor/index.html +++ b/t/data/spin/output/usefor/index.html @@ -88,7 +88,7 @@ interest: </p> <ul> -<li class="packed"><a href="drafts/draft-ietf-usefor-useage-01.txt">Usenet Best Practice</a> (2KB)</li> +<li class="packed"><a href="drafts/draft-ietf-usefor-useage-01.txt">Usenet Best Practice</a> (2KiB)</li> <li class="packed"><a href="drafts/draft-ietf-usefor-message-id-01.txt">Recommendations for Generating Message IDs</a> (215B)</li> <li class="packed"><a href="drafts/draft-ietf-usefor-posted-mailed-01.txt">Identification of Messages Delivered Via Both Mail and News</a> (215B)</li> <li class="packed"><a href="drafts/draft-lindsey-usefor-signed-01.txt">Signed Headers in Mail and Netnews</a> (215B)</li> diff --git a/t/docs/spdx-license.t b/t/docs/spdx-license.t index 15ee7e0..0a0fae4 100755 --- a/t/docs/spdx-license.t +++ b/t/docs/spdx-license.t @@ -9,7 +9,7 @@ # The canonical version of this file is maintained in the rra-c-util package, # which can be found at <https://www.eyrie.org/~eagle/software/rra-c-util/>. # -# Copyright 2018-2021 Russ Allbery <eagle@eyrie.org> +# Copyright 2018-2022 Russ Allbery <eagle@eyrie.org> # # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the "Software"), @@ -121,7 +121,7 @@ sub check_file { close($file) or BAIL_OUT("Cannot close $path"); # If there is a legacy license notice, report a failure regardless of file - # size. Otherwise, skip files under 1KB. They can be rolled up into the + # size. Otherwise, skip files under 1KiB. They can be rolled up into the # overall project license and the license notice may be a substantial # portion of the file size. if ($saw_legacy_notice) { diff --git a/t/update/spin.t b/t/update/spin.t index c692c80..d2bbc5a 100755 --- a/t/update/spin.t +++ b/t/update/spin.t @@ -46,20 +46,16 @@ $update->update_spin($tempdir); # Check the resulting output. my $expected = path('t', 'data', 'spin', 'update', 'output'); my $count = is_spin_output_tree("$tempdir", "$expected", 'Tree updated'); -my @changes = grep { m{ deleted | new [ ] file }xms } $repo->run('status'); -@changes = map { [split(q{ })] } sort(@changes); -is_deeply( - \@changes, - [ - ['deleted:', 'module.rpod'], - ['deleted:', 'readme.rpod'], - ['deleted:', 'script.rpod'], - ['new', 'file:', 'module.spin'], - ['new', 'file:', 'readme.spin'], - ['new', 'file:', 'script.spin'], - ], - 'Git operations', +my @status = sort $repo->run('status', '-s'); +my @changes = ( + 'A module.spin', + 'A readme.spin', + 'A script.spin', + 'D module.rpod', + 'D readme.rpod', + 'D script.rpod', ); +is_deeply(\@status, \@changes, 'Git operations'); # Report the end of testing. done_testing($count + 2); |