diff --git a/Changes b/Changes index ff8a4202d293341f11a4c1017f63866e9ee71fd1..b23bf5e541dbb4c6e302bd5d031bfde2f4abbcef 100644 --- a/Changes +++ b/Changes @@ -1,4 +1,4 @@ -Revision history for Perl extension Redminer (initially RedMiner::API). +Revision history for Perl extension WebService::Redmine (initially RedMiner::API). Please see full revision history at https://github.com/igelhaus/redminer/releases diff --git a/MANIFEST b/MANIFEST index 81188d91bb1c6b90acf3e56fe3a7bba79a9c1923..82d44b28c2180d30957fad6c15e9174cee0875a2 100644 --- a/MANIFEST +++ b/MANIFEST @@ -8,4 +8,4 @@ t/02-realworld.t t/03-realworld-no-wrapping.t t/04-pod.t t/05-pod-coverage.t -lib/Redminer.pm +lib/WebService/Redmine.pm diff --git a/Makefile.PL b/Makefile.PL index b6097c7982377ec34e3072bdb930724ee552423e..af2e053f17651e7a8edcb30cd853c522fd14e44e 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -2,8 +2,8 @@ use 5.010; use ExtUtils::MakeMaker; WriteMakefile( - NAME => 'Redminer', - VERSION_FROM => 'lib/Redminer.pm', + NAME => 'WebService::Redmine', + VERSION_FROM => 'lib/WebService/Redmine.pm', BUILD_REQUIRES => { 'ExtUtils::MakeMaker' => 0, 'Test::More' => 0, @@ -17,7 +17,7 @@ WriteMakefile( 'JSON::XS' => 0, }, ($] >= 5.005 ? ( ## Add these new keywords supported since 5.005 - ABSTRACT_FROM => 'lib/Redminer.pm', + ABSTRACT_FROM => 'lib/WebService/Redmine.pm', AUTHOR => 'Anton Soldatov <igelhaus@gmail.com>') : ()), ); diff --git a/README.md b/README.md index e4002042f697fbcef775855a713c000b747dfc1d..419279e9a54139d9a7e80be6234370a3da4aace2 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,8 @@ Currently the project consists of two parts: 1. `redminer` script itself. For now it supports only creating projects with subprojects from a given layout, but in the future it's aimed for various RedMine automation tasks -2. `Redminer` module, a Perl binding to [RedMine REST API](http://www.redmine.org/projects/redmine/wiki/Rest_api). -Please refer to [built-in POD documentation](../master/lib/Redminer.pm) for more details +2. `WebService::Redmine` module, a Perl binding to [RedMine REST API](http://www.redmine.org/projects/redmine/wiki/Rest_api). +Please refer to [built-in POD documentation](../master/lib/WebService/Redmine.pm) for more details ## Installation diff --git a/lib/Redminer.pm b/lib/WebService/Redmine.pm similarity index 95% rename from lib/Redminer.pm rename to lib/WebService/Redmine.pm index e4e249427be7f08190c9d8187d2635326651f8ab..06b67d03e440698397f3c75dda7b56c676d9b1a2 100644 --- a/lib/Redminer.pm +++ b/lib/WebService/Redmine.pm @@ -1,4 +1,4 @@ -package Redminer; +package WebService::Redmine; use 5.010; use strict; @@ -18,17 +18,17 @@ use Encode qw/decode/; =head1 NAME -Redminer - Wrapper for RedMine REST API (http://www.redmine.org/projects/redmine/wiki/Rest_api). +WebService::Redmine - Wrapper for RedMine REST API (http://www.redmine.org/projects/redmine/wiki/Rest_api). =head1 SYNOPSIS - use Redminer; - my $redminer = Redminer->new( + use WebService::Redmine; + my $redminer = WebService::Redmine->new( host => 'example.com/redmine', key => 'xxx', ); # password-based auth is also supported: - #my $redminer = Redminer->new( + #my $redminer = WebService::Redmine->new( # host => 'example.com/redmine', # user => 'redminer', # pass => 'p@s$w0rD', @@ -37,7 +37,7 @@ Redminer - Wrapper for RedMine REST API (http://www.redmine.org/projects/redmine my $project = $redminer->createProject({ project => { identifier => 'my-project', name => 'My Project', - description => 'My project, created with *Redminer*', + description => 'My project, created with *WebService::Redmine*', }}); if (!$project) { say STDERR 'Error(s) creating project: ', join("\n", map { $_ } @{ $redminer->errorDetails->{errors} }); @@ -52,7 +52,7 @@ Redminer - Wrapper for RedMine REST API (http://www.redmine.org/projects/redmine my $issue = $redminer->createIssue({ issue => { project_id => $project_id, - subject => 'Test issue for Redminer', + subject => 'Test issue for WebService::Redmine', description => 'Issue description', }}); @@ -145,7 +145,7 @@ be retrieved using C<errorDetails> method: =head2 new - my $redminer = Redminer->new(%options); + my $redminer = WebService::Redmine->new(%options); Following options are recognized: @@ -189,7 +189,7 @@ By default RedMine API requires you to wrap you object data: By default this module follows this convention. However, if you turn on the C<no_wrapper_object> flag - my $redminer = Redminer->new( + my $redminer = WebService::Redmine->new( host => 'example.com/redmine', key => 'xxx', no_wrapper_object => 1, @@ -516,13 +516,13 @@ between this module and Redmine::API are: =item * B<Dependencies>. Redmine::API depends on Moo and REST::Client which in turn depends on -LWP::UserAgent, URI and possibly others. Redminer uses pure Perl OOP and +LWP::UserAgent, URI and possibly others. WebService::Redmine uses pure Perl OOP and depends directly on LWP::UserAgent and URI. =item * B<Call conventions>. Although both modules use dynamic dispatching for building actual HTTP -requests, they do it in a different manner. In particular, Redminer tries to +requests, they do it in a different manner. In particular, WebService::Redmine tries to dispatch a single method name without using chains of interrim objects as Redmine::API does. =back diff --git a/redminer b/redminer index d7d8592bfb4096933be763ef3e3c08f9c50ddf6e..c459fcda56ef52005cede269c9719098ed383f62 100755 --- a/redminer +++ b/redminer @@ -11,7 +11,7 @@ use Encode qw/encode/; use Getopt::Long; use Config::IniFiles; -use Redminer; +use WebService::Redmine; my $conf_fname = $ENV{HOME} . '/.redminer/redminer.conf'; my $layout_fname = $ENV{HOME} . '/.redminer/default-layout.conf'; @@ -44,7 +44,7 @@ if (!$layout) { warn 'Unable to access layout config'; } -my $redminer = Redminer->new( +my $redminer = WebService::Redmine->new( host => $conf->val('redmine', 'host') // '', user => $conf->val('redmine', 'user') // '', pass => $conf->val('redmine', 'pass') // '', diff --git a/t/00-use.t b/t/00-use.t index 6648bec1b8dc32c7d8b27b757a3c8e8e13e8aff9..f29a3ae637694807a7d0caba01cb042d097f17dc 100644 --- a/t/00-use.t +++ b/t/00-use.t @@ -3,6 +3,6 @@ use warnings; use Test::More tests => 1; -BEGIN { use_ok('Redminer') }; +BEGIN { use_ok('WebService::Redmine') }; exit; diff --git a/t/01-dispatching.t b/t/01-dispatching.t index aa8f32a92b9a6f12fddda0f157430112903ae5d3..1446dfac475a00b1b116763a7fbf188186fecc1c 100644 --- a/t/01-dispatching.t +++ b/t/01-dispatching.t @@ -3,12 +3,12 @@ use warnings; use Test::More tests => 29; -eval 'use Redminer'; +eval 'use WebService::Redmine'; # # Testing internal name dispatching with a dummy object # -my $redminer = Redminer->new( +my $redminer = WebService::Redmine->new( host => '', key => '', ); diff --git a/t/02-realworld.t b/t/02-realworld.t index f8290f6f7859fa132f405d6ff348cadfb0af2dfc..3d8f8b526527cba4c65ec46f1c6285e1824310ae 100644 --- a/t/02-realworld.t +++ b/t/02-realworld.t @@ -10,7 +10,7 @@ if ($ENV{REDMINER_DEVEL}) { plan skip_all => 'Development tests (REDMINER_DEVEL not set)'; } -eval 'use Redminer'; +eval 'use WebService::Redmine'; # # Read API key from a simple config file in the format 'host;key' @@ -29,7 +29,7 @@ my $key_data = <$FH_key>; chomp $key_data; close $FH_key; -my $redminer = Redminer->new( +my $redminer = WebService::Redmine->new( host => $host, key => $key, ); @@ -50,7 +50,7 @@ ok($redminer->updateProject($project_id, { project => { inherit_members => 1 } } my $issue = $redminer->createIssue({ issue => { project_id => $project_id, - subject => 'Test issue for Redminer', + subject => 'Test issue for WebService::Redmine', description => 'Test description', }}); ok(defined $issue->{issue}{id}, 'Issue created with ID #' . $issue->{issue}{id}); diff --git a/t/03-realworld-no-wrapping.t b/t/03-realworld-no-wrapping.t index c18d8f46efcbf9d563ae1e9a24161581fff8401a..4f58a620101a29074d544c40ad4fa9a3013e6160 100644 --- a/t/03-realworld-no-wrapping.t +++ b/t/03-realworld-no-wrapping.t @@ -10,7 +10,7 @@ if ($ENV{REDMINER_DEVEL}) { plan skip_all => 'Development tests (REDMINER_DEVEL not set)'; } -eval 'use Redminer'; +eval 'use WebService::Redmine'; # # Read API key from a simple config file in the format 'host;key' @@ -29,7 +29,7 @@ my $key_data = <$FH_key>; chomp $key_data; close $FH_key; -my $redminer = Redminer->new( +my $redminer = WebService::Redmine->new( host => $host, key => $key, no_wrapper_object => 1, @@ -51,7 +51,7 @@ ok($redminer->updateProject($project_id, { inherit_members => 1 }), 'Project upd my $issue = $redminer->createIssue({ project_id => $project_id, - subject => 'Test issue for Redminer', + subject => 'Test issue for WebService::Redmine', description => 'Test description', }); ok(defined $issue->{id}, 'Issue created with ID #' . $issue->{id}); diff --git a/t/05-pod-coverage.t b/t/05-pod-coverage.t index 61f6bd1a26cdb5f5ce994753bb1b020ee4400686..58e823e2d16f8d1373b75dacdbe9962f2a06f677 100644 --- a/t/05-pod-coverage.t +++ b/t/05-pod-coverage.t @@ -8,4 +8,4 @@ plan skip_all => 'Test::Pod::Coverage required for testing pod coverage' if $@; plan tests => 1; -pod_coverage_ok('Redminer', 'Redminer POD ok'); +pod_coverage_ok('WebService::Redmine', 'WebService::Redmine POD ok');