Skip to content

Commit 7914f27

Browse files
committed
Merge branch 'main' into mouse-wheel-click-file-tree
2 parents ed23d70 + 6708343 commit 7914f27

File tree

50 files changed

+250
-162
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+250
-162
lines changed

Makefile

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ XGO_PACKAGE ?= src.techknowlogick.com/xgo@latest
3636
GO_LICENSES_PACKAGE ?= github.com/google/go-licenses@v1
3737
GOVULNCHECK_PACKAGE ?= golang.org/x/vuln/cmd/govulncheck@v1
3838
ACTIONLINT_PACKAGE ?= github.com/rhysd/actionlint/cmd/actionlint@v1
39-
GOPLS_PACKAGE ?= golang.org/x/tools/[email protected]
39+
GOPLS_PACKAGE ?= golang.org/x/tools/[email protected]
40+
GOPLS_MODERNIZE_PACKAGE ?= golang.org/x/tools/gopls/internal/analysis/modernize/cmd/[email protected]
4041

4142
DOCKER_IMAGE ?= gitea/gitea
4243
DOCKER_TAG ?= latest
@@ -230,7 +231,7 @@ clean: ## delete backend and integration files
230231
tests/e2e/reports/ tests/e2e/test-artifacts/ tests/e2e/test-snapshots/
231232

232233
.PHONY: fmt
233-
fmt: ## format the Go code
234+
fmt: ## format the Go and template code
234235
@GOFUMPT_PACKAGE=$(GOFUMPT_PACKAGE) $(GO) run build/code-batch-process.go gitea-fmt -w '{file-list}'
235236
$(eval TEMPLATES := $(shell find templates -type f -name '*.tmpl'))
236237
@# strip whitespace after '{{' or '(' and before '}}' or ')' unless there is only
@@ -249,6 +250,19 @@ fmt-check: fmt
249250
exit 1; \
250251
fi
251252

253+
.PHONY: fix
254+
fix: ## apply automated fixes to Go code
255+
$(GO) run $(GOPLS_MODERNIZE_PACKAGE) -fix ./...
256+
257+
.PHONY: fix-check
258+
fix-check: fix
259+
@diff=$$(git diff --color=always $(GO_SOURCES)); \
260+
if [ -n "$$diff" ]; then \
261+
echo "Please run 'make fix' and commit the result:"; \
262+
printf "%s" "$${diff}"; \
263+
exit 1; \
264+
fi
265+
252266
.PHONY: $(TAGS_EVIDENCE)
253267
$(TAGS_EVIDENCE):
254268
@mkdir -p $(MAKE_EVIDENCE_DIR)
@@ -288,7 +302,7 @@ checks: checks-frontend checks-backend ## run various consistency checks
288302
checks-frontend: lockfile-check svg-check ## check frontend files
289303

290304
.PHONY: checks-backend
291-
checks-backend: tidy-check swagger-check fmt-check swagger-validate security-check ## check backend files
305+
checks-backend: tidy-check swagger-check fmt-check fix-check swagger-validate security-check ## check backend files
292306

293307
.PHONY: lint
294308
lint: lint-frontend lint-backend lint-spell ## lint everything
@@ -809,6 +823,7 @@ deps-tools: ## install tool dependencies
809823
$(GO) install $(GOVULNCHECK_PACKAGE) & \
810824
$(GO) install $(ACTIONLINT_PACKAGE) & \
811825
$(GO) install $(GOPLS_PACKAGE) & \
826+
$(GO) install $(GOPLS_MODERNIZE_PACKAGE) & \
812827
wait
813828

814829
node_modules: package-lock.json

models/migrations/v1_22/v294_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
package v1_22 //nolint
55

66
import (
7-
"slices"
87
"testing"
98

109
"code.gitea.io/gitea/models/migrations/base"
@@ -44,7 +43,7 @@ func Test_AddUniqueIndexForProjectIssue(t *testing.T) {
4443
for _, index := range tables[0].Indexes {
4544
if index.Type == schemas.UniqueType {
4645
found = true
47-
slices.Equal(index.Cols, []string{"project_id", "issue_id"})
46+
assert.ElementsMatch(t, index.Cols, []string{"project_id", "issue_id"})
4847
break
4948
}
5049
}

models/packages/package_property.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,8 @@ func DeletePropertyByID(ctx context.Context, propertyID int64) error {
9292
return err
9393
}
9494

95-
// DeletePropertyByName deletes properties by name
96-
func DeletePropertyByName(ctx context.Context, refType PropertyType, refID int64, name string) error {
95+
// DeletePropertiesByName deletes properties by name
96+
func DeletePropertiesByName(ctx context.Context, refType PropertyType, refID int64, name string) error {
9797
_, err := db.GetEngine(ctx).Where("ref_type = ? AND ref_id = ? AND name = ?", refType, refID, name).Delete(&PackageProperty{})
9898
return err
9999
}

modules/actions/workflows.go

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -565,18 +565,12 @@ func matchPullRequestReviewEvent(prPayload *api.PullRequestPayload, evt *jobpars
565565
actions = append(actions, "submitted", "edited")
566566
}
567567

568-
matched := false
569568
for _, val := range vals {
570569
if slices.ContainsFunc(actions, glob.MustCompile(val, '/').Match) {
571-
matched = true
572-
}
573-
if matched {
570+
matchTimes++
574571
break
575572
}
576573
}
577-
if matched {
578-
matchTimes++
579-
}
580574
default:
581575
log.Warn("pull request review event unsupported condition %q", cond)
582576
}
@@ -611,18 +605,12 @@ func matchPullRequestReviewCommentEvent(prPayload *api.PullRequestPayload, evt *
611605
actions = append(actions, "created", "edited")
612606
}
613607

614-
matched := false
615608
for _, val := range vals {
616609
if slices.ContainsFunc(actions, glob.MustCompile(val, '/').Match) {
617-
matched = true
618-
}
619-
if matched {
610+
matchTimes++
620611
break
621612
}
622613
}
623-
if matched {
624-
matchTimes++
625-
}
626614
default:
627615
log.Warn("pull request review comment event unsupported condition %q", cond)
628616
}

modules/packages/content_store.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ func NewContentStore() *ContentStore {
2828
return contentStore
2929
}
3030

31-
// Get gets a package blob
32-
func (s *ContentStore) Get(key BlobHash256Key) (storage.Object, error) {
31+
func (s *ContentStore) OpenBlob(key BlobHash256Key) (storage.Object, error) {
3332
return s.store.Open(KeyToRelativePath(key))
3433
}
3534

modules/public/public.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,5 +110,4 @@ func servePublicAsset(w http.ResponseWriter, req *http.Request, fi os.FileInfo,
110110
}
111111
}
112112
http.ServeContent(w, req, fi.Name(), modtime, content)
113-
return
114113
}

modules/setting/markup.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ func loadMarkupFrom(rootCfg ConfigProvider) {
149149
func newMarkupSanitizer(name string, sec ConfigSection) {
150150
rule, ok := createMarkupSanitizerRule(name, sec)
151151
if ok {
152-
if after, ok0 := strings.CutPrefix(name, "sanitizer."); ok0 {
152+
if after, found := strings.CutPrefix(name, "sanitizer."); found {
153153
names := strings.SplitN(after, ".", 2)
154154
name = names[0]
155155
}

options/locale/locale_uk-UA.ini

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1334,6 +1334,7 @@ editor.new_branch_name_desc=Назва нової гілки…
13341334
editor.cancel=Відмінити
13351335
editor.filename_cannot_be_empty=Назва файлу не може бути порожньою.
13361336
editor.filename_is_invalid=Назва файлу недійсна: "%s".
1337+
editor.commit_email=Електронна пошта коміту
13371338
editor.invalid_commit_email=Адреса електронної пошти для коміту недійсна.
13381339
editor.file_is_a_symlink=`"%s" - це символічне посилання. Символічні посилання не можна редагувати у веб-редакторі`
13391340
editor.filename_is_a_directory=Назва файлу '%s' вже використовується як назва каталогу у цьому сховищі.
@@ -1369,6 +1370,7 @@ commits.signed_by_untrusted_user=Підписаний недовіреним к
13691370
commits.signed_by_untrusted_user_unmatched=Підписано недовіреним користувачем, який не відповідає комітеру
13701371
commits.gpg_key_id=Ідентифікатор GPG ключа
13711372
commits.ssh_key_fingerprint=Відбиток ключа SSH
1373+
commits.view_path=Переглянути в історії
13721374
commits.view_file_diff=Переглянути зміни до цього файлу в цьому коміті
13731375

13741376
commit.revert=Повернути до попереднього стану
@@ -1497,6 +1499,7 @@ issues.filter_project=Проєкт
14971499
issues.filter_project_all=Всі проєкти
14981500
issues.filter_project_none=Проєкт відсутній
14991501
issues.filter_assignee=Виконавець
1502+
issues.filter_assignee_any_assignee=Призначено будь-кому
15001503
issues.filter_poster=Автор
15011504
issues.filter_user_placeholder=Пошук користувачів
15021505
issues.filter_user_no_select=Усі користувачі
@@ -1527,13 +1530,16 @@ issues.action_milestone=Етап
15271530
issues.action_milestone_no_select=Етап відсутній
15281531
issues.action_assignee=Виконавець
15291532
issues.action_assignee_no_select=Немає виконавця
1533+
issues.action_check=Встановити/зняти позначку
1534+
issues.action_check_all=Встановити/зняти позначку з усіх елементів
15301535
issues.opened_by=%[1]s відкрито <a href="%[2]s">%[3]s</a>
15311536
issues.opened_by_fake=%[1]s відкрито користувачем %[2]s
15321537
issues.previous=Попередній
15331538
issues.next=Далі
15341539
issues.open_title=Відкрито
15351540
issues.closed_title=Закрито
15361541
issues.draft_title=Чернетка
1542+
issues.num_comments_1=%d коментар
15371543
issues.num_comments=%d коментарів
15381544
issues.commented_at=`прокоментував(ла) <a href="#%s">%s</a>`
15391545
issues.delete_comment_confirm=Ви впевнені, що хочете видалити цей коментар?
@@ -1542,6 +1548,7 @@ issues.context.quote_reply=Цитувати відповідь
15421548
issues.context.reference_issue=Посилання в новій задачі
15431549
issues.context.edit=Редагувати
15441550
issues.context.delete=Видалити
1551+
issues.close=Закрити задачу
15451552
issues.comment_manually_pull_merged_at=вручну об'єднав(-ла) коміти %[1]s в %[2]s %[3]s
15461553
issues.close_comment_issue=Закрити з коментарем
15471554
issues.reopen_issue=Відкрити знову
@@ -1568,6 +1575,7 @@ issues.role.collaborator=Співавтор
15681575
issues.role.collaborator_helper=Цей користувач був запрошений до співпраці у сховищі.
15691576
issues.role.first_time_contributor=Учасник, який вперше долучився
15701577
issues.role.first_time_contributor_helper=Це перший внесок цього користувача в сховищі.
1578+
issues.role.contributor=Співавтор
15711579
issues.role.contributor_helper=Цей користувач раніше вже вносив зміни до сховища.
15721580
issues.re_request_review=Повторно попросити рецензію
15731581
issues.is_stale=З часу останньої перевірки в цей PR було внесено деякі зміни
@@ -2190,6 +2198,7 @@ settings.webhook.response=Відповідь
21902198
settings.webhook.headers=Заголовки
21912199
settings.webhook.payload=Зміст
21922200
settings.webhook.body=Тіло
2201+
settings.webhook.replay.description=Повторити цей веб-хук.
21932202
settings.githook_edit_desc=Якщо хук неактивний, буде показано зразок вмісту. Якщо залишити вміст порожнім, хук буде вимкнено.
21942203
settings.githook_name=Назва хуку
21952204
settings.githook_content=Зміст хука
@@ -2246,6 +2255,7 @@ settings.event_pull_request_sync=Запит на злиття синхроніз
22462255
settings.event_pull_request_sync_desc=Запит до злиття синхронізовано.
22472256
settings.event_package=Пакет
22482257
settings.branch_filter=Фільтр гілок
2258+
settings.authorization_header=Заголовок авторизації
22492259
settings.active=Активний
22502260
settings.active_helper=Інформацію про викликані події буде надіслано за цією веб-хук URL-адресою.
22512261
settings.add_hook_success=Веб-хук було додано.
@@ -2294,6 +2304,7 @@ settings.protect_disable_push=Заборонити Push
22942304
settings.protect_disable_push_desc=Для цієї гілки буде заборонено виконання push.
22952305
settings.protect_enable_push=Дозволити Push
22962306
settings.protect_enable_push_desc=Будь-хто із правом запису зможе виконувати push для цієї гілки (за виключенням force push).
2307+
settings.protect_enable_merge=Увімкнути об’єднання
22972308
settings.protect_check_status_contexts=Увімкнути перевірку стану
22982309
settings.protect_status_check_patterns=Шаблони перевірки стану:
22992310
settings.protect_status_check_patterns_desc=Введіть шаблони, щоб вказати, які перевірки стану повинні пройти гілки, перш ніж їх буде об'єднано у гілку, що відповідає цьому правилу. Кожен рядок визначає шаблон. Шаблони не можуть бути порожніми.
@@ -2327,6 +2338,8 @@ settings.block_outdated_branch_desc=Об'єднання буде неможли
23272338
settings.block_admin_merge_override=Адміністратори повинні дотримуватися правил захисту гілки
23282339
settings.block_admin_merge_override_desc=Адміністратори повинні дотримуватися правил захисту гілки і не можуть їх обійти.
23292340
settings.default_branch_desc=Обрати типову гілку сховища для запитів на злиття і комітів:
2341+
settings.merge_style_desc=Стилі об'єднання
2342+
settings.default_merge_style_desc=Типовий стиль об'єднання
23302343
settings.choose_branch=Оберіть гілку…
23312344
settings.no_protected_branch=Немає захищених гілок.
23322345
settings.edit_protected_branch=Редагувати
@@ -2348,12 +2361,14 @@ settings.chat_id=ID чату
23482361
settings.matrix.homeserver_url=URL домашньої сторінки
23492362
settings.matrix.room_id=ID кімнати
23502363
settings.matrix.message_type=Тип повідомлення
2364+
settings.visibility.public.button=Зробити публічним
23512365
settings.archive.header=Відправити репозиторій в архів
23522366
settings.archive.success=Сховище успішно заархівовано.
23532367
settings.archive.error=Сталася помилка при спробі архівувати репозиторій. Докладнішу інформацію дивіться у журналі.
23542368
settings.archive.error_ismirror=Неможливо архівувати дзеркальне сховище.
23552369
settings.archive.branchsettings_unavailable=Параметри гілки не доступні, якщо репозиторій архівний.
23562370
settings.archive.tagsettings_unavailable=Параметри міток недоступні, якщо репозиторій архівний.
2371+
settings.unarchive.header=Розархівувати це сховище
23572372
settings.unarchive.success=Сховище успішно розархівовано.
23582373
settings.update_avatar_success=Аватар репозиторію оновлений.
23592374
settings.lfs=LFS
@@ -2437,6 +2452,7 @@ diff.protected=Захищений
24372452
diff.image.side_by_side=Поруч
24382453
diff.image.swipe=Провести пальцем
24392454
diff.image.overlay=Накласти
2455+
diff.has_escaped=Цей рядок містить приховані символи Юнікоду
24402456
diff.show_file_tree=Показати дерево файлів
24412457
diff.hide_file_tree=Сховати дерево файлів
24422458
diff.submodule_added=Підмодуль %[1]s додано в %[2]s
@@ -2749,6 +2765,7 @@ dashboard.resync_all_hooks=Заново синхронізувати хуки п
27492765
dashboard.reinit_missing_repos=Заново ініціалізувати всі відсутні сховища Git'а, для яких існують записи
27502766
dashboard.sync_external_users=Синхронізувати дані зовнішніх користувачів
27512767
dashboard.cleanup_hook_task_table=Очистити таблицю hook_task
2768+
dashboard.cleanup_actions=Очищення ресурсів прострочених дій
27522769
dashboard.server_uptime=Час роботи сервера
27532770
dashboard.current_goroutine=Поточна кількість Goroutines
27542771
dashboard.current_memory_usage=Поточне використання пам'яті
@@ -2778,7 +2795,11 @@ dashboard.total_gc_time=Загальна пауза збирача сміття
27782795
dashboard.total_gc_pause=Загальна пауза збирача сміття (GC)
27792796
dashboard.last_gc_pause=Остання пауза збирача сміття (GC)
27802797
dashboard.gc_times=Кількість запусків збирача сміття (GC)
2798+
dashboard.delete_old_actions=Видалити всі старі дії з бази даних
27812799
dashboard.update_checker=Перевірка оновлень
2800+
dashboard.gc_lfs=Збір сміття мета-об'єктів LFS
2801+
dashboard.cancel_abandoned_jobs=Скасувати покинуті завдання
2802+
dashboard.start_schedule_tasks=Запуск запланованих завдань
27822803
dashboard.sync_branch.started=Розпочато синхронізацію гілок
27832804
dashboard.rebuild_issue_indexer=Перебудувати індексатор задач
27842805
dashboard.sync_repo_licenses=Синхронізувати ліцензії сховища
@@ -2851,6 +2872,7 @@ emails.not_updated=Не вдалось оновити адресу електр
28512872
emails.duplicate_active=Ця адреса електронної пошти вже активна для іншого користувача.
28522873
emails.change_email_header=Редагувати властивості електронної пошти
28532874
emails.change_email_text=Ви впевнені, що хочете оновити адресу електронної пошти?
2875+
emails.delete=Видалити адресу електронної пошти
28542876
emails.delete_desc=Ви впевнені, що хочете видалити адресу електронної пошти?
28552877
emails.deletion_success=Адресу електронної пошти видалено.
28562878
emails.delete_primary_email_error=Ви не можете видалити основну адресу електронної пошти.
@@ -2871,6 +2893,7 @@ repos.issues=Задачі
28712893
repos.size=Розмір
28722894
repos.lfs_size=Розмір LFS
28732895

2896+
packages.package_manage_panel=Керування пакетами
28742897
packages.total_size=Загальний розмір: %s
28752898
packages.unreferenced_size=Розмір без посилань: %s
28762899
packages.cleanup=Очистити прострочені дані
@@ -3393,6 +3416,7 @@ settings.link=Прив'язати пакет до сховища
33933416
settings.link.description=Якщо ви зв'яжете пакет зі сховищем, його буде вказано у списку пакетів сховища.
33943417
settings.link.select=Обрати сховище
33953418
settings.link.button=Оновити посилання на сховище
3419+
settings.link.error=Не вдалося оновити посилання на сховище.
33963420
settings.delete=Видалити пакет
33973421
settings.delete.description=Видалення пакета є остаточним і не може бути скасоване.
33983422
settings.delete.notice=Ви збираєтесь видалити %s (%s). Цю операцію неможливо скасувати, ви впевнені?
@@ -3516,6 +3540,7 @@ logs.always_expand_running=Завжди розгортати поточні жу
35163540
[projects]
35173541
deleted.display_name=Видалений проєкт
35183542
type-1.display_name=Індивідуальний проєкт
3543+
type-2.display_name=Проєкт сховища
35193544
type-3.display_name=Проєкт організації
35203545
enter_fullscreen=Повноекранний режим
35213546
exit_fullscreen=Вийти з повноекранного режиму

routers/api/packages/alpine/alpine.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ func GetRepositoryFile(ctx *context.Context) {
6868
return
6969
}
7070

71-
s, u, pf, err := packages_service.GetFileStreamByPackageVersion(
71+
s, u, pf, err := packages_service.OpenFileForDownloadByPackageVersion(
7272
ctx,
7373
pv,
7474
&packages_service.PackageFileInfo{
@@ -216,7 +216,7 @@ func DownloadPackageFile(ctx *context.Context) {
216216
}
217217
}
218218

219-
s, u, pf, err := packages_service.GetPackageFileStream(ctx, pfs[0])
219+
s, u, pf, err := packages_service.OpenFileForDownload(ctx, pfs[0])
220220
if err != nil {
221221
if errors.Is(err, util.ErrNotExist) {
222222
apiError(ctx, http.StatusNotFound, err)

routers/api/packages/arch/arch.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ func GetPackageOrRepositoryFile(ctx *context.Context) {
239239
return
240240
}
241241

242-
s, u, pf, err := packages_service.GetPackageFileStream(ctx, pfs[0])
242+
s, u, pf, err := packages_service.OpenFileForDownload(ctx, pfs[0])
243243
if err != nil {
244244
if errors.Is(err, util.ErrNotExist) {
245245
apiError(ctx, http.StatusNotFound, err)

0 commit comments

Comments
 (0)