WIP: [FEAT] implement F3 support #57

Closed
opened 2022-11-26 18:15:04 +00:00 by earl-warren · 14 comments
Owner

I would like to work on an integration of F3 in Forgejo. I've done work a few months ago but the PR in Gitea went stale, in part because I did not have time to spend on it.

Given the recent developments of the Gitea project, I would prefer to work on Forgejo. F3 is useful in the context of forge federation and I'm looking forward to cooperate with developers who are actively working on it in Forgejo.

I accepted, I pledge to maintain and backport the forgejo-f3 branch to stable versions and rebase it as explained in the contribution guide.

I would like to work on an integration of [F3](https://lab.forgefriends.org/friendlyforgeformat/gof3) in Forgejo. I've done work a [few months ago](https://gitea.com/earl-warren/gitea/pulls/2) but the [PR in Gitea](https://github.com/go-gitea/gitea/pull/21081) went stale, in part because I did not have time to spend on it. Given the recent developments of the Gitea project, I would prefer to work on Forgejo. F3 is useful in the context of forge federation and I'm looking forward to cooperate with developers who are actively working on it in Forgejo. I accepted, I pledge to maintain and backport the forgejo-f3 branch to stable versions and rebase it as explained in the [contribution guide](https://codeberg.org/forgejo/forgejo/src/branch/forgejo/CONTRIBUTING.md#development-workflow).
dachary changed title from advocacy for a forgejo-f3 branch to [FEAT] advocacy for a forgejo-f3 branch 2022-11-26 18:18:41 +00:00
dachary added the
enhancement/feature
label 2022-11-26 18:18:52 +00:00
Member

A a co-author of https://lab.forgefriends.org/friendlyforgeformat/gof3 I'm (obviously) in favor of creating such a branch. I pledge to also help maintain it.

A a co-author of https://lab.forgefriends.org/friendlyforgeformat/gof3 I'm (obviously) in favor of creating such a branch. I pledge to also help maintain it.

I suggest to at least wait for a stable release (and the announcement?) before work here starts.

I suggest to at least wait for a stable release (and the announcement?) before work here starts.
dachary changed title from [FEAT] advocacy for a forgejo-f3 branch to [FEAT] implement F3 support 2022-11-26 21:15:28 +00:00
Member

@Ryuno-Ki I agree that it would be premature to backport anything to v1.18. But what about starting the work on v1.19?

@Ryuno-Ki I agree that it would be premature to backport anything to v1.18. But what about starting the work on v1.19?

I mean, if you have the capacity, go for it.
I could imagine, however, that after the v1.18 release, the holidays will cause most of the people to take a break from coding and spend time with family.

That would lead to a break in context, which might make it harder to catch up with what was written before christmas.

Therefore I suggested to wait a little.

I mean, if you have the capacity, go for it. I could imagine, however, that after the v1.18 release, the holidays will cause most of the people to take a break from coding and spend time with family. That would lead to a break in context, which might make it harder to catch up with what was written before christmas. Therefore I suggested to wait a little.
dachary added the
forgejo/federation
label 2022-11-28 07:42:57 +00:00
Author
Owner

I mean, if you have the capacity, go for it.

I do. I'll start working in my own branch while the discussion continues.

> I mean, if you have the capacity, go for it. I do. I'll start working in [my own branch](https://codeberg.org/earl-warren/forgejo/src/branch/forgejo-f3) while the discussion continues.
earl-warren started working 2022-11-29 02:11:14 +00:00
earl-warren stopped working 2022-11-29 11:25:21 +00:00
9 hours 14 minutes
earl-warren deleted spent time 2022-11-29 11:25:33 +00:00
- 9 hours 14 minutes
earl-warren added spent time 2022-11-29 11:25:45 +00:00
4 hours
earl-warren referenced this issue from a commit 2022-11-29 11:30:04 +00:00
earl-warren referenced this issue from a commit 2022-11-29 16:02:38 +00:00
Member

Is this completed?

Is this completed?
Member

It was apparently closed because of a reference in the commits, re-opening.

It was apparently closed because of a reference in the commits, re-opening.
dachary reopened this issue 2022-11-30 06:08:47 +00:00
Author
Owner

The CI passes on the F3 branch, rebased on top of the forgejo-development branch. But it does not include the integration tests and they still fail. Working on it.

It would be good to run integration tests (sqlite at the minimum) in the CI.

The [CI passes](https://ci.codeberg.org/forgejo/forgejo/pipeline/116) on the [F3 branch](https://codeberg.org/forgejo/forgejo/src/branch/forgejo-f3), rebased on top of the `forgejo-development` branch. But it does not include the integration tests and they still fail. Working on it. It would be good to run integration tests (sqlite at the minimum) in the CI.
dachary changed title from [FEAT] implement F3 support to WIP: [FEAT] implement F3 support 2022-12-02 20:26:58 +00:00
dachary reopened this issue 2022-12-02 20:27:05 +00:00
Member

Marked as WIP: so that it is not closed by accident. There still is significant work to do before it can be merged.

Marked as WIP: so that it is not closed by accident. There still is significant work to do before it can be merged.
Author
Owner

Rebased on top of the current forgejo-development branch and the CI is green after the following changes.

method signature changes

https://ci.codeberg.org/forgejo/forgejo/pipeline/130/7

/go/src/codeberg/gitea/services/f3/driver/project.go:118:29: GetRepositoryByIDCtx not declared by package repo
/go/src/codeberg/gitea/services/f3/driver/pull_request.go:148:107: not enough arguments in call to repo_model.GetRepositoryByOwnerAndName
	have (string, string)
	want ("context".Context, string, string)
/go/src/codeberg/gitea/services/f3/driver/pull_request.go:156:107: not enough arguments in call to repo_model.GetRepositoryByOwnerAndName
	have (string, string)
	want ("context".Context, string, string)
/go/src/codeberg/gitea/services/f3/driver/user.go:105:26: GetUserByIDCtx not declared by package user

Fixed with these changes.

make tidy

https://ci.codeberg.org/forgejo/forgejo/pipeline/131/9

make[1]: [Makefile:427: assets/go-licenses.json] Error 1 (ignored)
go run build/generate-go-licenses.go .go-licenses assets/go-licenses.json
Please run 'make tidy' and commit the result:
diff --git a/go.sum b/go.sum
index 911b74851..d538097aa 100644
--- a/go.sum
+++ b/go.sum
@@ -159,6 +159,7 @@ github.com/acomagu/bufpipe v1.0.3/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ
 github.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c=
 github.com/akavel/rsrc v0.8.0/go.mod h1:uLoCtb9J+EyAqh+26kdrTgmzRBFPGOolLWKpdxkKq+c=
 github.com/alcortesm/tgz v0.0.0-20161220082320-9c5fe88206d7/go.mod h1:6zEj6s6u/ghQa61ZWa/C2Aw3RkjiTBOix7dkqa1VLIs=
+github.com/alecthomas/assert/v2 v2.2.0 h1:f6L/b7KE2bfA+9O4FL3CM/xJccDEwPVYd5fALBiuwvw=
 github.com/alecthomas/chroma/v2 v2.2.0/go.mod h1:vf4zrexSH54oEjJ7EdB65tGNHmH3pGZmVkgTP5RHvAs=
 github.com/alecthomas/chroma/v2 v2.4.0 h1:Loe2ZjT5x3q1bcWwemqyqEi8p11/IV/ncFCeLYDpWC4=
 github.com/alecthomas/chroma/v2 v2.4.0/go.mod h1:6kHzqF5O6FUSJzBXW7fXELjb+e+7OXW4UpoPqMO7IBQ=

Fixed with these changes.

Rebased on top of the current `forgejo-development` branch and the [CI is green](https://ci.codeberg.org/forgejo/forgejo/pipeline/132) after the following changes. ### method signature changes https://ci.codeberg.org/forgejo/forgejo/pipeline/130/7 ``` /go/src/codeberg/gitea/services/f3/driver/project.go:118:29: GetRepositoryByIDCtx not declared by package repo /go/src/codeberg/gitea/services/f3/driver/pull_request.go:148:107: not enough arguments in call to repo_model.GetRepositoryByOwnerAndName have (string, string) want ("context".Context, string, string) /go/src/codeberg/gitea/services/f3/driver/pull_request.go:156:107: not enough arguments in call to repo_model.GetRepositoryByOwnerAndName have (string, string) want ("context".Context, string, string) /go/src/codeberg/gitea/services/f3/driver/user.go:105:26: GetUserByIDCtx not declared by package user ``` Fixed with [these changes](https://codeberg.org/forgejo/forgejo/compare/857bf77f5727f99e58424538c37d473ba133dd9c..f6a007a5ad72ee29f560b7abc26ae627ec1f5f66). ### make tidy https://ci.codeberg.org/forgejo/forgejo/pipeline/131/9 ``` make[1]: [Makefile:427: assets/go-licenses.json] Error 1 (ignored) go run build/generate-go-licenses.go .go-licenses assets/go-licenses.json Please run 'make tidy' and commit the result: diff --git a/go.sum b/go.sum index 911b74851..d538097aa 100644 --- a/go.sum +++ b/go.sum @@ -159,6 +159,7 @@ github.com/acomagu/bufpipe v1.0.3/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ github.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c= github.com/akavel/rsrc v0.8.0/go.mod h1:uLoCtb9J+EyAqh+26kdrTgmzRBFPGOolLWKpdxkKq+c= github.com/alcortesm/tgz v0.0.0-20161220082320-9c5fe88206d7/go.mod h1:6zEj6s6u/ghQa61ZWa/C2Aw3RkjiTBOix7dkqa1VLIs= +github.com/alecthomas/assert/v2 v2.2.0 h1:f6L/b7KE2bfA+9O4FL3CM/xJccDEwPVYd5fALBiuwvw= github.com/alecthomas/chroma/v2 v2.2.0/go.mod h1:vf4zrexSH54oEjJ7EdB65tGNHmH3pGZmVkgTP5RHvAs= github.com/alecthomas/chroma/v2 v2.4.0 h1:Loe2ZjT5x3q1bcWwemqyqEi8p11/IV/ncFCeLYDpWC4= github.com/alecthomas/chroma/v2 v2.4.0/go.mod h1:6kHzqF5O6FUSJzBXW7fXELjb+e+7OXW4UpoPqMO7IBQ= ``` Fixed with [these changes](https://codeberg.org/forgejo/forgejo/compare/f6a007a5ad72ee29f560b7abc26ae627ec1f5f66..5105463df410dbead69265b7f1335118ffd28cc6).
dachary referenced this issue from a commit 2022-12-06 15:54:34 +00:00
Member

This keeps being closed due to the fixes annotation in 9c21037cce 😩

This keeps being closed due to the `fixes` annotation in https://codeberg.org/forgejo/forgejo/commit/9c21037cce81d6d341e89eead20bd7a9de8c9518 😩
caesar reopened this issue 2022-12-06 21:11:58 +00:00
Member

😊 thanks for fixing my mistake.

😊 thanks for fixing my mistake.
dachary referenced this issue from a commit 2022-12-11 17:10:55 +00:00
Contributor

Reopening as it's once again only closed by the Docs commit

Reopening as it's once again only closed by the Docs commit
gapodo reopened this issue 2022-12-11 17:58:19 +00:00
Member

Created a followup issue at #93 so this one ca be closed.

Created a followup issue at https://codeberg.org/forgejo/forgejo/issues/93 so this one ca be closed.
Sign in to join this conversation.
No labels
arch
amd64
arch
arm6
arch
arm64
arch
arm7
arch
riscv64
backport/v1.19
backport/v1.20
backport/v1.21/forgejo
backport/v7.0/forgejo
backport/v8.0/forgejo
breaking
bug
bug
confirmed
bug
duplicate
bug
needs-more-info
bug
new-report
bug
reported-upstream
codeberg
database
CockroachDB
database
MySQL
database
PostgreSQL
database
SQLite
dependency-upgrade
dependency
ACT
dependency
alpine
dependency
asciinema-player
dependency
bleve
dependency
cache
dependency
certmagic
dependency
chart.js
dependency
Chi
dependency
Chroma
dependency
citation.js
dependency
codespell
dependency
css-loader
dependency
devcontainers
dependency
dropzone
dependency
editorconfig-checker
dependency
elasticsearch
dependency
enmime
dependency
F3
dependency
ForgeFed
dependency
garage
dependency
Git
dependency
git-backporting
dependency
Gitea
dependency
gitignore
dependency
go-ap
dependency
go-enry
dependency
go-gitlab
dependency
Go-org
dependency
go-rpmutils
dependency
go-sql-driver mysql
dependency
go-swagger
dependency
go-version
dependency
go-webauthn
dependency
gocron
dependency
Golang
dependency
goldmark
dependency
goquery
dependency
Goth
dependency
grpc-go
dependency
happy-dom
dependency
Helm
dependency
image-spec
dependency
jsonschema
dependency
KaTeX
dependency
lint
dependency
MariaDB
dependency
Mermaid
dependency
minio-go
dependency
misspell
dependency
Monaco
dependency
PDFobject
dependency
playwright
dependency
postcss
dependency
postcss-plugins
dependency
pprof
dependency
prometheus client_golang
dependency
protobuf
dependency
relative-time-element
dependency
renovate
dependency
reply
dependency
ssh
dependency
swagger-ui
dependency
tailwind
dependency
temporal-polyfill
dependency
terminal-to-html
dependency
tests-only
dependency
text-expander-element
dependency
urfave
dependency
vfsgen
dependency
vite
dependency
Woodpecker CI
dependency
x tools
dependency
XORM
Discussion
duplicate
enhancement/feature
forgejo/accessibility
forgejo/actions
forgejo/api
forgejo/branding
forgejo/ci
forgejo/documentation
forgejo/email
forgejo/federation
forgejo/furnace cleanup
forgejo/internationalization
forgejo/moderation
forgejo/privacy
forgejo/release
forgejo/scaling
forgejo/security
forgejo/ui
Gain
High
Gain
Nice to have
Gain
Undefined
Gain
Very High
good first issue
issue
closed
issue
do-not-exist-yet
issue
open
manual test
Manually tested during feature freeze
OS
FreeBSD
OS
Linux
OS
MacOS
OS
Windows
regression
release blocker
Release Cycle
Feature Freeze
release-blocker
v7.0
release-blocker
v7.0.1
release-blocker
v7.0.2
release-blocker
v7.0.3
release-blocker
v7.0.4
release-blocker
v8.0.0
run-end-to-end-tests
test
manual
test
needed
test
needs-help
test
not-needed
test
present
untested
valuable code
worth a release-note
User Research - Accessibility
User Research - bug
User Research - Config (instance)
User Research - Dashboard
User Research - documentation
User Research - Errors
User Research - feature
User Research - federation
User Research - Filters
User Research - governance
User Research - Labels
User Research - Moderation
User Research - Needs Input
User Research - Notifications
User Research - release
User Research - Repo creation
User Research - Repo Units
User Research - security
User Research - Settings (in-app)
User Research - testing
User Research - UI
User Research - UX
No milestone
No project
No assignees
5 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: forgejo/forgejo#57
No description provided.