NAME

WWW::Gitea::Repo - Gitea repository entity

VERSION

version 0.001

SYNOPSIS

my $repo = $gitea->repos->get('getty', 'p5-www-gitea');

print $repo->full_name,   "\n";    # "getty/p5-www-gitea"
print $repo->clone_url,   "\n";
print $repo->stars_count, "\n";

# Convenience delegations scoped to this repo
my $issues = $repo->issues(state => 'open');
my $issue  = $repo->create_issue(title => 'Bug');
my $pulls  = $repo->pulls;

DESCRIPTION

Lightweight wrapper around the JSON returned for a Gitea repository. Besides the field accessors it offers convenience methods that delegate to the client's controllers with this repository's owner and name pre-filled. The raw decoded data is always available via "data".

data

Raw decoded JSON for the repository. Writable so "refresh" can update it in place.

id

Numeric repository ID.

name

Repository name (without owner).

full_name

owner/name.

description

Repository description.

private

True if the repository is private.

fork

True if the repository is a fork.

html_url

Web URL of the repository.

clone_url

HTTPS clone URL.

ssh_url

SSH clone URL.

default_branch

Name of the default branch.

stars_count

Number of stars.

forks_count

Number of forks.

open_issues_count

Number of open issues.

owner_login

Login name of the repository owner (from data->{owner}{login}).

refresh

$repo->refresh;

Re-fetches the repository and updates "data" in place.

delete

$repo->delete;

Deletes this repository.

issues

my $issues = $repo->issues(state => 'open');

Lists this repository's issues. Delegates to "list" in WWW::Gitea::API::Issues.

create_issue

my $issue = $repo->create_issue(title => 'Bug', body => '...');

Creates an issue in this repository. Delegates to "create" in WWW::Gitea::API::Issues.

pulls

my $pulls = $repo->pulls(state => 'open');

Lists this repository's pull requests. Delegates to "list" in WWW::Gitea::API::PullRequests.

labels

my $labels = $repo->labels;

Lists this repository's labels. Delegates to "list" in WWW::Gitea::API::Labels.

milestones

my $milestones = $repo->milestones;

Lists this repository's milestones. Delegates to "list" in WWW::Gitea::API::Milestones.

releases

my $releases = $repo->releases;

Lists this repository's releases. Delegates to "list" in WWW::Gitea::API::Releases.

SEE ALSO

SUPPORT

Issues

Please report bugs and feature requests on GitHub at https://codeberg.org/getty/p5-www-gitea/issues.

CONTRIBUTING

Contributions are welcome! Please fork the repository and submit a pull request.

AUTHOR

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

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Torsten Raudssus.

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