summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames E Keenan <jkeenan@cpan.org>2018-05-14 10:29:16 -0400
committerJames E Keenan <jkeenan@cpan.org>2018-05-14 10:29:16 -0400
commitcf50db1c9192e3bf4e5b49cbdfa34b4e6d3d6b5f (patch)
treeeb4d2f13b75fbf89841f1b7e65509ed5c30df84e
parent434135655f69e3187045beb41d9f2c1b18e466f8 (diff)
Modernize MANIFEST.SKIP.
If user sets INCLUDE_MANIFEST_SKIP to true value, we should generate a more up-to-date version of a default MANIFEST.SKIP. The file so generated is that generated by ExtUtils::Manifest 1.70 (distributed with Perl 5.26) with the addition of travis and appveyor configuration files. Test that those files are cited in MANIFEST.SKIP.
-rw-r--r--lib/ExtUtils/ModuleMaker/StandardText.pm87
-rw-r--r--t/91_miscargs.t6
2 files changed, 73 insertions, 20 deletions
diff --git a/lib/ExtUtils/ModuleMaker/StandardText.pm b/lib/ExtUtils/ModuleMaker/StandardText.pm
index 13b1fe5..c765958 100644
--- a/lib/ExtUtils/ModuleMaker/StandardText.pm
+++ b/lib/ExtUtils/ModuleMaker/StandardText.pm
@@ -454,7 +454,10 @@ EOF
Argument : n/a
Throws : n/a
Comment : References $self key NAME
- Comment : Adapted from David Golden's ExtUtils::ModuleMaker::TT
+ Comment : Originally adapted from David Golden's ExtUtils::ModuleMaker::TT
+ Comment : Updated to reflect ExtUtils::Manifest 1.70
+ (distributed with Perl 5.26) plus travis and appveyor
+ configuration files
=cut
@@ -462,31 +465,75 @@ sub text_MANIFEST_SKIP {
my $self = shift;
my $text_of_SKIP = <<'END_OF_SKIP';
-# Version control files and dirs.
+# Avoid version control files.
\bRCS\b
\bCVS\b
+\bSCCS\b
,v$
-.svn/
-
-# ExtUtils::MakeMaker generated files and dirs.
-^MANIFEST\.(?!SKIP)
-^Makefile$
-^blib/
-^blibdirs$
-^PM_to_blib$
-^MakeMaker-\d
-
-# Module::Build
-^Build$
-^_build
-
-# Temp, old, vi and emacs files.
+\B\.svn\b
+\B\.git\b
+\B\.gitignore\b
+\b_darcs\b
+\B\.cvsignore$
+
+# Avoid VMS specific MakeMaker generated files
+\bDescrip.MMS$
+\bDESCRIP.MMS$
+\bdescrip.mms$
+
+# Avoid Makemaker generated and utility files.
+\bMANIFEST\.bak
+\bMakefile$
+\bblib/
+\bMakeMaker-\d
+\bpm_to_blib\.ts$
+\bpm_to_blib$
+\bblibdirs\.ts$ # 6.18 through 6.25 generated this
+\b_eumm/ # 7.05_05 and above
+
+# Avoid Module::Build generated and utility files.
+\bBuild$
+\b_build/
+\bBuild.bat$
+\bBuild.COM$
+\bBUILD.COM$
+\bbuild.com$
+
+# and Module::Build::Tiny generated files
+\b_build_params$
+
+# Avoid temp and backup files.
~$
\.old$
-^#.*#$
-^\.#
-\.swp$
+\#$
+\b\.#
\.bak$
+\.tmp$
+\.#
+\.rej$
+\..*\.sw.?$
+
+# Avoid OS-specific files/dirs
+# Mac OSX metadata
+\B\.DS_Store
+# Mac OSX SMB mount metadata files
+\B\._
+
+# Avoid Devel::Cover and Devel::CoverX::Covered files.
+\bcover_db\b
+\bcovered\b
+
+# Avoid prove files
+\B\.prove$
+
+# Avoid MYMETA files
+^MYMETA\.
+
+# Avoid travis-ci.org file
+^\.travis.yml
+
+# Avoid appveyor.com file
+^\.appveyor.yml
END_OF_SKIP
return $text_of_SKIP;
diff --git a/t/91_miscargs.t b/t/91_miscargs.t
index 899b34c..9c2bf45 100644
--- a/t/91_miscargs.t
+++ b/t/91_miscargs.t
@@ -619,6 +619,12 @@ my $cwd = cwd();
File::Spec->catfile($dist_name, 'MANIFEST.SKIP'),
);
+ my $mskip_str = read_file_string(File::Spec->catfile($dist_name, 'MANIFEST.SKIP'));
+ like($mskip_str, qr/\^\\\.travis\.yml/s,
+ ".travis.yml located in MANIFEST.SKIP");
+ like($mskip_str, qr/\^\\\.appveyor\.yml/s,
+ ".appveyor.yml located in MANIFEST.SKIP");
+
ok(chdir $cwd, "Able to change back to starting directory");
}