Contribuindo com projetos de software livre
Em 2015 participei do desafio CPAN Pull Request (CPAN-PRC), uma iniciativa do Neil Bowers para promover maior contribuição da comunidade Perl ao CPAN. CPAN ou “Comprehensive Perl Archive Network” é o repositório central de módulos Perl, está no ar desde 1995 e conta hoje com aproximadamente 159 mil módulos.
O desafio foi lançado em dezembro de 2014, para mim foi uma forma de diversão contribuir com projetos de softwares livres escritos em Perl.
- Post do Neil Bowers em dezembro de 2014 lançando o desafio
- Post do Neil dando mais detalhes sobre o desafio
- Repositório no GitHub com dicas para os participantes
A comunidade Perl Brasileira, como sempre, bem antenada aos acontecimentos da comunidade internacional, traduziu grande parte do chamado ao desafio para o português e divulgou nas listas de discussão nacional, em especial no Brasil Perl Mongers:
Em resumo o desafio funcionou da seguinte forma:
(1) Você fazia a inscrição por email com o Neil Bowers <neil@bowers.com>; (2) a cada início de mês um módulo do CPAN é sorteado para você; (3) até o final do mês é preciso enviar ao menos um Pull Request no Github para o módulo sorteado.
Este processo se repetia a cada mês entre Janeiro e Dezembro, eu perdi o prazo para inscrição em Janeiro e só comecei a participar do desafio em Fevereiro, a partir daí me mantive ativo até o final do ano e enviei ao todo 15 Pull Requests.
Fevereiro
Em meu primeiro desafio o módulo sorteado foi o Module::Setup,
fiz uma melhoria no Makefile.PL
para dar alertas de dependencias não
satisfeitas.
Este modulo possuía algumas dependencias não empacotadas no Debian, aproveitei o embalo empacotei e submeti eles ao Debian.
Também atualizei o pacote Test::Base para a última versão do upstream e submeti ao Debian.
Março
Em março Neil sorteou o módulo libnet, fiz uma sugestão de nova
funcionalidade para o Net::FTP
a partir de uma ideia registrada no ticket
#101586 do RT.
Abril
Em Abril fiz uma correção na documentação do módulo Data::Compare.
Maio
O mês de Maio foi a vez do Method::Signatures, fiz um pull-request bem simples, “;” faltando no código fonte.
Junho
Em Junho foi a vez do PDF::Table e pela primeira vez consegui mandar mais de 1 pull-request!
- Pull Request #18 - avoid warnind about use of greediness modifier
- Pull Request #19 - Characters rendered wrong
Julho
Em Julho fiz algo que considero bem divertido, adicionei testes unitários para funcionalidades sem cobertura no módulo cpan-outdated.
Agosto
Em Agosto o tempo foi curto e me atrasei bastante, ainda assim consegui fazer uma pequena contribuição ao módulo Module::CPANTS::Analyse.
Setembro
Setembro foi a vez do Unicode::LineBreak, me atrasei tanto e não consegui enviar o pull-request em tempo, mas o desafio permitia “esticar” o prazo e eu enviei 2 pull-requests.
- Pull Request #1 - testing that GCString stringify numeric arguments
- Pull Request #2 - documenting wget as a testing dependency
Outubro
Em Outubro o módulo sorteado foi o Mojolicious::Plugin::ValidateTiny, Mojolicious é um framework Web muito bom e eu sempre me empolgo para fazer qualquer coisa com ele.
- Pull Request #10 - fix example in SYNOPSIS section of documentation
- Pull Request #11 - indicating the need loading the “Validate::Tiny” module
Outubro foi também o mês do Hacktoberfest da DigitalOcean, a imagem no topo deste post é da camisa e adesivos que ganhei ao completar os 4 Pull Requests para projetos de software livre no Github.
Novembro
Em Novembro foi o módulo XML::API, adicionei testes unitários e resolvi um bug registrado na issue #1.
Dezembro
Dezembro é sempre um mês apertado, mas deu tempo de fechar um bug do módulo URI registrado na issue #13.
–
E assim concluí minha participação no CPAN Pull Request Challenge 2015, Neil Bowers fez um post bem elaborado resumindo a experiência do desafio, nele apresenta números e gráficos da participação, além do resultado de um survey realizado entre todos os participantes.
Ele fez também um post sobre os planos para o desafio de 2016, o qual já começou e eu já estou participando.