Sponsors

Donate


thinkproject!

Amazon Development Center Germany GmbH

STRATO

Booking.com

AffinityLive.com

Travis CI

Perl 6

Bluehost

GFU

Evozon

Mongueurs de Perl

YAPC Europe Foundation

infinity interactive

neo4j



liquidweb

elasticsearch

dreamhost

procura

MongoDB

campus explorer

Perl QA Hackathon 2015

Proposed Projects

Table of Contents

  • CPAN Governance
  • PAUSE
  • CPAN clients
  • Module metadata
  • Build & install systems
  • Module testing
  • Automated testing
  • Quality metrics and assessment
  • Benchmarking
  • Documentation
  • Perl 5 Core
  • Perl 6 CPANish client and ecosystem
  • YAML Ecosystem
  • Code Coverage
  • Spectest coverage for "Perl 6.0.0"

CPAN Governance

  • Discuss and hopefully form a body with a mandate to act as a last-ditch-effort protecting the fragile CPAN ecosystem from PAUSE authors. Currently there isn't an actual hard proposal. At this point all that is being gauged is interest in the broadest sense possible.

— by ribasushi +1, user:garu, Karen Etheridge (‎Ether‎), Neil Bowers (‎NEILB‎), Aristotle, Olivier Mengué (‎dolmen‎), Leon Timmermans (‎leont‎), Jens Rehsack (‎Sno‎), others???

PAUSE

Improve Web UI

  • Port mod_perl1 interface to PSGI
  • Make it easier to change permissions for those who maintain a lot of modules.

— by Kenichi Ishigaki (‎charsbar‎), Aristotle, (Tatsuhiko Miyagawa (‎miyagawa‎) is happy to help on PSGI related) others?

Other PAUSE issues

Check https://github.com/andk/pause/issues

  • Finally kill off the remnants of the module list (website pages, underlying code, supporting tables)

— by ???, Aristotle, ???

CPAN clients

Improve CPAN::Testers::Common::Client (hopefully fixing most/all reports) and make CPAN::Reporter and cpanminus-reporter use it more thoroughly.

— by user:garu

Work on an extremely light, dependency-free script to send (or at least gather) reports on smoker boxes that can't have Metabase and Test::* pre-installed.

— by user:garu, H.Merijn Brand (‎Tux‎)?

cpanm

Big improvement/rewrites to make cpanm a regular CPAN module (and extract useful bits as standalone modules as well). This will also include hooks and plugins, although that might be a bit too ambitious for even a 4-day project.

Support for distroprefs.

- Tatsuhiko Miyagawa (‎miyagawa‎)

Carton/Carmel

Work on https://github.com/miyagawa/Carmel and release 1.0, to make it a successor of Carton (or call it Carton 2.0, if the transition is transparent enough). Also need to close a bunch of outstanding issues on Carton, some of which would be problematic in Carmel as well.

- Tatsuhiko Miyagawa (‎miyagawa‎)

Module metadata

Build & install systems

Module::Build replacement

Finish various components of a planned Module::Build replacement, including

  • Finish Build::Graph, a dependency engine that doesn't suck
  • Write a plugin architecture that doesn't suck, this will probably require some kind of IOC.

— by Leon Timmermans (‎leont‎), Aristotle

Module::Install

  • Fix META generation: make v2 META (to have properly split build/test requires)
  • Inject Module::Install and plugins as develop/requires prereqs

— by Olivier Mengué (‎dolmen‎)

Compilation and Linking tools

Portable yet flexible (cross) compilation/linking tools are most welcome.

— by: Leon Timmermans (‎leont‎), H.Merijn Brand (‎Tux‎), Jens Rehsack (‎Sno‎)

Installed module database / Packlists replacement

Start writing that .packlist replacement we discussed in Lancaster.

— by Leon Timmermans (‎leont‎), Jens Rehsack (‎Sno‎), Aristotle, Tatsuhiko Miyagawa (‎miyagawa‎) others?…

MakeMaker::Extension

Start writing an easy to use EUMM extension framework and some early adopter plugins as
* make test-cover
* install config files to etc, smooth File::ShareDir::Install successor

— by: Jens Rehsack (‎Sno‎), others?

Static cpan installation

Our current installation mechanism is very flexible (in a Turing complete way), but most of the time that isn't necessary. It could be useful if this dependency on shelling out to Makefile.PL/Build.PL could be eliminated where possible.
— by Leon Timmermans (‎leont‎), miyagawa

PPM::Make

PPM::Make could use other toolchain modules/services to gather package information.

— by Kenichi Ishigaki (‎charsbar‎)

Module::Metadata

pare down https://github.com/Perl-Toolchain-Gang/Module-Metadata/issues/, especially in-progress features and bug fixes:
- evaluate module version in safe compartment
- interfaces to parse module by module name, filename, filehandle, which will properly allow us to understand utf8-encoded modules
- close the behaviour gap with MM->parse_version and PAUSE, allowing MMD to be dropped into PAUSE seamlessly

— by Karen Etheridge (‎Ether‎)

File::ShareDir and File::ConfigDir

* discuss with interested people how File::ShareDir and File::ConfigDir will fit into modern OS file system layout and how to deal with Filesystem Hierarchical Standard, the typical bin/, etc/, lib/, libexec/, man/, share/, sbin/, var/ ... layout for dedicated installations etc.

— by Jens Rehsack (‎Sno‎)

Module testing (not automated testing)

Update Modules for Test-Stream

Find popular/common test modules on cpan (Test::Fatal, Test::exception, etc) that do not utilize Test::Stream. Update them to take advantage of Test::Stream enhancements when possible. In most cases this means working fine on old versions of Test-Simple while using new features when they are present already. For some modules the author and users may be fine with bumping the minimum Test-Simple version, but that will not be assumed.

This project should generate a lot of pull requests, and will also require a lot of communication with authors of the modules we update. With any luck most authors will be present!

-- by Chad Granum (‎Exodist‎)

Automated testing (not module testing )

Travis CI

Travis CI GmbH has their HQ in Berlin (Rigaer Straße 8) and I have a few friends working there (although most of them are remote). If someone wants to work on better build environments for perl on Travis CI, I'd be happy to connect with them. -- Tatsuhiko Miyagawa (‎miyagawa‎)

Benchmarking

Based on earlier work (and a new release of Tapper) I plan to resurrect my Perl::Formance project about measuring Perl 5 performance.

In addition, I would like to incorporate benchmarking from other sources into Tapper, maybe from Perl6, Parrot releases, or CPAN module tests. In contrast to earlier years, this year I want to have my Tapper release work finished before arriving, so that I have time to talk to others about how to cooperate with existing projects.

If you are interested in any kind of performance evaluation related work, please talk to me at the hackathon.

— by Steffen Schwigon (‎renormalist‎)

CPAN Testers

  • Add MessageQueue to reports feed
  • Add MessageQueue to page builder
  • Fix Admin process for alerting tester to accept marked reports
  • Add Admin process to re-attribute a report to a different distro

— by Barbie.

Quality metrics and assessment

CPANTS metrics

Add and improve some metrics, both for uploaded distributions, and for local projects that use Test::Kwalitee, Module::CPANTS::Analyse
and its friends.

— by Kenichi Ishigaki (‎charsbar‎), Karen Etheridge (‎Ether‎), others?

CPANTS Web

  • Make it analyze more frequently so that people can check the analysis just after they upload.

— by Kenichi Ishigaki (‎charsbar‎)

Dashboard / Adoption / PRC

I have three different systems in various stages of production, all based off data assembled from various places. I'm working on a unified design for a public & open system which covers all 3. Would like to talk to CPANTS, CPAN Testers, MetaCPAN etc on interface model.

— by Neil Bowers (‎NEILB‎)

CPAN dependency graph in Neo4j

Experiment with building a graph database of CPAN dependency
information. Initially looking at distributions, but then possibly
looking at modules too.

— by Neil Bowers (‎NEILB‎)

P5 TAP::Harness parallel testing on Win32

I made a crude prototype of parallel testing on Win32 https://rt.perl.org/Public/Bug/Display.html?id=120330 but TAP::Harness, which is extensively OO designed, but it needs serious work to fit a different, non-select() based event loop into it. I can do the Win32 side of things, but I looking for someone who is willing to call themselves the "architect" of TAP::Harness to help me.

— by bulk 88

Documentation

CPAN culture

Pull together some kind of statement of CPAN culture, with the values and principles that we choose to live by.

— by Neil Bowers (‎NEILB‎)

Being a good CPAN author

It's clear from my mailbox at the moment that we don't have very good documentation on the toolchain / CPAN development process for new authors. I'd like to sketch out a guide that takes someone from complete n00b to reliable CPAN contributor. I'll start this before the QAH, but the QAH is a great opportunity to get guidance & input.

— by Neil Bowers (‎NEILB‎)

revise perlguts

perlguts is seen by some community members as impossible to understand. Most of it was written between 1997 and 2000. After 2000, it has only received narrow scoped quick fly-by patches. Senior XS/C developers dont use perlguts, since they already know how to do things from experience. Amateurs say it is too difficult to understand and use Inline::C or FFI solutions or not Perl. XS tutorial talks often pop-up at YAPCs because of this. A meeting of some senior XS/C devs to write answers and some amateurs to provide questions and criticism about the layout of the document I think would be useful.

— by bulk 88

Perl 5 Core

Perl 6 CPANish client and ecosystem

Discuss the architectureal big picture

Currently things are not much documented, and some parts of the toolchain have serious deficiencies. A roadmap on how to tackle that would be most welcome.

— by Leon Timmermans (‎leont‎), Tobias Leich (‎froggs‎)

Finish TAP::Parser

Current list of open issues:

  • Parallel console outputting
  • Rule based parallel scheduling
  • SourceHandlers other than ::Perl6
  • Various prove arguments
  • Serialize/deserialize YAMLish

— by Leon Timmermans (‎leont‎)

YAML Ecosystem

Make significant progress on these goals:

  • Comprehesive shared YAML test suite
  • Pegex YAML grammar
  • YAML.pm parser Pegex based
  • YAML.pm and YAML::Tiny shared cores
  • YAML{.pm,::{XS,Tiny,Syck}} convergence

— by Ingy döt Net (‎ingy‎)

Code Coverage

  • Tidy some of the edges in cpancover.com
  • Improve the HTML creation (404 errors)
  • Integrate with metacpan
  • List each dist at most once: latest developer if there is one, and latest non-developer
  • Fix Devel::Cover problems resulting from op tree changes for 5.22

— by Paul Johnson (‎pjcj‎) (and maybe a bit of Neil Bowers (‎NEILB‎))

Spectest coverage for "Perl 6.0.0"

  • Mark certain test files and also single tests or code blocks as applicate for a certain release of Perl 6.
  • Extract per release tests from roast, the spectest repository.

— by Tobias Leich (‎froggs‎)


version 50 saved on 13/03/15 10:39 by Jens Rehsack (‎Sno‎)

Home | Tags | Recent changes | History