[svn-upgrade] new version libany-moose-perl (0.15)
Alessandro Ghedini
12 years ago
0 | 0.15 2011-06-07 | |
1 | * Standardize the tests' Mouse/Moose loading eval/skip code | |
2 | (Sartak, reported by Daniel Macks) | |
3 | - fixes [rt.cpan.org #68657] | |
4 | ||
5 | 0.14 2011-04-29 | |
6 | * Skip t/004-x-modules-mouse.t if you don't have MouseX::Types 0.03 since | |
7 | older versions do not work with modern Mouse (Sartak, reported by ewilhelm) | |
8 | ||
0 | 9 | 0.13 Wed 19 May 2010 |
1 | 10 | * Add load_first_existing_class (gfx) |
2 | 11 |
17 | 17 | |
18 | 18 | The GNU General Public License, Version 1, February 1989 |
19 | 19 | |
20 | GNU GENERAL PUBLIC LICENSE | |
21 | Version 1, February 1989 | |
20 | GNU GENERAL PUBLIC LICENSE | |
21 | Version 1, February 1989 | |
22 | 22 | |
23 | 23 | Copyright (C) 1989 Free Software Foundation, Inc. |
24 | 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA | |
24 | 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | |
25 | ||
25 | 26 | Everyone is permitted to copy and distribute verbatim copies |
26 | 27 | of this license document, but changing it is not allowed. |
27 | 28 | |
28 | Preamble | |
29 | Preamble | |
29 | 30 | |
30 | 31 | The license agreements of most software companies try to keep users |
31 | 32 | at the mercy of those companies. By contrast, our General Public |
66 | 67 | The precise terms and conditions for copying, distribution and |
67 | 68 | modification follow. |
68 | 69 | |
69 | GNU GENERAL PUBLIC LICENSE | |
70 | GNU GENERAL PUBLIC LICENSE | |
70 | 71 | TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION |
71 | 72 | |
72 | 73 | 0. This License Agreement applies to any program or other work which |
184 | 185 | of preserving the free status of all derivatives of our free software and |
185 | 186 | of promoting the sharing and reuse of software generally. |
186 | 187 | |
187 | NO WARRANTY | |
188 | NO WARRANTY | |
188 | 189 | |
189 | 190 | 9. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY |
190 | 191 | FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN |
206 | 207 | PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE |
207 | 208 | POSSIBILITY OF SUCH DAMAGES. |
208 | 209 | |
209 | END OF TERMS AND CONDITIONS | |
210 | ||
211 | Appendix: How to Apply These Terms to Your New Programs | |
210 | END OF TERMS AND CONDITIONS | |
211 | ||
212 | Appendix: How to Apply These Terms to Your New Programs | |
212 | 213 | |
213 | 214 | If you develop a new program, and you want it to be of the greatest |
214 | 215 | possible use to humanity, the best way to achieve this is to make it |
234 | 235 | GNU General Public License for more details. |
235 | 236 | |
236 | 237 | You should have received a copy of the GNU General Public License |
237 | along with this program; if not, write to the Free Software Foundation, | |
238 | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. | |
238 | along with this program; if not, write to the Free Software | |
239 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA | |
240 | ||
239 | 241 | |
240 | 242 | Also add information on how to contact you by electronic and paper mail. |
241 | 243 |
3 | 3 | META.yml |
4 | 4 | Makefile.PL |
5 | 5 | README |
6 | devel/test-combos.pl | |
6 | 7 | dist.ini |
7 | 8 | lib/Any/Moose.pm |
8 | 9 | t/000-version.t |
7 | 7 | - 'Goro Fuji <gfuji@cpan.org>' |
8 | 8 | build_requires: {} |
9 | 9 | configure_requires: |
10 | ExtUtils::MakeMaker: 6.31 | |
10 | ExtUtils::MakeMaker: 6.30 | |
11 | 11 | dynamic_config: 0 |
12 | generated_by: 'Dist::Zilla version 4.200004, CPAN::Meta::Converter version 2.110360' | |
12 | generated_by: 'Dist::Zilla version 4.200007, CPAN::Meta::Converter version 2.110440' | |
13 | 13 | license: perl |
14 | 14 | meta-spec: |
15 | 15 | url: http://module-build.sourceforge.net/META-spec-v1.4.html |
18 | 18 | requires: |
19 | 19 | Mouse: 0.40 |
20 | 20 | perl: 5.006_002 |
21 | version: 0.14 | |
21 | version: 0.15 |
1 | 1 | use strict; |
2 | 2 | use warnings; |
3 | 3 | |
4 | BEGIN { require 5.006_002; } | |
4 | use 5.006_002; | |
5 | 5 | |
6 | use ExtUtils::MakeMaker 6.31; | |
6 | use ExtUtils::MakeMaker 6.30; | |
7 | 7 | |
8 | 8 | |
9 | 9 | |
12 | 12 | 'AUTHOR' => 'Shawn M Moore <sartak@bestpractical.com>, Florian Ragwitz <rafl@debian.org>, Stevan Little <stevan@iinteractive.com>, Tokuhiro Matsuno <tokuhirom@gmail.com>, Goro Fuji <gfuji@cpan.org>', |
13 | 13 | 'BUILD_REQUIRES' => {}, |
14 | 14 | 'CONFIGURE_REQUIRES' => { |
15 | 'ExtUtils::MakeMaker' => '6.31' | |
15 | 'ExtUtils::MakeMaker' => '6.30' | |
16 | 16 | }, |
17 | 17 | 'DISTNAME' => 'Any-Moose', |
18 | 18 | 'EXE_FILES' => [], |
21 | 21 | 'PREREQ_PM' => { |
22 | 22 | 'Mouse' => '0.40' |
23 | 23 | }, |
24 | 'VERSION' => '0.14', | |
24 | 'VERSION' => '0.15', | |
25 | 25 | 'test' => { |
26 | 26 | 'TESTS' => 't/*.t' |
27 | 27 | } |
0 | 0 | |
1 | 1 | |
2 | 2 | This archive contains the distribution Any-Moose, |
3 | version 0.14: | |
3 | version 0.15: | |
4 | 4 | |
5 | 5 | use Moose or Mouse modules |
6 | 6 |
0 | #!/usr/bin/env perl | |
1 | use 5.14.0; | |
2 | use warnings; | |
3 | use Data::PowerSet 'powerset'; | |
4 | ||
5 | my @all_modules = qw(Mouse MouseX::Types Moose MooseX::Types); | |
6 | ||
7 | my %results; | |
8 | ||
9 | for my $modules (@{ powerset(@all_modules) }) { | |
10 | my $list = join ',', @$modules; | |
11 | ||
12 | say '=' x 60; | |
13 | say "RUNNING WITHOUT $list"; | |
14 | say '=' x 60; | |
15 | ||
16 | $ENV{PERL5OPT} = "-MTest::Without::Module=$list"; | |
17 | system("prove"); | |
18 | ||
19 | push @{ $results{ $? >> 8 ? "NOT OK" : "OK" } }, $list; | |
20 | } | |
21 | ||
22 | for my $result (sort keys %results) { | |
23 | my @modules = @{ $results{$result} }; | |
24 | say "$result when testing without:"; | |
25 | say "* $_" for @modules; | |
26 | say ''; | |
27 | } | |
28 | ||
29 | __END__ | |
30 | ||
31 | ... test results ... | |
32 | ||
33 | NOT OK when testing without: | |
34 | * Mouse,MouseX::Types,Moose,MooseX::Types | |
35 | * Mouse,Moose,MooseX::Types | |
36 | * Mouse,MouseX::Types,Moose | |
37 | * Mouse,Moose | |
38 | ||
39 | OK when testing without: | |
40 | * MouseX::Types,Moose,MooseX::Types | |
41 | * Moose,MooseX::Types | |
42 | * Mouse,MouseX::Types,MooseX::Types | |
43 | * MouseX::Types,MooseX::Types | |
44 | * Mouse,MooseX::Types | |
45 | * MooseX::Types | |
46 | * MouseX::Types,Moose | |
47 | * Moose | |
48 | * Mouse,MouseX::Types | |
49 | * MouseX::Types | |
50 | * Mouse | |
51 | * |
0 | 0 | name = Any-Moose |
1 | version = 0.14 | |
1 | version = 0.15 | |
2 | 2 | author = Shawn M Moore <sartak@bestpractical.com> |
3 | 3 | author = Florian Ragwitz <rafl@debian.org> |
4 | 4 | author = Stevan Little <stevan@iinteractive.com> |
13 | 13 | |
14 | 14 | [PodWeaver] |
15 | 15 | |
16 | [Prereq] | |
16 | [Prereqs] | |
17 | 17 | Mouse = 0.40 |
18 | 18 | perl = 5.006_002 |
0 | 0 | package Any::Moose; |
1 | 1 | BEGIN { |
2 | $Any::Moose::VERSION = '0.14'; | |
2 | $Any::Moose::VERSION = '0.15'; | |
3 | 3 | } |
4 | 4 | # ABSTRACT: use Moose or Mouse modules |
5 | 5 | |
235 | 235 | |
236 | 236 | =head1 VERSION |
237 | 237 | |
238 | version 0.14 | |
238 | version 0.15 | |
239 | 239 | |
240 | 240 | =head1 SYNOPSIS |
241 | 241 |
11 | 11 | |
12 | 12 | sub show_version { |
13 | 13 | my $klass = shift; |
14 | if (eval "require $klass; 1;") { | |
14 | if (eval "use $klass (); 1") { | |
15 | 15 | no strict 'refs'; |
16 | 16 | diag "$klass: " . ${"${klass}::VERSION"}; |
17 | 17 | } else { |
18 | diag "$klass not found"; | |
18 | diag "$klass unavailable: $@"; | |
19 | 19 | } |
20 | 20 | } |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Moose'; | |
9 | plan skip_all => 'Moose not available' if $@; | |
8 | eval 'use Moose ()'; | |
9 | plan skip_all => "Moose unavailable: $@" if $@; | |
10 | 10 | plan tests => 9; |
11 | 11 | } |
12 | 12 |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Mouse'; | |
9 | plan skip_all => 'Mouse not available' if $@; | |
8 | eval 'use Mouse ()'; | |
9 | plan skip_all => "Mouse unavailable: $@" if $@; | |
10 | 10 | plan tests => 9; |
11 | 11 | } |
12 | 12 | |
28 | 28 | ok(!Moused::Any::Moose->can('has'), "has was unimported"); |
29 | 29 | |
30 | 30 | SKIP: { |
31 | my $loaded_moose; | |
32 | BEGIN { $loaded_moose = eval 'require Moose' } | |
33 | skip "Moose required for these tests to be useful" => 3 unless $loaded_moose; | |
31 | eval 'use Moose ()'; | |
32 | skip "Moose unavailable: $@" => 3 if $@; | |
34 | 33 | |
35 | 34 | do { |
36 | 35 | package After::Moose; |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Moose'; | |
9 | plan skip_all => 'Moose not available' if $@; | |
8 | eval 'use Moose ()'; | |
9 | plan skip_all => "Moose unavailable: $@" if $@; | |
10 | 10 | plan tests => 2; |
11 | 11 | } |
12 | 12 |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Mouse'; | |
9 | plan skip_all => 'Mouse not available' if $@; | |
8 | eval 'use Mouse ()'; | |
9 | plan skip_all => "Mouse unavailable: $@" if $@; | |
10 | 10 | plan tests => 2; |
11 | 11 | } |
12 | 12 | |
20 | 20 | }; |
21 | 21 | |
22 | 22 | SKIP: { |
23 | my $loaded_moose; | |
24 | BEGIN { $loaded_moose = eval 'require Moose' } | |
25 | skip "Moose required for these tests to be useful" => 1 unless $loaded_moose; | |
23 | eval 'use Moose ()'; | |
24 | skip "Moose unavailable: $@" => 1 if $@; | |
26 | 25 | |
27 | 26 | do { |
28 | 27 | package After::Moose; |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Mouse'; | |
9 | plan skip_all => 'Mouse not available' if $@; | |
8 | eval 'use Mouse ()'; | |
9 | plan skip_all => "Mouse unavailable: $@" if $@; | |
10 | 10 | plan tests => 3; |
11 | 11 | } |
12 | 12 | |
20 | 20 | package Foo; |
21 | 21 | BEGIN { |
22 | 22 | SKIP: { |
23 | eval 'use Moose'; | |
24 | ::skip 'Moose not installed', 1 if $@; | |
23 | eval 'use Moose ()'; | |
24 | ::skip "Moose unavailable: $@", 1 if $@; | |
25 | 25 | |
26 | 26 | ::ok(Any::Moose::_is_moose_loaded(), '... Moose is loaded'); |
27 | 27 | } |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Moose; require MooseX::Types'; | |
9 | plan skip_all => 'Moose or MooseX::Types not available' if $@; | |
8 | eval 'use Moose ()'; | |
9 | plan skip_all => "Moose unavailable: $@" if $@; | |
10 | eval 'use MooseX::Types ()'; | |
11 | plan skip_all => "Moose::Types unavailable: $@" if $@; | |
12 | ||
10 | 13 | plan tests => 2; |
11 | 14 | } |
12 | 15 |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | plan skip_all => 'Mouse or MouseX::Types 0.03 not available' unless eval "require Mouse; require MouseX::Types 0.03;"; | |
8 | eval 'use Mouse ()'; | |
9 | plan skip_all => "Mouse unavailable: $@" if $@; | |
10 | eval 'use MouseX::Types 0.03'; | |
11 | plan skip_all => "Mouse::Types 0.03 unavailable: $@" if $@; | |
12 | ||
9 | 13 | plan tests => 2; |
10 | 14 | } |
11 | 15 | |
18 | 22 | }; |
19 | 23 | |
20 | 24 | SKIP: { |
21 | my $loaded_moose; | |
22 | BEGIN { $loaded_moose = eval 'require Moose; require MooseX::Types' } | |
23 | skip "Moose and MooseX::Types required for these tests to be useful" => 1 unless $loaded_moose; | |
25 | eval 'use Moose ()'; | |
26 | skip "Moose unavailable: $@" => 1 if $@; | |
27 | eval 'use MooseX::Types ()'; | |
28 | skip "MooseX::Types unavailable: $@" => 1 if $@; | |
24 | 29 | |
25 | 30 | do { |
26 | 31 | package After::Moose; |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Moose;'; | |
9 | plan skip_all => 'Moose not available' if $@; | |
8 | eval 'use Moose ()'; | |
9 | plan skip_all => "Moose unavailable: $@" if $@; | |
10 | 10 | plan tests => 21; |
11 | 11 | } |
12 | 12 |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Mouse;'; | |
9 | plan skip_all => 'Mouse not available' if $@; | |
8 | eval 'use Mouse ()'; | |
9 | plan skip_all => "Mouse unavailable: $@" if $@; | |
10 | 10 | plan tests => 21; |
11 | 11 | } |
12 | 12 |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Mouse'; | |
9 | plan skip_all => 'Mouse not available' if $@; | |
8 | eval 'use Mouse ()'; | |
9 | plan skip_all => "Mouse unavailable: $@" if $@; | |
10 | 10 | plan tests => 1; |
11 | 11 | } |
12 | 12 |
5 | 5 | BEGIN { delete $ENV{ANY_MOOSE} } |
6 | 6 | |
7 | 7 | BEGIN { |
8 | eval 'require Moose'; | |
9 | plan skip_all => 'Moose not available' if $@; | |
8 | eval 'use Moose ()'; | |
9 | plan skip_all => "Moose unavailable: $@" if $@; | |
10 | 10 | plan tests => 1; |
11 | 11 | } |
12 | 12 |