-
Notifications
You must be signed in to change notification settings - Fork 0
Projects
Use this page to describe projects you want to work on at the hackathon. This page is formatted with POD, so you can follow the example of projects already posted; just select "Pod" from formats. You can use POD skeleton, modified to your project's needs.
Rocky Bernstein [email protected]
Florian Ragwitz (rafl)
Jordan Adler
Jason May
David H. Adler
Sign up for this project if you want to hack on the Perl 5 core distribution. Experience helpful, but not necessary. If you have never hacked on the core before, we will assign you tasks that require only knowlege of Perl and that will be helpful for the core, particularly in the lead-up to this spring's release of Perl 5 Version 18.
-
Sites
-
Source Code: perl.git
-
Bug Tracker: RT
-
Mailing List: Perl 5 Porters
-
IRC: irc.perl.org #p5p
-
-
Getting and Building Perl 5
% git clone git://perl5.git.perl.org/perl.git perl % cd perl % sh ./Configure -de -Dusedevel % make % make test
-
Add descriptions to tests lacking them
There are many test files in the core distribution which lack descriptions for individual tests. Task is to study the test code and write an appropriate description. We will provide a list of test files needing attention.
-
Write a Porting/README explaining Porting contents
See: RT #116477.
-
Flesh out perlexperiment.pod
See: RT #116473
-
Automate perldelta's "new modules" section
See: RT #116475
-
Supply patches to upstream to fix perl install locations
See: RT #116479
-
Write test to ensure perlhist.pod has size for blead-final release
See: RT #116481
-
Profile installman and improve its performance
See: RT #116485
-
Resolve discrepancy between Porting/perltodo.pod and pod/perlhack.pod re t/cmd/
See: RT #116615
-
Make perl core libraries run under strictures
xdg has been reviving chromatic's strictperl patch to allow building an experimental variant of perl with strict defaulting to being on. This breaks a number of core libraries, so someone(s) need to go through those and fix them or file upstream bug reports about it.
-
Synchronise core-maintained dual-life modules with CPAN
Many modules that ship with the perl core are maintained primarily as part of it and only ocasionally shipped to CPAN so that users of older versions of perl get to use the latest versions as well and so other CPAN modules can declare dependencies on those versions easily.
Right now there's a lot of module updates in the core that haven't made their way to CPAN yet. This needs to be worked on.
Jim Keenan, [email protected], IRC: kid51
Charlie Gonzalez, [email protected] IRC:itcharlie
Stevan Little, [email protected], IRC:stevan
Florian Ragwitz, [email protected], IRC:rafl
Arthur Goldstein, [email protected]
Augustina Blair, [email protected], IRC:auggy
Matthew Ryder, [email protected].
Nick Patch, [email protected], IRC:patch
Martin Heinsdorf, [email protected]
David H. Adler
...and Ricardo Signes (rjbs) will help out when called for
...ditto David Golden (xdg) if people want to tackle strictperl
Update the Catalyst SOAP modules to make it work with the latest Catalyst. They have some things that are dependent on internal mechanics of Catalyst that are not working properly with the newest versions.
-
Web Site: http://search.cpan.org/~druoso/Catalyst-Controller-SOAP-1.23/
-
Source Code Repository: https://github.com/ruoso/Catalyst-Controller-SOAP
-
Version Control System: Git
-
make sure it works with the latest of all dependencies.
-
address all reported test failures
-
solve any outstanding issues from RT.
Daniel Ruoso, [email protected], IRC: ruoso ; Mark Phelan, [email protected]
PAUSE is where CPAN authors upload modules. It's a gory mudball of code and has worked brilliantly for years.
A while ago RJBS and DAGOLDEN had a PAUSE micro-hackathon to improve its test suite but there is more work to be done. Once we have tests, it's easier to refactor and modernize it.
This project will aim to continue making PAUSE more contributor-friendly.
-
Github page: https://github.com/andk/PAUSE
-
Repo URL:
git://github.com/andk/pause.git
-
Get familiar with the code
-
Decide on what to test
-
Write tests
-
Decide if tests are sufficent to refactor something
-
Profit!
Ricardo Signes (rjbs)
David Golden (xdg)
Nick Patch (patch)
Interested, but frightened: David H. Adler
HTTP::Tiny is a minimalist HTTP client included in the Perl core. HTTP::CookieJar is a minimalist cookie jar implementation. This project will patch HTTP::Tiny to use a cookie jar if one is given to it.
-
Get familiar with the code
-
Add
cookie_jar
attribute to HTTP::Tiny -
Teach HTTP::Tiny to get/set cookies from requests and responses
-
Write tests to confirm correct behavior
David Golden (xdg)
Stevan Little, [email protected], IRC:stevan
Most of our systems here at RubensteinTech run CentOS and Red Hat Enterprise Linux (RHEL), both RPM-based systems, and as we move to a more DevOps-based environment we are automating the setup and rollout of both development and production environments. While it is relatively easy to manually install CPAN modules in an automated fashion, and we do so currently, the DevOps process can benefit from all that RPM Package Manager (RPM) provides as far as versioning, updates, per-requisite and conflict control, etc. The situation has improved dramatically over the years thanks to the tireless work of many RPM packagers, but it's still incredibly frustrating that 95% of the modules we use are available as RPMS, and 5% are still not.
We know we're not the only ones in this boat, and every CPAN module we can provide in RPM format to a public repository will benefit those that perhaps don't have the ability, resources, or administrative authority to install CPAN modules manually. We know some organizations forbid their teams to use modules that can't be installed via RPM on their production servers, so modules without an RPM package are effectively off-limits for those users.
This project seeks to help change that. We hope to determine the best practices for packaging CPAN modules as RPM files, setup an environment to do so, package up a set of modules, and publish them into a new repository to share with the community. With any luck, we'll be able to document the process to make this easy for other volunteers to enhance. And, maybe, down the line there will be an official Perl CPAN RPM repository (which, quite frankly, is what we should have as our ultimate goal).
-
Get familiar with the current best practices for packaging CPAN modules as RPMS
-
Create a sandbox environment for packaging modules, and scripts to automate the process
-
Package a set of CPAN modules not currently available in RPM format (Goal: 10)
-
Setup a new Yum repository for these modules and publish this to the Web.
-
Share it with the world, and rejoice at the added ease of system administration for RPM-based systems!
Jaron Rubenstein (JRUBEN), rocky (ROCKY) to get in my CPAN repositories on repoforge, ...
Edward Zborowski, [email protected]
A couple of us at Shutterstock have independently built nicer clients for [statsd](https://github.com/etsy/statsd/) than the stock Net::Statsd. I want to merge what's good about them and release it to CPAN. Features include OO, more ease of configuration, sending multiple measurements per packet, and much easier-to-use timers.
-
Extract the code from both modules
-
Refine the interface
-
Docs
-
Tests
Andrew Rodland (CPAN: ARODLAND, IRC: hobbs)
Support for separating many intermingled changes into sensible git commits without a zillion passes through git-add -p
. Secondarily, build Perl library for dealing with git.
See https://github.com/mjdominus/git-split-commit and http://blog.plover.com/prog/git-habits.html.
-
Figure out current state of the project
-
Write a Perl module that can parse a
git
patch file (plus tests for it) -
Write a utility program that can break a patch into multiple small patches
-
What next?
Mark Dominus (CPAN: MJD, IRC: yrlnry)