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

NAME

Dist::Zilla::PluginBundle::Author::GETTY - BeLike::GETTY when you build your dists

VERSION

version 0.117

SYNOPSIS

  name    = Your-App
  author  = You User <you@universe.org>
  license = Perl_5
  copyright_holder = You User
  copyright_year   = 2013

  [@Author::GETTY]
  author = YOUONCPAN

DESCRIPTION

This is the plugin bundle that GETTY uses. You can configure it (given values are default):

  [@Author::GETTY]
  author = GETTY
  deprecated = 0
  release_branch = master
  weaver_config = @Author::GETTY
  no_cpan = 0
  no_install = 0
  no_makemaker = 0
  no_installrelease = 0
  no_changes = 0
  no_changelog_from_git = 0
  no_podweaver = 0
  xs = 0
  installrelease_command = cpanm .

In default configuration it is equivalent to:

  [@Filter]
  -bundle = @Basic
  -remove = GatherDir
  -remove = PruneCruft

  [Git::NextVersion]
  [PkgVersion]
  [MetaConfig]
  [MetaJSON]
  [NextRelease]
  [PodSyntaxTests]
  [GithubMeta]

  [InstallRelease]
  install_command = cpanm .

  [Authority]
  authority = cpan:GETTY
  do_metadata = 1

  [PodWeaver]
  config_plugin = @Author::GETTY

  [Repository]
  
  [Git::CheckFor::CorrectBranch]
  release_branch = master

  [@Git]
  tag_format = %v
  push_to = origin

  [ChangelogFromGit]
  max_age = 99999
  tag_regexp = ^v(.+)$
  file_name = Changes
  wrap_column = 74
  debug = 0

If the task argument is given to the bundle, PodWeaver is replaced with TaskWeaver and Git::NextVersion is replaced with AutoVersion, you can also give independent a bigger major version with version:

  [@Author::GETTY]
  task = 1

If the manual_version argument is given, AutoVersion and Git::NextVersion are omitted.

  [@Author::GETTY]
  manual_version = 1.222333

You can also use shortcuts for integrating Dist::Zilla::Plugin::Run:

  [@Author::GETTY]
  run_after_build = script/do_this.pl --dir %s --version %s
  run_before_build = script/do_this.pl --version %s
  run_before_release = script/myapp_before1.pl %s
  run_release = deployer.pl --dir %d --tgz %a --name %n --version %v
  run_after_release = script/myapp_after.pl --archive %s --version %s
  run_test = script/tester.pl --name %n --version %v some_file.ext
  run_if_release_test = ./Build install
  run_if_release_test = make install

You can also use add up configuration for Dist::Zilla::Plugin::Git::GatherDir, excluding root or prefix:

  [@Author::GETTY]
  gather_include_dotfiles = 1 # activated by default
  gather_include_untracked = 0
  gather_exclude_filename = dir/skip
  gather_exclude_match = ^local_

It also combines on request with Dist::Zilla::Plugin::Alien, you can set all parameter of the Alien plugin here, just by preceeding with alien_, the only required parameter here is alien_repo:

  [@Author::GETTY]
  alien_repo = http://myapp.org/releases
  alien_bins = myapp myapp_helper
  alien_name = myapp
  alien_pattern_prefix = myapp-
  alien_pattern_version = ([\d\.]+)
  alien_pattern_suffix = \.tar\.gz
  alien_pattern = myapp-([\d\.]+)\.tar\.gz

ATTRIBUTES

author

This is used to name the CPAN author of the distribution. See "authority" in Dist::Zilla::Plugin::Authority.

deprecated

Adds Dist::Zilla::Plugin::Deprecated to the distribution.

release_branch

This variable is used to set the release_branch, only releases on this branch will be allowed. See "release_branch" in Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch.

weaver_config

This defines the PodWeaver config that is used. See config_plugin on Dist::Zilla::Plugin::PodWeaver.

no_github

If set to 1, this attribute will disable Dist::Zilla::Plugin::GithubMeta and will add Dist::Zilla::Plugin::Repository instead.

no_cpan

If set to 1, this attribute will disable Dist::Zilla::Plugin::UploadToCPAN. By default a dzil release would release to CPAN.

no_changelog_from_git

If set to 1, then Dist::Zilla::Plugin::ChangelogFromGit will be disabled, and Dist::Zilla::Plugin::NextRelease will be used instead.

no_changes

If set to 1, then neither Dist::Zilla::Plugin::ChangelogFromGit or Dist::Zilla::Plugin::NextRelease will be used.

no_podweaver

If set to 1, then Dist::Zilla::Plugin::PodWeaver is not used.

xs

If set to 1, then Dist::Zilla::Plugin::ModuleBuildTiny. This will also automatically set no_makemaker to 1.

no_install

If set to 1, the resulting distribution can't be installed.

no_makemaker

If set to 1, the resulting distribution will not use Dist::Zilla::Plugin::MakeMaker. This is an internal function, and you should know what you do, if you activate this flag.

no_installrelease

By default, this bundle will install your distribution after the release. If you set this attribute to 1, then this will not happen. See Dist::Zilla::Plugin::InstallRelease.

If you use the Dist::Zilla::Plugin::Alien options, then this one will not use Dist::Zilla::Plugin::InstallRelease, instead, it will use the trick mentioned in "InstallRelease" in Dist::Zilla::Plugin::Alien.

installrelease_command

If you don't like the usage of App::cpanminus to install your distribution after install, you can set another command here. See install_command on Dist::Zilla::Plugin::InstallRelease.

SEE ALSO

Dist::Zilla::Plugin::Alien

Dist::Zilla::Plugin::Authority

Dist::Zilla::PluginBundle::Git

Dist::Zilla::Plugin::ChangelogFromGit

Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch

Dist::Zilla::Plugin::GithubMeta

Dist::Zilla::Plugin::InstallRelease

Dist::Zilla::Plugin::MakeMaker::SkipInstall

Dist::Zilla::Plugin::PodWeaver

Dist::Zilla::Plugin::Repository

Dist::Zilla::Plugin::Run

Dist::Zilla::Plugin::TaskWeaver

SUPPORT

Source Code

The code is open to the world, and available for you to hack on. Please feel free to browse it and play with it, or whatever. If you want to contribute patches, please send me a diff or prod me to pull from your repository :)

https://github.com/Getty/p5-dist-zilla-pluginbundle-author-getty

  git clone https://github.com/Getty/p5-dist-zilla-pluginbundle-author-getty.git

AUTHOR

Torsten Raudssus <torsten@raudssus.de> https://raudss.us/

COPYRIGHT AND LICENSE

This software is copyright (c) 2024 by Torsten Raudssus <torsten@raudssus.de> https://raudss.us/.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.