@@ -1,17 +1,13 @@
-1.55 2014-05-04
+1.56 2014-08-07
-- If diagnostic is true for an object, it will now use Test::More::diag()
- under the test harness rather than printing to STDOUT.
+- Recent DateTime::TimeZone changes broke the tests.
-- The %z specifier will now parse UTC offsets with a colon like
- "+01:00". Requested by David Pyke Le Brun. RT #91458.
+- Fixed Latin-1 content in test code. It's now UTF-8.
-- Made the regexes to parse day & months abbreviations & names a little more
- specific. As it stood, they tended to eat up nomre non-word characters than
- they should, so a pattern like '%a%m%d_%Y' break on a date like
- 'Fri0215_2013'. The day name would be parsed as 'Fri02' and the month would
- not be parsed at all. Reported by Maxwell Carey and ikegami. RT #93863 and
- #93865.
+
+1.55 2014-08-07.
+
+- Broken release. I deleted this from PAUSE.
1.54 2013-04-02
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.015.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.020.
Changes
INSTALL
LICENSE
@@ -6,9 +6,12 @@ MANIFEST
META.json
META.yml
Makefile.PL
-README
+README.md
dist.ini
lib/DateTime/Format/Strptime.pm
+t/00-compile.t
+t/00-report-prereqs.dd
+t/00-report-prereqs.t
t/001_load.t
t/002_dates.t
t/003_every.t
@@ -19,9 +22,10 @@ t/007_edge.t
t/008_epoch.t
t/009_regexp.t
t/author-001_all_locales.t
+t/author-pod-spell.t
t/release-eol.t
t/release-no-tabs.t
t/release-pod-coverage.t
t/release-pod-linkcheck.t
-t/release-pod-spell.t
t/release-pod-syntax.t
+t/release-portability.t
@@ -5,7 +5,7 @@
"Rick Measham <rickm@cpan.org>"
],
"dynamic_config" : 0,
- "generated_by" : "Dist::Zilla version 5.015, CPAN::Meta::Converter version 2.120921",
+ "generated_by" : "Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.142060",
"license" : [
"artistic_2"
],
@@ -17,12 +17,17 @@
"prereqs" : {
"configure" : {
"requires" : {
- "ExtUtils::MakeMaker" : "6.30"
+ "ExtUtils::MakeMaker" : "0"
}
},
"develop" : {
"requires" : {
- "Test::Pod" : "1.41"
+ "Pod::Coverage::TrustPod" : "0",
+ "Test::More" : "0.88",
+ "Test::NoTabs" : "0",
+ "Test::Pod" : "1.41",
+ "Test::Pod::Coverage" : "1.08",
+ "Test::Spelling" : "0.12"
}
},
"runtime" : {
@@ -38,26 +43,572 @@
}
},
"test" : {
+ "recommends" : {
+ "CPAN::Meta" : "2.120900"
+ },
"requires" : {
- "Test::More" : "0.88"
+ "ExtUtils::MakeMaker" : "0",
+ "File::Spec" : "0",
+ "IO::Handle" : "0",
+ "IPC::Open3" : "0",
+ "Test::More" : "0.88",
+ "perl" : "5.006",
+ "utf8" : "0",
+ "warnings" : "0"
}
}
},
+ "provides" : {
+ "DateTime::Format::Strptime" : {
+ "file" : "lib/DateTime/Format/Strptime.pm",
+ "version" : "1.56"
+ }
+ },
"release_status" : "stable",
"resources" : {
"bugtracker" : {
"mailto" : "bug-datetime-format-strptime@rt.cpan.org",
- "web" : "http://rt.cpan.org/NoAuth/Bugs.html?Dist=DateTime-Format-Strptime"
+ "web" : "http://rt.cpan.org/Public/Dist/Display.html?Name=DateTime-Format-Strptime"
},
+ "homepage" : "http://metacpan.org/release/DateTime-Format-Strptime",
"repository" : {
"type" : "git",
- "url" : "git://git.urth.org/DateTime-Format-Strptime.git",
- "web" : "http://git.urth.org/DateTime-Format-Strptime.git"
+ "url" : "git://github.com/autarch/DateTime-Format-Strptime.git",
+ "web" : "https://github.com/autarch/DateTime-Format-Strptime"
+ }
+ },
+ "version" : "1.56",
+ "x_Dist_Zilla" : {
+ "perl" : {
+ "version" : "5.016003"
+ },
+ "plugins" : [
+ {
+ "class" : "Dist::Zilla::Plugin::MakeMaker",
+ "config" : {
+ "Dist::Zilla::Role::TestRunner" : {
+ "default_jobs" : 1
+ }
+ },
+ "name" : "@DROLSKY/MakeMaker",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Authority",
+ "name" : "@DROLSKY/Authority",
+ "version" : "1.006"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::AutoPrereqs",
+ "name" : "@DROLSKY/AutoPrereqs",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::GatherDir",
+ "name" : "@DROLSKY/GatherDir",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Git::Check",
+ "config" : {
+ "Dist::Zilla::Plugin::Git::Check" : {
+ "untracked_files" : "die"
+ },
+ "Dist::Zilla::Role::Git::DirtyFiles" : {
+ "allow_dirty" : [
+ "Changes",
+ "CONTRIBUTING.md",
+ "README.md"
+ ],
+ "allow_dirty_match" : [],
+ "changelog" : "Changes"
+ },
+ "Dist::Zilla::Role::Git::Repo" : {
+ "repo_root" : "."
+ }
+ },
+ "name" : "@DROLSKY/Git::Check",
+ "version" : "2.023"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Git::Commit",
+ "config" : {
+ "Dist::Zilla::Plugin::Git::Commit" : {
+ "add_files_in" : [],
+ "commit_msg" : "v%v%n%n%c",
+ "time_zone" : "local"
+ },
+ "Dist::Zilla::Role::Git::DirtyFiles" : {
+ "allow_dirty" : [
+ "Changes",
+ "CONTRIBUTING.md",
+ "README.md"
+ ],
+ "allow_dirty_match" : [],
+ "changelog" : "Changes"
+ },
+ "Dist::Zilla::Role::Git::Repo" : {
+ "repo_root" : "."
+ }
+ },
+ "name" : "@DROLSKY/Git::Commit",
+ "version" : "2.023"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::GitHub::Meta",
+ "name" : "@DROLSKY/GitHub::Meta",
+ "version" : "0.38"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::GitHub::Update",
+ "name" : "@DROLSKY/GitHub::Update",
+ "version" : "0.38"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::MetaResources",
+ "name" : "@DROLSKY/MetaResources",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::MetaProvides::Package",
+ "config" : {
+ "Dist::Zilla::Plugin::MetaProvides::Package" : {
+ "finder_objects" : [
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : "@DROLSKY/MetaProvides::Package/AUTOVIV/:InstallModulesPM",
+ "version" : "5.020"
+ }
+ ]
+ },
+ "Dist::Zilla::Role::MetaProvider::Provider" : {
+ "inherit_missing" : "1",
+ "inherit_version" : "1",
+ "meta_noindex" : "1"
+ }
+ },
+ "name" : "@DROLSKY/MetaProvides::Package",
+ "version" : "2.000003"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::NextRelease",
+ "name" : "@DROLSKY/NextRelease",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::PruneFiles",
+ "name" : "@DROLSKY/PruneFiles",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Test::Pod::Coverage::Configurable",
+ "name" : "@DROLSKY/Test::Pod::Coverage::Configurable",
+ "version" : "0.01"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Test::PodSpelling",
+ "name" : "@DROLSKY/Test::PodSpelling",
+ "version" : "2.006008"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Test::ReportPrereqs",
+ "name" : "@DROLSKY/Test::ReportPrereqs",
+ "version" : "0.018"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Prereqs",
+ "config" : {
+ "Dist::Zilla::Plugin::Prereqs" : {
+ "phase" : "test",
+ "type" : "requires"
+ }
+ },
+ "name" : "@DROLSKY/TestMoreDoneTesting",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::PromptIfStale",
+ "config" : {
+ "Dist::Zilla::Plugin::PromptIfStale" : {
+ "check_all_plugins" : "1",
+ "check_all_prereqs" : "1",
+ "modules" : [],
+ "phase" : "release",
+ "skip" : []
+ }
+ },
+ "name" : "@DROLSKY/stale modules, release",
+ "version" : "0.024"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::ReadmeAnyFromPod",
+ "name" : "@DROLSKY/ReadmeMarkdownInBuild",
+ "version" : "0.142180"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::ReadmeAnyFromPod",
+ "name" : "@DROLSKY/ReadmeMarkdownInRoot",
+ "version" : "0.142180"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::PruneCruft",
+ "name" : "@DROLSKY/PruneCruft",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::ManifestSkip",
+ "name" : "@DROLSKY/ManifestSkip",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::MetaYAML",
+ "name" : "@DROLSKY/MetaYAML",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::License",
+ "name" : "@DROLSKY/License",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::ExtraTests",
+ "name" : "@DROLSKY/ExtraTests",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::ExecDir",
+ "name" : "@DROLSKY/ExecDir",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::ShareDir",
+ "name" : "@DROLSKY/ShareDir",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Manifest",
+ "name" : "@DROLSKY/Manifest",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::TestRelease",
+ "name" : "@DROLSKY/TestRelease",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::ConfirmRelease",
+ "name" : "@DROLSKY/ConfirmRelease",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::UploadToCPAN",
+ "name" : "@DROLSKY/UploadToCPAN",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::CheckPrereqsIndexed",
+ "name" : "@DROLSKY/CheckPrereqsIndexed",
+ "version" : "0.012"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::ContributorsFromGit",
+ "name" : "@DROLSKY/ContributorsFromGit",
+ "version" : "0.014"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::CopyReadmeFromBuild",
+ "name" : "@DROLSKY/CopyReadmeFromBuild",
+ "version" : "0.0019"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch",
+ "config" : {
+ "Dist::Zilla::Role::Git::Repo" : {
+ "repo_root" : "."
+ }
+ },
+ "name" : "@DROLSKY/Git::CheckFor::CorrectBranch",
+ "version" : "0.011"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Git::CheckFor::MergeConflicts",
+ "config" : {
+ "Dist::Zilla::Role::Git::Repo" : {
+ "repo_root" : "."
+ }
+ },
+ "name" : "@DROLSKY/Git::CheckFor::MergeConflicts",
+ "version" : "0.011"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Git::Describe",
+ "name" : "@DROLSKY/Git::Describe",
+ "version" : "0.003"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::InstallGuide",
+ "name" : "@DROLSKY/InstallGuide",
+ "version" : "1.200003"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Meta::Contributors",
+ "name" : "@DROLSKY/Meta::Contributors",
+ "version" : "0.001"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::MetaConfig",
+ "name" : "@DROLSKY/MetaConfig",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::MetaJSON",
+ "name" : "@DROLSKY/MetaJSON",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::PkgVersion",
+ "name" : "@DROLSKY/PkgVersion",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::SurgicalPodWeaver",
+ "config" : {
+ "Dist::Zilla::Plugin::PodWeaver" : {
+ "finder" : [
+ ":InstallModules",
+ ":ExecFiles"
+ ],
+ "plugins" : [
+ {
+ "class" : "Pod::Weaver::Plugin::EnsurePod5",
+ "name" : "@CorePrep/EnsurePod5",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Plugin::H1Nester",
+ "name" : "@CorePrep/H1Nester",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Plugin::SingleEncoding",
+ "name" : "@Default/SingleEncoding",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Name",
+ "name" : "@Default/Name",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Version",
+ "name" : "@Default/Version",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Region",
+ "name" : "@Default/prelude",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Generic",
+ "name" : "SYNOPSIS",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Generic",
+ "name" : "DESCRIPTION",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Generic",
+ "name" : "OVERVIEW",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Collect",
+ "name" : "ATTRIBUTES",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Collect",
+ "name" : "METHODS",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Collect",
+ "name" : "FUNCTIONS",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Leftovers",
+ "name" : "@Default/Leftovers",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Region",
+ "name" : "@Default/postlude",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Authors",
+ "name" : "@Default/Authors",
+ "version" : "4.006"
+ },
+ {
+ "class" : "Pod::Weaver::Section::Legal",
+ "name" : "@Default/Legal",
+ "version" : "4.006"
+ }
+ ]
+ }
+ },
+ "name" : "@DROLSKY/SurgicalPodWeaver",
+ "version" : "0.0021"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::EOLTests",
+ "name" : "@DROLSKY/EOLTests",
+ "version" : "0.02"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::PodSyntaxTests",
+ "name" : "@DROLSKY/PodSyntaxTests",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Test::Compile",
+ "config" : {
+ "Dist::Zilla::Plugin::Test::Compile" : {
+ "bail_out_on_fail" : "0",
+ "fail_on_warning" : "author",
+ "fake_home" : "0",
+ "filename" : "t/00-compile.t",
+ "module_finder" : [
+ ":InstallModules"
+ ],
+ "needs_display" : "0",
+ "phase" : "test",
+ "script_finder" : [
+ ":ExecFiles"
+ ],
+ "skips" : []
+ }
+ },
+ "name" : "@DROLSKY/Test::Compile",
+ "version" : "2.045"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Test::NoTabs",
+ "config" : {
+ "Dist::Zilla::Plugin::Test::NoTabs" : {
+ "finder" : [
+ ":InstallModules",
+ ":ExecFiles",
+ ":TestFiles"
+ ]
+ }
+ },
+ "name" : "@DROLSKY/Test::NoTabs",
+ "version" : "0.08"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Test::Pod::LinkCheck",
+ "name" : "@DROLSKY/Test::Pod::LinkCheck",
+ "version" : "1.001"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Test::Portability",
+ "name" : "@DROLSKY/Test::Portability",
+ "version" : "2.000005"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Git::Tag",
+ "config" : {
+ "Dist::Zilla::Plugin::Git::Tag" : {
+ "branch" : null,
+ "signed" : 0,
+ "tag" : "v1.56",
+ "tag_format" : "v%v",
+ "tag_message" : "v%v",
+ "time_zone" : "local"
+ },
+ "Dist::Zilla::Role::Git::Repo" : {
+ "repo_root" : "."
+ }
+ },
+ "name" : "@DROLSKY/Git::Tag",
+ "version" : "2.023"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Git::Push",
+ "config" : {
+ "Dist::Zilla::Plugin::Git::Push" : {
+ "push_to" : [
+ "origin"
+ ],
+ "remotes_must_exist" : 1
+ },
+ "Dist::Zilla::Role::Git::Repo" : {
+ "repo_root" : "."
+ }
+ },
+ "name" : "@DROLSKY/Git::Push",
+ "version" : "2.023"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : ":InstallModules",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : ":IncModules",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : ":TestFiles",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : ":ExecFiles",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : ":ShareFiles",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : ":MainModule",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : ":AllFiles",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : ":NoFiles",
+ "version" : "5.020"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::FinderCode",
+ "name" : "@DROLSKY/MetaProvides::Package/AUTOVIV/:InstallModulesPM",
+ "version" : "5.020"
+ }
+ ],
+ "zilla" : {
+ "class" : "Dist::Zilla::Dist::Builder",
+ "config" : {
+ "is_trial" : "0"
+ },
+ "version" : "5.020"
}
},
- "version" : "1.55",
- "x_contributors" : [
- "Ken Williams <Ken.Williams@WindLogics.com>"
- ]
+ "x_authority" : "cpan:DROLSKY"
}
@@ -4,28 +4,447 @@ author:
- 'Dave Rolsky <autarch@urth.org>'
- 'Rick Measham <rickm@cpan.org>'
build_requires:
- Test::More: 0.88
+ ExtUtils::MakeMaker: '0'
+ File::Spec: '0'
+ IO::Handle: '0'
+ IPC::Open3: '0'
+ Test::More: '0.88'
+ perl: '5.006'
+ utf8: '0'
+ warnings: '0'
configure_requires:
- ExtUtils::MakeMaker: 6.30
+ ExtUtils::MakeMaker: '0'
dynamic_config: 0
-generated_by: 'Dist::Zilla version 5.015, CPAN::Meta::Converter version 2.120921'
+generated_by: 'Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.142060'
license: artistic_2
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
- version: 1.4
+ version: '1.4'
name: DateTime-Format-Strptime
+provides:
+ DateTime::Format::Strptime:
+ file: lib/DateTime/Format/Strptime.pm
+ version: '1.56'
requires:
- Carp: 0
- DateTime: 1.00
- DateTime::Locale: 0.45
- DateTime::TimeZone: 0.79
- Exporter: 0
- Params::Validate: 0.64
- strict: 0
- vars: 0
+ Carp: '0'
+ DateTime: '1.00'
+ DateTime::Locale: '0.45'
+ DateTime::TimeZone: '0.79'
+ Exporter: '0'
+ Params::Validate: '0.64'
+ strict: '0'
+ vars: '0'
resources:
- bugtracker: http://rt.cpan.org/NoAuth/Bugs.html?Dist=DateTime-Format-Strptime
- repository: git://git.urth.org/DateTime-Format-Strptime.git
-version: 1.55
-x_contributors:
- - 'Ken Williams <Ken.Williams@WindLogics.com>'
+ bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=DateTime-Format-Strptime
+ homepage: http://metacpan.org/release/DateTime-Format-Strptime
+ repository: git://github.com/autarch/DateTime-Format-Strptime.git
+version: '1.56'
+x_Dist_Zilla:
+ perl:
+ version: '5.016003'
+ plugins:
+ -
+ class: Dist::Zilla::Plugin::MakeMaker
+ config:
+ Dist::Zilla::Role::TestRunner:
+ default_jobs: 1
+ name: '@DROLSKY/MakeMaker'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::Authority
+ name: '@DROLSKY/Authority'
+ version: '1.006'
+ -
+ class: Dist::Zilla::Plugin::AutoPrereqs
+ name: '@DROLSKY/AutoPrereqs'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::GatherDir
+ name: '@DROLSKY/GatherDir'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::Git::Check
+ config:
+ Dist::Zilla::Plugin::Git::Check:
+ untracked_files: die
+ Dist::Zilla::Role::Git::DirtyFiles:
+ allow_dirty:
+ - Changes
+ - CONTRIBUTING.md
+ - README.md
+ allow_dirty_match: []
+ changelog: Changes
+ Dist::Zilla::Role::Git::Repo:
+ repo_root: .
+ name: '@DROLSKY/Git::Check'
+ version: '2.023'
+ -
+ class: Dist::Zilla::Plugin::Git::Commit
+ config:
+ Dist::Zilla::Plugin::Git::Commit:
+ add_files_in: []
+ commit_msg: v%v%n%n%c
+ time_zone: local
+ Dist::Zilla::Role::Git::DirtyFiles:
+ allow_dirty:
+ - Changes
+ - CONTRIBUTING.md
+ - README.md
+ allow_dirty_match: []
+ changelog: Changes
+ Dist::Zilla::Role::Git::Repo:
+ repo_root: .
+ name: '@DROLSKY/Git::Commit'
+ version: '2.023'
+ -
+ class: Dist::Zilla::Plugin::GitHub::Meta
+ name: '@DROLSKY/GitHub::Meta'
+ version: '0.38'
+ -
+ class: Dist::Zilla::Plugin::GitHub::Update
+ name: '@DROLSKY/GitHub::Update'
+ version: '0.38'
+ -
+ class: Dist::Zilla::Plugin::MetaResources
+ name: '@DROLSKY/MetaResources'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::MetaProvides::Package
+ config:
+ Dist::Zilla::Plugin::MetaProvides::Package:
+ finder_objects:
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: '@DROLSKY/MetaProvides::Package/AUTOVIV/:InstallModulesPM'
+ version: '5.020'
+ Dist::Zilla::Role::MetaProvider::Provider:
+ inherit_missing: '1'
+ inherit_version: '1'
+ meta_noindex: '1'
+ name: '@DROLSKY/MetaProvides::Package'
+ version: '2.000003'
+ -
+ class: Dist::Zilla::Plugin::NextRelease
+ name: '@DROLSKY/NextRelease'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::PruneFiles
+ name: '@DROLSKY/PruneFiles'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::Test::Pod::Coverage::Configurable
+ name: '@DROLSKY/Test::Pod::Coverage::Configurable'
+ version: '0.01'
+ -
+ class: Dist::Zilla::Plugin::Test::PodSpelling
+ name: '@DROLSKY/Test::PodSpelling'
+ version: '2.006008'
+ -
+ class: Dist::Zilla::Plugin::Test::ReportPrereqs
+ name: '@DROLSKY/Test::ReportPrereqs'
+ version: '0.018'
+ -
+ class: Dist::Zilla::Plugin::Prereqs
+ config:
+ Dist::Zilla::Plugin::Prereqs:
+ phase: test
+ type: requires
+ name: '@DROLSKY/TestMoreDoneTesting'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::PromptIfStale
+ config:
+ Dist::Zilla::Plugin::PromptIfStale:
+ check_all_plugins: '1'
+ check_all_prereqs: '1'
+ modules: []
+ phase: release
+ skip: []
+ name: '@DROLSKY/stale modules, release'
+ version: '0.024'
+ -
+ class: Dist::Zilla::Plugin::ReadmeAnyFromPod
+ name: '@DROLSKY/ReadmeMarkdownInBuild'
+ version: '0.142180'
+ -
+ class: Dist::Zilla::Plugin::ReadmeAnyFromPod
+ name: '@DROLSKY/ReadmeMarkdownInRoot'
+ version: '0.142180'
+ -
+ class: Dist::Zilla::Plugin::PruneCruft
+ name: '@DROLSKY/PruneCruft'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::ManifestSkip
+ name: '@DROLSKY/ManifestSkip'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::MetaYAML
+ name: '@DROLSKY/MetaYAML'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::License
+ name: '@DROLSKY/License'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::ExtraTests
+ name: '@DROLSKY/ExtraTests'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::ExecDir
+ name: '@DROLSKY/ExecDir'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::ShareDir
+ name: '@DROLSKY/ShareDir'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::Manifest
+ name: '@DROLSKY/Manifest'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::TestRelease
+ name: '@DROLSKY/TestRelease'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::ConfirmRelease
+ name: '@DROLSKY/ConfirmRelease'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::UploadToCPAN
+ name: '@DROLSKY/UploadToCPAN'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::CheckPrereqsIndexed
+ name: '@DROLSKY/CheckPrereqsIndexed'
+ version: '0.012'
+ -
+ class: Dist::Zilla::Plugin::ContributorsFromGit
+ name: '@DROLSKY/ContributorsFromGit'
+ version: '0.014'
+ -
+ class: Dist::Zilla::Plugin::CopyReadmeFromBuild
+ name: '@DROLSKY/CopyReadmeFromBuild'
+ version: '0.0019'
+ -
+ class: Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch
+ config:
+ Dist::Zilla::Role::Git::Repo:
+ repo_root: .
+ name: '@DROLSKY/Git::CheckFor::CorrectBranch'
+ version: '0.011'
+ -
+ class: Dist::Zilla::Plugin::Git::CheckFor::MergeConflicts
+ config:
+ Dist::Zilla::Role::Git::Repo:
+ repo_root: .
+ name: '@DROLSKY/Git::CheckFor::MergeConflicts'
+ version: '0.011'
+ -
+ class: Dist::Zilla::Plugin::Git::Describe
+ name: '@DROLSKY/Git::Describe'
+ version: '0.003'
+ -
+ class: Dist::Zilla::Plugin::InstallGuide
+ name: '@DROLSKY/InstallGuide'
+ version: '1.200003'
+ -
+ class: Dist::Zilla::Plugin::Meta::Contributors
+ name: '@DROLSKY/Meta::Contributors'
+ version: '0.001'
+ -
+ class: Dist::Zilla::Plugin::MetaConfig
+ name: '@DROLSKY/MetaConfig'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::MetaJSON
+ name: '@DROLSKY/MetaJSON'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::PkgVersion
+ name: '@DROLSKY/PkgVersion'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::SurgicalPodWeaver
+ config:
+ Dist::Zilla::Plugin::PodWeaver:
+ finder:
+ - ':InstallModules'
+ - ':ExecFiles'
+ plugins:
+ -
+ class: Pod::Weaver::Plugin::EnsurePod5
+ name: '@CorePrep/EnsurePod5'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Plugin::H1Nester
+ name: '@CorePrep/H1Nester'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Plugin::SingleEncoding
+ name: '@Default/SingleEncoding'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Name
+ name: '@Default/Name'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Version
+ name: '@Default/Version'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Region
+ name: '@Default/prelude'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Generic
+ name: SYNOPSIS
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Generic
+ name: DESCRIPTION
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Generic
+ name: OVERVIEW
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Collect
+ name: ATTRIBUTES
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Collect
+ name: METHODS
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Collect
+ name: FUNCTIONS
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Leftovers
+ name: '@Default/Leftovers'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Region
+ name: '@Default/postlude'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Authors
+ name: '@Default/Authors'
+ version: '4.006'
+ -
+ class: Pod::Weaver::Section::Legal
+ name: '@Default/Legal'
+ version: '4.006'
+ name: '@DROLSKY/SurgicalPodWeaver'
+ version: '0.0021'
+ -
+ class: Dist::Zilla::Plugin::EOLTests
+ name: '@DROLSKY/EOLTests'
+ version: '0.02'
+ -
+ class: Dist::Zilla::Plugin::PodSyntaxTests
+ name: '@DROLSKY/PodSyntaxTests'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::Test::Compile
+ config:
+ Dist::Zilla::Plugin::Test::Compile:
+ bail_out_on_fail: '0'
+ fail_on_warning: author
+ fake_home: '0'
+ filename: t/00-compile.t
+ module_finder:
+ - ':InstallModules'
+ needs_display: '0'
+ phase: test
+ script_finder:
+ - ':ExecFiles'
+ skips: []
+ name: '@DROLSKY/Test::Compile'
+ version: '2.045'
+ -
+ class: Dist::Zilla::Plugin::Test::NoTabs
+ config:
+ Dist::Zilla::Plugin::Test::NoTabs:
+ finder:
+ - ':InstallModules'
+ - ':ExecFiles'
+ - ':TestFiles'
+ name: '@DROLSKY/Test::NoTabs'
+ version: '0.08'
+ -
+ class: Dist::Zilla::Plugin::Test::Pod::LinkCheck
+ name: '@DROLSKY/Test::Pod::LinkCheck'
+ version: '1.001'
+ -
+ class: Dist::Zilla::Plugin::Test::Portability
+ name: '@DROLSKY/Test::Portability'
+ version: '2.000005'
+ -
+ class: Dist::Zilla::Plugin::Git::Tag
+ config:
+ Dist::Zilla::Plugin::Git::Tag:
+ branch: ~
+ signed: 0
+ tag: v1.56
+ tag_format: v%v
+ tag_message: v%v
+ time_zone: local
+ Dist::Zilla::Role::Git::Repo:
+ repo_root: .
+ name: '@DROLSKY/Git::Tag'
+ version: '2.023'
+ -
+ class: Dist::Zilla::Plugin::Git::Push
+ config:
+ Dist::Zilla::Plugin::Git::Push:
+ push_to:
+ - origin
+ remotes_must_exist: 1
+ Dist::Zilla::Role::Git::Repo:
+ repo_root: .
+ name: '@DROLSKY/Git::Push'
+ version: '2.023'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: ':InstallModules'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: ':IncModules'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: ':TestFiles'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: ':ExecFiles'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: ':ShareFiles'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: ':MainModule'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: ':AllFiles'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: ':NoFiles'
+ version: '5.020'
+ -
+ class: Dist::Zilla::Plugin::FinderCode
+ name: '@DROLSKY/MetaProvides::Package/AUTOVIV/:InstallModulesPM'
+ version: '5.020'
+ zilla:
+ class: Dist::Zilla::Dist::Builder
+ config:
+ is_trial: '0'
+ version: '5.020'
+x_authority: cpan:DROLSKY
@@ -1,20 +1,19 @@
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.015.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.020.
use strict;
use warnings;
-use ExtUtils::MakeMaker 6.30;
+use ExtUtils::MakeMaker ;
my %WriteMakefileArgs = (
"ABSTRACT" => "Parse and format strp and strf time patterns",
"AUTHOR" => "Dave Rolsky <autarch\@urth.org>, Rick Measham <rickm\@cpan.org>",
- "BUILD_REQUIRES" => {},
"CONFIGURE_REQUIRES" => {
- "ExtUtils::MakeMaker" => "6.30"
+ "ExtUtils::MakeMaker" => 0
},
"DISTNAME" => "DateTime-Format-Strptime",
"EXE_FILES" => [],
@@ -31,9 +30,15 @@ my %WriteMakefileArgs = (
"vars" => 0
},
"TEST_REQUIRES" => {
- "Test::More" => "0.88"
+ "ExtUtils::MakeMaker" => 0,
+ "File::Spec" => 0,
+ "IO::Handle" => 0,
+ "IPC::Open3" => 0,
+ "Test::More" => "0.88",
+ "utf8" => 0,
+ "warnings" => 0
},
- "VERSION" => "1.55",
+ "VERSION" => "1.56",
"test" => {
"TESTS" => "t/*.t"
}
@@ -46,10 +51,16 @@ my %FallbackPrereqs = (
"DateTime::Locale" => "0.45",
"DateTime::TimeZone" => "0.79",
"Exporter" => 0,
+ "ExtUtils::MakeMaker" => 0,
+ "File::Spec" => 0,
+ "IO::Handle" => 0,
+ "IPC::Open3" => 0,
"Params::Validate" => "0.64",
"Test::More" => "0.88",
"strict" => 0,
- "vars" => 0
+ "utf8" => 0,
+ "vars" => 0,
+ "warnings" => 0
);
@@ -1,16 +0,0 @@
-
-
-This archive contains the distribution DateTime-Format-Strptime,
-version 1.55:
-
- Parse and format strp and strf time patterns
-
-This software is Copyright (c) 2014 by Dave Rolsky.
-
-This is free software, licensed under:
-
- The Artistic License 2.0 (GPL Compatible)
-
-
-This README file was generated by Dist::Zilla::Plugin::Readme v5.015.
-
@@ -0,0 +1,346 @@
+# NAME
+
+DateTime::Format::Strptime - Parse and format strp and strf time patterns
+
+# VERSION
+
+version 1.56
+
+# SYNOPSIS
+
+ use DateTime::Format::Strptime;
+
+ my $strp = DateTime::Format::Strptime->new(
+ pattern => '%T',
+ locale => 'en_AU',
+ time_zone => 'Australia/Melbourne',
+ );
+
+ my $dt = $strp->parse_datetime('23:16:42');
+
+ $strp->format_datetime($dt);
+
+ # 23:16:42
+
+ # Croak when things go wrong:
+ my $strp = DateTime::Format::Strptime->new(
+ pattern => '%T',
+ locale => 'en_AU',
+ time_zone => 'Australia/Melbourne',
+ on_error => 'croak',
+ );
+
+ $newpattern = $strp->pattern('%Q');
+
+ # Unidentified token in pattern: %Q in %Q at line 34 of script.pl
+
+ # Do something else when things go wrong:
+ my $strp = DateTime::Format::Strptime->new(
+ pattern => '%T',
+ locale => 'en_AU',
+ time_zone => 'Australia/Melbourne',
+ on_error => \&phone_police,
+ );
+
+# DESCRIPTION
+
+This module implements most of `strptime(3)`, the POSIX function that
+is the reverse of `strftime(3)`, for `DateTime`. While `strftime`
+takes a `DateTime` and a pattern and returns a string, `strptime` takes
+a string and a pattern and returns the `DateTime` object
+associated.
+
+# CONSTRUCTOR
+
+- new( pattern => $strptime\_pattern )
+
+ Creates the format object. You must specify a pattern, you can also
+ specify a `time_zone` and a `locale`. If you specify a time zone
+ then any resulting `DateTime` object will be in that time zone. If you
+ do not specify a `time_zone` parameter, but there is a time zone in the
+ string you pass to `parse_datetime`, then the resulting `DateTime` will
+ use that time zone.
+
+ You can optionally use an on\_error parameter. This parameter has three
+ valid options:
+
+ - 'undef'
+
+ (not undef, 'undef', it's a string not an undefined value)
+
+ This is the default behavior. The module will return undef whenever it gets
+ upset. The error can be accessed using the `$object->errmsg` method.
+ This is the ideal behaviour for interactive use where a user might provide an
+ illegal pattern or a date that doesn't match the pattern.
+
+ - 'croak'
+
+ (not croak, 'croak', it's a string, not a function)
+
+ This used to be the default behaviour. The module will croak with an
+ error message whenever it gets upset.
+
+ - sub{...} or \\&subname
+
+ When given a code ref, the module will call that sub when it gets upset.
+ The sub receives two parameters: the object and the error message. Using
+ these two it is possible to emulate the 'undef' behavior. (Returning a
+ true value causes the method to return undef. Returning a false value
+ causes the method to bravely continue):
+
+ sub { $_[0]->{errmsg} = $_[1]; 1 },
+
+# METHODS
+
+This class offers the following methods.
+
+- parse\_datetime($string)
+
+ Given a string in the pattern specified in the constructor, this method
+ will return a new `DateTime` object.
+
+ If given a string that doesn't match the pattern, the formatter will
+ croak or return undef, depending on the setting of on\_error in the constructor.
+
+- format\_datetime($datetime)
+
+ Given a `DateTime` object, this methods returns a string formatted in
+ the object's format. This method is synonymous with `DateTime`'s
+ strftime method.
+
+- locale($locale)
+
+ When given a locale or `DateTime::Locale` object, this method sets
+ its locale appropriately. If the locale is not understood, the method
+ will croak or return undef (depending on the setting of on\_error in
+ the constructor)
+
+ If successful this method returns the current locale. (After
+ processing as above).
+
+- pattern($strptime\_pattern)
+
+ When given a pattern, this method sets the object's pattern. If the
+ pattern is invalid, the method will croak or return undef (depending on
+ the value of the `on_error` parameter)
+
+ If successful this method returns the current pattern. (After processing
+ as above)
+
+- time\_zone($time\_zone)
+
+ When given a name, offset or `DateTime::TimeZone` object, this method
+ sets the object's time zone. This effects the `DateTime` object
+ returned by parse\_datetime
+
+ If the time zone is invalid, the method will croak or return undef
+ (depending on the value of the `on_error` parameter)
+
+ If successful this method returns the current time zone. (After processing
+ as above)
+
+- errmsg
+
+ If the on\_error behavior of the object is 'undef', error messages with
+ this method so you can work out why things went wrong.
+
+ This code emulates a `$DateTime::Format::Strptime` with
+ the `on_error` parameter equal to `'croak'`:
+
+ `$strp->pattern($pattern) or die $DateTime::Format::Strptime::errmsg`
+
+# EXPORTS
+
+There are no methods exported by default, however the following are
+available:
+
+- strptime( $strptime\_pattern, $string )
+
+ Given a pattern and a string this function will return a new `DateTime`
+ object.
+
+- strftime( $strftime\_pattern, $datetime )
+
+ Given a pattern and a `DateTime` object this function will return a
+ formatted string.
+
+# STRPTIME PATTERN TOKENS
+
+The following tokens are allowed in the pattern string for strptime
+(parse\_datetime):
+
+- %%
+
+ The % character.
+
+- %a or %A
+
+ The weekday name according to the current locale, in abbreviated form or
+ the full name.
+
+- %b or %B or %h
+
+ The month name according to the current locale, in abbreviated form or
+ the full name.
+
+- %C
+
+ The century number (0-99).
+
+- %d or %e
+
+ The day of month (01-31). This will parse single digit numbers as well.
+
+- %D
+
+ Equivalent to %m/%d/%y. (This is the American style date, very confusing
+ to non-Americans, especially since %d/%m/%y is widely used in Europe.
+ The ISO 8601 standard pattern is %F.)
+
+- %F
+
+ Equivalent to %Y-%m-%d. (This is the ISO style date)
+
+- %g
+
+ The year corresponding to the ISO week number, but without the century
+ (0-99).
+
+- %G
+
+ The year corresponding to the ISO week number.
+
+- %H
+
+ The hour (00-23). This will parse single digit numbers as well.
+
+- %I
+
+ The hour on a 12-hour clock (1-12).
+
+- %j
+
+ The day number in the year (1-366).
+
+- %m
+
+ The month number (01-12). This will parse single digit numbers as well.
+
+- %M
+
+ The minute (00-59). This will parse single digit numbers as well.
+
+- %n
+
+ Arbitrary whitespace.
+
+- %N
+
+ Nanoseconds. For other sub-second values use `%[number]N`.
+
+- %p
+
+ The equivalent of AM or PM according to the locale in use. (See
+ [DateTime::Locale](https://metacpan.org/pod/DateTime::Locale))
+
+- %r
+
+ Equivalent to %I:%M:%S %p.
+
+- %R
+
+ Equivalent to %H:%M.
+
+- %s
+
+ Number of seconds since the Epoch.
+
+- %S
+
+ The second (0-60; 60 may occur for leap seconds. See
+ [DateTime::LeapSecond](https://metacpan.org/pod/DateTime::LeapSecond)).
+
+- %t
+
+ Arbitrary whitespace.
+
+- %T
+
+ Equivalent to %H:%M:%S.
+
+- %U
+
+ The week number with Sunday the first day of the week (0-53). The first
+ Sunday of January is the first day of week 1.
+
+- %u
+
+ The weekday number (1-7) with Monday = 1. This is the `DateTime` standard.
+
+- %w
+
+ The weekday number (0-6) with Sunday = 0.
+
+- %W
+
+ The week number with Monday the first day of the week (0-53). The first
+ Monday of January is the first day of week 1.
+
+- %y
+
+ The year within century (0-99). When a century is not otherwise specified
+ (with a value for %C), values in the range 69-99 refer to years in the
+ twentieth century (1969-1999); values in the range 00-68 refer to years in the
+ twenty-first century (2000-2068).
+
+- %Y
+
+ The year, including century (for example, 1991).
+
+- %z
+
+ An RFC-822/ISO 8601 standard time zone specification. (For example
+ \+1100) \[See note below\]
+
+- %Z
+
+ The timezone name. (For example EST -- which is ambiguous) \[See note
+ below\]
+
+- %O
+
+ This extended token allows the use of Olson Time Zone names to appear
+ in parsed strings. **NOTE**: This pattern cannot be passed to `DateTime`'s
+ `strftime()` method, but can be passed to `format_datetime()`.
+
+# AUTHOR EMERITUS
+
+This module was created by Rick Measham.
+
+# BUGS
+
+Please report any bugs or feature requests to
+`bug-datetime-format-strptime@rt.cpan.org`, or through the web interface at
+[http://rt.cpan.org](http://rt.cpan.org). I will be notified, and then you'll automatically be
+notified of progress on your bug as I make changes.
+
+# SEE ALSO
+
+`datetime@perl.org` mailing list.
+
+http://datetime.perl.org/
+
+[perl](https://metacpan.org/pod/perl), [DateTime](https://metacpan.org/pod/DateTime), [DateTime::TimeZone](https://metacpan.org/pod/DateTime::TimeZone), [DateTime::Locale](https://metacpan.org/pod/DateTime::Locale)
+
+# AUTHORS
+
+- Dave Rolsky <autarch@urth.org>
+- Rick Measham <rickm@cpan.org>
+
+# COPYRIGHT AND LICENSE
+
+This software is Copyright (c) 2014 by Dave Rolsky.
+
+This is free software, licensed under:
+
+ The Artistic License 2.0 (GPL Compatible)
@@ -3,38 +3,20 @@ author = Dave Rolsky <autarch@urth.org>
author = Rick Measham <rickm@cpan.org>
copyright_holder = Dave Rolsky
-version = 1.55
-
-[NextRelease]
-format = %-8v %{yyyy-MM-dd}d
-
-[@Basic]
-
-[InstallGuide]
-[MetaJSON]
-
-[MetaResources]
-bugtracker.web = http://rt.cpan.org/NoAuth/Bugs.html?Dist=DateTime-Format-Strptime
-bugtracker.mailto = bug-datetime-format-strptime@rt.cpan.org
-repository.url = git://git.urth.org/DateTime-Format-Strptime.git
-repository.web = http://git.urth.org/DateTime-Format-Strptime.git
-repository.type = git
-
-[SurgicalPodWeaver]
-
-[PkgVersion]
-
-[ContributorsFromGit]
-
-[EOLTests]
-[NoTabsTests]
-[PodSyntaxTests]
-;[Test::CPAN::Changes]
-[Test::Pod::LinkCheck]
-;[Test::Pod::No404s]
-
-[AutoPrereqs]
-
-[CheckPrereqsIndexed]
-
-[@Git]
+version = 1.56
+
+[@DROLSKY]
+dist = DateTime-Format-Strptime
+coverage_trustme = DateTime::Format::Strptime => qr/^(?:format_duration|parse_duration|local_carp|local_croak)$/
+stopwords = Measham
+stopwords = POSIX
+stopwords = Rolsky
+stopwords = STRPTIME
+stopwords = errmsg
+stopwords = formatter
+stopwords = strf
+stopwords = strp
+stopwords = strptime
+-remove = Test::CPAN::Changes
+-remove = Test::Pod::No404s
+-remove = Test::Synopsis
@@ -1,5 +1,7 @@
package DateTime::Format::Strptime;
-$DateTime::Format::Strptime::VERSION = '1.55';
+# git description: v1.54-8-g6aa82d9
+$DateTime::Format::Strptime::VERSION = '1.56';
+
use strict;
use DateTime 1.00;
@@ -272,9 +274,10 @@ sub parse_datetime {
die $@ if $@;
if ( $self->{diagnostic} ) {
- my $diag = <<"EOF";
+ print qq|
+
Entered = $time_string
-Parser = $parser
+Parser = $parser
dow_name = $dow_name
month_name = $month_name
@@ -301,14 +304,9 @@ timezone = $timezone
epoch = $epoch
iso_week_year = $iso_week_year
iso_week_year_100 = $iso_week_year_100
-EOF
- if ( $ENV{HARNESS_ACTIVE} ) {
- Test::More::diag($diag);
- }
- else {
- print $diag;
- }
+ |;
+
}
$self->local_croak("Your datetime does not match your pattern.")
@@ -863,11 +861,11 @@ sub _build_parser {
'|',
map { quotemeta $_ }
sort { length $b <=> length $a }
- @{ $self->{_locale}->day_format_wide },
- @{ $self->{_locale}->day_format_abbreviated }
+ grep( /\W/, @{ $self->{_locale}->day_format_wide },
+ @{ $self->{_locale}->day_format_abbreviated } )
);
$day_re .= '|' if $day_re;
- $regex =~ s/%a/($day_re\\w+)/gi;
+ $regex =~ s/%a/($day_re\\w+)/gi;
$field_list =~ s/%a/#dow_name#/gi;
# %a is the day of the week, using the locale's weekday names; either the abbreviated or full name may be specified.
@@ -877,8 +875,8 @@ sub _build_parser {
'|',
map { quotemeta $_ }
sort { length $b <=> length $a }
- @{ $self->{_locale}->month_format_wide },
- @{ $self->{_locale}->month_format_abbreviated }
+ grep( /\s|\d/, @{ $self->{_locale}->month_format_wide },
+ @{ $self->{_locale}->month_format_abbreviated } )
);
$month_re .= '|' if $month_re;
$month_re .= '[^\\s\\d]+';
@@ -996,7 +994,7 @@ sub _build_parser {
# is the year including the century (for example, 1998).
- $regex =~ s|%z|([+-]\\d\\d:?\\d\\d)|g;
+ $regex =~ s|%z|([+-]\\d{4})|g;
$field_list =~ s/%z/#tz_offset#/g;
# Timezone Offset.
@@ -1073,13 +1071,15 @@ __END__
=pod
+=encoding UTF-8
+
=head1 NAME
DateTime::Format::Strptime - Parse and format strp and strf time patterns
=head1 VERSION
-version 1.55
+version 1.56
=head1 SYNOPSIS
@@ -1329,8 +1329,7 @@ Arbitrary whitespace.
=item * %N
-Nanoseconds. For other sub-second values use C<%[number]N>, where
-C<[number]> is the number of digits (without the brackets).
+Nanoseconds. For other sub-second values use C<%[number]N>.
=item * %p
@@ -1393,7 +1392,8 @@ The year, including century (for example, 1991).
=item * %z
-A time zone offset in the format "[+-]HHmm" or "[+-]HH:mm".
+An RFC-822/ISO 8601 standard time zone specification. (For example
++1100) [See note below]
=item * %Z
@@ -0,0 +1,50 @@
+use 5.006;
+use strict;
+use warnings;
+
+# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.045
+
+use Test::More tests => 1 + ($ENV{AUTHOR_TESTING} ? 1 : 0);
+
+
+
+my @module_files = (
+ 'DateTime/Format/Strptime.pm'
+);
+
+
+
+# no fake home requested
+
+my $inc_switch = -d 'blib' ? '-Mblib' : '-Ilib';
+
+use File::Spec;
+use IPC::Open3;
+use IO::Handle;
+
+open my $stdin, '<', File::Spec->devnull or die "can't open devnull: $!";
+
+my @warnings;
+for my $lib (@module_files)
+{
+ # see L<perlfaq8/How can I capture STDERR from an external command?>
+ my $stderr = IO::Handle->new;
+
+ my $pid = open3($stdin, '>&STDERR', $stderr, $^X, $inc_switch, '-e', "require q[$lib]");
+ binmode $stderr, ':crlf' if $^O eq 'MSWin32';
+ my @_warnings = <$stderr>;
+ waitpid($pid, 0);
+ is($?, 0, "$lib loaded ok");
+
+ if (@_warnings)
+ {
+ warn @_warnings;
+ push @warnings, @_warnings;
+ }
+}
+
+
+
+is(scalar(@warnings), 0, 'no warnings found') if $ENV{AUTHOR_TESTING};
+
+
@@ -0,0 +1,46 @@
+do { my $x = {
+ 'configure' => {
+ 'requires' => {
+ 'ExtUtils::MakeMaker' => '0'
+ }
+ },
+ 'develop' => {
+ 'requires' => {
+ 'Pod::Coverage::TrustPod' => '0',
+ 'Test::More' => '0.88',
+ 'Test::NoTabs' => '0',
+ 'Test::Pod' => '1.41',
+ 'Test::Pod::Coverage' => '1.08',
+ 'Test::Spelling' => '0.12'
+ }
+ },
+ 'runtime' => {
+ 'requires' => {
+ 'Carp' => '0',
+ 'DateTime' => '1.00',
+ 'DateTime::Locale' => '0.45',
+ 'DateTime::TimeZone' => '0.79',
+ 'Exporter' => '0',
+ 'Params::Validate' => '0.64',
+ 'strict' => '0',
+ 'vars' => '0'
+ }
+ },
+ 'test' => {
+ 'recommends' => {
+ 'CPAN::Meta' => '2.120900'
+ },
+ 'requires' => {
+ 'ExtUtils::MakeMaker' => '0',
+ 'File::Spec' => '0',
+ 'IO::Handle' => '0',
+ 'IPC::Open3' => '0',
+ 'Test::More' => '0.88',
+ 'perl' => '5.006',
+ 'utf8' => '0',
+ 'warnings' => '0'
+ }
+ }
+ };
+ $x;
+ }
\ No newline at end of file
@@ -0,0 +1,177 @@
+#!perl
+
+use strict;
+use warnings;
+
+# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.018
+
+use Test::More tests => 1;
+
+use ExtUtils::MakeMaker;
+use File::Spec;
+
+# from $version::LAX
+my $lax_version_re =
+ qr/(?: undef | (?: (?:[0-9]+) (?: \. | (?:\.[0-9]+) (?:_[0-9]+)? )?
+ |
+ (?:\.[0-9]+) (?:_[0-9]+)?
+ ) | (?:
+ v (?:[0-9]+) (?: (?:\.[0-9]+)+ (?:_[0-9]+)? )?
+ |
+ (?:[0-9]+)? (?:\.[0-9]+){2,} (?:_[0-9]+)?
+ )
+ )/x;
+
+# hide optional CPAN::Meta modules from prereq scanner
+# and check if they are available
+my $cpan_meta = "CPAN::Meta";
+my $cpan_meta_pre = "CPAN::Meta::Prereqs";
+my $HAS_CPAN_META = eval "require $cpan_meta; $cpan_meta->VERSION('2.120900')" && eval "require $cpan_meta_pre"; ## no critic
+
+# Verify requirements?
+my $DO_VERIFY_PREREQS = 1;
+
+sub _max {
+ my $max = shift;
+ $max = ( $_ > $max ) ? $_ : $max for @_;
+ return $max;
+}
+
+sub _merge_prereqs {
+ my ($collector, $prereqs) = @_;
+
+ # CPAN::Meta::Prereqs object
+ if (ref $collector eq $cpan_meta_pre) {
+ return $collector->with_merged_prereqs(
+ CPAN::Meta::Prereqs->new( $prereqs )
+ );
+ }
+
+ # Raw hashrefs
+ for my $phase ( keys %$prereqs ) {
+ for my $type ( keys %{ $prereqs->{$phase} } ) {
+ for my $module ( keys %{ $prereqs->{$phase}{$type} } ) {
+ $collector->{$phase}{$type}{$module} = $prereqs->{$phase}{$type}{$module};
+ }
+ }
+ }
+
+ return $collector;
+}
+
+my @include = qw(
+
+);
+
+my @exclude = qw(
+
+);
+
+# Add static prereqs to the included modules list
+my $static_prereqs = do 't/00-report-prereqs.dd';
+
+### XXX: Assume these are Runtime Requires
+my $static_prereqs_requires = $static_prereqs->{runtime}{requires};
+for my $mod (@include) {
+ $static_prereqs_requires->{$mod} = 0 unless exists $static_prereqs_requires->{$mod};
+}
+
+# Merge all prereqs (either with ::Prereqs or a hashref)
+my $full_prereqs = _merge_prereqs(
+ ( $HAS_CPAN_META ? $cpan_meta_pre->new : {} ),
+ $static_prereqs
+);
+
+# Add dynamic prereqs to the included modules list (if we can)
+my ($source) = grep { -f } 'MYMETA.json', 'MYMETA.yml';
+if ( $source && $HAS_CPAN_META ) {
+ if ( my $meta = eval { CPAN::Meta->load_file($source) } ) {
+ $full_prereqs = _merge_prereqs($full_prereqs, $meta->prereqs);
+ }
+}
+else {
+ $source = 'static metadata';
+}
+
+my @full_reports;
+my @dep_errors;
+my $req_hash = $HAS_CPAN_META ? $full_prereqs->as_string_hash : $full_prereqs;
+
+for my $phase ( qw(configure build test runtime develop) ) {
+ next unless $req_hash->{$phase};
+ next if ($phase eq 'develop' and not $ENV{AUTHOR_TESTING});
+
+ for my $type ( qw(requires recommends suggests conflicts) ) {
+ next unless $req_hash->{$phase}{$type};
+
+ my $title = ucfirst($phase).' '.ucfirst($type);
+ my @reports = [qw/Module Want Have/];
+
+ for my $mod ( sort keys %{ $req_hash->{$phase}{$type} } ) {
+ next if $mod eq 'perl';
+ next if grep { $_ eq $mod } @exclude;
+
+ my $file = $mod;
+ $file =~ s{::}{/}g;
+ $file .= ".pm";
+ my ($prefix) = grep { -e File::Spec->catfile($_, $file) } @INC;
+
+ my $want = $req_hash->{$phase}{$type}{$mod};
+ $want = "undef" unless defined $want;
+ $want = "any" if !$want && $want == 0;
+
+ my $req_string = $want eq 'any' ? 'any version required' : "version '$want' required";
+
+ if ($prefix) {
+ my $have = MM->parse_version( File::Spec->catfile($prefix, $file) );
+ $have = "undef" unless defined $have;
+ push @reports, [$mod, $want, $have];
+
+ if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META && $type eq 'requires' ) {
+ if ( $have !~ /\A$lax_version_re\z/ ) {
+ push @dep_errors, "$mod version '$have' cannot be parsed ($req_string)";
+ }
+ elsif ( ! $full_prereqs->requirements_for( $phase, $type )->accepts_module( $mod => $have ) ) {
+ push @dep_errors, "$mod version '$have' is not in required range '$want'";
+ }
+ }
+ }
+ else {
+ push @reports, [$mod, $want, "missing"];
+
+ if ( $DO_VERIFY_PREREQS && $type eq 'requires' ) {
+ push @dep_errors, "$mod is not installed ($req_string)";
+ }
+ }
+ }
+
+ if ( @reports ) {
+ push @full_reports, "=== $title ===\n\n";
+
+ my $ml = _max( map { length $_->[0] } @reports );
+ my $wl = _max( map { length $_->[1] } @reports );
+ my $hl = _max( map { length $_->[2] } @reports );
+ splice @reports, 1, 0, ["-" x $ml, "-" x $wl, "-" x $hl];
+
+ push @full_reports, map { sprintf(" %*s %*s %*s\n", -$ml, $_->[0], $wl, $_->[1], $hl, $_->[2]) } @reports;
+ push @full_reports, "\n";
+ }
+ }
+}
+
+if ( @full_reports ) {
+ diag "\nVersions for all modules listed in $source (including optional ones):\n\n", @full_reports;
+}
+
+if ( @dep_errors ) {
+ diag join("\n",
+ "\n*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING ***\n",
+ "The following REQUIRED prerequisites were not satisfied:\n",
+ @dep_errors,
+ "\n"
+ );
+}
+
+pass;
+
+# vim: ts=4 sts=4 sw=4 et:
@@ -9,7 +9,9 @@ use DateTime::TimeZone;
my $object = DateTime::Format::Strptime->new(
pattern => '%D',
- diagnostic => 0,
+
+ # time_zone => 'Australia/Melbourne',
+ diagnostic => 1,
on_error => 'croak',
);
@@ -22,11 +24,6 @@ my @tests = (
[ '%b %d, %Y', 'Jan 24, 2003' ],
[ '%B %d, %Y', 'January 24, 2003' ],
- # Simple dates with weekday
- [ '%a%Y-%m-%d', 'Sun2014-05-04' ],
- [ '%A%Y-%m-%d', 'Sunday2014-05-04' ],
- [ '%a%m%d_%Y' => 'Sun0504_2014' ],
-
# Simple times
[ '%H:%M:%S', '23:45:56' ],
[ '%l:%M:%S %p', '11:34:56 PM' ],
@@ -81,12 +78,6 @@ SKIP: {
'23:45:56 +1000', '%H:%M:%S %z'
);
- $object->pattern('%H:%M:%S %z');
- is(
- $object->format_datetime( $object->parse_datetime('23:45:56 +10:00') ),
- '23:45:56 +1000', '%H:%M:%S %z'
- );
-
$object->pattern('%H:%M:%S %Z');
is(
$object->format_datetime( $object->parse_datetime('23:45:56 AEST') ),
@@ -103,11 +94,11 @@ SKIP: {
);
}
-$object->time_zone('Australia/Perth');
+$object->time_zone('America/New_York');
$object->pattern('%Y %H:%M:%S %Z');
is(
$object->format_datetime( $object->parse_datetime('2003 23:45:56 MDT') ),
- '2003 13:45:56 WST', $object->pattern
+ '2003 00:45:56 EST', $object->pattern
);
done_testing();
@@ -6,15 +6,15 @@ use DateTime::Format::Strptime;
{
my $object = DateTime::Format::Strptime->new(
pattern => '%D',
- time_zone => 'Australia/Melbourne',
- locale => 'en_AU',
+ time_zone => 'America/New_York',
+ locale => 'en_US',
diagnostic => 0,
);
my $epoch = DateTime->new(
year => 2003, month => 11, day => 5,
hour => 23, minute => 34, second => 45,
- time_zone => 'Australia/Melbourne'
+ time_zone => 'America/New_York'
)->epoch;
my @tests = (
@@ -28,7 +28,7 @@ use DateTime::Format::Strptime;
[
'%a %b %B %C %d %e %h %H %I %j %k %l %m %M %n %N %O %p %P %S %U %u %w %W %y %Y %s %G %g %z %Z %%Y %%',
- "Wed Nov November 20 05 5 Nov 23 11 309 23 11 11 34 \n 123456789 Australia/Melbourne PM pm 45 44 3 3 44 03 2003 $epoch 2003 03 +1100 EST %Y %",
+ "Wed Nov November 20 05 5 Nov 23 11 309 23 11 11 34 \n 123456789 America/New_York PM pm 45 44 3 3 44 03 2003 $epoch 2003 03 -0500 EST %Y %",
"Every token at once"
],
@@ -40,12 +40,8 @@ use DateTime::Format::Strptime;
my ( $pattern, $data, $name ) = @$_;
$name ||= $pattern;
- #print "-- $pattern ($data) --\n";
$object->pattern($pattern);
- #print "\n" . $object->pattern . "\n" . $object->{parser};
- #print $object->parse_datetime( $data )->strftime("%Y-%m-%d %H:%M:%S\n");
- #print $object->parse_datetime( $data )->strftime("Got: $pattern\n");
is( $object->format_datetime( $object->parse_datetime($data) ), $data,
$name );
}
@@ -54,15 +50,15 @@ use DateTime::Format::Strptime;
{
my $object = DateTime::Format::Strptime->new(
pattern => '%D',
- time_zone => 'Australia/Melbourne',
- locale => 'en_AU',
+ time_zone => 'America/New_York',
+ locale => 'en_US',
diagnostic => 0,
);
my $epoch = DateTime->new(
year => 2003, month => 11, day => 5,
hour => 23, minute => 34, second => 45,
- time_zone => 'Australia/Melbourne'
+ time_zone => 'America/New_York'
)->epoch;
my @tests = (
@@ -76,7 +72,7 @@ use DateTime::Format::Strptime;
[
'%a %b %B %C %d %e %h %H %I %j %k %l %m %M %n %N %p %P %S %U %u %w %W %y %Y %s %G %g %z %Z %%',
- "Wed Nov November 20 05 5 Nov 23 11 309 23 11 11 34 \n 123456789 PM pm 45 44 3 3 44 03 2003 $epoch 2003 03 +1100 EST %",
+ "Wed Nov November 20 05 5 Nov 23 11 309 23 11 11 34 \n 123456789 PM pm 45 44 3 3 44 03 2003 $epoch 2003 03 -0500 EST %",
"Every token at once"
],
@@ -2,6 +2,8 @@
# t/004_locale_defaults.t - check module dates in various formats
+use utf8;
+
use Test::More 0.88;
use DateTime::Format::Strptime;
use DateTime;
@@ -34,12 +36,12 @@ my @tests = (
# French French
[ 'fr_FR', '%x', '31/12/1998' ],
[ 'fr_FR', '%X', '13:34:56' ],
- [ 'fr_FR', '%c', 'jeu. 31 Déc 1998 13:34:56 CEST' ],
+ [ 'fr_FR', '%c', 'jeu. 31 Déc 1998 13:34:56 CEST' ],
# French Generic - inherits from root locale for glibc formats
[ 'fr', '%x', '12/31/98' ],
[ 'fr', '%X', '13:34:56' ],
- [ 'fr', '%c', 'jeu. Déc 31 13:34:56 1998' ],
+ [ 'fr', '%c', 'jeu. Déc 31 13:34:56 1998' ],
);
foreach (@tests) {
@@ -67,7 +67,7 @@ is( substr( $@, 0, 39 ), 'Datetime 0000-00-00 is not a valid date',
#diag("1.09 - TZs in the wrong case should work (unless they have a cap in the middle of a word)");
{
my $parser
- = new DateTime::Format::Strptime( pattern => '%O', diagnostic => 0 );
+ = new DateTime::Format::Strptime( pattern => '%O', diagnostic => 1 );
is( $parser->parse_datetime('AMERICA/NEW_YORK')->time_zone->name,
'America/New_York' );
}
@@ -0,0 +1,40 @@
+
+BEGIN {
+ unless ($ENV{AUTHOR_TESTING}) {
+ require Test::More;
+ Test::More::plan(skip_all => 'these tests are for testing by the author');
+ }
+}
+
+use strict;
+use warnings;
+use Test::More;
+
+# generated by Dist::Zilla::Plugin::Test::PodSpelling 2.006008
+use Test::Spelling 0.12;
+use Pod::Wordlist;
+
+
+add_stopwords(<DATA>);
+all_pod_files_spelling_ok( qw( bin lib ) );
+__DATA__
+DROLSKY
+DROLSKY's
+Rolsky
+Rolsky's
+Measham
+POSIX
+STRPTIME
+errmsg
+formatter
+strf
+strp
+strptime
+Dave
+autarch
+Rick
+rickm
+lib
+DateTime
+Format
+Strptime
@@ -8,9 +8,35 @@ BEGIN {
use strict;
use warnings;
-use Test::More;
-eval 'use Test::NoTabs';
-plan skip_all => 'Test::NoTabs required' if $@;
+# this test was generated with Dist::Zilla::Plugin::Test::NoTabs 0.08
-all_perl_files_ok();
+use Test::More 0.88;
+use Test::NoTabs;
+
+my @files = (
+ 'lib/DateTime/Format/Strptime.pm',
+ 't/00-compile.t',
+ 't/00-report-prereqs.dd',
+ 't/00-report-prereqs.t',
+ 't/001_load.t',
+ 't/002_dates.t',
+ 't/003_every.t',
+ 't/004_locale_defaults.t',
+ 't/005_croak.t',
+ 't/006_locales.t',
+ 't/007_edge.t',
+ 't/008_epoch.t',
+ 't/009_regexp.t',
+ 't/author-001_all_locales.t',
+ 't/author-pod-spell.t',
+ 't/release-eol.t',
+ 't/release-no-tabs.t',
+ 't/release-pod-coverage.t',
+ 't/release-pod-linkcheck.t',
+ 't/release-pod-syntax.t',
+ 't/release-portability.t'
+);
+
+notabs_ok($_) foreach @files;
+done_testing;
@@ -1,3 +1,4 @@
+#!perl
BEGIN {
unless ($ENV{RELEASE_TESTING}) {
@@ -6,18 +7,41 @@ BEGIN {
}
}
-use strict;
-use warnings;
+# This file was automatically generated by Dist::Zilla::Plugin::Test::Pod::Coverage::Configurable.
+use Test::Pod::Coverage 1.08;
use Test::More 0.88;
+use Pod::Coverage::TrustPod;
-eval "use Test::Pod::Coverage 1.04";
-plan skip_all => "Test::Pod::Coverage 1.04 required for testing POD coverage"
- if $@;
+my %skip = map { $_ => 1 } qw( );
-all_pod_coverage_ok(
- {
- trustme =>
- [qr/^(?:format_duration|parse_duration|local_carp|local_croak)$/]
- }
-);
+my @modules;
+for my $module ( all_modules() ) {
+ next if $skip{$module};
+
+ push @modules, $module;
+}
+
+plan skip_all => 'All the modules we found were excluded from POD coverage test.'
+ unless @modules;
+
+plan tests => scalar @modules;
+
+my %trustme = (
+ 'DateTime::Format::Strptime' => [
+ qr/^(?:format_duration|parse_duration|local_carp|local_croak)$/
+ ]
+ );
+
+for my $module ( sort @modules ) {
+ pod_coverage_ok(
+ $module,
+ {
+ coverage_class => 'Pod::Coverage::TrustPod',
+ trustme => $trustme{$module} || [],
+ },
+ "pod coverage for $module"
+ );
+}
+
+done_testing();
@@ -1,42 +0,0 @@
-
-BEGIN {
- unless ($ENV{RELEASE_TESTING}) {
- require Test::More;
- Test::More::plan(skip_all => 'these tests are for release candidate testing');
- }
-}
-
-use strict;
-use warnings;
-
-use Test::More 0.88;
-
-eval "use Test::Spelling";
-plan skip_all => "Test::Spelling required for testing POD coverage"
- if $@;
-
-my @stopwords;
-for (<DATA>) {
- chomp;
- push @stopwords, $_
- unless /\A (?: \# | \s* \z)/msx; # skip comments, whitespace
-}
-
-add_stopwords(@stopwords);
-set_spell_cmd('aspell list -l en');
-
-# This prevents a weird segfault from the aspell command - see
-# https://bugs.launchpad.net/ubuntu/+source/aspell/+bug/71322
-local $ENV{LC_ALL} = 'C';
-all_pod_files_spelling_ok();
-
-__DATA__
-Measham
-POSIX
-Rolsky
-STRPTIME
-errmsg
-formatter
-strf
-strp
-strptime
@@ -0,0 +1,19 @@
+#!perl
+
+BEGIN {
+ unless ($ENV{RELEASE_TESTING}) {
+ require Test::More;
+ Test::More::plan(skip_all => 'these tests are for release candidate testing');
+ }
+}
+
+
+use strict;
+use warnings;
+
+use Test::More;
+
+eval 'use Test::Portability::Files';
+plan skip_all => 'Test::Portability::Files required for testing portability'
+ if $@;
+run_tests();