The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Developing OAuthomatic

Grabbing the source

This code is maintained in Mercurial repository at bitbucket.org/Mekk/perl-oauthomatic:

hg clone https://bitbucket.org/Mekk/perl-oauthomatic

or

hg clone ssh://hg@bitbucket.org/Mekk/perl-oauthomatic

If you can't speak Mercurial, Download repository.

Released versions can be downloaded from CPAN:

cpanm --look OAuthomatic

but note, that they are mashed-up by Pod::Weaver, so it is not recommended to edit those versions and patches made against them are not very welcome.

Building and testing

This module uses Dist::Zilla for build and release.

Install dependencies:

dzil listdeps --all --missing   |  cpanm --sudo

Build distro:

dzil build

(or dzil build --verbose to get better info what is built).

Review documentation shape:

firefox README.html
firefox OAuthomatic-X.Y/docs/

Test:

prove -l           # without build
dzil test          # with build
dzil test --all    # with build, also release and author tests

Separate perl::critic:

perlcritic --profile perlcritic.rc lib
# Elaborate
perlcritic --profile perlcritic.rc --verbose 10 lib

Making CPAN release (author only):

  • edit version number in dist.ini (tag will be placed automatically)

  • build, test, and publish to CPAN:

    dzil release
  • push source changes:

    hg push bitbucket

Contributing

Preferable form: BitBucket pull requst (fork repository on BitBucket, implement changes, issue pull request).

I will also accept patches - Mercurial bundle, git-diff or plain diff (in this order of preference). In case of diffs, please specify the version diff is made against. Patches may be attached to either BitBucket (preferably), or CPAN issue tracker.

For bigger changes, please open issue and describe your idea before working on the code.