GiteaBot
fbbed8c4c4
[skip ci] Updated translations via Crowdin
2025-12-25 21:37:43 +00:00
Lunny Xiao
324dcf6f64
Use flatten translation keys ( #36225 )
...
Crowdin does not remove empty lines in nested JSON translation files.
Therefore, we use flattened translation keys instead. We have also
updated the key-loading logic to ensure that empty values are not
applied during translation.
---------
Signed-off-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: TheFox0x7 <thefox0x7@gmail.com>
Co-authored-by: silverwind <me@silverwind.io>
2025-12-25 12:51:33 -08:00
silverwind
42d294941c
Replace CSRF cookie with CrossOriginProtection ( #36183 )
...
Removes the CSRF cookie in favor of
[`CrossOriginProtection`](https://pkg.go.dev/net/http#CrossOriginProtection )
which relies purely on HTTP headers.
Fixes: https://github.com/go-gitea/gitea/issues/11188
Fixes: https://github.com/go-gitea/gitea/issues/30333
Helps: https://github.com/go-gitea/gitea/issues/35107
TODOs:
- [x] Fix tests
- [ ] Ideally add tests to validates the protection
---------
Signed-off-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-12-25 12:33:34 +02:00
Excellencedev
e52ff98bcf
Fix updated test
2025-12-24 13:30:36 +01:00
Excellencedev
973de056e8
review comment
2025-12-24 13:02:07 +01:00
Excellencedev
ebf7e2ea8c
fix test
2025-12-24 06:26:31 +01:00
Excellencedev
43279bfb8b
Use correct authentication
2025-12-24 05:57:51 +01:00
Excellencedev
9ada493d72
Add cross repo package access test
2025-12-24 05:29:27 +01:00
Excellencedev
9bd8b8109d
Review comment fixes
2025-12-24 02:49:37 +01:00
Excellencedev
50f300b421
Merge branch 'main' into fix-24635
2025-12-23 19:04:14 +01:00
silverwind
eddf875992
Remove fomantic form module ( #36222 )
...
- Replace fomantic form CSS with custom module
- Moved code in `form.css` to `modules/form.css`, removed around 70% of
the previous module.
- Moved captcha styles previously in `form.css` to its own file.
There is probably more unused CSS, like form error state colors which to
my knowledge is not used anywhere, but I'm not sure about that one so I
kept it.
One notable change is the removal of `type` combinator here, which
lowers the selector specificity and I noticed one issue where selector
`.ui.search > .prompt` was winning, so I added a workaround for that
until the `search` module can be removed as well.
```css
.ui.form .fields.error .field input:not([type])
.ui.form .fields.error .field input[type="date"]
```
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Giteabot <teabot@gitea.io>
2025-12-23 18:21:47 +01:00
Max P.
957151937f
Fix panic in blame view when a file has only a single commit ( #36230 )
...
This PR fixes a panic in the repository blame view that occurs when
rendering files whose blame history consists of only a single commit.
2025-12-23 14:26:29 +08:00
Excellencedev
fe5230cc0b
more ui fixes
2025-12-23 04:40:29 +01:00
Excellencedev
302f88892f
fix ui
2025-12-22 18:47:42 +01:00
Excellencedev
5da2b95e29
Merge branch 'main' into fix-24635
2025-12-22 18:12:09 +01:00
DaanSelen
04607f7d4a
fix: spelling error in migrate-storage cmd utility ( #36226 )
...
Added closing quote which looks to be forgotten
Signed-off-by: DaanSelen <80752476+DaanSelen@users.noreply.github.com>
2025-12-22 10:55:41 +00:00
Excellencedev
a72803dec1
Merge branch 'main' into fix-24635
2025-12-22 08:09:37 +01:00
silverwind
60de6cefed
Fix WebAuthn error checking ( #36219 )
...
Fixes: https://github.com/go-gitea/gitea/issues/36216
Now `detectWebAuthnSupport` returns the error type and lets the caller
decide whether they call `webAuthnError` and show the error. It no
longer shows the error during page load when the user has not even
interacted with the feature.
The bug affects all users on HTTP, so I think a quick fix release for
this might be good.
2025-12-21 18:24:41 +00:00
GiteaBot
5151e30fb7
[skip ci] Updated translations via Crowdin
2025-12-21 17:09:57 +00:00
Gregorius Bima Kharisma Wicaksana
b6ffe0e4e9
refactor: extract helper functions from SearchIssues ( #36158 )
...
## Summary
This PR refactors the `SearchIssues` function in
`routers/api/v1/repo/issue.go` by extracting common logic into reusable
helper functions:
- `parseIssueIsClosed()`: Parses the "state" query parameter and returns
the corresponding `isClosed` option
- `parseIssueIsPull()`: Parses the "type" query parameter and returns
the corresponding `isPull` option
- `buildSearchIssuesRepoIDs()`: Builds the list of repository IDs for
issue search based on query parameters
### Benefits:
- Improved code readability
- Smaller, more focused functions
- Easier to test individual components
- Potential for reuse in other handlers
### Changes:
- Extracted 3 helper functions from the ~292 line `SearchIssues`
function
- No functional changes - behavior remains the same
- Proper error handling preserved
## Test plan
- [ ] Verify existing API tests pass
- [ ] Manual testing of `/repos/issues/search` endpoint
Ref: #35015
---------
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-12-20 17:57:41 -08:00
GiteaBot
bf0b377879
[skip ci] Updated translations via Crowdin
2025-12-21 00:42:41 +00:00
Excellencedev
34d13de7e5
Merge branch 'main' into fix-24635
2025-12-20 19:28:37 +01:00
Lunny Xiao
0a3a9fb068
Revert "[skip ci] Updated translations via Crowdin"
...
This reverts commit d3656ebd95536b87dfc40c6df5ee22b2e62ae6c9.
2025-12-20 09:15:26 -08:00
Scion
495fee4555
Closed milestones with no issues now show as 100% completed ( #36220 )
...
Closed milestones with 0 issues currently display as having 0%
completion. This makes sense if the milestone is still open, but if the
milestone is closed it seems like that it should show 100% completeness
instead.
Before:
<img width="1708" height="252" alt="image"
src="https://github.com/user-attachments/assets/0b58c78f-0609-44ee-8d58-bd67534c6164 "
/>
After:
<img width="1716" height="263" alt="image"
src="https://github.com/user-attachments/assets/3fb0044f-d76c-4888-9d60-640f2ca5fec6 "
/>
2025-12-20 16:16:20 +00:00
Excellencedev
663d9b28f8
empty commit
2025-12-20 14:13:52 +01:00
Excellencedev
6d947234e2
regression
2025-12-20 13:08:06 +01:00
Excellencedev
d25de6fb86
test fix
2025-12-20 11:13:47 +01:00
Excellencedev
463c670d06
issue fix
2025-12-20 08:28:58 +01:00
Excellencedev
6cc6fd7f68
lint
2025-12-20 07:50:12 +01:00
Excellencedev
38f384aca2
fmt
2025-12-20 07:38:11 +01:00
Excellencedev
5628ab713b
lint
2025-12-20 07:31:41 +01:00
Excellencedev
b0c2a958b5
Format
2025-12-20 07:02:20 +01:00
Excellencedev
06b3db5507
Improve test coverage
2025-12-20 06:51:34 +01:00
Excellencedev
b2f05ff4f7
fix test
2025-12-20 06:19:38 +01:00
Excellencedev
b0811fe686
Formatting issues
2025-12-20 05:52:40 +01:00
Excellencedev
9c5b278622
Fix all bugs I found in the code
2025-12-20 05:46:33 +01:00
Excellencedev
a5163fa5f2
minor nitpick
2025-12-20 05:16:53 +01:00
Excellencedev
eca961e677
Minor fixes
2025-12-20 05:15:13 +01:00
Excellencedev
64c2147cfe
Adapt to JSON format
2025-12-20 05:06:23 +01:00
Excellencedev
04a66583d1
Merge remote-tracking branch 'origin/main' into fix-24635
2025-12-20 04:48:22 +01:00
Excellencedev
058fc0708d
fix conflixt
2025-12-20 04:37:30 +01:00
Excellencedev
d97712c9a5
Merge branch 'fix-24635' of https://github.com/Excellencedev/gitea into fix-24635
2025-12-20 04:32:26 +01:00
Excellencedev
79a5d079ba
Completely redesign UI
2025-12-20 04:30:49 +01:00
bytedream
05c3b84f84
Show edit page confirmation dialog on tree view file change ( #36130 )
...
Currently, when editing or deleting a file and the edit/commit form has
changes, navigating the file tree will discard all changes without any
warning. This PR prevents partial reloading when the edit form has
unsaved changes, which will trigger a browser native warning dialog.
---------
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-12-20 02:29:39 +01:00
Peter Verraedt
b4c9057f92
Fix regression in writing authorized principals ( #36213 )
...
Add additional logic with tests to restore the
previous behaviour when writing the principals file.
Fixes : #36212
---------
Signed-off-by: Peter Verraedt <peter.verraedt@kuleuven.be>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-12-20 01:24:59 +00:00
GiteaBot
d3656ebd95
[skip ci] Updated translations via Crowdin
2025-12-20 00:37:17 +00:00
Lunny Xiao
ffea9a27c3
Convert locale files from ini to json format ( #35489 )
...
Migrate from the current INI format to JSON for translations. JSON is
widely supported, including by platforms such as Crowdin and Weblate.
2025-12-19 09:50:48 -08:00
Excellencedev
af229dc320
Merge branch 'main' into fix-24635
2025-12-19 17:33:46 +01:00
dependabot[bot]
9764ae87d2
Bump crowdin/github-action from 1 to 2 ( #36204 )
...
Bumps [crowdin/github-action](https://github.com/crowdin/github-action )
from 1 to 2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/crowdin/github-action/releases ">crowdin/github-action's
releases</a>.</em></p>
<blockquote>
<h2>v2.0.0</h2>
<h2>What's Changed</h2>
<h3>Features</h3>
<ul>
<li>Now the Action uses the new <a
href="https://crowdin.github.io/crowdin-cli/blog/2024/05/28/cli-v4 ">CLI
v4</a></li>
</ul>
<h3>Deprecations</h3>
<p>Removed deprecated options:</p>
<ul>
<li><code>add_crowdin_branch</code></li>
<li><code>new_branch_title</code></li>
<li><code>new_branch_export_pattern</code></li>
<li><code>new_branch_priority</code></li>
<li><code>delete_crowdin_branch</code></li>
</ul>
<p>Instead, use the <code>command: branch add <name></code> to
create a new branch.</p>
<ul>
<li><code>identity</code> - this option doesn't make much sense in the
context of the GitHub action, where environment variables are a de facto
standard for credentials loading.</li>
</ul>
<hr />
<p><strong>Full Changelog</strong>: <a
href="https://github.com/crowdin/github-action/compare/v1.20.4...v2.0.0 ">https://github.com/crowdin/github-action/compare/v1.20.4...v2.0.0 </a></p>
<h2>v1.20.4</h2>
<h2>What's Changed</h2>
<ul>
<li>CLI <a
href="https://github.com/crowdin/crowdin-cli/releases/tag/3.19.4 ">3.19.4</a>
by <a
href="https://github.com/andrii-bodnar "><code>@andrii-bodnar</code></a></li>
<li>ci: upgrade actions by <a
href="https://github.com/andrii-bodnar "><code>@andrii-bodnar</code></a>
in <a
href="https://redirect.github.com/crowdin/github-action/pull/226 ">crowdin/github-action#226</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/crowdin/github-action/compare/v1.20.3...v1.20.4 ">https://github.com/crowdin/github-action/compare/v1.20.3...v1.20.4 </a></p>
<h2>v1.20.3</h2>
<h2>What's Changed</h2>
<ul>
<li>CLI <a
href="https://github.com/crowdin/crowdin-cli/releases/tag/3.19.3 ">3.19.3</a>
by <a
href="https://github.com/andrii-bodnar "><code>@andrii-bodnar</code></a></li>
<li>chore: deprecate the 'identity' option by <a
href="https://github.com/andrii-bodnar "><code>@andrii-bodnar</code></a>
in <a
href="https://redirect.github.com/crowdin/github-action/pull/224 ">crowdin/github-action#224</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/crowdin/github-action/compare/v1.20.2...v1.20.3 ">https://github.com/crowdin/github-action/compare/v1.20.2...v1.20.3 </a></p>
<h2>v1.20.2</h2>
<h2>What's Changed</h2>
<ul>
<li>CLI <a
href="https://github.com/crowdin/crowdin-cli/releases/tag/3.19.2 ">3.19.2</a>
by <a
href="https://github.com/andrii-bodnar "><code>@andrii-bodnar</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/crowdin/github-action/compare/v1.20.1...v1.20.2 ">https://github.com/crowdin/github-action/compare/v1.20.1...v1.20.2 </a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="60debf382e "><code>60debf3</code></a>
docs: add example for source files caching between workflow runs (<a
href="https://redirect.github.com/crowdin/github-action/issues/298 ">#298</a>)</li>
<li><a
href="96b44e6697 "><code>96b44e6</code></a>
chore: CLI 4.12.0</li>
<li><a
href="08713f00a5 "><code>08713f0</code></a>
feat: add pull_request_created output to track PR status (<a
href="https://redirect.github.com/crowdin/github-action/issues/294 ">#294</a>)</li>
<li><a
href="fb221ac1c8 "><code>fb221ac</code></a>
fix: bundle download with branch param conflict (<a
href="https://redirect.github.com/crowdin/github-action/issues/291 ">#291</a>)</li>
<li><a
href="0749939f63 "><code>0749939</code></a>
chore: CLI 4.11.0</li>
<li><a
href="9787f4fcb6 "><code>9787f4f</code></a>
chore: CLI 4.10.0</li>
<li><a
href="590c05e09a "><code>590c05e</code></a>
chore: CLI 4.9.1</li>
<li><a
href="9fd07c1c5b "><code>9fd07c1</code></a>
chore: CLI 4.9.0</li>
<li><a
href="297234bae0 "><code>297234b</code></a>
chore: CLI 4.8.0</li>
<li><a
href="37201e27ee "><code>37201e2</code></a>
docs: AI Localization improvements (<a
href="https://redirect.github.com/crowdin/github-action/issues/283 ">#283</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/crowdin/github-action/compare/v1...v2 ">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: silverwind <me@silverwind.io>
2025-12-19 13:49:30 +00:00
Excellencedev
5fd6d0e341
Merge branch 'main' into fix-24635
2025-12-19 13:20:55 +01:00