[Rio-pm] Release de modulo Beta no CPAN

2014-05-20 Por tôpico Samir Cury
Pessoal,

Outro dia na lista, li alguem dizendo : manda pro CPAN logo como beta

Como estou no passo intermediario para o meu primeiro modulo decente, com
testes e tudo mais, talvez nao tenha visto essa opcao ainda. Pesquisando um
pouco esbarrei com todas essas definicoes :

http://search.cpan.org/dlsip?bpmOp

Ja que o modulo funciona, esta documentado e passa no prove, achei
interessante subir como beta, e lancar novas releases quando fizer mais
refatoracoes.

Enfim. Queria confirmar com a galera que ja trilhou este caminho, que
quando eu for realmente subir o modulo vou ter a opcao de marcar como beta.

Pra quem estiver curioso este e o modulo :

https://github.com/samircury/HTCondor--Queue--Parser

Abs,
Samir
___
Rio-pm mailing list
Rio-pm@pm.org
http://mail.pm.org/mailman/listinfo/rio-pm

Re: [Rio-pm] Release de modulo Beta no CPAN

2014-05-20 Por tôpico Samir Cury
Sim, passei o olho nisso, mas meio que ignorei pois o mesmo usa Dist::Zilla
e lembro que os 2 metodos mais recomendados eram Module::Build e
Module::Make.

Lendo melhor, parece que rola uma discussao entre usar as flags oficiais do
CPAN ou _ na versao. Hum.

Meio tosco que as flags oficiais do CPAN sao mais inuteis do que um _ na
versao. Mas o argumento da confusao no metacpan faz sentido.

De qualquer jeito quando visito a pagina um modulo nao vejo a flag la :

http://search.cpan.org/~ingy/Module-Make-0.01/lib/Module/Make.pm

Entao de repente o melhor e fazer como o ingy e colocar uma nota no POD.

Abs


2014-05-20 11:39 GMT-07:00 Renato Santos renato.c...@gmail.com:

 *
 http://blogs.perl.org/users/oliver_gorwits/2011/10/releasing-trialdevbeta-versions-with-distzilla.html

 #fastreply


 2014-05-20 15:35 GMT-03:00 Samir Cury samircu...@gmail.com:

 Pessoal,

 Outro dia na lista, li alguem dizendo : manda pro CPAN logo como beta

 Como estou no passo intermediario para o meu primeiro modulo decente,
 com testes e tudo mais, talvez nao tenha visto essa opcao ainda.
 Pesquisando um pouco esbarrei com todas essas definicoes :

 http://search.cpan.org/dlsip?bpmOp

 Ja que o modulo funciona, esta documentado e passa no prove, achei
 interessante subir como beta, e lancar novas releases quando fizer mais
 refatoracoes.

 Enfim. Queria confirmar com a galera que ja trilhou este caminho, que
 quando eu for realmente subir o modulo vou ter a opcao de marcar como beta.

 Pra quem estiver curioso este e o modulo :

 https://github.com/samircury/HTCondor--Queue--Parser

 Abs,
 Samir



 ___
 Rio-pm mailing list
 Rio-pm@pm.org
 http://mail.pm.org/mailman/listinfo/rio-pm




 --
 Saravá,
 Renato CRON
 http://www.renatocron.com/blog/
 @renato_cron http://twitter.com/#!/renato_cron

 ___
 Rio-pm mailing list
 Rio-pm@pm.org
 http://mail.pm.org/mailman/listinfo/rio-pm

___
Rio-pm mailing list
Rio-pm@pm.org
http://mail.pm.org/mailman/listinfo/rio-pm

Re: [Rio-pm] Release de modulo Beta no CPAN

2014-05-20 Por tôpico Aureliano Guedes
Sim, passei o olho nisso, mas meio que ignorei pois o mesmo usa Dist::Zilla e 
lembro que os 2 metodos mais recomendados eram Module::Build e Module::Make.
Posso estar enganado, mas esses 'eram' os mais recomendados. O Dist::Zilla é 
mais recente porem creio que seja o melhor e atualmente o 'mais recomendado'.

Date: Tue, 20 May 2014 11:52:43 -0700
From: samircu...@gmail.com
To: rio-pm@pm.org
Subject: Re: [Rio-pm] Release de modulo Beta no CPAN

Sim, passei o olho nisso, mas meio que ignorei pois o mesmo usa Dist::Zilla e 
lembro que os 2 metodos mais recomendados eram Module::Build e Module::Make.
Lendo melhor, parece que rola uma discussao entre usar as flags oficiais do 
CPAN ou _ na versao. Hum. 


Meio tosco que as flags oficiais do CPAN sao mais inuteis do que um _ na 
versao. Mas o argumento da confusao no metacpan faz sentido. 
De qualquer jeito quando visito a pagina um modulo nao vejo a flag la : 

http://search.cpan.org/~ingy/Module-Make-0.01/lib/Module/Make.pm

Entao de repente o melhor e fazer como o ingy e colocar uma nota no POD.

Abs

2014-05-20 11:39 GMT-07:00 Renato Santos renato.c...@gmail.com:

* 
http://blogs.perl.org/users/oliver_gorwits/2011/10/releasing-trialdevbeta-versions-with-distzilla.html



#fastreply

2014-05-20 15:35 GMT-03:00 Samir Cury samircu...@gmail.com:



Pessoal,
Outro dia na lista, li alguem dizendo : manda pro CPAN logo como beta




Como estou no passo intermediario para o meu primeiro modulo decente, com 
testes e tudo mais, talvez nao tenha visto essa opcao ainda. Pesquisando um 
pouco esbarrei com todas essas definicoes : 

http://search.cpan.org/dlsip?bpmOp

Ja que o modulo funciona, esta documentado e passa no prove, achei 
interessante subir como beta, e lancar novas releases quando fizer mais 
refatoracoes.




Enfim. Queria confirmar com a galera que ja trilhou este caminho, que quando eu 
for realmente subir o modulo vou ter a opcao de marcar como beta.
Pra quem estiver curioso este e o modulo :





https://github.com/samircury/HTCondor--Queue--Parser
Abs,Samir




___

Rio-pm mailing list

Rio-pm@pm.org

http://mail.pm.org/mailman/listinfo/rio-pm



-- 
Saravá,

Renato CRONhttp://www.renatocron.com/blog/


@renato_cron


___

Rio-pm mailing list

Rio-pm@pm.org

http://mail.pm.org/mailman/listinfo/rio-pm



___
Rio-pm mailing list
Rio-pm@pm.org
http://mail.pm.org/mailman/listinfo/rio-pm  
  ___
Rio-pm mailing list
Rio-pm@pm.org
http://mail.pm.org/mailman/listinfo/rio-pm

Re: [Rio-pm] Release de modulo Beta no CPAN

2014-05-20 Por tôpico Blabos de Blebe
Ao colocar o underline na versão, vc evita que os instaladores usem essa
versão inadvertidamente, embora ela ainda seja instalável se for
especificado o caminho completo para o pacote.

Assim, você pode usar a infra-estrutura do cpan testers pra testar o seu
módulo antes de um release público, sem prejudicar quem já está usando uma
versão estável do seu módulo.

O Dist::Zilla não é uma unanimidade, embora eu o utilize na maioria dos
meus módulos públicos ou privados. Eventualmente pode ser chato lidar com
alguns bugs em edge cases, mas normalmente ele tira muito boiler plate da
sua frente.

A vantagem do dzil é que ele encapsula o acesso a ferramentas de várias
fases do processo de desenvolvimento, desde o startup do módulo até o
release no cpan.

Eventualmente você pode dividir esse processo em algo como:

1) Fase 1: Fazer o bootstrap do seu pacote.

Isso significa criar os diretórios padrão (/lib, /t, etc) bem como os
arquivos auxiliares.

Além do dzil, um aplicativo que eu uso pra fazer o bootstrap dos meus
módulos é o https://metacpan.org/pod/Module::Starter

Com ele você pode escolher qual builder você vai utilizar pra montar o seu
pacote.

2) Fase 2: code, code, code

3) Fase 3: Build

No processo de build, uma peça de software é utilizada para juntar tudo que
o seu pacote vai precisar para ser instalado em uma máquina qualquer.

Essa etapa pode ser baseada em vários builders como:

https://metacpan.org/pod/ExtUtils::MakeMaker
https://metacpan.org/pod/Module::Build
https://metacpan.org/pod/Module::Install

Esses builders baseiam-se em arquivos perl (Makefile.PL, Build.PL, etc)
para a partir de apontamentos que você faz, verificar as dependências,
criar o Makefile e seus alvos,gerar o .tar.gz entre outras coisas
necessárias para tornar o seu módulo instalável.

Quando vc instala um módulo manualmente, normalmente o processo é:

a) Baixar e descompactar o .tar.gz
b) perl Makefile.PL (ou perl Build.PL). Isso vai criar um arquivo Makefile
adaptado pra sua máquina.
c) make. Isso vai fazer o build do seu módulo, eventualmente compilando XS,
se for o caso, etc
d) make test. Lê o Makefile para executar os testes do seu módulo.
e) make install

Quando você cria um módulo, para montar o .tar.gz normalmente você faz:

a) perl Makefile.PL (ou perl Build.PL). Isso vai criar um arquivo Makefile
adaptado pra sua máquina.
b) make manifest. Isso vai criar uma lista com todos os arquivos que
precisam ser distribuídos dentro do seu .tar.gz
c) make dist. Isso vai criar um .tar.gz do seu módulo, dentro do qual,
haverá um Makefile.PL (ou Build.PL), e *não* um Makefile.

Os arquivos *.PL precisam ser executados no momento da instalação para que
o Makefile seja montado de acordo com a máquina onde ele está sendo
instalado e não de acordo com a máquina onde o módulo foi criado.


4) Release.

Consiste em enviar o seu módulo para o CPAN.

***

O Module::Make eu vou desconsiderar, porque ele só tem uma versão antiga
lançada e nenhum outro módulo do cpan o utiliza (
https://metacpan.org/requires/distribution/Module-Make?sort=[[2,1]]).

***

Com o dzil você tem uma ferramenta, que em conjunto com plugins cobre todas
as etapas listadas acima e mais algumas outras, como integração com o seu
sistema de controle de versão e simplificação da criação de POD, por
exemplo.

Já se você preferir fazer sem ele, você pode fazer tudo manualmente, ou
usar qualquer dessas ferramentas citadas acima pra cobrir uma fase ou
outra, ou ainda combiná-las entre si.

Eu particularmente tenho módulos que usam o dzil (
https://github.com/blabos/Dancer2-Plugin-Paginator) e módulos que não usam (
https://github.com/blabos/Paginator-Lite).

E quando não uso, tenho preferência por criar o módulo com o
Module::Starter (não confundir com https://metacpan.org/pod/Module::Start)
usando como builder o Module::Install.

***

Finalizando, só preste atenção no que você deseja fazer e escolha a
ferramenta que achar mais adequada, tendo em mente que embora seja
relativamente simples criar um módulo e botar no CPAN, há várias etapas
envolvidas, que na maioria das vezes já são até instintivas, mas que se
você misturar as coisas, pode dar a maior confusão.

[]'s






2014-05-20 16:12 GMT-03:00 Aureliano Guedes guedes_1...@hotmail.com:

 Sim, passei o olho nisso, mas meio que ignorei pois o mesmo usa
 Dist::Zilla e lembro que os 2 metodos mais recomendados eram Module::Build
 e Module::Make.

 Posso estar enganado, mas esses 'eram' os mais recomendados. O Dist::Zilla
 é mais recente porem creio que seja o melhor e atualmente o 'mais
 recomendado'.

 --
 Date: Tue, 20 May 2014 11:52:43 -0700
 From: samircu...@gmail.com
 To: rio-pm@pm.org
 Subject: Re: [Rio-pm] Release de modulo Beta no CPAN


 Sim, passei o olho nisso, mas meio que ignorei pois o mesmo usa
 Dist::Zilla e lembro que os 2 metodos mais recomendados eram Module::Build
 e Module::Make.

 Lendo melhor, parece que rola uma discussao entre usar as flags oficiais
 do CPAN ou _ na