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

CONTRIBUTING

How to contribute to MooX-Role-Parameterized?

DESCRIPTION

Patches are welcome!

They must be built against the main branch, then submitted as pull requests at GitHub.

The documentation is written using the POD format. Use the perldoc tool to render it in a terminal:

    perldoc CONTRIBUTING.pod

PATCHING, STEP BY STEP

1. Get the source
    git clone --origin upstream git://github.com/peczenyj/MooX-Role-Parameterized.git
    cd MooX-Role-Parameterized
    git checkout main
2. Install build dependencies

Not required for doc patches.

    curl -L https://cpanmin.us | perl - --installdeps --with-develop .
3. Make your fix/feature
    git checkout -b <my-patch> main

    # edit files and add modification

    # Run the testsuite
    prove -v

    git commit -s -m '<<some nice message>>'
4. Setup a fork
4.1. Fork the project on GitHub

(You are using MooX-Role-Parameterized isn't it?)

    git remote add github <github-user>.github.com:<github-user>/MooX-Role-Parameterized.git
5. Submit your work
5.1 Push!
    git push github <my-patch>
5.2 Submit a pull request on GitHub
6. Loop

Redo from step 3.

FOR RELEASE MANAGER

  • Bump $VERSION

        git checkout main
        # Bump version number
        $EDITOR lib/MooX/Role/Parameterized/Mop.pm
        $EDITOR lib/MooX/Role/Parameterized/With.pm
        $EDITOR lib/MooX/Role/Parameterized.pm
        # Update changelog
        $EDITOR Changelog
        # update readme
        git add .
        git commit
  • Release

        git checkout main
        perl Makefile.PL
        make
        make test
        make manifest # in case of adding new files / tests / examples...
        make dist
        ...