Commit graph

12 commits

Author SHA1 Message Date
Voislav Vasiljevski
3967a1ba79 feat: add Forgejo Actions runs API (#1)
New model:
  - WorkflowRun — mirrors Forgejo's ActionRun schema (id, title, status,
    event, indexInRepo, commitSha, prettyRef, workflowId, created, updated,
    started, stopped, durationNanos, htmlUrl, triggerUser, repository).

New service:
  - WorkflowService
      - fetchRuns(owner:repo:status:event:ref:workflowId:runNumber:headSha:page:limit:)
        backed by GET /repos/{owner}/{repo}/actions/runs.
      - fetchRun(owner:repo:runId:) backed by
        GET /repos/{owner}/{repo}/actions/runs/{run_id}.

Experimental:
  - fetchRunView(owner:repo:runIndex:jobIndex:logCursors:) backed by
    Forgejo's web-UI route POST
    /{owner}/{repo}/actions/runs/{runIndex}/jobs/{jobIndex}/attempt/{N}.
    This is not part of /api/v1 and may change between Forgejo releases;
    it lets clients render jobs, steps, and step logs (via WorkflowRunView,
    WorkflowRunViewJob, WorkflowRunViewStep, WorkflowLogCursor types).
  - ForgejoClient.discoverRedirectLocation(url:) helper that resolves
    Forgejo's RedirectToLatestAttempt without consuming the redirect
    target — used to find the latest attempt number before POSTing.

Co-authored-by: Voislav Vasiljevski <voislav@voioo.cz>
Reviewed-on: https://codeberg.org/secana/ForgejoKit/pulls/1
Reviewed-by: secana <secana@noreply.codeberg.org>
2026-05-07 16:42:16 +02:00
Stefan Hausotte
c31ce0d267 release 0.3.2 2026-03-22 11:49:58 +01:00
Stefan Hausotte
4c786f4f73 fix: pascal case needed for merge message an titel 2026-03-22 11:49:42 +01:00
Stefan Hausotte
954d5b5064 release 0.3.1 2026-03-22 11:29:07 +01:00
Stefan Hausotte
7da2d2ce0d fix: missing merge titel in PRs 2026-03-22 11:29:01 +01:00
Stefan Hausotte
373b29a21b release 0.3.0 2026-03-22 11:15:21 +01:00
Stefan Hausotte
271839d21b feat: add fetchRepository function 2026-03-22 11:15:10 +01:00
Stefan Hausotte
a73f044623 release 0.2.0 2026-03-11 22:17:50 +01:00
Stefan Hausotte
f576906931 fix: lint errors 2026-03-11 22:17:20 +01:00
Stefan Hausotte
0c2fc12ded feat: add new models and services
New model:
  - Token — id, name, sha1, tokenLastEight

New services:
  - AdminService — createUser()
  - UserService — createToken()

RepositoryService additions:
  - createRepository()
  - editRepository()
  - createLabel()
  - createMilestone()
  - addCollaborator()
  - createFile()

remove MARKS
2026-03-11 21:57:40 +01:00
Stefan Hausotte
42c5ec0ea6 fix: failing release command 2026-02-28 20:33:38 +01:00
Stefan Hausotte
897a8ebedd feat: initial commit
Intitial commit for ForgejoKit, a native Swift library to interact with
the Frogejo API
2026-02-28 20:25:57 +01:00