Commit graph

22619 commits

Author SHA1 Message Date
floss4good
24c8d105f1
Repository owners or admins should not see the 'Report content' action. 2025-03-09 16:07:08 +02:00
floss4good
4bafc9eb02 Merge branch 'forgejo' into report_abuse 2025-03-07 20:26:43 +00:00
christopher-besch
3de904c963 feat: parse inline attachments for incoming mail (#7136)
- Some email clients send inline attachments using the `multipart/related` Mime-Type and enmime collects these in the `Envelope.OtherParts` list; until now only Envelope.Attachments and Envelope.Inline were considered while parsing incoming mail.
- As some email clients send attachments without filename, especially in the multipart/related case, this PR implements `constructFilename`, which guesses the filename based on the ContentType.

How the issue was disovered:
I implemented an otherwise unrelated application written in go that parses emails with enmime just like Forgejo does.
I noticed that in a few occasions that system would fail to detect all attachments.
Investigating this issue led me to realize the above described issue.
After implementing a fix for that application, I looked through the Forgejo email parsing code and discovered the same problem.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7136
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: christopher-besch <mail@chris-besch.com>
Co-committed-by: christopher-besch <mail@chris-besch.com>
2025-03-07 17:54:26 +00:00
Codeberg Translate
b2d01fdde6 i18n: update of translations from Codeberg Translate (#7066)
Co-authored-by: lordwektabyte <lordwektabyte@users.noreply.translate.codeberg.org>
Co-authored-by: Marti <marti@noreply.codeberg.org>
Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: alanmena <alanmena@noreply.codeberg.org>
Co-authored-by: Juno Takano <jutty@noreply.codeberg.org>
Co-authored-by: Benedikt Straub <benedikt-straub@web.de>
Co-authored-by: Edgarsons <edgarsons@noreply.codeberg.org>
Co-authored-by: Wuzzy <wuzzy@disroot.org>
Co-authored-by: justbispo <justbispo@noreply.codeberg.org>
Co-authored-by: Kita Ikuyo <kitakita@disroot.org>
Co-authored-by: Fjuro <fjuro@noreply.codeberg.org>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: kwoot <kwoot@noreply.codeberg.org>
Co-authored-by: SomeTr <sometr@noreply.codeberg.org>
Co-authored-by: monty24 <monty24@noreply.codeberg.org>
Co-authored-by: Sampo Harjula <sahtor@noreply.codeberg.org>
Co-authored-by: tacaly <frederick@tacaly.com>
Co-authored-by: artnay <artnay@noreply.codeberg.org>
Co-authored-by: Outbreak2096 <outbreak2096@noreply.codeberg.org>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7066
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@noreply.codeberg.org>
Co-committed-by: Codeberg Translate <translate@noreply.codeberg.org>
2025-03-07 14:26:37 +00:00
Renovate Bot
179f9b37f5 Update module golang.org/x/oauth2 to v0.28.0 (forgejo) (#7149)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7149
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-07 10:27:51 +00:00
Renovate Bot
ca0f2a0adf Update module golang.org/x/tools/cmd/deadcode to v0.31.0 (forgejo) (#7150)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-07 10:27:10 +00:00
floss4good
570794e68e
For users and organizations check if they exits and the reporter can view them. 2025-03-07 12:25:09 +02:00
Renovate Bot
17106721f0 Update module github.com/caddyserver/certmagic to v0.22.0 (forgejo) (#7146)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7146
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-07 00:45:40 +00:00
Gusted
a2958f5a26 fix: consider public issues for project boards (#7143)
- The security patch of forgejo/forgejo#6843 fixed the issue where project boards loaded all issues without considering if the doer actually had permission to view that issue. Within that patch the call to `Issues` was modified to include this permission checking.
- The query being generated was not entirely correct. Issues in public repositories weren't considered correctly (partly the fault of not setting `AllPublic` unconditionally) in the cause an authenticated user loaded the project.
- This is now fixed by setting `AllPublic` unconditionally and subsequently fixing the `Issue` function to ensure that the combination of setting `AllPublic` and `User` generates the correct query, by combining the permission check and issues in public repositories as one `AND` query.
- Added unit testing.
- Added integration testing.
- Resolves Codeberg/Community#1809
- Regression of https://codeberg.org/forgejo/forgejo/pulls/6843

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7143
Reviewed-by: Otto <otto@codeberg.org>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-committed-by: Gusted <postmaster@gusted.xyz>
2025-03-06 23:26:08 +00:00
Gusted
b10454a00c [gitea] week 2025-10 cherry pick (gitea/main -> forgejo) (#7111)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7111
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: Otto <otto@codeberg.org>
2025-03-06 20:39:18 +00:00
christopher-besch
fc4458bfbb interpret Precedence: auto_reply as an auto reply (#7137)
Some email clients like to be special and only set the "Precedence" header to "auto_reply" when sending automatic replies.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7137
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Reviewed-by: Otto <otto@codeberg.org>
Co-authored-by: christopher-besch <mail@chris-besch.com>
Co-committed-by: christopher-besch <mail@chris-besch.com>
2025-03-06 12:49:24 +00:00
Renovate Bot
932201fa23 Update module golang.org/x/image to v0.25.0 (forgejo) (#7135)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7135
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-06 11:43:36 +00:00
Otto
ed85d1f2a9 fix: correct logging if caller has generics (#7121)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7121
Reviewed-by: Otto <otto@codeberg.org>
2025-03-06 11:42:48 +00:00
Otto
e4a21a1493 feat: improve error handling of commit rendering (#7130)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7130
Reviewed-by: Otto <otto@codeberg.org>
2025-03-06 11:42:33 +00:00
Renovate Bot
5e08b51fed Update module golang.org/x/crypto to v0.36.0 (forgejo) (#7134)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7134
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-06 08:23:55 +00:00
Renovate Bot
19cd33d35b Update module github.com/urfave/cli/v2 to v2.27.6 (forgejo) (#7132)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-06 00:42:02 +00:00
floss4good
35970a1c0e
Translations cleanup. 2025-03-06 01:37:20 +02:00
floss4good
c93c76b51b
For repos, issues, pulls and comments check if the reported content exits and the reporter has access to it. 2025-03-06 01:37:14 +02:00
floss4good
9b5084ec74 Merge branch 'forgejo' into report_abuse 2025-03-05 23:34:19 +00:00
Gusted
4c123d8e3b
feat: improve error handling of commit rendering
- Simplify if-else expression to `NotFoundOrServerError`.
- I cannot find an existing scenario where `Getdiff` returns an error
and where it therefore should show a 404 error in the context of
rendering a diff of a commit. So simply return it as an Internal Server
Error, this also helps with debugging if an actual error occurs
here (404 errors are only logged at the DEBUG level).
- The first change is already covered under existing testing, the second
change is not trivial to test.
2025-03-05 18:45:31 +01:00
Litchi Pi
dc7f5d6b84 feat(ui): create a comment aggregator to reduce noise in issues (#6523)
Closes: https://codeberg.org/forgejo/forgejo/issues/6042
Continuation of: https://codeberg.org/forgejo/forgejo/pulls/6284
Replaces: https://codeberg.org/forgejo/forgejo/pulls/6285
Context: https://codeberg.org/forgejo/forgejo/pulls/6284#issuecomment-2518599

Create a new type of comment: `CommentTypeAggregator`

Replaces the grouping of labels and review request in a single place: the comment aggregator

The whole list of comments is "scanned", if they can get aggregated (diff of time < 60secs, same poster, open / close issue, add / del labels, add /del review req), they are added to the aggregator.
Once needed, the list of all the aggregated comments are replaced with a single aggregated comment containing all the data required.

In templates, have a specific HTML rendering part for the comment aggregator, reuse the same rendering as with the other types of comments.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6523
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Reviewed-by: Otto <otto@codeberg.org>
Co-authored-by: Litchi Pi <litchi.pi@proton.me>
Co-committed-by: Litchi Pi <litchi.pi@proton.me>
2025-03-05 17:24:51 +00:00
0ko
2c27a0f727 Merge commit: Fix: Force all repo tab buttons to be the same height (#7108)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7108
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2025-03-05 15:10:05 +00:00
Michael Jerger
e39b98ea51 chore: Add distant federation server mock (#7115)
Encapsulates the federation server counterpart & makes the test more configurable.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7115
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Michael Jerger <michael.jerger@meissa-gmbh.de>
Co-committed-by: Michael Jerger <michael.jerger@meissa-gmbh.de>
2025-03-05 14:57:07 +00:00
Renovate Bot
c1399947f4 Update module golang.org/x/net to v0.36.0 (forgejo) (#7126)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7126
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-05 12:17:48 +00:00
Renovate Bot
e76e130e66 Update module github.com/prometheus/client_golang to v1.21.1 (forgejo) (#7122)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7122
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-05 12:03:18 +00:00
floss4good
799885246a
Change ShadowCopyID type from *int64 to sql.NullInt64. 2025-03-05 11:51:54 +02:00
floss4good
7046bd5e39
Some fixes and improvements based on recent review. 2025-03-05 11:42:19 +02:00
floss4good
75578c64ea Merge branch 'forgejo' into report_abuse 2025-03-05 09:32:00 +00:00
gondolyr
362d076b98
fix(ui): force all repo tab buttons to be the same height
This fixes an issue with Simplified Chinese (and likely other languages)
where the "Actions" button would be shown in English and have a different
height compared to the other buttons in Chinese.

This solution was proposed by Codeberg user "aimuz".

Co-authored-by: aimuz
2025-03-05 04:01:02 +00:00
Gusted
101efdd2e7
fix: correct logging if caller has generics
- If the caller function has generics then
`runtime.FuncForPC(...).Name()` will not show the generic types and
instead collapse it to `[...]`. Remove this suffix from the function
name.
- This fixes an issue where the logging of functions that use generics
such as `db.Find` to be logged as `]()` instead of `Find()`, as the last
dot in `[...]` was being used as a cutoff point.
- Unit test added.
2025-03-05 00:10:46 +01:00
Renovate Bot
6b436955fc Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v1.64.6 (forgejo) (#7118)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-04 21:38:35 +00:00
0ko
bb0e26a7b4 fix(ui): use discussions icon in issue list entries (#7099)
So it is consistent with the icon used in the tab with comments.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7099
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Co-committed-by: 0ko <0ko@noreply.codeberg.org>
2025-03-04 21:37:51 +00:00
Renovate Bot
15e89bf0ef Update dependency go to v1.24.1 (forgejo) (#7117)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7117
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-04 21:12:48 +00:00
Michael Jerger
ee324c68cb fix: Use correct table in migration v18 (#7114)
Fix for https://codeberg.org/forgejo/forgejo/issues/6971

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7114
Reviewed-by: floss4good <floss4good@noreply.codeberg.org>
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Michael Jerger <michael.jerger@meissa-gmbh.de>
Co-committed-by: Michael Jerger <michael.jerger@meissa-gmbh.de>
2025-03-04 16:44:37 +00:00
jwolvers
3fdc3b6f82 feat(nuget): add missing nuget V2 properties (#7102)
- Add several missing nuget V2 properties to the API.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7102
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: jwolvers <jwolvers@noreply.codeberg.org>
Co-committed-by: jwolvers <jwolvers@noreply.codeberg.org>
2025-03-04 11:26:08 +00:00
Renovate Bot
a9303901cf Update module github.com/opencontainers/image-spec to v1.1.1 (forgejo) (#7112)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7112
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-04 00:33:22 +00:00
Lunny Xiao
9a5ef22f3a
Add composor source field (#33502)
Fix #33066

(cherry picked from commit aca21549f285255f0d78f90f1f15f0c6f9396761)
2025-03-04 00:00:09 +01:00
silverwind
41e91373d3
Remove superflous tw-content-center (#33741)
(cherry picked from commit 8362a4155929007b8d02b63a2e657557edb08fb9)
2025-03-03 23:39:54 +01:00
Lunny Xiao
670ad6e150
Fix inconsistent closed issue list icon (#33722)
Fixe #33718

Before

![image](https://github.com/user-attachments/assets/2c77e249-a118-4471-8c63-ead4fe0f6336)

After

![image](https://github.com/user-attachments/assets/c082eba8-5b21-4814-b091-c725ca46ccf3)

(cherry picked from commit 74c8e95e87300c74453e6aedd8a41352dbac02f9)
2025-03-03 23:36:25 +01:00
Kerwin Bryant
46d1a0f5c1
Add No Results Prompt Message on Issue List Page (#33699)
(cherry picked from commit 2cd2ae07a7ff267eaa9d2b984d015c58edcb0647)
2025-03-03 23:33:43 +01:00
Gusted
4c641b0fb2 feat: improve incorrect ROOT_URL warning (#7103)
- In the case that the `ROOT_URL` does not match the site a person is visiting Forgejo gives zero guarantees that any of the functionality will still work.
- Make the error i18n, use `local_next`.
- Reflect in the error that the any part of the application can break, don't be specific - it is plain wrong and should not be used.
- Always check for this case on the login page. This was previously only the case if OAuth2 was enabled, but this code was checking for elements that are always present on the login page regardless if the OAuth2 was enabled or not. Technically nothing changed, but reading the code it is now more clear when this check is being run.
- Add E2E testing.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7103
Reviewed-by: Otto <otto@codeberg.org>
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-committed-by: Gusted <postmaster@gusted.xyz>
2025-03-03 18:05:01 +00:00
floss4good
44e3a7815f Merge branch 'forgejo' into report_abuse 2025-03-03 11:53:33 +00:00
floss4good
39024c6eb7
Add button for reporting organizations. 2025-03-03 13:48:50 +02:00
Renovate Bot
8971321083 Update renovate to v39.185.0 (forgejo) (#7105)
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-03 11:33:01 +00:00
Renovate Bot
d04188a248 Lock file maintenance (forgejo) (#7106)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7106
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-03 10:47:18 +00:00
floss4good
729ac5b9f2
Improve validation and error handling. 2025-03-03 11:52:31 +02:00
floss4good
23fe44db4d
Add CSS classes for moderation new abuse report form. 2025-03-03 09:16:37 +02:00
floss4good
af2c8f763b
some cleanups 2025-03-03 09:03:01 +02:00
Renovate Bot
372b91a362 Update module github.com/jhillyerd/enmime/v2 to v2.1.0 (forgejo) (#7096)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7096
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
2025-03-02 14:47:31 +00:00
0ko
bfd0b645d0 fix(ui): add header to org settings / blocked users page (#7101)
Missing header copied from here:
ed5af44c06/templates/user/settings/blocked_users.tmpl (L3-L5)

Currently not possible to place it in the shared template because only org settings have the separate UI for blocking user.

Preview:
https://codeberg.org/attachments/1f829a11-cb0a-491d-9833-f5984e54301e

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7101
Reviewed-by: Beowulf <beowulf@beocode.eu>
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2025-03-02 13:11:57 +00:00