4 use Cwd qw( abs_path );
8 plan skip_all => 'This test will not run unless you set MOOSE_TEST_MD to a true value'
9 unless $ENV{MOOSE_TEST_MD};
13 'Archive::Zip' => 0, # or else .zip dists won't be able to be installed
14 'Test::DependentModules' => '0.09', # skip all if not installed
15 'MetaCPAN::API' => '0.33',
17 use Test::DependentModules qw( test_all_dependents test_modules );
20 use List::MoreUtils qw(any);
23 diag( 'Test run performed at: '
28 $ENV{PERL_TEST_DM_LOG_DIR} = abs_path('.');
29 delete @ENV{ qw( AUTHOR_TESTING RELEASE_TESTING SMOKE_TESTING ) };
31 $ENV{ANY_MOOSE} = 'Moose';
33 my $mcpan = MetaCPAN::API->new;
34 my $res = $mcpan->post(
35 '/release/_search' => {
36 query => { match_all => {} },
40 { term => { 'release.dependency.module' => 'Moose' } },
41 { term => { 'release.dependency.module' => 'Moose::Role' } },
42 { term => { 'release.dependency.module' => 'Moose::Exporter' } },
43 { term => { 'release.dependency.module' => 'Class::MOP' } },
44 { term => { 'release.dependency.module' => 'MooseX::Role::Parameterized' } },
45 { term => { 'release.dependency.module' => 'Any::Moose' } },
47 { term => { 'release.status' => 'latest' } },
48 { term => { 'release.maturity' => 'released' } },
50 fields => 'distribution'
54 my %skip = map { $_ => 1 } grep { /\w/ } map { chomp; s/\s*#.*$//; $_ } <DATA>;
55 my @skip_prefix = qw(Acme Task Bundle);
57 'App-PipeFilter' => 'App::PipeFilter::Generic',
58 'Constructible' => 'Constructible::Maxima',
59 'DCOLLINS-ANN-Locals' => 'DCOLLINS::ANN::Robot',
60 'Dist-Zilla-Deb' => 'Dist::Zilla::Plugin::Deb::VersionFromChangelog',
61 'Dist-Zilla-Plugin-TemplateFile' => 'Dist::Zilla::Plugin::TemplateFiles',
62 'Dist-Zilla-Plugins-CJM' => 'Dist::Zilla::Plugin::TemplateCJM',
63 'OWL-Simple' => 'OWL::Simple::Class',
64 'Patterns-ChainOfResponsibility' => 'Patterns::ChainOfResponsibility::Application',
65 'Role-Identifiable' => 'Role::Identifiable::HasIdent',
66 'X11-XCB' => 'X11::XCB::Connection',
67 'XML-Ant-BuildFile' => 'XML::Ant::BuildFile::Project',
69 'marc-moose' => 'MARC::Moose',
70 'mobirc' => 'App::Mobirc',
71 'smokebrew' => 'App::SmokeBrew',
74 my @modules = map { exists $name_fix{$_} ? $name_fix{$_} : $_ }
77 grep { my $dist = $_; !any { $dist =~ /^$_-/ } @skip_prefix }
78 map { $_->{fields}{distribution} }
79 @{ $res->{hits}{hits} };
81 plan tests => scalar @modules;
82 test_modules(@modules);
84 # Modules that are known to fail
85 # PRANG - failing for quite some time (since before 2.0400)
88 # won't build, for actual reasons:
89 App-CPAN2Pkg # Tk doesn't compile
90 App-Fotagger # Imager doesn't compile
91 Black-Board # not found on cpan because of mxd
92 CM-Permutation # OpenGL uses graphics in Makefile.PL
93 Dackup # depends on running ssh
94 Date-Biorhythm # Date::Business prompts in Makefile.PL
95 Data-Collector # depends on running ssh
96 POE-Component-OpenSSH # depends on running ssh
97 Perl-Dist-Strawberry-BuildPerl-5123 # windows only
98 Perl-Dist-WiX # windows only
99 Perl-Dist-WiX-BuildPerl-5123 # windows only
100 Test-SFTP # Term::ReadPassword prompts in tests
101 VirtualBox-Manage # not found on cpan because of mxd
102 helm # depends on running ssh
104 # won't build, for unknown reasons
108 CPAN-Patches-Plugin-Debian # ???
110 Dist-Zilla-Plugin-BuildSelf # ???
111 Dist-Zilla-Plugin-ModuleBuildTiny # ???
112 Dist-Zilla-Plugin-Test-DistManifest # ???
113 Dist-Zilla-Plugin-Test-Portability # ???
114 Dist-Zilla-Plugin-Test-Synopsis # ???
115 Dist-Zilla-Plugin-Test-UnusedVars # ???
116 Lingua-TreeTagger # ???
117 POE-Component-CPAN-Mirror-Multiplexer # ???
118 POE-Component-Client-CouchDB # ???
119 POE-Component-Github # ???
120 POE-Component-Metabase-Relay-Server # ???
121 POE-Component-Server-SimpleHTTP-PreFork # ???
122 Tapper-Testplan # ??? (hangs)
125 WWW-Hashdb # ??? (hangs, pegging cpu)
126 WebService-Async # ??? (hangs, pegging cpu)
127 WebService-LOC-CongRec # ???
128 Zucchini # ??? (hangs)
130 # not in cpan index for some reason
131 Hopkins # not found on cpan (?)
132 PostScript-Barcode # not found on cpan (?)
134 # failing for a reason
135 AI-ExpertSystem-Advanced # no tests
136 API-Assembla # no tests
137 Algorithm-KernelKMeans # mx-types-common changes broke it
138 Alien-ActiveMQ # can't install activemq
139 AnyEvent-Inotify-Simple # ??? (maybe issue with test::sweet)
140 AnyEvent-JSONRPC # tests require recommended deps
141 AnyEvent-Retry # mx-types-common changes broke it
142 AnyEvent-ZeroMQ # requires zeromq installation
143 App-Dataninja # bad M::I install in inc/
144 App-ForExample # getopt::chain is broken
145 App-Magpie # deps on URPM which doesn't exist
146 App-PgCryobit # requires postgres installation
147 App-TemplateServer # broken use of types
148 App-TemplateServer-Provider-HTML-Template # dep on app-templateserver
149 App-TemplateServer-Provider-Mason # dep on app-templateserver
150 App-TemplateServer-Provider-TD # dep on app-templateserver
151 App-TimeTracker # git::repository is broken
152 App-USBKeyCopyCon # gtk tests are graphical
153 App-mkfeyorm # no tests
154 Archive-RPM # requires cpio
155 Bio-MAGETAB # datetime-format-datemanip is broken
156 Bot-Applebot # no tests
157 Bot-Backbone # broken deps
158 Business-UPS-Tracking # broken
159 CHI-Driver-Redis # requires redis server
160 CPAN-Mini-Webserver # undeclared dep on lingua-stopwords
161 Cache-Profile # broken
162 Catalyst-Authentication-Credential-Facebook-OAuth2 # no tests
163 Catalyst-Authentication-Store-Fey-ORM # no tests
164 Catalyst-Authentication-Store-LDAP-AD-Class # pod coverage fail
165 Catalyst-Controller-MovableType # no tests
166 Catalyst-Controller-Resources # broken
167 Catalyst-Engine-Stomp # requires alien::activemq
168 Catalyst-Model-MenuGrinder # no tests
169 Catalyst-Model-Search-ElasticSearch # requires elasticsearch
170 Catalyst-Model-Sedna # deps on Alien-Sedna which doesn't exist
171 Catalyst-Plugin-Continuation # undeclared dep
172 Catalyst-Plugin-ErrorCatcher-ActiveMQ-Stomp # pod coverage fail
173 Catalyst-Plugin-SwiffUploaderCookieHack # undeclared dep
174 Catalyst-TraitFor-Component-ConfigPerSite # undeclared dep
175 Catalyst-TraitFor-Controller-jQuery-jqGrid # bad test (missing files)
176 CatalystX-MooseComponent # broken
177 CatalystX-Restarter-GTK # gtk tests are graphical
178 CatalystX-RoleApplicator # broken
179 CatalystX-SimpleAPI # depends on ::RoleApplicator
180 CatalystX-SimpleLogin # broken
181 CatalystX-Usul # proc::processtable doesn't load
182 Cave-Wrapper # requires cave to be installed
183 Cheater # parse::randgen is broken
184 Class-OWL # uses CMOP::Class without loading cmop
185 Cogwheel # uses ancient moose apis
186 Constructible # GD::SVG is a broken dist
187 Coro-Amazon-SimpleDB # amazon::simpledb::client doesn't exist
188 DBICx-Modeler-Generator # broken (weirdly)
189 DBIx-PgLink # requires postgres installation
190 DBIx-SchemaChecksum # broken
191 Data-Apache-mod_status # invalid characters in type name
192 Data-PackageName # broken
193 Data-Pipeline # uses ancient moose apis
194 DayDayUp # MojoX-Fixup-XHTML doesn't exist
195 Devel-Events # broken (role conflict)
196 Dist-Zilla-Plugin-ProgCriticTests # broken
197 Dist-Zilla-Plugin-SVK # requires svn bindings
198 DustyDB # uses old moose apis
199 ELF-Extract-Sections # uses stash entries with ::
200 ETLp # uses stash entries with ::
201 FFmpeg-Thumbnail # undeclared dep
202 Fedora-App-MaintainerTools # requires rpm to be installed
203 Fedora-App-ReviewTool # requires koji to be installed
204 File-DataClass # XML::DTD is a broken dist
205 Finance-Bank-SentinelBenefits-Csv401kConverter # uses stash entries with ::
206 Forest-Tree-Viewer-Gtk2 # gtk tests are graphical
207 Form-Factory # uses old moose apis
209 GOBO # coerce with no coercion
210 Games-Pandemic # tk doesn't build
211 Games-RailRoad # tk doesn't build
212 Games-Risk # tk doesn't build
213 Games-Tetris-Complete # requires threads
214 Getopt-Chain # p::d::builder changed dists
215 Google-Spreadsheet-Agent # pod::coverage fail
216 HTML-TreeBuilderX-ASP_NET # broken
217 Hobocamp # configure_requires needs EU::CChecker
218 Horris # App::Horris isn't on cpan
219 IM-Engine-Plugin-Dispatcher # p::d::declarative changed dists
220 JavaScript-Framework-jQuery # coerce with no coercion
222 Kamaitachi # pod::coverage fail
223 KiokuDB-Backend-Files # broken
224 Locale-MO-File # broken
225 Log-Dispatch-Gtk2-Notify # gtk tests are graphical
226 MSWord-ToHTML # requires abiword to be installed
227 Mail-Summary-Tools # DT::Format::DateManip is broken
228 MediaWiki-USERINFO # broken
229 MooseX-Attribute-Prototype # uses old moose apis
230 MooseX-DBIC-Scaffold # needs unreleased sql-translator
231 MooseX-DOM # "no Moose" unimports confess
232 MooseX-Documenter # broken
233 MooseX-Error-Exception-Class # metaclass compat breakage
234 MooseX-Meta-Attribute-Index # old moose apis
235 MooseX-Meta-Attribute-Lvalue # old moose apis
236 MooseX-Struct # ancient moose apis
237 MooseX-TrackDirty-Attributes # old moose apis
239 Net-Dropbox # no tests
241 Net-Fluidinfo # broken
242 Net-HTTP-Factual # broken
244 Net-Parliament # broken
246 Net-Recurly # no tests
247 Net-StackExchange # broken
248 NetHack-Item # NH::Monster::Spoiler is broken
249 NetHack-Monster-Spoiler # broken (MX::CA issues)
250 Nginx-Control # requires nginx to be installed
251 ODG-Record # Test::Benchmark broken
252 POE-Component-DirWatch-Object # broken
253 POE-Component-ResourcePool # broken
254 POE-Component-Server-MySQL # no tests
255 POE-Component-Server-PSGI # broken deps
256 POEx-ProxySession # broken deps
257 POEx-PubSub # broken deps
258 POEx-WorkerPool # broken deps
259 Paludis-UseCleaner # needs cave::wrapper
260 Parse-FixedRecord # broken
261 Perlanet # HTML::Tidy requires tidyp
262 Perlbal-Control # proc::processtable doesn't load
263 Pg-BulkCopy # hardcodes /usr/bin/perl
265 Random-Quantum # no tests
266 RDF-Server # "no Moose" unimports confess
268 Reaction # signatures is broken
269 Reflexive-Role-Collective # broken (reflex::role changes?)
270 Reflexive-Role-DataMover # broken (reflex::role changes?)
271 Reflexive-Role-TCPServer # broken (reflex::role changes?)
272 SRS-EPP-Proxy # depends on xml::epp
274 Scene-Graph # has '+attr' in roles
275 SchemaEvolution # no tests
276 Server-Control # proc::processtable doesn't load
277 SilkiX-Converter-Kwiki # file::mimeinfo expects (?-xism:
278 SimpleDB-Class # requires memcached
279 String-Blender # broken
281 Tail-Tool # Getopt::Alt doesn't exist
282 Tapper-Installer # sys::info::driver::linux is broken
283 Tapper-MCP # sys::info::driver::linux is broken
284 Tapper-MCP-MessageReceiver # sys::info::driver::linux is broken
285 Tapper-Reports-API # sys::info::driver::linux is broken
286 Telephone-Mnemonic-US # rpm-build-perl is broken
288 Thorium # requires Hobocamp
289 Tk-Role-Dialog # tk won't compile
290 TryCatch-Error # broken
291 Verby # requires poe::component::resourcepool
293 WWW-Fandango # bad dist
294 WWW-Metalgate # Cache is broken
295 WWW-Scramble # pod::coverage fail
296 WWW-StaticBlog # time::sofar is broken
297 WWW-Yahoo-Lyrics-JP # broken
298 Weaving-Tablet # tk doesn't compile
299 WebService-Buxfer # no tests
300 WebService-CloudFlare-Host # no tests
301 WebService-Yes24 # broken
303 XIRCD # undeclared deps
304 XML-EPP # coerce without coercion
305 Yukki # git::repository is broken
306 mobirc # http::engine broken
307 namespace-alias # won't compile
309 # dep resolution failures or something (these pass when run manually)
312 App-Benchmark-Accessors
313 Bot-BasicBot-Pluggable
314 Bot-BasicBot-Pluggable-Module-JIRA
317 Cantella-Worker-Role-Beanstalk
318 Catalyst-Plugin-Session
322 CatalystX-Syntax-Action
324 Chart-Weather-Forecast
329 DBIx-Class-DeploymentHandler
330 Data-SearchEngine-ElasticSearch
332 Dist-Zilla-Plugin-DualLife
333 Dist-Zilla-Plugin-GitFlow
334 Dist-Zilla-Plugin-MetaResourcesFromGit
335 Dist-Zilla-Plugin-Rsync
336 Dist-Zilla-Plugin-Test-CPAN-Changes
337 Dist-Zilla-Plugin-Test-Kwalitee
338 Dist-Zilla-PluginBundle-ARODLAND
339 Dist-Zilla-PluginBundle-Author-OLIVER
340 Dist-Zilla-PluginBundle-FLORA
341 Dist-Zilla-PluginBundle-NIGELM
342 Dist-Zilla-PluginBundle-NUFFIN
343 Dist-Zilla-PluginBundle-RBUELS
346 Finance-Bank-SuomenVerkkomaksut
353 Graphics-Primitive-Driver-Cairo
354 Graphics-Primitive-Driver-CairoPango
356 HTML-FormHandler-Model-DBIC
358 IO-Multiplex-Intermediary
362 LWP-UserAgent-OfflineCache
363 Locale-Handle-Pluggable
369 MooseX-Method-Signatures
376 POE-Component-Client-MPD
377 POE-Component-DirWatch
378 POE-Component-IRC-Plugin-Role
379 POE-Component-MessageQueue
380 POE-Component-Server-SimpleHTTP
383 Pod-Weaver-Section-Encoding
386 Reflexive-Stream-Filtering
388 Template-Plugin-Heritable
393 VANAMBURG-SEMPROG-SimpleGraph
399 WebNano-Controller-CRUD