Provided by: libpithub-perl_0.01034-1_all bug

NAME

       Pithub::Issues - Github v3 Issues API

VERSION

       version 0.01034

METHODS

   assignees
       Provides access to Pithub::Issues::Assignees.

   comments
       Provides access to Pithub::Issues::Comments.

   create
       ·   Create an issue

               POST /repos/:user/:repo/issues

           Parameters:

           ·   user: mandatory string

           ·   repo: mandatory string

           ·   data: mandatory hashref, having following keys:

               ·   title: mandatory string

               ·   body: optional string

               ·   assignee: optional string - Login for the user that this issue should be
                   assigned to.

               ·   milestone: optional number - Milestone to associate this issue with.

               ·   labels: optional arrayref of strings - Labels to associate with this issue.

           Examples:

               my $i = Pithub::Issues->new;
               my $result = $i->create(
                   user => 'plu',
                   repo => 'Pithub',
                   data => {
                       assignee  => 'octocat',
                       body      => "I'm having a problem with this.",
                       labels    => [ 'Label1', 'Label2' ],
                       milestone => 1,
                       title     => 'Found a bug'
                   }
               );

           Response: Status: 201 Created

               {
                   "url": "https://api.github.com/repos/octocat/Hello-World/issues/1",
                   "html_url": "https://github.com/octocat/Hello-World/issues/1",
                   "number": 1347,
                   "state": "open",
                   "title": "Found a bug",
                   "body": "I'm having a problem with this.",
                   "user": {
                       "login": "octocat",
                       "id": 1,
                       "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                       "url": "https://api.github.com/users/octocat"
                   },
                   "labels": [
                   {
                       "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug",
                       "name": "bug",
                       "color": "f29513"
                   }
                   ],
                   "assignee": {
                       "login": "octocat",
                       "id": 1,
                       "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                       "url": "https://api.github.com/users/octocat"
                   },
                   "milestone": {
                       "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1",
                       "number": 1,
                       "state": "open",
                       "title": "v1.0",
                       "description": "",
                       "creator": {
                           "login": "octocat",
                           "id": 1,
                           "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                           "url": "https://api.github.com/users/octocat"
                       },
                       "open_issues": 4,
                       "closed_issues": 8,
                       "created_at": "2011-04-10T20:09:31Z",
                       "due_on": null
                   },
                   "comments": 0,
                   "pull_request": {
                       "html_url": "https://github.com/octocat/Hello-World/issues/1",
                       "diff_url": "https://github.com/octocat/Hello-World/issues/1.diff",
                       "patch_url": "https://github.com/octocat/Hello-World/issues/1.patch"
                   },
                   "closed_at": null,
                   "created_at": "2011-04-22T13:33:48Z",
                   "updated_at": "2011-04-22T13:33:48Z"
               }

   events
       Provides access to Pithub::Issues::Events.

   get
       ·   Get a single issue

               GET /repos/:user/:repo/issues/:id

           Parameters:

           ·   user: mandatory string

           ·   repo: mandatory string

           ·   issue_id: mandatory integer

           Examples:

               my $i = Pithub::Issues->new;
               my $result = $i->get(
                   user => 'plu',
                   repo => 'Pithub',
                   issue_id => 1,
               );

           Response: Status: 200 OK

               {
                   "url": "https://api.github.com/repos/octocat/Hello-World/issues/1",
                   "html_url": "https://github.com/octocat/Hello-World/issues/1",
                   "number": 1347,
                   "state": "open",
                   "title": "Found a bug",
                   "body": "I'm having a problem with this.",
                   "user": {
                       "login": "octocat",
                       "id": 1,
                       "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                       "url": "https://api.github.com/users/octocat"
                   },
                   "labels": [
                   {
                       "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug",
                       "name": "bug",
                       "color": "f29513"
                   }
                   ],
                   "assignee": {
                       "login": "octocat",
                       "id": 1,
                       "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                       "url": "https://api.github.com/users/octocat"
                   },
                   "milestone": {
                       "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1",
                       "number": 1,
                       "state": "open",
                       "title": "v1.0",
                       "description": "",
                       "creator": {
                           "login": "octocat",
                           "id": 1,
                           "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                           "url": "https://api.github.com/users/octocat"
                       },
                       "open_issues": 4,
                       "closed_issues": 8,
                       "created_at": "2011-04-10T20:09:31Z",
                       "due_on": null
                   },
                   "comments": 0,
                   "pull_request": {
                       "html_url": "https://github.com/octocat/Hello-World/issues/1",
                       "diff_url": "https://github.com/octocat/Hello-World/issues/1.diff",
                       "patch_url": "https://github.com/octocat/Hello-World/issues/1.patch"
                   },
                   "closed_at": null,
                   "created_at": "2011-04-22T13:33:48Z",
                   "updated_at": "2011-04-22T13:33:48Z"
               }

   labels
       Provides access to Pithub::Issues::Labels.

   list
       ·   List the issues of the authenticated user

               GET /issues

           This API call can be influenced via the "params" hashref with following parameters:

           ·   filter: one of the following:

               ·   assigned: Issues assigned to you (default)

               ·   created: Issues created by you

               ·   mentioned: Issues mentioning you

               ·   subscribed: Issues you're subscribed to updates for

           ·   state: one of the following:

               ·   open (default)

               ·   closed

           ·   labels: String list of comma separated Label names.  Example: "bug,ui,@high"

           ·   sort: one of the following:

               ·   created (default)

               ·   updated

               ·   comments

           ·   direction: one of the following:

               ·   asc

               ·   desc (default)

           ·   since: optional string of a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ

           Examples:

               my $i      = Pithub::Issues->new;
               my $result = $i->list(
                   params => {
                       filter    => 'assigned',
                       state     => 'open',
                       labels    => 'bug',
                       sort      => 'updated',
                       direction => 'asc',
                   }
               );

           Response: Status: 200 OK

               [
                   {
                       "url": "https://api.github.com/repos/octocat/Hello-World/issues/1",
                       "html_url": "https://github.com/octocat/Hello-World/issues/1",
                       "number": 1347,
                       "state": "open",
                       "title": "Found a bug",
                       "body": "I'm having a problem with this.",
                       "user": {
                           "login": "octocat",
                           "id": 1,
                           "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                           "url": "https://api.github.com/users/octocat"
                       },
                       "labels": [
                       {
                           "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug",
                           "name": "bug",
                           "color": "f29513"
                       }
                       ],
                       "assignee": {
                           "login": "octocat",
                           "id": 1,
                           "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                           "url": "https://api.github.com/users/octocat"
                       },
                       "milestone": {
                           "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1",
                           "number": 1,
                           "state": "open",
                           "title": "v1.0",
                           "description": "",
                           "creator": {
                               "login": "octocat",
                               "id": 1,
                               "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                               "url": "https://api.github.com/users/octocat"
                           },
                           "open_issues": 4,
                           "closed_issues": 8,
                           "created_at": "2011-04-10T20:09:31Z",
                           "due_on": null
                       },
                       "comments": 0,
                       "pull_request": {
                           "html_url": "https://github.com/octocat/Hello-World/issues/1",
                           "diff_url": "https://github.com/octocat/Hello-World/issues/1.diff",
                           "patch_url": "https://github.com/octocat/Hello-World/issues/1.patch"
                       },
                       "closed_at": null,
                       "created_at": "2011-04-22T13:33:48Z",
                       "updated_at": "2011-04-22T13:33:48Z"
                   }
               ]

       ·   List issues for a repository

               GET /repos/:user/:repo/issues

           Parameters:

           ·   user: mandatory string

           ·   repo: mandatory string

           This API call can be influenced via the "params" hashref with following parameters:

           ·   milestone: one of the following:

               ·   "Integer" Milestone number

               ·   "none" for Issues with no Milestone

               ·   "*" for Issues with any Milestone

           ·   state: one of the following:

               ·   open (default)

               ·   closed

           ·   assignee: one of the following:

               ·   "String" User login

               ·   "none" for Issues with no assigned User

               ·   "*" for Issues with any assigned User

           ·   mentioned: String User login

           ·   labels: String list of comma separated Label names.  Example: "bug,ui,@high"

           ·   sort: one of the following:

               ·   created (default)

               ·   updated

               ·   comments

           ·   direction: one of the following:

               ·   asc

               ·   desc (default)

           ·   since: optional string of a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ

           Examples:

               my $i      = Pithub::Issues->new;
               my $result = $i->list(
                   user    => 'plu',
                   repo    => 'Pithub',
                   params => {
                       milestone => 42,
                       state     => 'open',
                       labels    => 'bug',
                       sort      => 'updated',
                       direction => 'asc',
                   }
               );

           Response: Status: 200 OK

               [
                   {
                       "url": "https://api.github.com/repos/octocat/Hello-World/issues/1",
                       "html_url": "https://github.com/octocat/Hello-World/issues/1",
                       "number": 1347,
                       "state": "open",
                       "title": "Found a bug",
                       "body": "I'm having a problem with this.",
                       "user": {
                           "login": "octocat",
                           "id": 1,
                           "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                           "url": "https://api.github.com/users/octocat"
                       },
                       "labels": [
                       {
                           "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug",
                           "name": "bug",
                           "color": "f29513"
                       }
                       ],
                       "assignee": {
                           "login": "octocat",
                           "id": 1,
                           "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                           "url": "https://api.github.com/users/octocat"
                       },
                       "milestone": {
                           "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1",
                           "number": 1,
                           "state": "open",
                           "title": "v1.0",
                           "description": "",
                           "creator": {
                               "login": "octocat",
                               "id": 1,
                               "gravatar_url": "https://github.com/images/error/octocat_happy.gif",
                               "url": "https://api.github.com/users/octocat"
                           },
                           "open_issues": 4,
                           "closed_issues": 8,
                           "created_at": "2011-04-10T20:09:31Z",
                           "due_on": null
                       },
                       "comments": 0,
                       "pull_request": {
                           "html_url": "https://github.com/octocat/Hello-World/issues/1",
                           "diff_url": "https://github.com/octocat/Hello-World/issues/1.diff",
                           "patch_url": "https://github.com/octocat/Hello-World/issues/1.patch"
                       },
                       "closed_at": null,
                       "created_at": "2011-04-22T13:33:48Z",
                       "updated_at": "2011-04-22T13:33:48Z"
                   }
               ]

   milestones
       Provides access to Pithub::Issues::Milestones.

   update
       ·   Edit an issue

               PATCH /repos/:user/:repo/issues/:id

           Parameters:

           ·   user: mandatory string

           ·   repo: mandatory string

           ·   data: mandatory hashref, having following keys:

               ·   title: mandatory string

               ·   body: optional string

               ·   assignee: optional string - Login for the user that this issue should be
                   assigned to.

               ·   milestone: optional number - Milestone to associate this issue with.

               ·   labels: optional arrayref of strings - Labels to associate with this issue.
                   Pass one or more Labels to replace the set of Labels on this Issue. Send an
                   empty arrayref ("[]") to clear all Labels from the Issue.

           Examples:

               my $i = Pithub::Issues->new;
               my $result = $i->update(
                   user     => 'plu',
                   repo     => 'Pithub',
                   issue_id => 1,
                   data     => {
                       assignee  => 'octocat',
                       body      => "I'm having a problem with this.",
                       labels    => [ 'Label1', 'Label2' ],
                       milestone => 1,
                       state     => 'open',
                       title     => 'Found a bug'
                   }
               );

AUTHOR

       Johannes Plunien <plu@cpan.org>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2011 by Johannes Plunien.

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