This is an automated email from the git hooks/post-receive script. gregoa pushed a commit to branch master in repository libnet-github-perl.
commit c429ba2747fbb0778b55200c9987d867f52af1f0 Author: gregor herrmann <gre...@debian.org> Date: Fri May 16 17:42:54 2014 +0200 Imported Upstream version 0.60 --- Changes | 5 ++- MANIFEST | 2 +- META.yml | 3 +- {exmaples => examples}/upload_asset.pl | 0 lib/Net/GitHub.pm | 2 +- lib/Net/GitHub/V3/Repos.pm | 68 ++++++++++++++++++++++++++-------- xt/v3/200-repos.t | 12 ++++++ 7 files changed, 73 insertions(+), 19 deletions(-) diff --git a/Changes b/Changes index a8db387..eaa69fc 100644 --- a/Changes +++ b/Changes @@ -1,7 +1,10 @@ Revision history for Net-GitHub +0.60 2014-05-16 + filters in commits, delete repos etc. + 0.59 2014-03-30 - - upload_release + - upload_asset 0.58 2014-03-30 - Release API diff --git a/MANIFEST b/MANIFEST index e9b1bb2..a6f4d63 100644 --- a/MANIFEST +++ b/MANIFEST @@ -1,5 +1,5 @@ Changes -exmaples/upload_asset.pl +examples/upload_asset.pl inc/Module/AutoInstall.pm inc/Module/Install.pm inc/Module/Install/AutoInstall.pm diff --git a/META.yml b/META.yml index 7b48942..163a837 100644 --- a/META.yml +++ b/META.yml @@ -20,6 +20,7 @@ meta-spec: name: Net-GitHub no_index: directory: + - examples - inc - t - xt @@ -36,4 +37,4 @@ requires: resources: license: http://dev.perl.org/licenses/ repository: https://github.com/fayland/perl-net-github -version: 0.59 +version: 0.60 diff --git a/exmaples/upload_asset.pl b/examples/upload_asset.pl similarity index 100% rename from exmaples/upload_asset.pl rename to examples/upload_asset.pl diff --git a/lib/Net/GitHub.pm b/lib/Net/GitHub.pm index 49eaec5..7b26dc9 100644 --- a/lib/Net/GitHub.pm +++ b/lib/Net/GitHub.pm @@ -3,7 +3,7 @@ package Net::GitHub; use Any::Moose; use Net::GitHub::V3; -our $VERSION = '0.59'; +our $VERSION = '0.60'; our $AUTHORITY = 'cpan:FAYLAND'; sub new { diff --git a/lib/Net/GitHub/V3/Repos.pm b/lib/Net/GitHub/V3/Repos.pm index e5e9382..fc43dda 100644 --- a/lib/Net/GitHub/V3/Repos.pm +++ b/lib/Net/GitHub/V3/Repos.pm @@ -2,21 +2,27 @@ package Net::GitHub::V3::Repos; use Any::Moose; -our $VERSION = '0.59'; +our $VERSION = '0.60'; our $AUTHORITY = 'cpan:FAYLAND'; use Carp; use URI::Escape; +use URI; use HTTP::Request::Common qw(POST); with 'Net::GitHub::V3::Query'; sub list { - my ( $self, $type ) = @_; - $type ||= 'all'; - my $u = '/user/repos'; - $u .= '?type=' . $type if $type ne 'all'; - return $self->query($u); + my ( $self, $args ) = @_; + + # for old + unless (ref($args) eq 'HASH') { + $args = { type => $args }; + } + + my $uri = URI->new('/user/repos'); + $uri->query_form($args); + return $self->query($uri->as_string); } sub list_all { @@ -28,12 +34,17 @@ sub list_all { } sub list_user { - my ($self, $user, $type) = @_; + my ($self, $user, $args) = @_; $user ||= $self->u; - $type ||= 'all'; - my $u = "/users/" . uri_escape($user) . "/repos"; - $u .= '?type=' . $type if $type ne 'all'; - return $self->query($u); + + # for old + unless (ref($args) eq 'HASH') { + $args = { type => $args }; + } + + my $uri = URI->new("/users/" . uri_escape($user) . "/repos"); + $uri->query_form($args); + return $self->query($uri->as_string); } sub list_org { @@ -86,6 +97,19 @@ sub upload_asset { return wantarray ? %$data : $data; } +sub commits { + my $self = shift; + if (@_ < 2) { + unshift @_, $self->repo; + unshift @_, $self->u; + } + my ($user, $repos, $args) = @_; + + my $uri = URI->new("/repos/" . uri_escape($user) . "/" . uri_escape($repos) . '/commits'); + $uri->query_form($args); + return $self->query($uri->as_string); +} + ## build methods on fly my %__methods = ( @@ -96,6 +120,8 @@ my %__methods = ( teams => { url => "/repos/%s/%s/teams" }, tags => { url => "/repos/%s/%s/tags" }, branches => { url => "/repos/%s/%s/branches" }, + branch => { url => "/repos/%s/%s/branches/%s" }, + delete => { url => "/repos/%s/%s", method => 'DELETE', check_status => 204 }, # http://developer.github.com/v3/repos/collaborators/ collaborators => { url => "/repos/%s/%s/collaborators" }, @@ -104,7 +130,6 @@ my %__methods = ( delete_collaborator => { url => "/repos/%s/%s/collaborators/%s", method => 'DELETE', check_status => 204 }, # http://developer.github.com/v3/repos/commits/ - commits => { url => "/repos/%s/%s/commits" }, commit => { url => "/repos/%s/%s/commits/%s" }, comments => { url => "/repos/%s/%s/comments" }, comment => { url => "/repos/%s/%s/comments/%s" }, @@ -295,9 +320,14 @@ L<http://developer.github.com/v3/repos/> =item list_org my @rp = $repos->list; # or my $rp = $repos->list; - my @rp = $repos->list('private'); + my @rp = $repos->list({ + type => 'private' + sort => 'updated' + }); my @rp = $repos->list_user('c9s'); - my @rp = $repos->list_user('c9s', 'member'); + my @rp = $repos->list_user('c9s', { + type => 'member' + }); my @rp = $repos->list_org('perlchina'); my @rp = $repos->list_org('perlchina', 'public'); @@ -341,6 +371,10 @@ B<To ease the keyboard, we provied two ways to call any method which starts with $repos->update({ homepage => 'https://metacpan.org/module/Net::GitHub' }); +=item delete + + $repos->delete(); + =item contributors =item languages @@ -356,6 +390,7 @@ B<To ease the keyboard, we provied two ways to call any method which starts with my @teams = $repos->teams; my @tags = $repos->tags; my @branches = $repos->branches; + my $branch = $repos->branch('master'); =back @@ -391,6 +426,9 @@ L<http://developer.github.com/v3/repos/commits/> =item commit my @commits = $repos->commits; + my @commits = $repos->commits({ + author => 'fayland' + }); my $commit = $repos->commit($sha); =item comments @@ -654,7 +692,7 @@ L<http://developer.github.com/v3/repos/releases/> my $asset = $repos->upload_asset($release_id, $name, $content_type, $file_content); -Check examples/upload_asset.pl for an working examples. +Check examples/upload_asset.pl for a working example. =item release_asset diff --git a/xt/v3/200-repos.t b/xt/v3/200-repos.t index 4f26465..2aab14f 100644 --- a/xt/v3/200-repos.t +++ b/xt/v3/200-repos.t @@ -19,6 +19,18 @@ ok( $repos ); my @p = $repos->list; ok(@p > 3, 'more than 3 repos'); + +=pod + +$repos->set_default_user_repo('fayland', 'perl-net-github'); +my @commits = $repos->commits({ + author => 'jibsheet' +}); +use Data::Dumper; +print Dumper(\@commits); + +=cut + =pod $repos->set_default_user_repo('fayland', 'perl-net-github'); -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libnet-github-perl.git _______________________________________________ Pkg-perl-cvs-commits mailing list Pkg-perl-cvs-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-perl-cvs-commits