1
0
Fork
You've already forked JSON-RepositoryEvent
0
Representation of a repository event https://raku.land/zef:lizmat/JSON::RepositoryEvent
  • Raku 100%
2026年07月14日 20:14:37 +02:00
.github Oops, need dependencies! 2026年06月30日 18:17:55 +02:00
.META 0.0.7 2026年07月08日 21:25:23 +02:00
doc Add support for GitHub::EventPullRequestReview 2026年07月14日 20:14:37 +02:00
lib/JSON Add support for GitHub::EventPullRequestReview 2026年07月14日 20:14:37 +02:00
samples Add support for GitHub::EventPullRequestReview 2026年07月14日 20:14:37 +02:00
t 0.0.4 2026年07月03日 12:07:03 +02:00
xt Some tweaks to fix CI testing 2026年06月30日 18:11:08 +02:00
.gitignore 0.0.1 2026年06月30日 18:23:31 +02:00
Changes Add support for GitHub::EventPullRequestReview 2026年07月14日 20:14:37 +02:00
dist.ini Update dist.ini ( #2 ) 2026年06月30日 22:20:30 +02:00
LICENSE Initial commit 2026年06月27日 22:51:51 +02:00
META6.json Add support for GitHub EventGollum / Page 2026年07月05日 14:21:57 +02:00
README.md Add support for GitHub::EventPullRequestReview 2026年07月14日 20:14:37 +02:00
run-tests Initial commit 2026年06月27日 22:51:51 +02:00

Actions Status Actions Status Actions Status

NAME

JSON::RepositoryEvent - representation of a repository event

SYNOPSIS

use JSON::RepositoryEvent;
my $io = "foo.json".IO;
# create from incoming request
my $new = JSON::RepositoryEvent.new(%data, request);
$io.spurt(to-json($new));
# create from existing file
my $saved = JSON::RepositoryEvent.new($io.slurp);

DESCRIPTION

The JSON::RepositoryEvent provides a distribution for mapping repository related events in JSON format (such as typically provided by collaborative services such as GitHub / Codeberg in a webhook) into Raku classes with an object oriented interface.

All classes can be instantiated with the .new method and providing a correctly structured Map (or Hash). This is specifically needed when processing JSON-files that have been previously saved with the JSON::Webhook module.

CREATION FROM A WEBHOOK

The JSON::RepositoryEvent object can (also) be created using the information that is available inside a Cro::HTTP::Router route.

# create from incoming request
my $new = JSON::RepositoryEvent.new(%data, request);

The first argument is the data structure (usually a Map or a Hash, the second argument is the Cro::HTTP::Request object which contains all of the information needed.

Using the JSON::Webhook this can be as simple as:

sub processor(\data, \request) {
 JSON::RepositoryEvent.new(data, request)
}
JSON::Webhook.new(:&processor);

JSON::RepositoryEvent

The JSON::RepositoryEvent class wraps the data from a request in the payload accessor: this then contains an instances of any of the other JSON::RepositoryEvent::xxx classes.

METHODS

  • class - the type-object of the type of the payload

  • created-at - DateTime or Nil

  • headers - "key: value" of each header in the request

  • irc - list of IRC channels (named argument "irc" in request)

  • nameds - named arguments in query

  • payload - data blessed as a JSON::RepositoryEvent::xxx class

STATUS

This is still very much in alpha state. Quite a number of payloads from GitHub have been implemented, not so many from Forgejo yet. Help in implementing this is very much welcomed.

NAMING LOGIC

The data structures in the GitHub and Forgejo (e.g. Codeberg) API's typically use underscores in their names. No underscores are used in the Raku classes. If a name is mapped to a class, then an underscore created camelcase class names. So "pull_request" becomes PullRequest as a class name. Other fields that have an underscore map the underscores to hyphens, so "created_at" as the name of a field in the data structure, becomes "created-at" as an accessor (method name).

Some exceptions: field names that start with an underscore are used verbatim in method names (as methods starting with a hyphen are illegal in Raku). If a field name starts with +, it is replaced by the string "plus" in the method name. If a field name starts with -, it is replaces by the string "minus" in the method name.

THEORY OF OPERATION

The underlying data structure is always a Map (or a Hash). All classes are subclasses of Map, so all the functionality that you can expect from a Map can be used on any of the classes in this distribution.

All classes could be considered to be "views" on the underlying data structure: all "accessors" are in fact accessing certain parts of that data structure by key. This approach allows for fast loading: only actual parts of the data structure that need to be accessed, will be fetched on demand.

GITHUB EVENT CLASSES

The full name of these classes is JSON::RepositoryEvent::GitHub::Eventxxx. The JSON::RepositoryEvent part is not mentioned here in the documentation for convenience.

GitHub::EventCheckRun

  • action - action performed

  • check-run - see GitHub::CheckRun::CheckRun

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventCheckSuite

  • action - action performed

  • check-suite - see GitHub::CheckSuite::CheckSuite

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventCommitComment

  • action

  • comment - see GitHub::Comment

  • created-at - DateTime

  • organization - see GitHub::Organization

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

  • updated-at - DateTime

  • GitHub::EventCreate

  • description

  • master-branch

  • pusher-type

  • ref

  • ref-type

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventDelete

  • organization - see GitHub::Organization

  • pusher-type

  • ref

  • ref-type

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventFork

  • forkee - see GitHub::Repository

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventGollum

  • organization - see GitHub::Organization

  • pages - List of GitHub::Page

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventIssueComment

  • action - the action performed on an issue comment

  • comment - see GitHub::Comment

  • created-at - DateTime

  • issue - see GitHub::Issue

  • organization - see GitHub::Organization

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

  • updated-at - DateTime

GitHub::EventIssues

  • action - the action performed on an issue

  • issue - see GitHub::Issue

  • repository - see Forgejo::Repository

  • sender - see GitHub::Actor

GitHub::EventLabel

  • action - the action performed on a label

  • label - see GitHub::Label::Label

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventPing

  • hook - see GitHub::Hook

  • hook-id

  • last-response - see GitHub::Response

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

  • zen - random string of GitHub zen

GitHub::EventPublic

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventPullRequest

  • action - action performed

  • organization - see GitHub::Organization

  • number - pull request number

  • pull-request - see GitHub::PullRequest

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventPullRequestComment

  • action - the action performed on a Pull Request comment

  • comment - see GitHub::Comment

  • created-at - DateTime

  • organization - see GitHub::Organization

  • pull-request - see GitHub::PullRequest

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

  • updated-at - DateTime

GitHub::EventPullRequestReview

  • action - the action performed on a Pull Request review

  • organization - see GitHub::Organization

  • pull-request - see GitHub::PullRequest

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

EventPullRequestReviewComment

  • comment - see GitHub::PullRequestComment

  • organization - see GitHub::Organization

  • pull-request - see GitHub::PullRequest

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

EventPullRequestReviewThread

  • action - the action performed on a Pull Request comment review thread

  • organization - see GitHub::Organization

  • pull-request - see GitHub::PullRequest

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

  • thread - see GitHub::PullRequestCommentThread

GitHub::EventPush

  • after - SHA of previous commit

  • base-ref - SHA of base reference

  • before - SHA of next commit

  • commits - list of one or more GitHub::PushCommit object

  • compare - compare URL

  • created - list of files created

  • deleted - list of files deleted

  • forced - was the push forced?

  • ref - SHA of reference

  • head-commit - see GitHub::PushCommit

  • pusher - see GitHub::Person

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventRelease

  • action - the action performed on a release

  • organization - see GitHub::Organization

  • release - see GitHub::Release

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventRepository

  • action - the action performed on a repository

  • repository - See GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventStar

  • action - the action performed on the star

  • repository - See GitHub::Repository

  • sender - see GitHub::Actor

  • starred-at - DateTime

GitHub::EventStatus

  • avatar-url

  • brances - List

  • commit - see GitHub::TreeCommit

  • context

  • created-at - DateTime

  • description

  • id

  • name

  • organization - see GitHub::Organization

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

  • sha

  • state

  • target-url

  • updated-at - DateTime

GitHub::EventWatch

  • action - the action performed related to watchers

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

GitHub::EventWorkflowJob

  • action - action performed

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

  • workflow - see GitHub::Workflow

  • workflow-job - see GitHub::WorkflowJob::WorkflowJob

GitHub::EventWorkflowRun

  • action - action performed

  • repository - see GitHub::Repository

  • sender - see GitHub::Actor

  • workflow - see GitHub::Workflow

  • workflow-run - see GitHub::WorkflowRun::WorkflowRun

GITHUB CLASSES

These classes represent (common) parts of the actual payload classes for GitHub events. The JSON::RepositoryEvent part is not mentioned here in the documentation for convenience.

GitHub::Actor

  • avatar-url

  • email

  • events-url

  • followers-url

  • following-url

  • gists-url

  • gravatar-id

  • html-url

  • id

  • login

  • name

  • node-id

  • organizations-url

  • received-events-url

  • repos-url

  • site-admin

  • starred-url

  • subscriptions-url

  • type

  • url

  • user-view-type

GitHub::App

  • client-id

  • created-at - DateTime

  • description

  • events - List

  • external-url

  • html-url

  • id

  • name

  • node-id

  • owner - see GitHub::Actor

  • permissions - see GitHub::Permissions

  • slug

  • updated-at - DateTime

GitHub::Asset

  • browser-download-url

  • content-type

  • created-at - DateTime

  • digest

  • download-count

  • id

  • label

  • name

  • node-id

  • size

  • state

  • updated-at - DateTime

  • uploader - see GitHub::Actor

  • url

GitHub::CheckRun

  • app - see GitHub::App

  • completed-at - DateTime

  • check-suite - see GitHub::CheckSuite

  • conclusion

  • details-url

  • external-id

  • head-sha

  • html-url

  • id

  • name

  • node-id

  • output - see GitHub::Output

  • pull-requests - List

  • started-at - DateTime

  • status

  • url

GitHub::CheckSuite

  • app - see GitHub::App

  • after

  • before

  • check-runs-url

  • conclusion

  • created-at - DateTime

  • head-branch

  • head-commit - see GitHub::PushCommit

  • head-sha

  • id

  • latest-check-runs-count

  • node-id

  • pull-requests - List

  • rerequestable

  • runs-rerequestable

  • status

  • updated-at - DateTime

  • url

GitHub::Comment

  • author-association

  • body

  • commit-id

  • created-at - DateTime

  • html-url

  • id

  • line

  • node-id

  • path

  • position

  • reactions - see GitHub::Reactions

  • updated-at - DateTime

  • user - see GitHub::Actor

GitHub::Commit

  • author - see GitHub::Actor

  • comments-url

  • commit - see GitHub::PushCommit

  • committer - see GitHub::Actor

  • html-url

  • node-id

  • parents - see GitHub::Tree

  • sha

  • url

GitHub::DependenciesSummary

  • blocked-by

  • blocking

  • total-blocked-by

  • total-blocking

GitHub::Hook

  • active

  • created-at

  • deliveries-url

  • name

  • ping-url

  • test-url

  • type

  • updated-at

  • url

GitHub::HookConfig

  • content-type

  • insecure-ssl

  • url

GitHub::Issue

  • active-lock-reason

  • assignee - see GitHub::Actor

  • assignees - List

  • author-association

  • body

  • closed-at - DateTime

  • comments

  • comments-url

  • created-at - DateTime

  • events-url

  • html-url

  • id

  • issue-dependendencies-summary - see GitHub::DependenciesSummary

  • issue-field-values - List

  • labels - List

  • labels-url

  • locked

  • milestone

  • node-id

  • number

  • performed-via-github-app

  • pinned-comment

  • reactions - see GitHub::Reactions

  • repository-url

  • state

  • state-reason

  • timeline-url

  • updated-at - DateTime

  • url

  • user - see GitHub::Actor

GitHub::Label

  • color

  • default

  • description

  • id

  • name

  • node-id

  • url

GitHub::License

  • key

  • name

  • node-id

  • spdx-id

  • url

  • href

GitHub::Organization

  • avatar_url

  • description

  • events-url

  • hooks-url

  • id

  • issues-url

  • login

  • members-url

  • node-id

  • public-members-url

  • repos-url

  • url

GitHub::Output

  • annotations-count

  • annotations-url

  • summary

  • text

  • title

GitHub::Page

Description of a change made to a page in the wiki.

  • action

  • html-url

  • page-name

  • sha

  • summary

  • title

GitHub::Permissions

  • actions

  • administration

  • artifact-metadata

  • attestations

  • checks

  • code-quality

  • contents

  • copilot-requests

  • deployments

  • discussions

  • drives

  • issues

  • merge-queues

  • metadata

  • models

  • packages

  • pages

  • pull-requests

  • repository-hooks

  • repository-projects

  • security-events

  • statuses

  • vulnerabity-alerts

GitHub::Person

  • date - DateTime

  • email

  • name

  • username

GitHub::PullRequest

  • _links - List of GitHub::Link

  • active-lock-reason

  • additions

  • assignee

  • assignees - List

  • author-association

  • auto-merge

  • base - see GitHub::State

  • body

  • changed-files

  • closed-at - DateTime

  • comments

  • comments-url

  • commits - List of GitHub::Commit

  • commits-url

  • created-at - DateTime

  • deletions

  • diff-url

  • draft

  • head - see GitHub::State

  • html-url

  • id

  • issue-url

  • labels - List

  • locked

  • maintainer-can-modify

  • merge-commit-sha

  • merged-at - DateTime

  • merged-by - see GitHub::Actor

  • mergeable

  • mergeable-state

  • merged

  • milestone

  • node-id

  • number

  • patch-url

  • rebaseable

  • repository - see GitHub::Repository

  • requested-reviewers - List

  • requested-teams - List

  • review-comment-url

  • review-comments

  • review-comments-url

  • sender - see GitHub::Actor

  • state

  • statuses-url

  • title

  • updated-at - DateTime

  • url

  • user - see GitHub::Actor

GitHub::PullRequestComment

  • _links - List of GitHub::Link

  • author-association

  • body

  • commit-id

  • created-at - DateTime

  • diff-hunk

  • html-url

  • id

  • in-reply-to-id

  • line

  • node-id

  • orginal-commit-id

  • original-line

  • original-position

  • original-start-line

  • path

  • position

  • pull-request-review-id

  • pull-request-url

  • reactions - see GitHub::Reactions

  • side

  • start-line

  • start-side

  • subject-type

  • updated-at - DateTime

  • url

  • user - see GitHub::Actor

PullRequestCommentThread

  • comments - List of PullRequestComment

  • node-id

GitHub::PushCommit

  • added - List

  • author - see GitHub::Person

  • committer - see GitHub::Person

  • distinct

  • id

  • message

  • modified - List

  • removed - List

  • tree-id

  • timestamp - DateTime

  • url

GitHub::Reactions

  • confused

  • eyes

  • heart

  • hooray

  • laugh

  • plus1

  • minus1

  • rocket

  • total-count

  • url

GitHub::Review

  • _links - List of GitHub::Link

  • author-association

  • body

  • commit-id

  • html-url

  • id

  • node-id

  • pull-request-url

  • state

  • submitted-at

  • updated-at

GitHub::Release

  • assets - List of GitHub::Asset

  • assets-url

  • author - see GitHub::Actor

  • body

  • created-at - DateTime

  • draft

  • html-url

  • id

  • immutable

  • name

  • node-id

  • published-at - DateTime

  • tag-name

  • tarball-url

  • target-commitish

  • updated-at - DateTime

  • upload-url

  • url

  • zipball-url

GitHub::Repository

  • allow-forking

  • archive-url

  • archived

  • assignees-url

  • blobs-url

  • branches-url

  • clone-url

  • collaborators-url

  • comments-url

  • commits-url

  • compare-url

  • contents-url

  • contributors-url

  • created-at - DateTime

  • default-branch

  • deployment-url

  • description

  • disabled

  • downloads-url

  • events-url

  • fork

  • forks

  • forks-count

  • forks-url

  • full-name

  • git-commits-url

  • git-refs-url

  • git-tags-url

  • git-url

  • has-discussions

  • has-downloads

  • has-issues

  • has-pages

  • has-projects

  • has-pull-requests

  • has-wiki

  • homepage

  • hooks-url

  • html-url

  • id

  • is-template

  • issue-comment-url

  • issue-events-url

  • issues-url

  • keys-url

  • labels-url

  • language

  • languages-url

  • license - see GitHub::License

  • master-branch

  • merges-url

  • milestones-url

  • mirror-url

  • name

  • node-id

  • notifications-url

  • open-issues

  • open-issues-count

  • owner - see GitHub::Actor

  • private

  • pull-request-creation-policy

  • pulls-url

  • pushed-at - DateTime

  • releases-url

  • size

  • ssh-url

  • stargazers

  • stargazers-count

  • stargazers-url

  • statuses-url

  • subscribers-url

  • subscription-url

  • svn-url

  • tags-url

  • teams-url

  • topics - List

  • trees-url

  • updated-at - DateTime

  • visibility

  • watchers

  • watchers-count

  • web-commit-signoff-required

GitHub::Response

  • code

  • message

  • status

GitHub::State

  • label

  • ref

  • repo - see GitHub::Repository

  • sha

  • user - see GitHub::Actor

GitHub::SubIssuesSummary

  • complete

  • percent-completed

  • total

GitHub::Tree

  • html-url

  • sha

  • url

GitHub::TreeCommit

  • author - see GitHub::Actor

  • committer - see GitHub::Actor

  • comment-count

  • message

  • tree - see GitHub::Tree

  • url

  • verification - see GitHub::Verification

GitHub::Verification

  • payload

  • reason

  • signature

  • verified

  • verified-at - DateTime

GitHub::Workflow

  • badge-url

  • created-at - DateTime

  • html-url

  • id

  • name

  • node-id

  • path

  • state

  • updated-at - DateTime

  • url

GitHub::WorkflowJob

  • check-run-url

  • completed-at - DateTime

  • conclusion

  • created-at - DateTime

  • head-branch

  • head-sha

  • html-url

  • id

  • labels - List

  • name

  • node-id

  • run-attempt

  • run-id

  • run-url

  • runner-group-id

  • runner-group-name

  • runner-id

  • runner-name

  • started-at - DateTime

  • status

  • steps - List, see GitHub::WorkflowJob::Step

  • url

  • workflow-name

GitHub::WorkflowRun

  • actor - see GitHub::Actor

  • artifacts-url

  • cancel-url

  • check-suite-id

  • check-suite-node-id

  • check-suite-url

  • conclusion

  • created-at - DateTime

  • display-title

  • event

  • head-branch

  • head-commit - see GitHub::PushCommit

  • head-sha

  • html-url

  • id

  • jobs-url

  • logs-url

  • name

  • node-id

  • path

  • previous-attempt-url

  • pull-requests -List

  • references-workflows -List

  • repository - see GitHub::Repository

  • rerun-url

  • run-attempt

  • run-number

  • run-started-at - DateTime

  • status

  • triggering-actor - see GitHub::Actor

  • updated-at - DateTime

  • url

  • workflow-id

  • workflow-url

FORGEJO EVENTS CLASSES

The full name of these classes is JSON::RepositoryEvent::Forgejo::Eventxxx. The JSON::RepositoryEvent part is not mentioned here in the documentation for convenience.

Forgejo::EventCreate

  • ref

  • ref-type

  • repository - see Forgejo::Repository

  • sender - see Forgejo::Actor

  • sha

Forgejo::EventDelete

  • pusher-type

  • ref

  • ref-type

  • repository - see Forgejo::Repository

  • sender - see Forgejo::Actor

Forgejo::EventFork

  • forkee - see Forgejo::Repository

  • repository - see Forgejo::Repository

  • sender - see Forgejo::Actor

Forgejo::EventIssueComment

  • action - the action performed on an issue comment

  • comment - see Forgejo::Comment

  • created-at - DateTime

  • issue - see Forgejo::Issue

  • organization - see Forgejo::Organization

  • repository - see Forgejo::Repository

  • sender - see Forgejo::Actor

  • updated-at - DateTime

Forgejo::EventIssues

  • action - the action performed on an issue

  • commit-id - SHA of associated commit

  • issue - see Forgejo::Issue

  • number - the issue number

  • repository - see Forgejo::Repository

  • sender - see Forgejo::Actor

Forgejo::EventPullRequest

  • action - action performed

  • organization - see Forgejo::Organization

  • number - pull request number

  • pull-request - see Forgejo::PullRequest

  • repository - see Forgejo::Repository

  • sender - see Forgejo::Actor

Forgejo::EventPullRequestComment

  • action - the action performed on a Pull Request comment

  • comment - see Forgejo::Comment

  • created-at - DateTime

  • organization - see Forgejo::Organization

  • pull-request - see Forgejo::PullRequest

  • repository - see Forgejo::Repository

  • sender - see Forgejo::Actor

  • updated-at - DateTime

Forgejo::EventPush

  • after - SHA of previous commit

  • before - SHA of next commit

  • commits - List of Forgejo::Commit

  • compare-url - compare URL

  • head-commit - see Forgejo::Commit

  • pusher - see Forgejo::Actor

  • ref - SHA of reference

  • repository - see Forgejo::Repository

  • sender - see Forgejo::Actor

  • total-commits - number of commits in this push

FORGEJO CLASSES

These classes represent (common) parts of the actual payload classes for Forgejo (Codeberg) events. The JSON::RepositoryEvent part is not mentioned here in the documentation for convenience.

Forgejo::Actor

  • active

  • avatar-url

  • created - DateTime

  • description

  • email

  • followers-count

  • following-count

  • full-name

  • html-url

  • id

  • is-admin

  • language

  • last-login - DateTime

  • location

  • login

  • login-name

  • prohibit-login

  • pronouns

  • restricted

  • source-id

  • starred-repos-count

  • username

  • visibility

  • website

Forgejo::Commit

  • added - List

  • author - see Forgejo::Person

  • committer - see Forgejo::Person

  • id

  • message

  • modified - List

  • removed - List

  • timestamp - DateTime

  • url

  • verification

Forgejo::Issue

  • assets - List

  • assignee - see Forgejo::Actor

  • assignees - List of Forgejo::Actor

  • body

  • closed-at - DateTime

  • created-at - DateTime

  • comments

  • due-date

  • html-url

  • id

  • is-locked

  • labels - List

  • milestone

  • number

  • original-author

  • original-author-id

  • pin-orer

  • pull-request

  • ref

  • state

  • title

  • updated-at - DateTime

  • url

Forgejo::Permissions

  • admin

  • pull

  • push

Forgejo::Person

  • email

  • name

  • username

Forgejo::PullRequest

  • additions

  • allow-maintainer-edit

  • assignee

  • assignees - List

  • base - see Forgejo::State

  • body

  • changed-files

  • closed-at - DateTime

  • comments

  • created-at - DateTime

  • deletions

  • diff-url

  • draft

  • head - see GitHub::State

  • html-url

  • id

  • issue-url

  • is-locked

  • labels - List

  • merge-commit-sha

  • merged-at - DateTime

  • merged-by - see GitHub::Actor

  • mergeable

  • merged

  • milestone

  • number

  • patch-url

  • pin-order

  • rebaseable

  • repository - see GitHub::Repository

  • requested-reviewers - List

  • requested-teams - List

  • review-comments

  • state

  • title

  • updated-at - DateTime

Forgejo::Repository

  • allow-fast-forward-only-merge

  • allow-merge-commits

  • allow-rebase

  • allow-rebase-explicit

  • allow-rebase-update

  • allow-squash-merge

  • archived

  • archived-at - DateTime

  • avatar-url

  • clone-url

  • created-at - DateTime

  • default-allow-maintainer-edit

  • default-branch

  • default-delete-branch-after-merge

  • default-merge-style

  • default-update-style

  • description

  • empty

  • fork

  • forks-count

  • full-name

  • globally-editable-wiki

  • has-actions

  • has-issues

  • has-projects

  • has-pull-requests

  • has-releases

  • has-wiki

  • has-wiki-contents

  • html-url

  • id

  • ignore_whitespace_conflicts

  • internal

  • internal-tracker - see Forgejo::Tracker

  • language

  • languages-url

  • link

  • mirror

  • mirror-interval

  • mirror-updated - DateTime

  • name

  • object-format

  • open-issues-count

  • open-pr-counter

  • original-url

  • owner - see Forgejo::Actor

  • permissions - see Forgejo::Permissions

  • parent

  • private

  • release-counter

  • repo-transfer

  • size

  • ssh-url

  • stars-count

  • template

  • topics - List

  • updated-at - DateTime

  • url

  • watchers-count

  • website

  • wiki-branch

  • wiki-clone-url

  • wiki-ssh-url

Forgejo::State

  • label

  • ref

  • repo - see Forgejo::Repository

  • repo-id

  • sha

  • user - see Forgejo::Actor

Forgejo::Tracker

  • allow-only-contributors-to-track-time

  • enable-issue-dependencies

  • enable_time_tracker

AUTHOR

Elizabeth Mattijsen liz@raku.rocks

COPYRIGHT AND LICENSE

Copyright 2026 Elizabeth Mattijsen

Source can be located at: https://codeberg.org/lizmat/JSON-RepositoryEvent . Comments and Pull Requests are welcome.

If you like this module, or what I'm doing more generally, committing to a small sponsorship would mean a great deal to me!

This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.