]> source.dussan.org Git - gitea.git/log
gitea.git
9 days agoBump CI,Flake and Snap to Node 22 (#32487)
silverwind [Wed, 13 Nov 2024 21:39:55 +0000 (22:39 +0100)]
Bump CI,Flake and Snap to Node 22 (#32487)

Node 22 is LTS since 2024-10-29. Updated it everywhere.

---------

Co-authored-by: techknowlogick <techknowlogick@gitea.com>
9 days agoPerf: add extra index to notification table (#32395)
BoYanZh [Wed, 13 Nov 2024 18:17:54 +0000 (13:17 -0500)]
Perf: add extra index to notification table (#32395)

Index SQL: `CREATE INDEX u_s_uu ON notification(user_id, status,
updated_unix);`

The naming follows `action.go` in the same dir.

I am unsure which version I should add SQL to the migration folder, so I
have not modified it.

Fix #32390

9 days agoFix LFS route mock, realm, middleware names (#32488)
wxiaoguang [Wed, 13 Nov 2024 08:58:09 +0000 (16:58 +0800)]
Fix LFS route mock, realm, middleware names (#32488)

1. move "internal-lfs" route mock to "common-lfs"
2. fine tune tests
3. fix "realm" strings, according to RFC:
https://datatracker.ietf.org/doc/html/rfc2617:
    * realm       = "realm" "=" realm-value
    * realm-value = quoted-string
4. clarify some names of the middlewares, rename `ignXxx` to `optXxx` to
match `reqXxx`, and rename ambiguous `requireSignIn` to `reqGitSignIn`

10 days agoDisable Oauth check if oauth disabled (#32368)
Lunny Xiao [Tue, 12 Nov 2024 21:33:35 +0000 (13:33 -0800)]
Disable Oauth check if oauth disabled (#32368)

Fix #32367

---------

Co-authored-by: Giteabot <teabot@gitea.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
10 days agoUpdate JS and PY dependencies (#32482)
silverwind [Tue, 12 Nov 2024 21:03:22 +0000 (22:03 +0100)]
Update JS and PY dependencies (#32482)

Result of `make update-js update-py`.

Fixes: https://github.com/go-gitea/gitea/security/dependabot/80
Fixes: https://github.com/go-gitea/gitea/security/dependabot/81
Tested build and swagger ui.

10 days agoUpdate `github.com/meilisearch/meilisearch-go` (#32484)
silverwind [Tue, 12 Nov 2024 20:55:01 +0000 (21:55 +0100)]
Update `github.com/meilisearch/meilisearch-go` (#32484)

Result of `go get -u github.com/meilisearch/meilisearch-go && make
tidy`.

Fixes: https://github.com/go-gitea/gitea/security/dependabot/78
11 days agoFix test fixtures for user2/lfs.git (#32477)
wxiaoguang [Tue, 12 Nov 2024 05:41:22 +0000 (13:41 +0800)]
Fix test fixtures for user2/lfs.git (#32477)

11 days agoLimit org member view of restricted users (#32211)
6543 [Tue, 12 Nov 2024 03:44:24 +0000 (04:44 +0100)]
Limit org member view of restricted users (#32211)

currently restricted users can only see the repos of teams in orgs they
are part at.
they also should only see the users that are also part at the same team.

---
*Sponsored by Kithara Software GmbH*

11 days agocargo registry - respect renamed dependencies (#32430)
Albin Hedman [Tue, 12 Nov 2024 02:57:30 +0000 (03:57 +0100)]
cargo registry - respect renamed dependencies (#32430)

rust allows renaming dependencies such as when depending on multiple
versions of the same package. This is not supported by gitea as
discovered in #31500 . This PR tries to address that.

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
11 days agoRefactor LFS SSH and internal routers (#32473)
wxiaoguang [Tue, 12 Nov 2024 02:38:22 +0000 (10:38 +0800)]
Refactor LFS SSH and internal routers (#32473)

Gitea instance keeps reporting a lot of errors like "LFS SSH transfer connection denied, pure SSH protocol is disabled". When starting debugging the problem, there are more problems found. Try to address most of them:

* avoid unnecessary server side error logs (change `fail()` to not log them)
* figure out the broken tests/user2/lfs.git (added comments)
* avoid `migratePushMirrors` failure when a repository doesn't exist (ignore them)
* avoid "Authorization" (internal&lfs) header conflicts, remove the tricky "swapAuth" and use "X-Gitea-Internal-Auth"
* make internal token comparing constant time (it wasn't a serous problem because in a real world it's nearly impossible to timing-attack the token, but good to fix and backport)
* avoid duplicate routers (introduce AddOwnerRepoGitLFSRoutes)
* avoid "internal (private)" routes using session/web context (they should use private context)
* fix incorrect "path" usages (use "filepath")
* fix incorrect mocked route point handling (need to check func nil correctly)
* split some tests from "git general tests" to "git misc tests" (to keep "git_general_test.go" simple)

Still no correct result for Git LFS SSH tests. So the code is kept there
(`tests/integration/git_lfs_ssh_test.go`) and a FIXME explains the details.

11 days agoFix a number of typescript issues (#32459)
silverwind [Mon, 11 Nov 2024 11:13:57 +0000 (12:13 +0100)]
Fix a number of typescript issues (#32459)

Fixes 69 typescript errors found in the `admin` and `markup` folders.

---------

Co-authored-by: Giteabot <teabot@gitea.io>
12 days agoHarden runner updateTask and updateLog api (#32462)
ChristopherHX [Mon, 11 Nov 2024 04:58:37 +0000 (05:58 +0100)]
Harden runner updateTask and updateLog api (#32462)

Per proposal https://github.com/go-gitea/gitea/issues/32461

12 days agoMove some functions from issue.go to standalone files (#32468)
Lunny Xiao [Mon, 11 Nov 2024 04:28:54 +0000 (20:28 -0800)]
Move some functions from issue.go to standalone files (#32468)

Just functions move, no code change.

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
12 days agoCalculate `PublicOnly` for org membership only once (#32234)
6543 [Mon, 11 Nov 2024 00:38:30 +0000 (01:38 +0100)]
Calculate `PublicOnly` for org membership only once (#32234)

Refactoring of #32211

this move the PublicOnly() filter calcuation next to the DB querys and
let it be decided by the Doer

---
*Sponsored by Kithara Software GmbH*

12 days agoAdd `DEFAULT_MIRROR_REPO_UNITS` and `DEFAULT_TEMPLATE_REPO_UNITS` options (#32416)
Zettat123 [Mon, 11 Nov 2024 00:11:00 +0000 (08:11 +0800)]
Add `DEFAULT_MIRROR_REPO_UNITS` and `DEFAULT_TEMPLATE_REPO_UNITS` options (#32416)

Resolve #30350

The action unit of mirrors and templates should be disabled by default.
This PR adds `DEFAULT_MIRROR_REPO_UNITS` and
`DEFAULT_TEMPLATE_REPO_UNITS` options to allow users to specify default
units for mirrors and templates.

Thanks to @lng2020 for the
[idea](https://github.com/go-gitea/gitea/issues/30350#issuecomment-2053942243)

12 days agoAdd a doctor check to disable the "Actions" unit for mirrors (#32424)
Zettat123 [Sun, 10 Nov 2024 23:37:24 +0000 (07:37 +0800)]
Add a doctor check to disable the "Actions" unit for mirrors (#32424)

Resolve #32232

Users can disable the "Actions" unit for all mirror repos by running
```
gitea doctor check --run  disable-mirror-actions-unit --fix
```

12 days agoRefactor sidebar assignee&milestone&project selectors (#32465)
wxiaoguang [Sun, 10 Nov 2024 20:07:54 +0000 (04:07 +0800)]
Refactor sidebar assignee&milestone&project selectors (#32465)

Follow #32460

Now the code could be much clearer than before and easier to maintain. A
lot of legacy code is removed.

Manually tested.

This PR is large enough, that fine tunes could be deferred to the future if
there is no bug found or design problem.

Screenshots:

<details>

![image](https://github.com/user-attachments/assets/35f4ab7b-1bc0-4bad-a73c-a4569328303c)

</details>

12 days agoRefactor sidebar label selector (#32460)
wxiaoguang [Sun, 10 Nov 2024 08:26:42 +0000 (16:26 +0800)]
Refactor sidebar label selector (#32460)

Introduce `issueSidebarLabelsData` to handle all sidebar labels related data.

13 days agoFix mermaid diagram height when initially hidden (#32457)
silverwind [Sat, 9 Nov 2024 18:03:55 +0000 (19:03 +0100)]
Fix mermaid diagram height when initially hidden (#32457)

In a hidden iframe, `document.body.clientHeight` is not reliable. Use
`IntersectionObserver` to detect the visibility change and update the
height there.

Fixes: https://github.com/go-gitea/gitea/issues/32392
<img width="885" alt="image"
src="https://github.com/user-attachments/assets/a95ef6aa-27e7-443f-9d06-400ef27919ae">

2 weeks agoAdd reviewers selection to new pull request (#32403)
Calvin K [Sat, 9 Nov 2024 04:48:31 +0000 (12:48 +0800)]
Add reviewers selection to new pull request (#32403)

Users could add reviewers when creating new PRs.

---------

Co-authored-by: splitt3r <splitt3r@users.noreply.github.com>
Co-authored-by: Sebastian Sauer <sauer.sebastian@gmail.com>
Co-authored-by: bb-ben <70356237+bboerben@users.noreply.github.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2 weeks agoFix issue sidebar (#32455)
wxiaoguang [Fri, 8 Nov 2024 17:55:32 +0000 (01:55 +0800)]
Fix issue sidebar (#32455)

Fix #32453

Major changes:

* revert the `<div class="divider"></div>` in
`templates/repo/issue/branch_selector_field.tmpl` (it was removed by
mistake in ##32444)
* remove incorrect `<div class="inline field">` in
`templates/repo/issue/sidebar/allow_maintainer_edit.tmpl`
* use `gt-ellipsis` to replace the "title" class in the dependency list,
then `.repository .issue-content-right .ui.list .title` could be removed
* remove the "relaxed" from dependency list, then there is no padding,
then `.repository .issue-content-right .ui.list .dependency` could be
removed (`white-space` doesn't have effect either because there is
`gt-ellipsis`)
* remove dead code `.repository .issue-content-right #deadlineForm input
`

The fixed UI should be the same as before.

2 weeks agoRefactor language menu and dom utils (#32450)
wxiaoguang [Fri, 8 Nov 2024 06:04:24 +0000 (14:04 +0800)]
Refactor language menu and dom utils (#32450)

1. Make `queryElem*` functions could correctly handle TS types
2. Remove some legacy jQuery $ calls (introduce fomanticQuery for Fomantic UI only)
3. Fix some TS typing problems

2 weeks agoFix broken releases when re-pushing tags (#32435)
Zettat123 [Fri, 8 Nov 2024 02:53:06 +0000 (10:53 +0800)]
Fix broken releases when re-pushing tags (#32435)

Fix #32427

2 weeks agoRefactor issue page info (#32445)
wxiaoguang [Fri, 8 Nov 2024 02:21:13 +0000 (10:21 +0800)]
Refactor issue page info (#32445)

Fix a longstanding TODO since 2021 (#14826) / 2018 (#2531)

2 weeks agoSplit issue sidebar into small templates (#32444)
wxiaoguang [Fri, 8 Nov 2024 01:44:20 +0000 (09:44 +0800)]
Split issue sidebar into small templates (#32444)

Only move code

2 weeks agoOnly provide the commit summary for Discord webhook push events (#32432)
Kemal Zebari [Thu, 7 Nov 2024 19:56:53 +0000 (11:56 -0800)]
Only provide the commit summary for Discord webhook push events (#32432)

Resolves #32371.

#31970 should have just showed the commit summary, but
`strings.SplitN()` was misused such that we did not perform any
splitting at all and just used the message. This was not caught in the
unit test made in that PR since the test commit summary was > 50 (which
truncated away the commit description).

This snapshot resolves this and adds another unit test to ensure that we
only show the commit summary.

2 weeks agoAdd new event commit status creation and webhook implementation (#27151)
Lunny Xiao [Thu, 7 Nov 2024 06:41:49 +0000 (22:41 -0800)]
Add new event commit status creation and webhook implementation (#27151)

This PR introduces a new event which is similar as Github's. When a new
commit status submitted, the event will be trigged. That means, now we
can receive all feedback from CI/CD system in webhooks or other notify
systems.

ref:
https://docs.github.com/en/webhooks/webhook-events-and-payloads#status

Fix #20749

2 weeks agoSupport quote selected comments to reply (#32431)
wxiaoguang [Thu, 7 Nov 2024 03:57:07 +0000 (11:57 +0800)]
Support quote selected comments to reply (#32431)

Many existing tests were quite hacky, these could be improved later.

<details>

![image](https://github.com/user-attachments/assets/93aebb4f-9de5-4cb8-910b-50c64cbcd25a)

</details>

2 weeks agoMove AddCollabrator and CreateRepositoryByExample to service layer (#32419)
Lunny Xiao [Thu, 7 Nov 2024 03:28:11 +0000 (19:28 -0800)]
Move AddCollabrator and CreateRepositoryByExample to service layer (#32419)

- [x] Move `CreateRepositoryByExample` to service layer
- [x] Move `AddCollabrator` to service layer
- [x] Add a new parameter for `AddCollabrator` so that changing mode
immediately after that will become unnecessary.

2 weeks agoAdd new index for action to resolve the performance problem (#32333)
Lunny Xiao [Wed, 6 Nov 2024 22:04:48 +0000 (14:04 -0800)]
Add new index for action to resolve the performance problem (#32333)

Fix #32224

2 weeks agoInclude file extension checks in attachment API (#32151)
Kemal Zebari [Wed, 6 Nov 2024 21:34:32 +0000 (13:34 -0800)]
Include file extension checks in attachment API (#32151)

From testing, I found that issue posters and users with repository write
access are able to edit attachment names in a way that circumvents the
instance-level file extension restrictions using the edit attachment
APIs. This snapshot adds checks for these endpoints.

2 weeks agoUpdated tokenizer to better matching when search for code snippets (#32261)
Bruno Sofiato [Wed, 6 Nov 2024 20:51:20 +0000 (17:51 -0300)]
Updated tokenizer to better matching when search for code snippets (#32261)

This PR improves the accuracy of Gitea's code search.

Currently, Gitea does not consider statements such as
`onsole.log("hello")` as hits when the user searches for `log`. The
culprit is how both ES and Bleve are tokenizing the file contents (in
both cases, `console.log` is a whole token).

In ES' case, we changed the tokenizer to
[simple_pattern_split](https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-simplepatternsplit-tokenizer.html#:~:text=The%20simple_pattern_split%20tokenizer%20uses%20a,the%20tokenization%20is%20generally%20faster.).
In such a case, tokens are words formed by digits and letters. In
Bleve's case, it employs a
[letter](https://blevesearch.com/docs/Tokenizers/) tokenizer.

Resolves #32220

---------

Signed-off-by: Bruno Sofiato <bruno.sofiato@gmail.com>
2 weeks agoCorrectly query the primary button in a form (#32438)
wxiaoguang [Wed, 6 Nov 2024 20:21:53 +0000 (04:21 +0800)]
Correctly query the primary button in a form (#32438)

The "primary button" is used at many places, but sometimes they might
conflict (due to button switch, hidden panel, dropdown menu, etc).

Sometimes we could add a special CSS class for the buttons, but
sometimes not (see the comment of QuickSubmit)

This PR introduces `querySingleVisibleElem` to help to get the correct
primary button (the only visible one), and prevent from querying the
wrong buttons.

Fix #32437

---------

Co-authored-by: silverwind <me@silverwind.io>
2 weeks agoUse 8 as default value for git lfs concurrency (#32421)
wxiaoguang [Tue, 5 Nov 2024 13:10:57 +0000 (21:10 +0800)]
Use 8 as default value for git lfs concurrency (#32421)

2 weeks agoFix milestone deadline and date related problems (#32339)
Lunny Xiao [Tue, 5 Nov 2024 07:46:40 +0000 (23:46 -0800)]
Fix milestone deadline and date related problems (#32339)

Use zero instead of 9999-12-31 for deadline
Fix #32291

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Giteabot <teabot@gitea.io>
2 weeks agoOnly query team tables if repository is under org when getting assignees (#32414)
Lunny Xiao [Tue, 5 Nov 2024 07:13:52 +0000 (23:13 -0800)]
Only query team tables if repository is under org when getting assignees (#32414)

It's unnecessary to query the team table if the repository is not under
organization when getting assignees.

2 weeks agoRefactor RepoRefByType (#32413)
wxiaoguang [Tue, 5 Nov 2024 06:35:54 +0000 (14:35 +0800)]
Refactor RepoRefByType (#32413)

1. clarify the "filepath" could(should) contain "{ref}"
2. remove unclear RepoRefLegacy and RepoRefAny, use RepoRefUnknown to guess
3. by the way, avoid using AppURL

2 weeks agoRefactor template ctx and render utils (#32422)
wxiaoguang [Tue, 5 Nov 2024 06:04:26 +0000 (14:04 +0800)]
Refactor template ctx and render utils (#32422)

Clean up the templates

2 weeks agoRefactor DateUtils and merge TimeSince (#32409)
wxiaoguang [Mon, 4 Nov 2024 11:30:00 +0000 (19:30 +0800)]
Refactor DateUtils and merge TimeSince (#32409)

Follow #32383 and #32402

2 weeks agoRefactor markup package (#32399)
wxiaoguang [Mon, 4 Nov 2024 10:59:50 +0000 (18:59 +0800)]
Refactor markup package (#32399)

To make the markup package easier to maintain:
1. Split some go files into small files
2. Use a shared util.NopCloser, remove duplicate code
3. Remove unused functions

2 weeks agoAdd some handy markdown editor features (#32400)
wxiaoguang [Mon, 4 Nov 2024 10:14:36 +0000 (18:14 +0800)]
Add some handy markdown editor features (#32400)

There were some missing features from EasyMDE:

1. H1 - H3 style
2. Auto add task list
3. Insert a table

And added some tests

2 weeks agoMake LFS http_client parallel within a batch. (#32369)
Royce Remer [Mon, 4 Nov 2024 04:49:08 +0000 (20:49 -0800)]
Make LFS http_client parallel within a batch. (#32369)

Signed-off-by: Royce Remer <royceremer@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2 weeks agoRefactor repo legacy (#32404)
wxiaoguang [Sun, 3 Nov 2024 11:00:12 +0000 (19:00 +0800)]
Refactor repo legacy (#32404)

Only move code, no unnecessary logic change. (There are many problems in
old code, but changing them is not in this PR's scope)

Co-authored-by: Giteabot <teabot@gitea.io>
2 weeks agoReplace DateTime with proper functions (#32402)
wxiaoguang [Sat, 2 Nov 2024 21:04:53 +0000 (05:04 +0800)]
Replace DateTime with proper functions (#32402)

Follow #32383

This PR cleans up the "Deadline" usages in templates, make them call
`ParseLegacy` first to get a `Time` struct then display by `DateUtils`.

Now it should be pretty clear how "deadline string" works, it makes it
possible to do further refactoring and correcting.

2 weeks agoFix git error handling (#32401)
wxiaoguang [Sat, 2 Nov 2024 11:20:22 +0000 (19:20 +0800)]
Fix git error handling (#32401)

3 weeks agoFix created_unix for mirroring (#32342)
Lunny Xiao [Sat, 2 Nov 2024 06:11:38 +0000 (23:11 -0700)]
Fix created_unix for mirroring (#32342)

Fix #32233

3 weeks agoReplace DateTime with DateUtils (#32383)
wxiaoguang [Sat, 2 Nov 2024 04:08:28 +0000 (12:08 +0800)]
Replace DateTime with DateUtils (#32383)

3 weeks agoimprove performance of diffs (#32393)
Rowan Bohde [Sat, 2 Nov 2024 03:29:37 +0000 (22:29 -0500)]
improve performance of diffs (#32393)

This has two major changes that significantly reduce the amount of work
done for large diffs:

* Kill a running git process when reaching the maximum number of files
in a diff, preventing it from processing the entire diff.
* When loading a diff with the URL param `file-only=true`, skip loading
stats. This speeds up loading both hidden files of a diff and sections
of a diff when clicking the "Show More" button.

A couple of minor things from profiling are also included:

* Reuse existing repo in `PrepareViewPullInfo` if head and base are the
same.

The performance impact is going to depend heavily on the individual diff
and the hardware it runs on, but when testing locally on a diff changing
100k+ lines over hundreds of files, I'm seeing a roughly 75% reduction
in time to load the result of "Show More"

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
3 weeks agoRefactor tests to prevent from unnecessary preparations (#32398)
wxiaoguang [Fri, 1 Nov 2024 15:18:29 +0000 (23:18 +0800)]
Refactor tests to prevent from unnecessary preparations (#32398)

3 weeks agoAdd artifacts test fixture (#30300)
Kyle D. [Fri, 1 Nov 2024 02:29:54 +0000 (22:29 -0400)]
Add artifacts test fixture (#30300)

Closes https://github.com/go-gitea/gitea/issues/30296

- Adds a DB fixture for actions artifacts
- Adds artifacts test files
- Clears artifacts test files between each run
- Note: I initially initialized the artifacts only for artifacts tests,
but because the files are small it only takes ~8ms, so I changed it to
always run in test setup for simplicity
- Fix some otherwise flaky tests by making them not depend on previous
tests

3 weeks agoFix `missing signature key` error when pulling Docker images with `SERVE_DIRECT`...
Zettat123 [Thu, 31 Oct 2024 15:28:25 +0000 (23:28 +0800)]
Fix `missing signature key` error when pulling Docker images with `SERVE_DIRECT` enabled (#32365)

Fix #28121

I did some tests and found that the `missing signature key` error is
caused by an incorrect `Content-Type` header. Gitea correctly sets the
`Content-Type` header when serving files.

https://github.com/go-gitea/gitea/blob/348d1d0f322ca57c459acd902f54821d687ca804/routers/api/packages/container/container.go#L712-L717
However, when `SERVE_DIRECT` is enabled, the `Content-Type` header may
be set to an incorrect value by the storage service. To fix this issue,
we can use query parameters to override response header values.

https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
<img width="600px"
src="https://github.com/user-attachments/assets/f2ff90f0-f1df-46f9-9680-b8120222c555"
/>

In this PR, I introduced a new parameter to the `URL` method to support
additional parameters.

```
URL(path, name string, reqParams url.Values) (*url.URL, error)
```

---

Most S3-like services support specifying the content type when storing
objects. However, Gitea always use `application/octet-stream`.
Therefore, I believe we also need to improve the `Save` method to
support storing objects with the correct content type.

https://github.com/go-gitea/gitea/blob/b7fb20e73e63b8edc9b90c52073e248bef428fcc/modules/storage/minio.go#L214-L221

3 weeks agoFix a number of typescript issues (#32308)
silverwind [Thu, 31 Oct 2024 14:57:40 +0000 (15:57 +0100)]
Fix a number of typescript issues (#32308)

- Prefer
[window.location.assign](https://developer.mozilla.org/en-US/docs/Web/API/Location/assign)
over assigning to
[window.location](https://developer.mozilla.org/en-US/docs/Web/API/Window/location)
which typescript does not like. This works in all browsers including
PaleMoon.
- Fix all typescript issues in `web_src/js/webcomponents`, no behaviour
changes.
- ~~Workaround bug in `@typescript-eslint/no-unnecessary-type-assertion`
rule.~~
- Omit vendored file from type checks.
- `tsc` error count is reduce by 53 with these changes.

3 weeks agoUpdate go dependencies (#32389)
wxiaoguang [Thu, 31 Oct 2024 12:05:54 +0000 (20:05 +0800)]
Update go dependencies (#32389)

3 weeks agoUpdate JS and PY dependencies (#32388)
silverwind [Thu, 31 Oct 2024 04:19:15 +0000 (05:19 +0100)]
Update JS and PY dependencies (#32388)

- Update all JS dependencies excluding stylelint (because of
https://github.com/AndyOGo/stylelint-declaration-strict-value/issues/379).
- Update all PY dependencies.
- Replace `eslint-plugin-deprecation` with
`@typescript-eslint/no-deprecated` rule.
- Enabled `unicorn/prefer-math-min-max` and autofixed issues.
- Tested all dependencies.

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
3 weeks agoFix suggestions for issues (#32380)
wxiaoguang [Wed, 30 Oct 2024 20:06:36 +0000 (04:06 +0800)]
Fix suggestions for issues (#32380)

3 weeks agorefactor: remove redundant err declarations (#32381)
Oleksandr Redko [Wed, 30 Oct 2024 19:36:24 +0000 (21:36 +0200)]
refactor: remove redundant err declarations (#32381)

3 weeks agoFix the missing menu in organization project view page (#32313)
yp05327 [Wed, 30 Oct 2024 19:05:40 +0000 (04:05 +0900)]
Fix the missing menu in organization project view page (#32313)

#29248 didn't modify the view page.
The class name is not good enough, so this is a quick fix.

Before:
org:

![image](https://github.com/user-attachments/assets/3e26502d-66b4-4043-ab03-003ba7391487)
user:

![image](https://github.com/user-attachments/assets/9b22b90c-d63c-4228-acad-4d9fb20590ac)

After:
org:

![image](https://github.com/user-attachments/assets/21bf98a7-8a5b-4dc6-950a-88f529e36450)
user: (no change)

![image](https://github.com/user-attachments/assets/fea0dcae-3625-44e8-bb9e-4c3733da8764)

Co-authored-by: Giteabot <teabot@gitea.io>
3 weeks agoFix toAbsoluteLocaleDate and add more tests (#32387)
wxiaoguang [Wed, 30 Oct 2024 18:36:02 +0000 (02:36 +0800)]
Fix toAbsoluteLocaleDate and add more tests (#32387)

3 weeks agoRespect UI.ExploreDefaultSort setting again (#32357)
6543 [Wed, 30 Oct 2024 12:33:25 +0000 (13:33 +0100)]
Respect UI.ExploreDefaultSort setting again (#32357)

fix regression of https://github.com/go-gitea/gitea/pull/29430

---
*Sponsored by Kithara Software GmbH*

3 weeks agoFix absolute-date (#32375)
wxiaoguang [Wed, 30 Oct 2024 09:50:19 +0000 (17:50 +0800)]
Fix absolute-date (#32375)

3 weeks agoFix undefined errors on Activity page (#32378)
cloudchamb3r [Wed, 30 Oct 2024 06:48:13 +0000 (15:48 +0900)]
Fix undefined errors on Activity page (#32378)

close #32377

Co-authored-by: Giteabot <teabot@gitea.io>
3 weeks agoAdd new [lfs_client].BATCH_SIZE and [server].LFS_MAX_BATCH_SIZE config settings....
Royce Remer [Wed, 30 Oct 2024 05:41:55 +0000 (22:41 -0700)]
Add new [lfs_client].BATCH_SIZE and [server].LFS_MAX_BATCH_SIZE config settings. (#32307)

This contains two backwards-compatible changes:
* in the lfs http_client, the number of lfs oids requested per batch is
loaded from lfs_client#BATCH_SIZE and defaulted to the previous value of
20
* in the lfs server/service, the max number of lfs oids allowed in a
batch api request is loaded from server#LFS_MAX_BATCH_SIZE and defaults
to 'nil' which equates to the previous behavior of 'infinite'

This fixes #32306

---------

Signed-off-by: Royce Remer <royceremer@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
3 weeks agoremove unused call to $.HeadRepo in view_title template (#32317)
Rowan Bohde [Wed, 30 Oct 2024 05:12:48 +0000 (00:12 -0500)]
remove unused call to $.HeadRepo in view_title template (#32317)

This is only populated in
[`ParseCompareInfo`](https://github.com/search?q=repo%3Ago-gitea%2Fgitea%20%20.Data%5B%22HeadRepo%22%5D&type=code)
which is called in two handlers:

*
[`CompareAndPullRequestPost`](https://github.com/go-gitea/gitea/blob/9206fbb55fd28f21720072fce6a36cc22277934c/routers/web/repo/pull.go#L1246)
- a JSON post handler that doesn't render templates
*
[`CompareDiff`](https://github.com/go-gitea/gitea/blob/9206fbb55fd28f21720072fce6a36cc22277934c/routers/web/repo/compare.go#L706)
- which can render `diff/box.tmpl` and `diff/compare.tmpl`

3 weeks agoFix clean tmp dir (#32360)
Lunny Xiao [Tue, 29 Oct 2024 16:27:03 +0000 (09:27 -0700)]
Fix clean tmp dir (#32360)

Try to fix #31792

Credit to @jeroenlaylo
Copied from
https://github.com/go-gitea/gitea/issues/31792#issuecomment-2311920520

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
3 weeks agoOptimize branch protection rule loading (#32280)
6543 [Tue, 29 Oct 2024 14:43:47 +0000 (15:43 +0100)]
Optimize branch protection rule loading (#32280)

before if it was nonglob each load would try to glob it and the check
that is not glob ... now we only do that once and no future loading will
trigger it

---
*Sponsored by Kithara Software GmbH*

3 weeks agoSuggestions for issues (#32327)
Anbraten [Tue, 29 Oct 2024 09:20:49 +0000 (10:20 +0100)]
Suggestions for issues (#32327)

closes #16872

3 weeks agoMigrate vue components to setup (#32329)
Anbraten [Mon, 28 Oct 2024 20:15:05 +0000 (21:15 +0100)]
Migrate vue components to setup (#32329)

Migrated a handful Vue components to the `setup` syntax using
composition api as it has better Typescript support and is becoming the
new default in the Vue ecosystem.

- [x] ActionRunStatus.vue
- [x] ActivityHeatmap.vue
- [x] ContextPopup.vue
- [x] DiffFileList.vue
- [x] DiffFileTree.vue
- [x] DiffFileTreeItem.vue
- [x] PullRequestMergeForm.vue
- [x] RepoActivityTopAuthors.vue
- [x] RepoCodeFrequency.vue
- [x] RepoRecentCommits.vue
- [x] ScopedAccessTokenSelector.vue

Left some larger components untouched for now to not go to crazy in this
single PR:
- [ ] DiffCommitSelector.vue
- [ ] RepoActionView.vue
- [ ] RepoContributors.vue
- [ ] DashboardRepoList.vue
- [ ] RepoBranchTagSelector.vue

3 weeks agoFix db engine (#32351)
wxiaoguang [Sun, 27 Oct 2024 22:48:07 +0000 (06:48 +0800)]
Fix db engine (#32351)

Fix #32349

3 weeks agoRefactor the DB migration system slightly (#32344)
wxiaoguang [Sun, 27 Oct 2024 11:54:35 +0000 (19:54 +0800)]
Refactor the DB migration system slightly (#32344)

Introduce "idNumber" for each migration, and clarify the difference
between the migration ID number and database version.

4 weeks agoFix broken image when editing comment with non-image attachments (#32319)
yp05327 [Wed, 23 Oct 2024 15:39:10 +0000 (00:39 +0900)]
Fix broken image when editing comment with non-image attachments (#32319)

Fix #32316

4 weeks agoFix disable 2fa bug (#32320)
Lunny Xiao [Wed, 23 Oct 2024 06:41:00 +0000 (14:41 +0800)]
Fix disable 2fa bug (#32320)

4 weeks agoUpgrade rollup to 4.24.0 (#32312)
Lunny Xiao [Wed, 23 Oct 2024 05:00:32 +0000 (13:00 +0800)]
Upgrade rollup to 4.24.0 (#32312)

4 weeks agoUpgrade vue to 3.5.12 (#32311)
Lunny Xiao [Wed, 23 Oct 2024 04:55:17 +0000 (12:55 +0800)]
Upgrade vue to 3.5.12 (#32311)

4 weeks agoMake admins adhere to branch protection rules (#32248)
Tim [Wed, 23 Oct 2024 04:39:43 +0000 (06:39 +0200)]
Make admins adhere to branch protection rules (#32248)

This introduces a new flag `BlockAdminMergeOverride` on the branch
protection rules that prevents admins/repo owners from bypassing branch
protection rules and merging without approvals or failing status checks.

Fixes #17131

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Giteabot <teabot@gitea.io>
4 weeks agoPrevent from submitting issue/comment on uploading (#32263)
박상철 [Wed, 23 Oct 2024 02:48:04 +0000 (11:48 +0900)]
Prevent from submitting issue/comment on uploading (#32263)

fix #32262

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Giteabot <teabot@gitea.io>
4 weeks agoAdd warn log when deleting inactive users (#32318)
Lunny Xiao [Wed, 23 Oct 2024 01:28:28 +0000 (09:28 +0800)]
Add warn log when deleting inactive users (#32318)

Add log for the problem #31480

4 weeks agoAdd `DISABLE_ORGANIZATIONS_PAGE` and `DISABLE_CODE_PAGE` settings for explore pages...
Zettat123 [Tue, 22 Oct 2024 05:09:19 +0000 (13:09 +0800)]
Add `DISABLE_ORGANIZATIONS_PAGE` and `DISABLE_CODE_PAGE` settings for explore pages and fix an issue related to user search (#32288)

These settings can allow users to only display the repositories explore page.

Thanks to yp05327 and wxiaoguang !

---------

Co-authored-by: Giteabot <teabot@gitea.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
4 weeks agochore: fix some function names in comment (#32300)
wangjingcun [Tue, 22 Oct 2024 00:41:05 +0000 (08:41 +0800)]
chore: fix some function names in comment (#32300)

fix some function names in comment

4 weeks agoAPI: enhance SearchIssues swagger docs (#32208)
6543 [Sat, 19 Oct 2024 20:11:56 +0000 (22:11 +0200)]
API: enhance SearchIssues swagger docs (#32208)

this will result in better api clients generated out of the openapi docs
... for SearchIssues

---
*Sponsored by Kithara Software GmbH*

4 weeks agoUpdate github.com/go-enry/go-enry to v2.9.1 (#32295)
YR Chen [Sat, 19 Oct 2024 12:51:55 +0000 (20:51 +0800)]
Update github.com/go-enry/go-enry to v2.9.1 (#32295)

`go-enry` v2.9.1 includes latest file patterns from Linguist, which can
identify more generated file type, eg. `pdm.lock`.

5 weeks agoAlways update expiration time when creating an artifact (#32281)
Zettat123 [Thu, 17 Oct 2024 09:05:38 +0000 (17:05 +0800)]
Always update expiration time when creating an artifact (#32281)

Fix #32256

5 weeks agoAdd `gh-access-token` flag into backport script (#32283)
cloudchamb3r [Thu, 17 Oct 2024 05:43:48 +0000 (14:43 +0900)]
Add `gh-access-token` flag into backport script (#32283)

The current backport script does not have github access token flag.
This patch will be useful when encountered rate limit issue.

5 weeks agoWarn users when they try to use a non-root-url to sign in/up (#32272)
wxiaoguang [Thu, 17 Oct 2024 02:28:51 +0000 (10:28 +0800)]
Warn users when they try to use a non-root-url to sign in/up (#32272)

5 weeks agoFix null errors on conversation holder (#32258) (#32266)
cloudchamb3r [Wed, 16 Oct 2024 12:39:47 +0000 (21:39 +0900)]
Fix null errors on conversation holder (#32258) (#32266)

fix #32258

Errors in the issue was due to unhandled null check. so i fixed it.

### Detailed description for Issue & Fix
To reproduce that issue, the comment must be deleted on Conversation
tab.
#### Before Delete
<img width="1032" alt="image"
src="https://github.com/user-attachments/assets/72df61ba-7db6-44c9-bebc-ca1178dd27f1">

#### After Delete (AS-IS)
<img width="1010" alt="image"
src="https://github.com/user-attachments/assets/36fa537e-4f8e-4535-8d02-e538c50f0dd8">

gitea already have remove logic for `timeline-item-group`, but because
of null ref exception the later logic that removes `timeline-item-group`
could be not be called correctly.

5 weeks agoSupport requested_reviewers data in comment webhook events (#26178)
谈笑风生间 [Wed, 16 Oct 2024 09:10:05 +0000 (17:10 +0800)]
Support requested_reviewers data in comment webhook events (#26178)

close #25833

Currently, the information for "requested_reviewers" is only included in
the webhook event for reviews. I would like to suggest adding this
information to the webhook event for "PullRequest comment" as well, as
they both pertain to the "PullRequest" event.

Also, The reviewer information for the Pull Request is not displayed
when it is approved or rejected.

5 weeks agoMake `owner/repo/pulls` handlers use "PR reader" permission (#32254)
wxiaoguang [Tue, 15 Oct 2024 06:47:07 +0000 (14:47 +0800)]
Make `owner/repo/pulls` handlers use "PR reader" permission (#32254)

Fix #32253 (partially)

5 weeks agomake `show stats` work when only one file changed (#32244)
a1012112796 [Mon, 14 Oct 2024 21:23:20 +0000 (05:23 +0800)]
make `show stats` work when only one file changed (#32244)

fix https://github.com/go-gitea/gitea/issues/32226

in https://github.com/go-gitea/gitea/pull/27775 , it do some changes to
only show diff file tree when more than one file changed. But looks it
also break the `diff-file-list` logic, which looks not expected change.
so try fix it.

/cc @silverwind

example view:

![image](https://github.com/user-attachments/assets/281e9c4f-a269-4d36-94eb-a132058aea87)

Signed-off-by: a1012112796 <1012112796@qq.com>
5 weeks agoUpdate scheduled tasks even if changes are pushed by "ActionsUser" (#32246)
Zettat123 [Sun, 13 Oct 2024 20:28:32 +0000 (04:28 +0800)]
Update scheduled tasks even if changes are pushed by "ActionsUser" (#32246)

Fix #32219

---------

Co-authored-by: delvh <dev.lh@web.de>
5 weeks agoSupport migrating GitHub/GitLab PR draft status (#32242)
Zettat123 [Sun, 13 Oct 2024 19:58:13 +0000 (03:58 +0800)]
Support migrating GitHub/GitLab PR draft status (#32242)

Resolve #32196

5 weeks agoOnly rename a user when they should receive a different name (#32247)
Lunny Xiao [Sun, 13 Oct 2024 03:13:55 +0000 (11:13 +0800)]
Only rename a user when they should receive a different name (#32247)

Fix #31996

5 weeks agoFix dropdown content overflow (#31610)
charles [Sun, 13 Oct 2024 02:43:43 +0000 (10:43 +0800)]
Fix dropdown content overflow (#31610)

close #31602

![圖片](https://github.com/go-gitea/gitea/assets/30816317/43722917-bc5e-4e06-b0de-db52552a20df)

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
6 weeks agoMake git push options accept short name (#32245)
wxiaoguang [Sat, 12 Oct 2024 05:42:10 +0000 (13:42 +0800)]
Make git push options accept short name (#32245)

Just like what most CLI parsers do: `--opt` means `opt=true`

Then users could use `-o force-push` as `-o force-push=true`

6 weeks agoAllow code search by filename (#32210)
Bruno Sofiato [Fri, 11 Oct 2024 23:35:04 +0000 (20:35 -0300)]
Allow code search by filename (#32210)

This is a large and complex PR, so let me explain in detail its changes.

First, I had to create new index mappings for Bleve and ElasticSerach as
the current ones do not support search by filename. This requires Gitea
to recreate the code search indexes (I do not know if this is a breaking
change, but I feel it deserves a heads-up).

I've used [this
approach](https://www.elastic.co/guide/en/elasticsearch/reference/7.17/analysis-pathhierarchy-tokenizer.html)
to model the filename index. It allows us to efficiently search for both
the full path and the name of a file. Bleve, however, does not support
this out-of-box, so I had to code a brand new [token
filter](https://blevesearch.com/docs/Token-Filters/) to generate the
search terms.

I also did an overhaul in the `indexer_test.go` file. It now asserts the
order of the expected results (this is important since matches based on
the name of a file are more relevant than those based on its content).
I've added new test scenarios that deal with searching by filename. They
use a new repo included in the Gitea fixture.

The screenshot below depicts how Gitea shows the search results. It
shows results based on content in the same way as the current version
does. In matches based on the filename, the first seven lines of the
file contents are shown (BTW, this is how GitHub does it).

![image](https://github.com/user-attachments/assets/9d938d86-1a8d-4f89-8644-1921a473e858)

Resolves #32096

---------

Signed-off-by: Bruno Sofiato <bruno.sofiato@gmail.com>
6 weeks agoAllow maintainers to view and edit files of private repos when "Allow maintainers...
Zettat123 [Fri, 11 Oct 2024 19:08:19 +0000 (03:08 +0800)]
Allow maintainers to view and edit files of private repos when "Allow maintainers to edit" is enabled (#32215)

Fix #31539

6 weeks agoUse per package global lock for container uploads instead of memory lock (#31860)
Lunny Xiao [Fri, 11 Oct 2024 07:37:49 +0000 (15:37 +0800)]
Use per package global lock for container uploads instead of memory lock (#31860)

This PR uses a per-package lock instead of a global lock for container
uploads. So that different packages can be uploaded simultaneously.

6 weeks agoFix checkbox bug on private/archive filter (#32236)
cloudchamb3r [Thu, 10 Oct 2024 17:12:27 +0000 (02:12 +0900)]
Fix checkbox bug on private/archive filter (#32236)

fix #32235

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
6 weeks agoImprove the maintainblity of the reserved username list (#32229)
wxiaoguang [Thu, 10 Oct 2024 09:04:42 +0000 (17:04 +0800)]
Improve the maintainblity of the reserved username list (#32229)

6 weeks agoMove admin routers from /admin to /-/admin (#32189)
Lunny Xiao [Thu, 10 Oct 2024 04:56:49 +0000 (12:56 +0800)]
Move admin routers from /admin to /-/admin (#32189)

Resolve #32181

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
6 weeks agoRefactor CSRF token (#32216)
wxiaoguang [Thu, 10 Oct 2024 03:48:21 +0000 (11:48 +0800)]
Refactor CSRF token (#32216)

6 weeks ago[skip ci] Updated translations via Crowdin
GiteaBot [Thu, 10 Oct 2024 00:30:33 +0000 (00:30 +0000)]
[skip ci] Updated translations via Crowdin