.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Net::GitHub::V3::Issues 3pm" .TH Net::GitHub::V3::Issues 3pm "2022-10-08" "perl v5.34.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Net::GitHub::V3::Issues \- GitHub Issues API .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& use Net::GitHub::V3; \& \& my $gh = Net::GitHub::V3\->new; # read L to set right authentication info \& my $issue = $gh\->issue; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" .SS "\s-1METHODS\s0" .IX Subsection "METHODS" \fIIssues\fR .IX Subsection "Issues" .PP .IP "issues" 4 .IX Item "issues" .Vb 3 \& my @issues = $issue\->issues(); \& my @issues = $issue\->issues(filter => \*(Aqassigned\*(Aq, state => \*(Aqopen\*(Aq); \& while (my $next_issue = $issues\->next_issue(...)) { ...; } .Ve .Sp Returns issues assigned to the authenticated user. .PP \&\fBTo ease the keyboard, we provied two ways to call any method which starts with :user/:repo\fR .PP 1. \s-1SET\s0 user/repo before call methods below .PP .Vb 3 \& $gh\->set_default_user_repo(\*(Aqfayland\*(Aq, \*(Aqperl\-net\-github\*(Aq); # take effects for all $gh\-> \& $issue\->set_default_user_repo(\*(Aqfayland\*(Aq, \*(Aqperl\-net\-github\*(Aq); # only take effect to $gh\->issue \& my @issues = $repos\->issues; .Ve .PP 2. If it is just for once, we can pass :user, :repo before any arguments .PP .Vb 1 \& my @issues = $issue\->repos_issues($user, $repo); .Ve .IP "repos_issues" 4 .IX Item "repos_issues" .Vb 5 \& my @issues = $issue\->repos_issues; \& my @issues = $issue\->repos_issues($user, $repos); \& my @issues = $issue\->repos_issues( { state => \*(Aqopen\*(Aq } ); \& my @issues = $issue\->repos_issues($user, $repos, { state => \*(Aqopen\*(Aq } ); \& while (my $r_issue = $issue\->next_repos_issue(...)) { ...; } .Ve .IP "issue" 4 .IX Item "issue" .Vb 1 \& my $issue = $issue\->issue($issue_number); .Ve .IP "create_issue" 4 .IX Item "create_issue" .Vb 10 \& my $isu = $issue\->create_issue( { \& "title" => "Found a bug", \& "body" => "I\*(Aqm having a problem with this.", \& "assignee" => "octocat", \& "milestone" => 1, \& "labels" => [ \& "Label1", \& "Label2" \& ] \& } ); .Ve .IP "update_issue" 4 .IX Item "update_issue" .Vb 3 \& my $isu = $issue\->update_issue( $issue_number, { \& state => \*(Aqclosed\*(Aq \& } ); .Ve .PP \fIIssue Comments \s-1API\s0\fR .IX Subsection "Issue Comments API" .PP .IP "comments" 4 .IX Item "comments" .PD 0 .IP "comment" 4 .IX Item "comment" .IP "create_comment" 4 .IX Item "create_comment" .IP "update_comment" 4 .IX Item "update_comment" .IP "delete_comment" 4 .IX Item "delete_comment" .PD .Vb 10 \& my @comments = $issue\->comments($issue_number); \& while (my $comment = $issue\->next_comment($issue_number)) { ...; } \& my $comment = $issue\->comment($comment_id); \& my $comment = $issue\->create_comment($issue_number, { \& "body" => "a new comment" \& }); \& my $comment = $issue\->update_comment($comment_id, { \& "body" => "Nice change" \& }); \& my $st = $issue\->delete_comment($comment_id); .Ve .PP \fIIssue Event \s-1API\s0\fR .IX Subsection "Issue Event API" .PP .IP "events" 4 .IX Item "events" .PD 0 .IP "repos_events" 4 .IX Item "repos_events" .PD .Vb 5 \& my @events = $issue\->events($issue_number); \& while (my $event = $issue\->next_event($issue_number)) { ...; } \& my @events = $issue\->repos_events; \& while (my $r_event = $issue\->next_repos_event) { ...; } \& my $event = $issue\->event($event_id); .Ve .PP \fIIssue Labels \s-1API\s0\fR .IX Subsection "Issue Labels API" .PP .IP "labels" 4 .IX Item "labels" .PD 0 .IP "label" 4 .IX Item "label" .IP "create_label" 4 .IX Item "create_label" .IP "update_label" 4 .IX Item "update_label" .IP "delete_label" 4 .IX Item "delete_label" .PD .Vb 12 \& my @labels = $issue\->labels; \& while (my $label = $issue\->next_label) { ...; } \& my $label = $issue\->label($label_name); \& my $label = $issue\->create_label( { \& "name" => "API", \& "color" => "FFFFFF" \& } ); \& my $label = $issue\->update_label( $label_name, { \& "name" => "bugs", \& "color" => "000000" \& } ); \& my $st = $issue\->delete_label($label_name); .Ve .IP "issue_labels" 4 .IX Item "issue_labels" .PD 0 .IP "create_issue_label" 4 .IX Item "create_issue_label" .IP "delete_issue_label" 4 .IX Item "delete_issue_label" .IP "replace_issue_label" 4 .IX Item "replace_issue_label" .IP "delete_issue_labels" 4 .IX Item "delete_issue_labels" .IP "milestone_labels" 4 .IX Item "milestone_labels" .PD .Vb 7 \& my @labels = $issue\->issue_labels($issue_number); \& my @labels = $issue\->create_issue_label($issue_number, [\*(AqNew Label\*(Aq]); \& my $st = $issue\->delete_issue_label($issue_number, $label_name); \& my @labels = $issue\->replace_issue_label($issue_number, [\*(AqNew Label\*(Aq]); \& my $st = $issue\->delete_issue_labels($issue_number); \& my @lables = $issue\->milestone_labels($milestone_id); \& while (my $label = $issue\->next_milestone_label($milestone_id)) { ...; } .Ve .PP \fIIssue Milestones \s-1API\s0\fR .IX Subsection "Issue Milestones API" .PP .IP "milestones" 4 .IX Item "milestones" .PD 0 .IP "milestone" 4 .IX Item "milestone" .IP "create_milestone" 4 .IX Item "create_milestone" .IP "update_milestone" 4 .IX Item "update_milestone" .IP "delete_milestone" 4 .IX Item "delete_milestone" .PD .Vb 10 \& my @milestones = $issue\->milestones; \& my @milestones = $issue\->milestones( { state => \*(Aqopen\*(Aq } ); \& while (my $milestone = $issue\->next_milestone( ... )) { ...; } \& my $milestone = $issue\->milestone($milestone_id); \& my $milestone = $issue\->create_milestone( { \& "title" => "String", \& "state" => "open", \& "description" => "String", \& } ); \& my $milestone = $issue\->update_milestone( $milestone_id, { \& title => \*(AqNew Title\*(Aq \& } ); \& my $st = $issue\->delete_milestone($milestone_id); .Ve .SH "AUTHOR & COPYRIGHT & LICENSE" .IX Header "AUTHOR & COPYRIGHT & LICENSE" Refer Net::GitHub