2019-03-27 07:15:23 -04:00
|
|
|
module code.gitea.io/gitea
|
|
|
|
|
2024-11-06 19:03:28 -05:00
|
|
|
go 1.23.3
|
2019-03-27 07:15:23 -04:00
|
|
|
|
|
|
|
require (
|
2024-08-18 12:53:54 -04:00
|
|
|
code.forgejo.org/f3/gof3/v3 v3.7.0
|
2024-09-14 03:58:49 -04:00
|
|
|
code.forgejo.org/forgejo-contrib/go-libravatar v0.0.0-20191008002943-06d1c002b251
|
2024-06-08 20:05:02 -04:00
|
|
|
code.forgejo.org/forgejo/reply v1.0.2
|
2024-11-08 12:43:48 -05:00
|
|
|
code.forgejo.org/go-chi/binding v1.0.0
|
2024-11-08 16:12:20 -05:00
|
|
|
code.forgejo.org/go-chi/cache v1.0.0
|
2024-11-09 02:28:23 -05:00
|
|
|
code.forgejo.org/go-chi/captcha v1.0.0
|
2024-11-08 18:37:13 -05:00
|
|
|
code.forgejo.org/go-chi/session v1.0.0
|
2024-02-20 17:22:30 -05:00
|
|
|
code.gitea.io/actions-proto-go v0.4.0
|
2023-10-13 12:11:15 -04:00
|
|
|
code.gitea.io/gitea-vet v0.2.3
|
2024-01-23 00:40:00 -05:00
|
|
|
code.gitea.io/sdk/gitea v0.17.1
|
2022-09-01 17:13:17 -04:00
|
|
|
codeberg.org/gusted/mcaptcha v0.0.0-20220723083913-4f3072e1d570
|
2024-09-20 22:02:43 -04:00
|
|
|
connectrpc.com/connect v1.17.0
|
2023-08-16 08:02:40 -04:00
|
|
|
gitea.com/lunny/levelqueue v0.4.2-0.20230414023320-3c0159fe0fe4
|
2021-12-19 00:37:18 -05:00
|
|
|
github.com/42wim/sshsig v0.0.0-20211121163825-841cf5bbc121
|
2023-05-02 17:40:46 -04:00
|
|
|
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358
|
2024-04-27 19:21:33 -04:00
|
|
|
github.com/ProtonMail/go-crypto v1.0.0
|
2024-09-06 22:02:47 -04:00
|
|
|
github.com/PuerkitoBio/goquery v1.10.0
|
Support compression for Actions logs (#31761)
Support compression for Actions logs to save storage space and
bandwidth. Inspired by
https://github.com/go-gitea/gitea/issues/24256#issuecomment-1521153015
The biggest challenge is that the compression format should support
[seekable](https://github.com/facebook/zstd/blob/dev/contrib/seekable_format/zstd_seekable_compression_format.md).
So when users are viewing a part of the log lines, Gitea doesn't need to
download the whole compressed file and decompress it.
That means gzip cannot help here. And I did research, there aren't too
many choices, like bgzip and xz, but I think zstd is the most popular
one. It has an implementation in Golang with
[zstd](https://github.com/klauspost/compress/tree/master/zstd) and
[zstd-seekable-format-go](https://github.com/SaveTheRbtz/zstd-seekable-format-go),
and what is better is that it has good compatibility: a seekable format
zstd file can be read by a regular zstd reader.
This PR introduces a new package `zstd` to combine and wrap the two
packages, to provide a unified and easy-to-use API.
And a new setting `LOG_COMPRESSION` is added to the config, although I
don't see any reason why not to use compression, I think's it's a good
idea to keep the default with `none` to be consistent with old versions.
`LOG_COMPRESSION` takes effect for only new log files, it adds `.zst` as
an extension to the file name, so Gitea can determine if it needs
decompression according to the file name when reading. Old files will
keep the format since it's not worth converting them, as they will be
cleared after #31735.
<img width="541" alt="image"
src="https://github.com/user-attachments/assets/e9598764-a4e0-4b68-8c2b-f769265183c9">
(cherry picked from commit 33cc5837a655ad544b936d4d040ca36d74092588)
Conflicts:
assets/go-licenses.json
go.mod
go.sum
resolved with make tidy
2024-08-08 22:10:30 -04:00
|
|
|
github.com/SaveTheRbtz/zstd-seekable-format-go/pkg v0.7.2
|
2024-05-30 16:52:26 -04:00
|
|
|
github.com/alecthomas/chroma/v2 v2.14.0
|
2023-05-02 12:31:35 -04:00
|
|
|
github.com/blakesmith/ar v0.0.0-20190502131153-809d4375e1fb
|
2024-11-13 19:03:01 -05:00
|
|
|
github.com/blevesearch/bleve/v2 v2.4.3
|
2024-11-11 21:04:00 -05:00
|
|
|
github.com/buildkite/terminal-to-html/v3 v3.16.4
|
2024-10-02 20:03:02 -04:00
|
|
|
github.com/caddyserver/certmagic v0.21.4
|
2021-03-15 18:27:28 -04:00
|
|
|
github.com/chi-middleware/proxy v1.1.1
|
2021-06-20 18:00:46 -04:00
|
|
|
github.com/djherbis/buffer v1.2.0
|
|
|
|
github.com/djherbis/nio/v3 v3.0.1
|
2024-08-22 20:04:23 -04:00
|
|
|
github.com/dsnet/compress v0.0.2-0.20230904184137-39efe44ab707
|
2023-02-24 15:18:49 -05:00
|
|
|
github.com/dustin/go-humanize v1.0.1
|
2024-04-03 00:08:11 -04:00
|
|
|
github.com/editorconfig/editorconfig-core-go/v2 v2.6.2
|
2023-01-14 10:57:10 -05:00
|
|
|
github.com/emersion/go-imap v1.2.1
|
2024-08-30 20:04:17 -04:00
|
|
|
github.com/felixge/fgprof v0.9.5
|
2024-11-01 22:04:39 -04:00
|
|
|
github.com/fsnotify/fsnotify v1.8.0
|
2024-03-25 14:24:23 -04:00
|
|
|
github.com/gliderlabs/ssh v0.3.7
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/go-ap/activitypub v0.0.0-20231114162308-e219254dc5c9
|
2023-01-12 03:21:16 -05:00
|
|
|
github.com/go-ap/jsonld v0.0.0-20221030091449-f2a191312c73
|
2024-08-22 21:08:06 -04:00
|
|
|
github.com/go-chi/chi/v5 v5.1.0
|
2022-05-10 06:32:42 -04:00
|
|
|
github.com/go-chi/cors v1.2.1
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/go-co-op/gocron v1.37.0
|
2024-10-17 20:05:06 -04:00
|
|
|
github.com/go-enry/go-enry/v2 v2.9.1
|
User keypairs and HTTP signatures for ActivityPub federation using go-ap (#19133)
* go.mod: add go-fed/{httpsig,activity/pub,activity/streams} dependency
go get github.com/go-fed/activity/streams@master
go get github.com/go-fed/activity/pub@master
go get github.com/go-fed/httpsig@master
* activitypub: implement /api/v1/activitypub/user/{username} (#14186)
Return informations regarding a Person (as defined in ActivityStreams
https://www.w3.org/TR/activitystreams-vocabulary/#dfn-person).
Refs: https://github.com/go-gitea/gitea/issues/14186
Signed-off-by: Loïc Dachary <loic@dachary.org>
* activitypub: add the public key to Person (#14186)
Refs: https://github.com/go-gitea/gitea/issues/14186
Signed-off-by: Loïc Dachary <loic@dachary.org>
* activitypub: go-fed conformant Clock instance
Signed-off-by: Loïc Dachary <loic@dachary.org>
* activitypub: signing http client
Signed-off-by: Loïc Dachary <loic@dachary.org>
* activitypub: implement the ReqSignature middleware
Signed-off-by: Loïc Dachary <loic@dachary.org>
* activitypub: hack_16834
Signed-off-by: Loïc Dachary <loic@dachary.org>
* Fix CI checks-backend errors with go mod tidy
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Change 2021 to 2022, properly format package imports
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Run make fmt and make generate-swagger
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Use Gitea JSON library, add assert for pkp
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Run make fmt again, fix err var redeclaration
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Remove LogSQL from ActivityPub person test
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Assert if json.Unmarshal succeeds
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Cleanup, handle invalid usernames for ActivityPub person GET request
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Rename hack_16834 to user_settings
Signed-off-by: Anthony Wang <ta180m@pm.me>
* Use the httplib module instead of http for GET requests
* Clean up whitespace with make fmt
* Use time.RFC1123 and make the http.Client proxy-aware
* Check if digest algo is supported in setting module
* Clean up some variable declarations
* Remove unneeded copy
* Use system timezone instead of setting.DefaultUILocation
* Use named constant for httpsigExpirationTime
* Make pubKey IRI #main-key instead of /#main-key
* Move /#main-key to #main-key in tests
* Implemented Webfinger endpoint.
* Add visible check.
* Add user profile as alias.
* Add actor IRI and remote interaction URL to WebFinger response
* fmt
* Fix lint errors
* Use go-ap instead of go-fed
* Run go mod tidy to fix missing modules in go.mod and go.sum
* make fmt
* Convert remaining code to go-ap
* Clean up go.sum
* Fix JSON unmarshall error
* Fix CI errors by adding @context to Person() and making sure types match
* Correctly decode JSON in api_activitypub_person_test.go
* Force CI rerun
* Fix TestActivityPubPersonInbox segfault
* Fix lint error
* Use @mariusor's suggestions for idiomatic go-ap usage
* Correctly add inbox/outbox IRIs to person
* Code cleanup
* Remove another LogSQL from ActivityPub person test
* Move httpsig algos slice to an init() function
* Add actor IRI and remote interaction URL to WebFinger response
* Update TestWebFinger to check for ActivityPub IRI in aliases
* make fmt
* Force CI rerun
* WebFinger: Add CORS header and fix Href -> Template for remote interactions
The CORS header is needed due to https://datatracker.ietf.org/doc/html/rfc7033#section-5 and fixes some Peertube <-> Gitea federation issues
* make lint-backend
* Make sure Person endpoint has Content-Type application/activity+json and includes PreferredUsername, URL, and Icon
Setting the correct Content-Type is essential for federating with Mastodon
* Use UTC instead of GMT
* Rename pkey to pubKey
* Make sure HTTP request Date in GMT
* make fmt
* dont drop err
* Make sure API responses always refer to username in original case
Copied from what I wrote on #19133 discussion: Handling username case is a very tricky issue and I've already encountered a Mastodon <-> Gitea federation bug due to Gitea considering Ta180m and ta180m to be the same user while Mastodon thinks they are two different users. I think the best way forward is for Gitea to only use the original case version of the username for federation so other AP software don't get confused.
* Move httpsig algs constant slice to modules/setting/federation.go
* Add new federation settings to app.example.ini and config-cheat-sheet
* Return if marshalling error
* Make sure Person IRIs are generated correctly
This commit ensures that if the setting.AppURL is something like "http://127.0.0.1:42567" (like in the integration tests), a trailing slash will be added after that URL.
* If httpsig verification fails, fix Host header and try again
This fixes a very rare bug when Gitea and another AP server (confirmed to happen with Mastodon) are running on the same machine, Gitea fails to verify incoming HTTP signatures. This is because the other AP server creates the sig with the public Gitea domain as the Host. However, when Gitea receives the request, the Host header is instead localhost, so the signature verification fails. Manually changing the host header to the correct value and trying the veification again fixes the bug.
* Revert "If httpsig verification fails, fix Host header and try again"
This reverts commit f53e46c721a037c55facb9200106a6b491bf834c.
The bug was actually caused by nginx messing up the Host header when reverse-proxying since I didn't have the line `proxy_set_header Host $host;` in my nginx config for Gitea.
* Go back to using ap.IRI to generate inbox and outbox IRIs
* use const for key values
* Update routers/web/webfinger.go
* Use ctx.JSON in Person response to make code cleaner
* Revert "Use ctx.JSON in Person response to make code cleaner"
This doesn't work because the ctx.JSON() function already sends the response out and it's too late to edit the headers.
This reverts commit 95aad988975be3393c76094864ed6ba962157e0c.
* Use activitypub.ActivityStreamsContentType for Person response Content Type
* Limit maximum ActivityPub request and response sizes to a configurable setting
* Move setting key constants to models/user/setting_keys.go
* Fix failing ActivityPubPerson integration test by checking the correct field for username
* Add a warning about changing settings that can break federation
* Add better comments
* Don't multiply Federation.MaxSize by 1<<20 twice
* Add more better comments
* Fix failing ActivityPubMissingPerson test
We now use ctx.ContextUser so the message printed out when a user does not exist is slightly different
* make generate-swagger
For some reason I didn't realize that /templates/swagger/v1_json.tmpl was machine-generated by make generate-swagger... I've been editing it by hand for three months! 🤦
* Move getting the RFC 2616 time to a separate function
* More code cleanup
* Update go-ap to fix empty liked collection and removed unneeded HTTP headers
* go mod tidy
* Add ed25519 to httpsig algorithms
* Use go-ap/jsonld to add @context and marshal JSON
* Change Gitea user agent from the default to Gitea/Version
* Use ctx.ServerError and remove all remote interaction code from webfinger.go
2022-06-19 01:25:12 -04:00
|
|
|
github.com/go-fed/httpsig v1.1.1-0.20201223112313-55836744818e
|
2024-01-23 00:40:00 -05:00
|
|
|
github.com/go-git/go-git/v5 v5.11.0
|
2023-10-07 01:55:08 -04:00
|
|
|
github.com/go-ldap/ldap/v3 v3.4.6
|
2024-11-28 13:36:55 -05:00
|
|
|
github.com/go-openapi/spec v0.20.14
|
2024-03-30 10:46:43 -04:00
|
|
|
github.com/go-sql-driver/mysql v1.8.1
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/go-swagger/go-swagger v0.30.5
|
2024-07-13 20:07:10 -04:00
|
|
|
github.com/go-testfixtures/testfixtures/v3 v3.12.0
|
2024-08-27 20:05:00 -04:00
|
|
|
github.com/go-webauthn/webauthn v0.11.2
|
2019-09-09 01:48:21 -04:00
|
|
|
github.com/gobwas/glob v0.2.3
|
2022-03-08 06:15:30 -05:00
|
|
|
github.com/gogs/chardet v0.0.0-20211120154057-b7413eaefb8f
|
2021-01-31 23:49:25 -05:00
|
|
|
github.com/gogs/go-gogs-client v0.0.0-20210131175652-1d7215cd8d85
|
2024-08-27 20:05:00 -04:00
|
|
|
github.com/golang-jwt/jwt/v5 v5.2.1
|
Add a "summary card" to issues & PRs for consumption by OpenGraph clients (#6053)
## Overview
Hi all, I'm a first-time contributor to Forgejo. I was looking for something interesting to contribute and the first thing that caught my attention was https://codeberg.org/forgejo/forgejo/issues/6043, a request for an enhancement to include "issue previews" when publishing links to social media platforms. As a bit of background, the way these platforms work is that they search for meta tags in the posted link's content, and if they find a meta `og:image` (along with other meta tags) they'll pull the image to include in the social media post. Forgejo currently provides an `og:image` tag but it just renders the repository or repository-owner's avatar.
This PR will render `og:image` for an issue or PR into a link to `{...}/summary-card`, which is a dynamically generated image that contains a summary of the issue.
## Design Notes
### Rendering / Rasterization
The tricky part of solving this problem is rendering an image that combines some text, some images, and some layout elements. To address this, I've created a `card` module which allows for a handful of operations:
- Create a new rendered image (a "Card")
- Add a margin to a card
- Split the card, horizontally or vertically, into two pieces with a proportional layout (eg. 70%/30%, as desired), each of which are "Cards" that render into the same root image
- Render text into a card, with line-wrapping and text-alignment capabilities
- Render an image onto a card
- Fetches an external image as safely as possible (for server-side fetch of Gravatar, etc.)
The card module can be reused to create `og:image` summary cards for any object in the future, although obviously it's capabilities are limited. The current implementation is on issues/PRs.
I considered a few alternative approaches before taking this approach, and here's why I rejected those options:
- Provide the summary card as an SVG object which could be rendered much more easily with a template file -- however, support for SVG isn't defined as positive for OpenGraph, and a quick look through some existing implementations suggest that it is not widely supported, if at all
- Rendering as HTML/CSS, or SVG, and then using an external tool to convert into a PNG (or other static) image -- this would be much nicer and easier to implement, but would require tying in some very heavy-weight dependencies
- Rendering using a more sophisticated graphics library, eg. cairo -- also would be nicer and easier to implement, but again a heavy dependency for a small functionality
As a result of the limited capabilities of the new card module, summary cards don't have icons on them (which would require SVG rasterization) or pretty status badges with colors and rounded rects. In the future if better drawing capabilities were added, the graphics could be improved, but it doesn't seem too important.
### External Avatars
In order to rasterize a user's avatar onto the summary card, it might have to be retrieved by the server from the external source (eg. Gravatar). A `fetchExternalImage` routine attempts to do this in the safest way possible to protect the server from any possible security exposure from this; (a) verifying that the content-types are acceptable, (b) ensuring that the file-size and image-size are within the safe bounds that are used for custom avatars, (c) using a very-short timeout to avoid stalling the server if an external dependency is offline.
### Caching
Summary cards are cached after rendered. This has the downside of causing updates to statuses, avatars, titles, etc. being stale on the summary card for the cache TTL. However, during testing I found that some social media engines like Mastodon will cause the summary card to be accessed a significant number of times after being referenced by a post, causing a mini-tornado of requests. The cache compensates for this to avoid server load in this situation.
### Scope
I'm considering out-of-scope:
- Summary cards on other objects (eg. repos, users) can be left for future implementation
## Checklist
The [contributor guide](https://forgejo.org/docs/next/contributor/) contains information that will be helpful to first time contributors. There also are a few [conditions for merging Pull Requests in Forgejo repositories](https://codeberg.org/forgejo/governance/src/branch/main/PullRequestsAgreement.md). You are also welcome to join the [Forgejo development chatroom](https://matrix.to/#/#forgejo-development:matrix.org).
### Tests
- I added test coverage for Go changes...
- [x] in their respective `*_test.go` for unit tests.
- [x] in the `tests/integration` directory if it involves interactions with a live Forgejo server.
- ~~I added test coverage for JavaScript changes...~~ n/a, no JS changes
- [x] ~~in `web_src/js/*.test.js` if it can be unit tested.~~
- [x] ~~in `tests/e2e/*.test.e2e.js` if it requires interactions with a live Forgejo server (see also the [developer guide for JavaScript testing](https://codeberg.org/forgejo/forgejo/src/branch/forgejo/tests/e2e/README.md#end-to-end-tests)).~~
- Manual testing
- [x] Access & attach screenshots of both an issue and a pull-request's summary card; see below
- [x] Ensure reasonable (non-crash) behavior of rendering text with glyphs outside the font -- correctly rendered as replacement unicode chars
- [x] Using a public test instance, verify that og:image behavior looks good on platforms like Mastodon and BlueSky
- [x] Bluesky: ✅
- [x] Mastodon: ✅ (Note that the summary card will be requested many times as the post is federated; either each server, or each client, will fetch it itself)
- [x] OpenGraph test site (https://www.opengraph.xyz/): ✅
- [x] Discord: Looks OK ✅; needs "twitter:card" to be set to "summary_large_image" to display the large-scale image, but (a) that's probably annoying to use, (b) probably wrong because it doesn't match Twitter Card's spec for a "photographic image", and (c) don't want to encourage/continue use of vendor-specific tag
- [x] Verify cases with user avatar missing (or autogen), and repo avatar missing (falls back to repo owner avatar)
Pull request summary card:
![image](/attachments/b64283e3-9a3c-4f19-9d00-961662ffe86b)
Issue summary card:
![image](/attachments/318ce589-02e0-493e-b10c-5b2cb2627db2)
(images to the right are the custom repo avatar, w/ fallback to the repo owner avatar)
### Documentation
- [ ] I created a pull request [to the documentation](https://codeberg.org/forgejo/docs) to explain to Forgejo users how to use this change.
- [x] I did not document these changes and I do not expect someone else to do it.
- OpenGraph capabilities are expected to work in the background without user awareness, and so there is no need for documentation to explain the capabilities for users.
### Release notes
- [ ] I do not want this change to show in the release notes.
- [x] I want the title to show in the release notes with a link to this pull request.
- [ ] I want the content of the `release-notes/<pull request number>.md` to be be used for the release notes instead of the title.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6053
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Mathieu Fenniak <mathieu@fenniak.net>
Co-committed-by: Mathieu Fenniak <mathieu@fenniak.net>
2024-11-29 10:02:03 -05:00
|
|
|
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0
|
2024-08-24 12:05:36 -04:00
|
|
|
github.com/google/go-github/v64 v64.0.0
|
2024-10-17 18:03:13 -04:00
|
|
|
github.com/google/pprof v0.0.0-20241017200806-017d972448fc
|
2024-03-07 22:19:35 -05:00
|
|
|
github.com/google/uuid v1.6.0
|
2024-06-17 22:03:02 -04:00
|
|
|
github.com/gorilla/feeds v1.2.0
|
2024-11-02 20:04:40 -04:00
|
|
|
github.com/gorilla/sessions v1.4.0
|
2024-05-02 10:43:23 -04:00
|
|
|
github.com/h2non/gock v1.2.0
|
2022-10-01 09:49:30 -04:00
|
|
|
github.com/hashicorp/go-version v1.6.0
|
2023-10-07 01:55:08 -04:00
|
|
|
github.com/hashicorp/golang-lru/v2 v2.0.7
|
2024-06-06 20:05:55 -04:00
|
|
|
github.com/huandu/xstrings v1.5.0
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/jaytaylor/html2text v0.0.0-20230321000545-74c2419ad056
|
2024-10-23 02:04:11 -04:00
|
|
|
github.com/jhillyerd/enmime/v2 v2.0.0
|
2022-02-06 15:38:14 -05:00
|
|
|
github.com/json-iterator/go v1.1.12
|
2020-11-06 13:41:42 -05:00
|
|
|
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
|
2024-10-12 20:05:06 -04:00
|
|
|
github.com/klauspost/compress v1.17.11
|
2024-07-03 14:07:19 -04:00
|
|
|
github.com/klauspost/cpuid/v2 v2.2.8
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/lib/pq v1.10.9
|
2024-05-21 16:07:52 -04:00
|
|
|
github.com/markbates/goth v1.80.0
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/mattn/go-isatty v0.0.20
|
2024-10-05 20:03:58 -04:00
|
|
|
github.com/mattn/go-sqlite3 v1.14.24
|
2024-11-02 03:32:05 -04:00
|
|
|
github.com/meilisearch/meilisearch-go v0.29.0
|
2022-03-08 06:15:30 -05:00
|
|
|
github.com/mholt/archiver/v3 v3.5.1
|
2024-07-04 20:02:11 -04:00
|
|
|
github.com/microcosm-cc/bluemonday v1.0.27
|
2024-10-12 20:05:06 -04:00
|
|
|
github.com/minio/minio-go/v7 v7.0.78
|
2023-10-07 01:55:08 -04:00
|
|
|
github.com/msteinert/pam v1.2.0
|
|
|
|
github.com/nektos/act v0.2.52
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/niklasfasching/go-org v1.7.0
|
2022-05-10 06:32:42 -04:00
|
|
|
github.com/olivere/elastic/v7 v7.0.32
|
2023-02-06 05:07:09 -05:00
|
|
|
github.com/opencontainers/go-digest v1.0.0
|
2024-03-30 02:05:12 -04:00
|
|
|
github.com/opencontainers/image-spec v1.1.0
|
2023-01-12 03:21:16 -05:00
|
|
|
github.com/pquerna/otp v1.4.0
|
2024-10-19 08:03:54 -04:00
|
|
|
github.com/prometheus/client_golang v1.20.5
|
2024-10-18 20:03:40 -04:00
|
|
|
github.com/redis/go-redis/v9 v9.7.0
|
2023-08-23 23:06:51 -04:00
|
|
|
github.com/robfig/cron/v3 v3.0.1
|
2024-07-14 10:54:09 -04:00
|
|
|
github.com/santhosh-tekuri/jsonschema/v6 v6.0.1
|
2024-08-02 01:56:57 -04:00
|
|
|
github.com/sassoftware/go-rpmutils v0.4.0
|
2023-02-24 15:18:49 -05:00
|
|
|
github.com/sergi/go-diff v1.3.1
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/shurcooL/vfsgen v0.0.0-20230704071429-0000e147ea92
|
2024-11-23 19:03:18 -05:00
|
|
|
github.com/stretchr/testify v1.10.0
|
2020-09-27 17:09:46 -04:00
|
|
|
github.com/syndtr/goleveldb v1.0.0
|
2024-08-02 01:56:57 -04:00
|
|
|
github.com/ulikunitz/xz v0.5.12
|
2024-10-14 16:04:59 -04:00
|
|
|
github.com/urfave/cli/v2 v2.27.5
|
2024-05-07 03:59:49 -04:00
|
|
|
github.com/valyala/fastjson v1.6.4
|
2024-09-07 04:02:37 -04:00
|
|
|
github.com/xanzy/go-gitlab v0.109.0
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/yohcop/openid-go v1.0.1
|
2024-11-02 10:04:01 -04:00
|
|
|
github.com/yuin/goldmark v1.7.8
|
2023-08-16 08:02:40 -04:00
|
|
|
github.com/yuin/goldmark-highlighting/v2 v2.0.0-20230729083705-37449abec8cc
|
2024-05-20 14:09:19 -04:00
|
|
|
go.uber.org/mock v0.4.0
|
2024-11-09 19:03:52 -05:00
|
|
|
golang.org/x/crypto v0.29.0
|
2024-10-08 22:03:22 -04:00
|
|
|
golang.org/x/image v0.21.0
|
2024-11-09 21:13:04 -05:00
|
|
|
golang.org/x/net v0.31.0
|
2024-09-07 20:03:07 -04:00
|
|
|
golang.org/x/oauth2 v0.23.0
|
2024-11-09 19:03:52 -05:00
|
|
|
golang.org/x/sys v0.27.0
|
|
|
|
golang.org/x/text v0.20.0
|
2024-10-10 02:03:14 -04:00
|
|
|
golang.org/x/tools v0.26.0
|
2024-11-14 21:03:08 -05:00
|
|
|
google.golang.org/grpc v1.68.0
|
2024-10-09 22:04:07 -04:00
|
|
|
google.golang.org/protobuf v1.35.1
|
2019-03-27 07:15:23 -04:00
|
|
|
gopkg.in/gomail.v2 v2.0.0-20160411212932-81ebce5c23df
|
2022-09-01 17:13:17 -04:00
|
|
|
gopkg.in/ini.v1 v1.67.0
|
2022-09-13 12:33:37 -04:00
|
|
|
gopkg.in/yaml.v3 v3.0.1
|
2023-07-13 23:00:31 -04:00
|
|
|
mvdan.cc/xurls/v2 v2.5.0
|
2023-07-25 16:27:44 -04:00
|
|
|
xorm.io/builder v0.3.13
|
2024-07-21 12:03:40 -04:00
|
|
|
xorm.io/xorm v1.3.9
|
2019-03-27 07:15:23 -04:00
|
|
|
)
|
2020-09-05 20:44:34 -04:00
|
|
|
|
2022-03-16 00:08:31 -04:00
|
|
|
require (
|
2024-10-10 04:03:23 -04:00
|
|
|
cloud.google.com/go/compute/metadata v0.5.0 // indirect
|
2023-08-16 08:02:40 -04:00
|
|
|
dario.cat/mergo v1.0.0 // indirect
|
2024-03-10 09:50:56 -04:00
|
|
|
filippo.io/edwards25519 v1.1.0 // indirect
|
2022-09-01 17:13:17 -04:00
|
|
|
git.sr.ht/~mariusor/go-xsd-duration v0.0.0-20220703122237-02e73435a078 // indirect
|
2024-05-30 20:05:11 -04:00
|
|
|
github.com/ClickHouse/ch-go v0.61.5 // indirect
|
2024-07-13 20:07:10 -04:00
|
|
|
github.com/ClickHouse/clickhouse-go/v2 v2.26.0 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/DataDog/zstd v1.5.5 // indirect
|
2022-09-01 17:13:17 -04:00
|
|
|
github.com/Masterminds/goutils v1.1.1 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/Masterminds/semver/v3 v3.2.1 // indirect
|
2023-02-24 15:18:49 -05:00
|
|
|
github.com/Masterminds/sprig/v3 v3.2.3 // indirect
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/Microsoft/go-winio v0.6.1 // indirect
|
2024-07-03 20:02:31 -04:00
|
|
|
github.com/RoaringBitmap/roaring v1.9.3 // indirect
|
2024-01-23 00:40:00 -05:00
|
|
|
github.com/andybalholm/brotli v1.1.0 // indirect
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/andybalholm/cascadia v1.3.2 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/aymerick/douceur v0.2.0 // indirect
|
|
|
|
github.com/beorn7/perks v1.0.1 // indirect
|
2024-01-23 00:40:00 -05:00
|
|
|
github.com/bits-and-blooms/bitset v1.13.0 // indirect
|
2024-11-13 19:03:01 -05:00
|
|
|
github.com/blevesearch/bleve_index_api v1.1.12 // indirect
|
2024-05-05 20:05:39 -04:00
|
|
|
github.com/blevesearch/geo v0.1.20 // indirect
|
2024-11-13 19:03:01 -05:00
|
|
|
github.com/blevesearch/go-faiss v1.0.23 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/blevesearch/go-porterstemmer v1.0.3 // indirect
|
2022-05-10 06:32:42 -04:00
|
|
|
github.com/blevesearch/gtreap v0.1.1 // indirect
|
2022-10-01 09:49:30 -04:00
|
|
|
github.com/blevesearch/mmap-go v1.0.4 // indirect
|
2024-11-13 19:03:01 -05:00
|
|
|
github.com/blevesearch/scorch_segment_api/v2 v2.2.16 // indirect
|
2023-01-12 03:21:16 -05:00
|
|
|
github.com/blevesearch/segment v0.9.1 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/blevesearch/snowballstem v0.9.0 // indirect
|
2023-01-12 03:21:16 -05:00
|
|
|
github.com/blevesearch/upsidedown_store_api v1.0.2 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/blevesearch/vellum v1.0.10 // indirect
|
2023-09-27 03:10:58 -04:00
|
|
|
github.com/blevesearch/zapx/v11 v11.3.10 // indirect
|
|
|
|
github.com/blevesearch/zapx/v12 v12.3.10 // indirect
|
|
|
|
github.com/blevesearch/zapx/v13 v13.3.10 // indirect
|
|
|
|
github.com/blevesearch/zapx/v14 v14.3.10 // indirect
|
2024-11-13 19:03:01 -05:00
|
|
|
github.com/blevesearch/zapx/v15 v15.3.16 // indirect
|
|
|
|
github.com/blevesearch/zapx/v16 v16.1.8 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/boombuler/barcode v1.0.1 // indirect
|
2023-10-13 12:11:15 -04:00
|
|
|
github.com/bradfitz/gomemcache v0.0.0-20230905024940-24af94b03874 // indirect
|
2024-10-02 20:03:02 -04:00
|
|
|
github.com/caddyserver/zerossl v0.1.3 // indirect
|
2023-01-14 10:57:10 -05:00
|
|
|
github.com/cention-sany/utf7 v0.0.0-20170124080048-26cad61bd60a // indirect
|
2024-07-03 22:02:59 -04:00
|
|
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
2024-08-02 01:56:57 -04:00
|
|
|
github.com/cloudflare/circl v1.3.8 // indirect
|
2024-10-14 16:04:59 -04:00
|
|
|
github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect
|
2023-10-07 01:55:08 -04:00
|
|
|
github.com/cyphar/filepath-securejoin v0.2.4 // indirect
|
2023-10-13 12:11:15 -04:00
|
|
|
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
|
|
|
|
github.com/davidmz/go-pageant v1.0.2 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
|
2024-03-12 17:40:43 -04:00
|
|
|
github.com/dlclark/regexp2 v1.11.0 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/emersion/go-sasl v0.0.0-20231106173351-e73c9f7bad43 // indirect
|
2024-08-12 11:16:55 -04:00
|
|
|
github.com/emirpasic/gods v1.18.1 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/fatih/color v1.16.0 // indirect
|
|
|
|
github.com/felixge/httpsnoop v1.0.4 // indirect
|
2024-08-27 20:05:00 -04:00
|
|
|
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
|
2023-10-07 01:55:08 -04:00
|
|
|
github.com/go-ap/errors v0.0.0-20231003111023-183eef4b31b7 // indirect
|
|
|
|
github.com/go-asn1-ber/asn1-ber v1.5.5 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/go-enry/go-oniguruma v1.2.1 // indirect
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/go-faster/city v1.0.1 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/go-faster/errors v0.7.1 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
|
2024-08-12 11:16:55 -04:00
|
|
|
github.com/go-git/go-billy/v5 v5.5.0 // indirect
|
2024-07-03 14:07:19 -04:00
|
|
|
github.com/go-ini/ini v1.67.0 // indirect
|
2024-01-23 00:40:00 -05:00
|
|
|
github.com/go-openapi/analysis v0.22.2 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/go-openapi/errors v0.21.0 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/go-openapi/inflect v0.19.0 // indirect
|
2024-01-23 00:40:00 -05:00
|
|
|
github.com/go-openapi/jsonpointer v0.20.2 // indirect
|
|
|
|
github.com/go-openapi/jsonreference v0.20.4 // indirect
|
|
|
|
github.com/go-openapi/loads v0.21.5 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/go-openapi/runtime v0.26.2 // indirect
|
2024-01-23 00:40:00 -05:00
|
|
|
github.com/go-openapi/strfmt v0.22.0 // indirect
|
|
|
|
github.com/go-openapi/swag v0.22.7 // indirect
|
|
|
|
github.com/go-openapi/validate v0.22.6 // indirect
|
2024-08-27 20:05:00 -04:00
|
|
|
github.com/go-webauthn/x v0.1.14 // indirect
|
2024-07-03 14:07:19 -04:00
|
|
|
github.com/goccy/go-json v0.10.3 // indirect
|
2023-07-19 05:57:10 -04:00
|
|
|
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/golang/geo v0.0.0-20230421003525-6adc56603217 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
|
2024-07-03 22:02:59 -04:00
|
|
|
github.com/golang/protobuf v1.5.4 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/golang/snappy v0.0.4 // indirect
|
Support compression for Actions logs (#31761)
Support compression for Actions logs to save storage space and
bandwidth. Inspired by
https://github.com/go-gitea/gitea/issues/24256#issuecomment-1521153015
The biggest challenge is that the compression format should support
[seekable](https://github.com/facebook/zstd/blob/dev/contrib/seekable_format/zstd_seekable_compression_format.md).
So when users are viewing a part of the log lines, Gitea doesn't need to
download the whole compressed file and decompress it.
That means gzip cannot help here. And I did research, there aren't too
many choices, like bgzip and xz, but I think zstd is the most popular
one. It has an implementation in Golang with
[zstd](https://github.com/klauspost/compress/tree/master/zstd) and
[zstd-seekable-format-go](https://github.com/SaveTheRbtz/zstd-seekable-format-go),
and what is better is that it has good compatibility: a seekable format
zstd file can be read by a regular zstd reader.
This PR introduces a new package `zstd` to combine and wrap the two
packages, to provide a unified and easy-to-use API.
And a new setting `LOG_COMPRESSION` is added to the config, although I
don't see any reason why not to use compression, I think's it's a good
idea to keep the default with `none` to be consistent with old versions.
`LOG_COMPRESSION` takes effect for only new log files, it adds `.zst` as
an extension to the file name, so Gitea can determine if it needs
decompression according to the file name when reading. Old files will
keep the format since it's not worth converting them, as they will be
cleared after #31735.
<img width="541" alt="image"
src="https://github.com/user-attachments/assets/e9598764-a4e0-4b68-8c2b-f769265183c9">
(cherry picked from commit 33cc5837a655ad544b936d4d040ca36d74092588)
Conflicts:
assets/go-licenses.json
go.mod
go.sum
resolved with make tidy
2024-08-08 22:10:30 -04:00
|
|
|
github.com/google/btree v1.1.2 // indirect
|
feat(F3): CLI: f3 mirror to convert to/from Forgejo
feat(F3): driver stub
feat(F3): util.Logger
feat(F3): driver compliance tests
feat(F3): driver/users implementation
feat(F3): driver/user implementation
feat(F3): driver/{projects,project} implementation
feat(F3): driver/{labels,label} implementation
feat(F3): driver/{milestones,milestone} implementation
feat(F3): driver/{repositories,repository} implementation
feat(F3): driver/{organizations,organization} implementation
feat(F3): driver/{releases,release} implementation
feat(F3): driver/{issues,issue} implementation
feat(F3): driver/{comments,comment} implementation
feat(F3): driver/{assets,asset} implementation
feat(F3): driver/{pullrequests,pullrequest} implementation
feat(F3): driver/{reviews,review} implementation
feat(F3): driver/{topics,topic} implementation
feat(F3): driver/{reactions,reaction} implementation
feat(F3): driver/{reviewComments,reviewComment} implementation
feat(F3): CLI: f3 mirror
chore(F3): move to code.forgejo.org
feat(f3): upgrade to gof3 3.1.0
repositories in pull requests are represented with a reference instead
of an owner/project pair of names
2024-01-23 04:43:29 -05:00
|
|
|
github.com/google/go-cmp v0.6.0 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/google/go-querystring v1.1.0 // indirect
|
2024-08-27 20:05:00 -04:00
|
|
|
github.com/google/go-tpm v0.9.1 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/gorilla/css v1.0.1 // indirect
|
|
|
|
github.com/gorilla/handlers v1.5.2 // indirect
|
|
|
|
github.com/gorilla/mux v1.8.1 // indirect
|
|
|
|
github.com/gorilla/securecookie v1.1.2 // indirect
|
2024-05-02 10:43:23 -04:00
|
|
|
github.com/h2non/parth v0.0.0-20190131123155-b4df798d6542 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
2024-06-26 01:35:19 -04:00
|
|
|
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/hashicorp/hcl v1.0.0 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/imdario/mergo v0.3.16 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
|
|
|
|
github.com/jessevdk/go-flags v1.5.0 // indirect
|
|
|
|
github.com/josharian/intern v1.0.0 // indirect
|
2022-03-31 18:05:57 -04:00
|
|
|
github.com/kevinburke/ssh_config v1.2.0 // indirect
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/klauspost/pgzip v1.2.6 // indirect
|
2023-02-24 15:18:49 -05:00
|
|
|
github.com/kr/pretty v0.3.1 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/kr/text v0.2.0 // indirect
|
Update module github.com/caddyserver/certmagic to v0.21.0 (#3724)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/caddyserver/certmagic](https://github.com/caddyserver/certmagic) | require | minor | `v0.20.0` -> `v0.21.0` |
---
### Release Notes
<details>
<summary>caddyserver/certmagic (github.com/caddyserver/certmagic)</summary>
### [`v0.21.0`](https://github.com/caddyserver/certmagic/releases/tag/v0.21.0)
[Compare Source](https://github.com/caddyserver/certmagic/compare/v0.20.0...v0.21.0)
CertMagic v0.21 introduces some big changes:
- Draft support for draft-03 of [ACME Renewal Information (ARI)](https://datatracker.ietf.org/doc/draft-ietf-acme-ari/) which assists with deciding when to renew certificates. This augments CertMagic's already-advanced logic using cert lifetime and OCSP/revocation status.
- New [`ZeroSSLIssuer`](https://pkg.go.dev/github.com/caddyserver/certmagic@v0.21.0#ZeroSSLIssuer) uses the [ZeroSSL API](https://zerossl.com/documentation/api/) to get certificates. ZeroSSL also has an ACME endpoint, which can still be accesed using the existing ACMEIssuer, as always. Their proprietary API is paid, but has extra features like IP certificates, better reliability, and support.
- DNS challenges should be smoother in some cases as we've improved propagation checking.
- In the odd case your ACME account disappears from the ACME server, CertMagic will automatically retry with a new account. (This happens in some test/dev environments.)
- ACME accounts are identified only by their public keys, but CertMagic maps accounts by CA+email for practical/storage reasons. So now you can "pin" an account key to use by specifying your email and the account public key in your config, which is useful if you need to absolutely be sure to use a specific account (like if you get rate limit exemptions from a CA).
Please try it out and report any issues!
Thanks to [@​Framer](https://github.com/Framer) for their contributions to this release!
#### What's Changed
- Bump golang.org/x/crypto from 0.14.0 to 0.17.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/caddyserver/certmagic/pull/264
- Demote "storage cleaning happened too recently" from WARN to INFO by [@​francislavoie](https://github.com/francislavoie) in https://github.com/caddyserver/certmagic/pull/270
- Check DNS propagation at authoritative nameservers only with default resolvers by [@​pgeh](https://github.com/pgeh) in https://github.com/caddyserver/certmagic/pull/274
- Retry with new account if account disappeared remotely by [@​mholt](https://github.com/mholt) in https://github.com/caddyserver/certmagic/pull/269
- Update readme examples to use TLS-ALPN const from ACMEz by [@​goksan](https://github.com/goksan) in https://github.com/caddyserver/certmagic/pull/277
- Initial implementation of ZeroSSL API issuer by [@​mholt](https://github.com/mholt) in https://github.com/caddyserver/certmagic/pull/279
- Allow deleting directories via FileStorage by [@​goksan](https://github.com/goksan) in https://github.com/caddyserver/certmagic/pull/282
- Use the `email` configuration in the ACME issuer to "pin" an account to a key by [@​ankon](https://github.com/ankon) in https://github.com/caddyserver/certmagic/pull/283
- Initial implementation of ARI by [@​mholt](https://github.com/mholt) in https://github.com/caddyserver/certmagic/pull/286
#### New Contributors
- [@​pgeh](https://github.com/pgeh) made their first contribution in https://github.com/caddyserver/certmagic/pull/274
- [@​goksan](https://github.com/goksan) made their first contribution in https://github.com/caddyserver/certmagic/pull/277
**Full Changelog**: https://github.com/caddyserver/certmagic/compare/v0.20.0...v0.21.0
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am" (UTC), Automerge - "before 4am" (UTC).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNTEuMiIsInVwZGF0ZWRJblZlciI6IjM3LjM1MS4yIiwidGFyZ2V0QnJhbmNoIjoiZm9yZ2VqbyIsImxhYmVscyI6W119-->
Co-authored-by: Earl Warren <contact@earl-warren.org>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3724
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-05-12 10:56:39 -04:00
|
|
|
github.com/libdns/libdns v0.2.2 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/magiconair/properties v1.8.7 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/mailru/easyjson v0.7.7 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/markbates/going v1.0.3 // indirect
|
Implement actions (#21937)
Close #13539.
Co-authored by: @lunny @appleboy @fuxiaohei and others.
Related projects:
- https://gitea.com/gitea/actions-proto-def
- https://gitea.com/gitea/actions-proto-go
- https://gitea.com/gitea/act
- https://gitea.com/gitea/act_runner
### Summary
The target of this PR is to bring a basic implementation of "Actions",
an internal CI/CD system of Gitea. That means even though it has been
merged, the state of the feature is **EXPERIMENTAL**, and please note
that:
- It is disabled by default;
- It shouldn't be used in a production environment currently;
- It shouldn't be used in a public Gitea instance currently;
- Breaking changes may be made before it's stable.
**Please comment on #13539 if you have any different product design
ideas**, all decisions reached there will be adopted here. But in this
PR, we don't talk about **naming, feature-creep or alternatives**.
### ⚠️ Breaking
`gitea-actions` will become a reserved user name. If a user with the
name already exists in the database, it is recommended to rename it.
### Some important reviews
- What is `DEFAULT_ACTIONS_URL` in `app.ini` for?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1055954954
- Why the api for runners is not under the normal `/api/v1` prefix?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1061173592
- Why DBFS?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1061301178
- Why ignore events triggered by `gitea-actions` bot?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1063254103
- Why there's no permission control for actions?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1090229868
### What it looks like
<details>
#### Manage runners
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205870657-c72f590e-2e08-4cd4-be7f-2e0abb299bbf.png">
#### List runs
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205872794-50fde990-2b45-48c1-a178-908e4ec5b627.png">
#### View logs
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205872501-9b7b9000-9542-4991-8f55-18ccdada77c3.png">
</details>
### How to try it
<details>
#### 1. Start Gitea
Clone this branch and [install from
source](https://docs.gitea.io/en-us/install-from-source).
Add additional configurations in `app.ini` to enable Actions:
```ini
[actions]
ENABLED = true
```
Start it.
If all is well, you'll see the management page of runners:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205877365-8e30a780-9b10-4154-b3e8-ee6c3cb35a59.png">
#### 2. Start runner
Clone the [act_runner](https://gitea.com/gitea/act_runner), and follow
the
[README](https://gitea.com/gitea/act_runner/src/branch/main/README.md)
to start it.
If all is well, you'll see a new runner has been added:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205878000-216f5937-e696-470d-b66c-8473987d91c3.png">
#### 3. Enable actions for a repo
Create a new repo or open an existing one, check the `Actions` checkbox
in settings and submit.
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205879705-53e09208-73c0-4b3e-a123-2dcf9aba4b9c.png">
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205879383-23f3d08f-1a85-41dd-a8b3-54e2ee6453e8.png">
If all is well, you'll see a new tab "Actions":
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205881648-a8072d8c-5803-4d76-b8a8-9b2fb49516c1.png">
#### 4. Upload workflow files
Upload some workflow files to `.gitea/workflows/xxx.yaml`, you can
follow the [quickstart](https://docs.github.com/en/actions/quickstart)
of GitHub Actions. Yes, Gitea Actions is compatible with GitHub Actions
in most cases, you can use the same demo:
```yaml
name: GitHub Actions Demo
run-name: ${{ github.actor }} is testing out GitHub Actions 🚀
on: [push]
jobs:
Explore-GitHub-Actions:
runs-on: ubuntu-latest
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v3
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
```
If all is well, you'll see a new run in `Actions` tab:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205884473-79a874bc-171b-4aaf-acd5-0241a45c3b53.png">
#### 5. Check the logs of jobs
Click a run and you'll see the logs:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205884800-994b0374-67f7-48ff-be9a-4c53f3141547.png">
#### 6. Go on
You can try more examples in [the
documents](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions)
of GitHub Actions, then you might find a lot of bugs.
Come on, PRs are welcome.
</details>
See also: [Feature Preview: Gitea
Actions](https://blog.gitea.io/2022/12/feature-preview-gitea-actions/)
---------
Co-authored-by: a1012112796 <1012112796@qq.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: ChristopherHX <christopher.homberger@web.de>
Co-authored-by: John Olheiser <john.olheiser@gmail.com>
2023-01-30 20:45:19 -05:00
|
|
|
github.com/mattn/go-colorable v0.1.13 // indirect
|
2024-10-23 02:04:11 -04:00
|
|
|
github.com/mattn/go-runewidth v0.0.16 // indirect
|
2024-10-02 20:03:02 -04:00
|
|
|
github.com/mholt/acmez/v2 v2.0.3 // indirect
|
|
|
|
github.com/miekg/dns v1.1.62 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/minio/md5-simd v1.1.2 // indirect
|
2022-09-01 17:13:17 -04:00
|
|
|
github.com/mitchellh/copystructure v1.2.0 // indirect
|
|
|
|
github.com/mitchellh/mapstructure v1.5.0 // indirect
|
|
|
|
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
|
|
|
github.com/modern-go/reflect2 v1.0.2 // indirect
|
|
|
|
github.com/mrjones/oauth v0.0.0-20190623134757-126b35219450 // indirect
|
|
|
|
github.com/mschoch/smat v0.2.0 // indirect
|
2024-10-19 08:03:54 -04:00
|
|
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/nwaples/rardecode v1.1.3 // indirect
|
|
|
|
github.com/oklog/ulid v1.3.1 // indirect
|
|
|
|
github.com/olekukonko/tablewriter v0.0.5 // indirect
|
2023-04-13 18:41:04 -04:00
|
|
|
github.com/onsi/ginkgo v1.16.5 // indirect
|
2024-03-07 22:19:35 -05:00
|
|
|
github.com/paulmach/orb v0.11.1 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/pelletier/go-toml/v2 v2.1.1 // indirect
|
2024-01-23 00:40:00 -05:00
|
|
|
github.com/pierrec/lz4/v4 v4.1.21 // indirect
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/pjbgf/sha1cd v0.3.0 // indirect
|
2023-11-04 17:09:19 -04:00
|
|
|
github.com/pkg/errors v0.9.1 // indirect
|
2023-10-13 12:11:15 -04:00
|
|
|
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
2024-10-19 08:03:54 -04:00
|
|
|
github.com/prometheus/client_model v0.6.1 // indirect
|
|
|
|
github.com/prometheus/common v0.55.0 // indirect
|
|
|
|
github.com/prometheus/procfs v0.15.1 // indirect
|
2024-04-26 22:04:59 -04:00
|
|
|
github.com/rhysd/actionlint v1.6.27 // indirect
|
|
|
|
github.com/rivo/uniseg v0.4.7 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/rogpeppe/go-internal v1.12.0 // indirect
|
2024-09-25 22:03:56 -04:00
|
|
|
github.com/rs/xid v1.6.0 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/russross/blackfriday/v2 v2.1.0 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/sagikazarmark/locafero v0.4.0 // indirect
|
2023-10-13 12:11:15 -04:00
|
|
|
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
|
2023-05-05 05:17:19 -04:00
|
|
|
github.com/segmentio/asm v1.2.0 // indirect
|
2024-05-30 20:05:11 -04:00
|
|
|
github.com/shopspring/decimal v1.4.0 // indirect
|
2023-07-13 23:00:31 -04:00
|
|
|
github.com/shurcooL/httpfs v0.0.0-20230704072500-f1e31cf0ba5c // indirect
|
|
|
|
github.com/sirupsen/logrus v1.9.3 // indirect
|
2023-10-07 01:55:08 -04:00
|
|
|
github.com/skeema/knownhosts v1.2.1 // indirect
|
2023-10-13 12:11:15 -04:00
|
|
|
github.com/sourcegraph/conc v0.3.0 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/spf13/afero v1.11.0 // indirect
|
|
|
|
github.com/spf13/cast v1.6.0 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/spf13/pflag v1.0.5 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
github.com/spf13/viper v1.18.2 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/ssor/bom v0.0.0-20170718123548-6386211fdfcf // indirect
|
2023-08-16 08:02:40 -04:00
|
|
|
github.com/subosito/gotenv v1.6.0 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/toqueteos/webbrowser v1.2.0 // indirect
|
|
|
|
github.com/x448/float16 v0.8.4 // indirect
|
2023-01-12 03:21:16 -05:00
|
|
|
github.com/xanzy/ssh-agent v0.3.3 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
|
2024-08-30 22:05:32 -04:00
|
|
|
github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect
|
2024-10-02 20:03:02 -04:00
|
|
|
github.com/zeebo/blake3 v0.2.4 // indirect
|
2024-04-26 22:04:59 -04:00
|
|
|
go.etcd.io/bbolt v1.3.9 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
go.mongodb.org/mongo-driver v1.13.1 // indirect
|
2024-08-07 05:22:43 -04:00
|
|
|
go.opentelemetry.io/otel v1.26.0 // indirect
|
|
|
|
go.opentelemetry.io/otel/trace v1.26.0 // indirect
|
2023-05-05 05:17:19 -04:00
|
|
|
go.uber.org/atomic v1.11.0 // indirect
|
|
|
|
go.uber.org/multierr v1.11.0 // indirect
|
Update module github.com/caddyserver/certmagic to v0.21.0 (#3724)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/caddyserver/certmagic](https://github.com/caddyserver/certmagic) | require | minor | `v0.20.0` -> `v0.21.0` |
---
### Release Notes
<details>
<summary>caddyserver/certmagic (github.com/caddyserver/certmagic)</summary>
### [`v0.21.0`](https://github.com/caddyserver/certmagic/releases/tag/v0.21.0)
[Compare Source](https://github.com/caddyserver/certmagic/compare/v0.20.0...v0.21.0)
CertMagic v0.21 introduces some big changes:
- Draft support for draft-03 of [ACME Renewal Information (ARI)](https://datatracker.ietf.org/doc/draft-ietf-acme-ari/) which assists with deciding when to renew certificates. This augments CertMagic's already-advanced logic using cert lifetime and OCSP/revocation status.
- New [`ZeroSSLIssuer`](https://pkg.go.dev/github.com/caddyserver/certmagic@v0.21.0#ZeroSSLIssuer) uses the [ZeroSSL API](https://zerossl.com/documentation/api/) to get certificates. ZeroSSL also has an ACME endpoint, which can still be accesed using the existing ACMEIssuer, as always. Their proprietary API is paid, but has extra features like IP certificates, better reliability, and support.
- DNS challenges should be smoother in some cases as we've improved propagation checking.
- In the odd case your ACME account disappears from the ACME server, CertMagic will automatically retry with a new account. (This happens in some test/dev environments.)
- ACME accounts are identified only by their public keys, but CertMagic maps accounts by CA+email for practical/storage reasons. So now you can "pin" an account key to use by specifying your email and the account public key in your config, which is useful if you need to absolutely be sure to use a specific account (like if you get rate limit exemptions from a CA).
Please try it out and report any issues!
Thanks to [@​Framer](https://github.com/Framer) for their contributions to this release!
#### What's Changed
- Bump golang.org/x/crypto from 0.14.0 to 0.17.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/caddyserver/certmagic/pull/264
- Demote "storage cleaning happened too recently" from WARN to INFO by [@​francislavoie](https://github.com/francislavoie) in https://github.com/caddyserver/certmagic/pull/270
- Check DNS propagation at authoritative nameservers only with default resolvers by [@​pgeh](https://github.com/pgeh) in https://github.com/caddyserver/certmagic/pull/274
- Retry with new account if account disappeared remotely by [@​mholt](https://github.com/mholt) in https://github.com/caddyserver/certmagic/pull/269
- Update readme examples to use TLS-ALPN const from ACMEz by [@​goksan](https://github.com/goksan) in https://github.com/caddyserver/certmagic/pull/277
- Initial implementation of ZeroSSL API issuer by [@​mholt](https://github.com/mholt) in https://github.com/caddyserver/certmagic/pull/279
- Allow deleting directories via FileStorage by [@​goksan](https://github.com/goksan) in https://github.com/caddyserver/certmagic/pull/282
- Use the `email` configuration in the ACME issuer to "pin" an account to a key by [@​ankon](https://github.com/ankon) in https://github.com/caddyserver/certmagic/pull/283
- Initial implementation of ARI by [@​mholt](https://github.com/mholt) in https://github.com/caddyserver/certmagic/pull/286
#### New Contributors
- [@​pgeh](https://github.com/pgeh) made their first contribution in https://github.com/caddyserver/certmagic/pull/274
- [@​goksan](https://github.com/goksan) made their first contribution in https://github.com/caddyserver/certmagic/pull/277
**Full Changelog**: https://github.com/caddyserver/certmagic/compare/v0.20.0...v0.21.0
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am" (UTC), Automerge - "before 4am" (UTC).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNTEuMiIsInVwZGF0ZWRJblZlciI6IjM3LjM1MS4yIiwidGFyZ2V0QnJhbmNoIjoiZm9yZ2VqbyIsImxhYmVscyI6W119-->
Co-authored-by: Earl Warren <contact@earl-warren.org>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3724
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2024-05-12 10:56:39 -04:00
|
|
|
go.uber.org/zap v1.27.0 // indirect
|
2024-01-23 00:40:00 -05:00
|
|
|
golang.org/x/exp v0.0.0-20240119083558-1b970713d09a // indirect
|
2024-09-10 22:02:38 -04:00
|
|
|
golang.org/x/mod v0.21.0 // indirect
|
2024-11-09 19:03:52 -05:00
|
|
|
golang.org/x/sync v0.9.0 // indirect
|
2023-12-18 20:18:42 -05:00
|
|
|
golang.org/x/time v0.5.0 // indirect
|
2024-11-14 21:03:08 -05:00
|
|
|
google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect
|
|
|
|
gopkg.in/warnings.v0 v0.1.2 // indirect
|
2022-11-21 03:36:59 -05:00
|
|
|
gopkg.in/yaml.v2 v2.4.0 // indirect
|
2022-03-16 00:08:31 -04:00
|
|
|
)
|
|
|
|
|
2021-04-22 20:08:53 -04:00
|
|
|
replace github.com/hashicorp/go-version => github.com/6543/go-version v1.3.1
|
2021-08-03 14:32:01 -04:00
|
|
|
|
2022-01-06 21:33:17 -05:00
|
|
|
replace github.com/shurcooL/vfsgen => github.com/lunny/vfsgen v0.0.0-20220105142115-2c99e1ffdfa0
|
2022-01-14 10:03:31 -05:00
|
|
|
|
2024-11-13 21:03:09 -05:00
|
|
|
replace github.com/nektos/act => code.forgejo.org/forgejo/act v1.22.0
|
Implement actions (#21937)
Close #13539.
Co-authored by: @lunny @appleboy @fuxiaohei and others.
Related projects:
- https://gitea.com/gitea/actions-proto-def
- https://gitea.com/gitea/actions-proto-go
- https://gitea.com/gitea/act
- https://gitea.com/gitea/act_runner
### Summary
The target of this PR is to bring a basic implementation of "Actions",
an internal CI/CD system of Gitea. That means even though it has been
merged, the state of the feature is **EXPERIMENTAL**, and please note
that:
- It is disabled by default;
- It shouldn't be used in a production environment currently;
- It shouldn't be used in a public Gitea instance currently;
- Breaking changes may be made before it's stable.
**Please comment on #13539 if you have any different product design
ideas**, all decisions reached there will be adopted here. But in this
PR, we don't talk about **naming, feature-creep or alternatives**.
### ⚠️ Breaking
`gitea-actions` will become a reserved user name. If a user with the
name already exists in the database, it is recommended to rename it.
### Some important reviews
- What is `DEFAULT_ACTIONS_URL` in `app.ini` for?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1055954954
- Why the api for runners is not under the normal `/api/v1` prefix?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1061173592
- Why DBFS?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1061301178
- Why ignore events triggered by `gitea-actions` bot?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1063254103
- Why there's no permission control for actions?
- https://github.com/go-gitea/gitea/pull/21937#discussion_r1090229868
### What it looks like
<details>
#### Manage runners
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205870657-c72f590e-2e08-4cd4-be7f-2e0abb299bbf.png">
#### List runs
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205872794-50fde990-2b45-48c1-a178-908e4ec5b627.png">
#### View logs
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205872501-9b7b9000-9542-4991-8f55-18ccdada77c3.png">
</details>
### How to try it
<details>
#### 1. Start Gitea
Clone this branch and [install from
source](https://docs.gitea.io/en-us/install-from-source).
Add additional configurations in `app.ini` to enable Actions:
```ini
[actions]
ENABLED = true
```
Start it.
If all is well, you'll see the management page of runners:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205877365-8e30a780-9b10-4154-b3e8-ee6c3cb35a59.png">
#### 2. Start runner
Clone the [act_runner](https://gitea.com/gitea/act_runner), and follow
the
[README](https://gitea.com/gitea/act_runner/src/branch/main/README.md)
to start it.
If all is well, you'll see a new runner has been added:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205878000-216f5937-e696-470d-b66c-8473987d91c3.png">
#### 3. Enable actions for a repo
Create a new repo or open an existing one, check the `Actions` checkbox
in settings and submit.
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205879705-53e09208-73c0-4b3e-a123-2dcf9aba4b9c.png">
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205879383-23f3d08f-1a85-41dd-a8b3-54e2ee6453e8.png">
If all is well, you'll see a new tab "Actions":
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205881648-a8072d8c-5803-4d76-b8a8-9b2fb49516c1.png">
#### 4. Upload workflow files
Upload some workflow files to `.gitea/workflows/xxx.yaml`, you can
follow the [quickstart](https://docs.github.com/en/actions/quickstart)
of GitHub Actions. Yes, Gitea Actions is compatible with GitHub Actions
in most cases, you can use the same demo:
```yaml
name: GitHub Actions Demo
run-name: ${{ github.actor }} is testing out GitHub Actions 🚀
on: [push]
jobs:
Explore-GitHub-Actions:
runs-on: ubuntu-latest
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v3
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
```
If all is well, you'll see a new run in `Actions` tab:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205884473-79a874bc-171b-4aaf-acd5-0241a45c3b53.png">
#### 5. Check the logs of jobs
Click a run and you'll see the logs:
<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/9418365/205884800-994b0374-67f7-48ff-be9a-4c53f3141547.png">
#### 6. Go on
You can try more examples in [the
documents](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions)
of GitHub Actions, then you might find a lot of bugs.
Come on, PRs are welcome.
</details>
See also: [Feature Preview: Gitea
Actions](https://blog.gitea.io/2022/12/feature-preview-gitea-actions/)
---------
Co-authored-by: a1012112796 <1012112796@qq.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: ChristopherHX <christopher.homberger@web.de>
Co-authored-by: John Olheiser <john.olheiser@gmail.com>
2023-01-30 20:45:19 -05:00
|
|
|
|
2024-06-05 16:07:40 -04:00
|
|
|
replace github.com/mholt/archiver/v3 => code.forgejo.org/forgejo/archiver/v3 v3.5.1
|
2024-11-09 20:21:28 -05:00
|
|
|
|
2024-11-15 19:03:23 -05:00
|
|
|
replace github.com/goccy/go-json => github.com/grafana/go-json v0.0.0-20241115232854-f14426c40ff2
|