Skip to content

Commit 930d8cb

Browse files
authored
Merge branch 'main' into agit/update
2 parents b99fe1c + 189e740 commit 930d8cb

File tree

28 files changed

+290
-172
lines changed

28 files changed

+290
-172
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ _test
99

1010
# IntelliJ
1111
.idea
12+
.run
1213

1314
# IntelliJ Gateway
1415
.uuid

cmd/web_acme.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,10 @@ func runACME(listenAddr string, m http.Handler) error {
5454
altTLSALPNPort = p
5555
}
5656

57-
magic := &certmagic.Default
58-
magic.Storage = &certmagic.FileStorage{Path: setting.AcmeLiveDirectory}
57+
// FIXME: this path is not right, it uses "AppWorkPath" incorrectly, and writes the data into "AppWorkPath/https"
58+
// Ideally it should migrate to AppDataPath write to "AppDataPath/https"
59+
certmagic.Default.Storage = &certmagic.FileStorage{Path: setting.AcmeLiveDirectory}
60+
magic := certmagic.NewDefault()
5961
// Try to use private CA root if provided, otherwise defaults to system's trust
6062
var certPool *x509.CertPool
6163
if setting.AcmeCARoot != "" {

docker/root/usr/bin/entrypoint

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,5 @@ done
3737
if [ $# -gt 0 ]; then
3838
exec "$@"
3939
else
40-
exec /bin/s6-svscan /etc/s6
40+
exec /usr/bin/s6-svscan /etc/s6
4141
fi

models/issues/pull_list.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,23 @@ func (prs PullRequestList) getRepositoryIDs() []int64 {
166166
return repoIDs.Values()
167167
}
168168

169+
func (prs PullRequestList) SetBaseRepo(baseRepo *repo_model.Repository) {
170+
for _, pr := range prs {
171+
if pr.BaseRepo == nil {
172+
pr.BaseRepo = baseRepo
173+
}
174+
}
175+
}
176+
177+
func (prs PullRequestList) SetHeadRepo(headRepo *repo_model.Repository) {
178+
for _, pr := range prs {
179+
if pr.HeadRepo == nil {
180+
pr.HeadRepo = headRepo
181+
pr.isHeadRepoLoaded = true
182+
}
183+
}
184+
}
185+
169186
func (prs PullRequestList) LoadRepositories(ctx context.Context) error {
170187
repoIDs := prs.getRepositoryIDs()
171188
reposMap := make(map[int64]*repo_model.Repository, len(repoIDs))

models/migrations/migrations.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"code.gitea.io/gitea/models/migrations/v1_21"
2323
"code.gitea.io/gitea/models/migrations/v1_22"
2424
"code.gitea.io/gitea/models/migrations/v1_23"
25+
"code.gitea.io/gitea/models/migrations/v1_24"
2526
"code.gitea.io/gitea/models/migrations/v1_6"
2627
"code.gitea.io/gitea/models/migrations/v1_7"
2728
"code.gitea.io/gitea/models/migrations/v1_8"
@@ -369,6 +370,9 @@ func prepareMigrationTasks() []*migration {
369370
newMigration(309, "Improve Notification table indices", v1_23.ImproveNotificationTableIndices),
370371
newMigration(310, "Add Priority to ProtectedBranch", v1_23.AddPriorityToProtectedBranch),
371372
newMigration(311, "Add TimeEstimate to Issue table", v1_23.AddTimeEstimateColumnToIssueTable),
373+
374+
// Gitea 1.23.0-rc0 ends at migration ID number 311 (database version 312)
375+
newMigration(312, "Add DeleteBranchAfterMerge to AutoMerge", v1_24.AddDeleteBranchAfterMergeForAutoMerge),
372376
}
373377
return preparedMigrations
374378
}

models/migrations/v1_24/v312.go

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// Copyright 2024 The Gitea Authors. All rights reserved.
2+
// SPDX-License-Identifier: MIT
3+
4+
package v1_24 //nolint
5+
6+
import (
7+
"xorm.io/xorm"
8+
)
9+
10+
type pullAutoMerge struct {
11+
DeleteBranchAfterMerge bool
12+
}
13+
14+
// TableName return database table name for xorm
15+
func (pullAutoMerge) TableName() string {
16+
return "pull_auto_merge"
17+
}
18+
19+
func AddDeleteBranchAfterMergeForAutoMerge(x *xorm.Engine) error {
20+
return x.Sync(new(pullAutoMerge))
21+
}

models/pull/automerge.go

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,14 @@ import (
1515

1616
// AutoMerge represents a pull request scheduled for merging when checks succeed
1717
type AutoMerge struct {
18-
ID int64 `xorm:"pk autoincr"`
19-
PullID int64 `xorm:"UNIQUE"`
20-
DoerID int64 `xorm:"INDEX NOT NULL"`
21-
Doer *user_model.User `xorm:"-"`
22-
MergeStyle repo_model.MergeStyle `xorm:"varchar(30)"`
23-
Message string `xorm:"LONGTEXT"`
24-
CreatedUnix timeutil.TimeStamp `xorm:"created"`
18+
ID int64 `xorm:"pk autoincr"`
19+
PullID int64 `xorm:"UNIQUE"`
20+
DoerID int64 `xorm:"INDEX NOT NULL"`
21+
Doer *user_model.User `xorm:"-"`
22+
MergeStyle repo_model.MergeStyle `xorm:"varchar(30)"`
23+
Message string `xorm:"LONGTEXT"`
24+
DeleteBranchAfterMerge bool
25+
CreatedUnix timeutil.TimeStamp `xorm:"created"`
2526
}
2627

2728
// TableName return database table name for xorm
@@ -49,7 +50,7 @@ func IsErrAlreadyScheduledToAutoMerge(err error) bool {
4950
}
5051

5152
// ScheduleAutoMerge schedules a pull request to be merged when all checks succeed
52-
func ScheduleAutoMerge(ctx context.Context, doer *user_model.User, pullID int64, style repo_model.MergeStyle, message string) error {
53+
func ScheduleAutoMerge(ctx context.Context, doer *user_model.User, pullID int64, style repo_model.MergeStyle, message string, deleteBranchAfterMerge bool) error {
5354
// Check if we already have a merge scheduled for that pull request
5455
if exists, _, err := GetScheduledMergeByPullID(ctx, pullID); err != nil {
5556
return err
@@ -58,10 +59,11 @@ func ScheduleAutoMerge(ctx context.Context, doer *user_model.User, pullID int64,
5859
}
5960

6061
_, err := db.GetEngine(ctx).Insert(&AutoMerge{
61-
DoerID: doer.ID,
62-
PullID: pullID,
63-
MergeStyle: style,
64-
Message: message,
62+
DoerID: doer.ID,
63+
PullID: pullID,
64+
MergeStyle: style,
65+
Message: message,
66+
DeleteBranchAfterMerge: deleteBranchAfterMerge,
6567
})
6668
return err
6769
}

options/locale/locale_cs-CZ.ini

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@ confirm_delete_selected=Potvrdit odstranění všech vybraných položek?
145145

146146
name=Název
147147
value=Hodnota
148+
readme=Readme
148149

149150
filter=Filtr
150151
filter.clear=Vymazat filtr
@@ -243,6 +244,7 @@ license_desc=Vše je na <a target="_blank" rel="noopener noreferrer" href="%[1]s
243244

244245
[install]
245246
install=Instalace
247+
installing_desc=Probíhá instalace, čekejte prosím...
246248
title=Výchozí konfigurace
247249
docker_helper=Pokud spouštíte Gitea v Dockeru, přečtěte si <a target="_blank" rel="noopener noreferrer" href="%s">dokumentaci</a>, než budete měnit jakákoliv nastavení.
248250
require_db_desc=Gitea requires MySQL, PostgreSQL, MSSQL, SQLite3 or TiDB (MySQL protocol).
@@ -459,6 +461,7 @@ authorize_application=Autorizovat aplikaci
459461
authorize_redirect_notice=Budete přesměrováni na %s, pokud autorizujete tuto aplikaci.
460462
authorize_application_created_by=Tuto aplikaci vytvořil %s.
461463
authorize_application_description=Pokud povolíte přístup, bude moci přistupovat a zapisovat do všech vašich informací o účtu včetně soukromých repozitářů a organizací.
464+
authorize_application_with_scopes=S rozsahy působnosti: %s
462465
authorize_title=Autorizovat „%s“ pro přístup k vašemu účtu?
463466
authorization_failed=Autorizace selhala
464467
authorization_failed_desc=Autorizace selhala, protože jsme detekovali neplatný požadavek. Kontaktujte prosím správce aplikace, kterou jste se pokoušeli autorizovat.
@@ -765,6 +768,7 @@ uploaded_avatar_not_a_image=Nahraný soubor není obrázek.
765768
uploaded_avatar_is_too_big=Nahraný soubor (%d KiB) přesahuje maximální velikost (%d KiB).
766769
update_avatar_success=Vaše avatar byl aktualizován.
767770
update_user_avatar_success=Uživatelův avatar byl aktualizován.
771+
cropper_prompt=Před uložením můžete obrázek upravit. Upravený obrázek bude uložen jako PNG.
768772

769773
change_password=Aktualizovat heslo
770774
old_password=Stávající heslo
@@ -1012,6 +1016,9 @@ new_repo_helper=Repozitář obsahuje všechny projektové soubory, včetně hist
10121016
owner=Vlastník
10131017
owner_helper=Některé organizace se nemusejí v seznamu zobrazit kvůli maximálnímu dosaženému počtu repozitářů.
10141018
repo_name=Název repozitáře
1019+
repo_name_profile_public_hint=.profile je speciální repozitář, který můžete použít k přidání souboru README.md do svého veřejného profilu organizace, který je viditelný pro každého. Ujistěte se, že je veřejný, a pro začátek jej inicializujte pomocí README v adresáři profilu.
1020+
repo_name_profile_private_hint=.profile-private je speciální repozitář, který můžete použít k přidání souboru README.md do profilu člena organizace, který je viditelný pouze pro členy organizace. Ujistěte se, že je soukromý, a pro začátek jej inicializujte pomocí README v adresáři profilu.
1021+
repo_name_helper=Dobrá jména repozitářů používají krátká, zapamatovatelná a unikátní klíčová slova. Repozitář s názvem „.profile“ nebo „.profile-private“ lze použít k přidání README.md pro uživatelský/organizační profil.
10151022
repo_size=Velikost repozitáře
10161023
template=Šablona
10171024
template_select=Vyberte šablonu.
@@ -1030,6 +1037,8 @@ fork_to_different_account=Rozštěpit na jiný účet
10301037
fork_visibility_helper=Viditelnost rozštěpeného repozitáře nemůže být změněna.
10311038
fork_branch=Větev, která má být klonována pro fork
10321039
all_branches=Všechny větve
1040+
view_all_branches=Zobrazit všechny větve
1041+
view_all_tags=Zobrazit všechny značky
10331042
fork_no_valid_owners=Tento repozitář nemůže být rozštěpen, protože neexistují žádní platní vlastníci.
10341043
fork.blocked_user=Nelze rozštěpit repozitář, protože jste blokováni majitelem repozitáře.
10351044
use_template=Použít tuto šablonu
@@ -1041,6 +1050,8 @@ generate_repo=Generovat repozitář
10411050
generate_from=Generovat z
10421051
repo_desc=Popis
10431052
repo_desc_helper=Zadejte krátký popis (volitelné)
1053+
repo_no_desc=Nebyl uveden žádný popis
1054+
repo_lang=Jazyky
10441055
repo_gitignore_helper=Vyberte šablony .gitignore.
10451056
repo_gitignore_helper_desc=Vyberte soubory, které nechcete sledovat ze seznamu šablon pro běžné jazyky. Typické artefakty generované nástroji pro sestavení každého jazyka jsou ve výchozím stavu součástí .gitignore.
10461057
issue_labels=Štítky úkolů
@@ -1102,6 +1113,7 @@ delete_preexisting_success=Smazány nepřijaté soubory v %s
11021113
blame_prior=Zobrazit blame před touto změnou
11031114
blame.ignore_revs=Ignorování revizí v <a href="%s">.git-blame-ignorerevs</a>. Klikněte zde <a href="%s">pro obejití</a> a zobrazení normálního pohledu blame.
11041115
blame.ignore_revs.failed=Nepodařilo se ignorovat revize v <a href="%s">.git-blame-ignore-revs</a>.
1116+
user_search_tooltip=Zobrazí maximálně 30 uživatelů
11051117

11061118
tree_path_not_found_commit=Cesta %[1]s v commitu %[2]s neexistuje
11071119
tree_path_not_found_branch=Cesta %[1]s ve větvi %[2]s neexistuje
@@ -1223,6 +1235,7 @@ create_new_repo_command=Vytvořit nový repozitář na příkazové řádce
12231235
push_exist_repo=Nahrání existujícího repozitáře z příkazové řádky
12241236
empty_message=Tento repozitář nemá žádný obsah.
12251237
broken_message=Data gitu, která jsou základem tohoto repozitáře, nelze číst. Kontaktujte správce této instance nebo smažte tento repositář.
1238+
no_branch=Tento repozitář nemá žádné větve.
12261239

12271240
code=Zdrojový kód
12281241
code.desc=Přístup ke zdrojovým kódům, souborům, commitům a větvím.
@@ -1520,6 +1533,8 @@ issues.filter_assignee=Zpracovatel
15201533
issues.filter_assginee_no_select=Všichni zpracovatelé
15211534
issues.filter_assginee_no_assignee=Bez zpracovatele
15221535
issues.filter_poster=Autor
1536+
issues.filter_user_placeholder=Hledat uživatele
1537+
issues.filter_user_no_select=Všichni uživatelé
15231538
issues.filter_type=Typ
15241539
issues.filter_type.all_issues=Všechny úkoly
15251540
issues.filter_type.assigned_to_you=Přiřazené vám
@@ -1664,12 +1679,25 @@ issues.delete.title=Smazat tento úkol?
16641679
issues.delete.text=Opravdu chcete tento úkol smazat? (Tím se trvale odstraní veškerý obsah. Pokud jej hodláte archivovat, zvažte raději jeho uzavření.)
16651680

16661681
issues.tracker=Sledování času
1667-
1682+
issues.timetracker_timer_start=Spustit časovač
1683+
issues.timetracker_timer_stop=Zastavit časovač
1684+
issues.timetracker_timer_discard=Zahodit časovač
1685+
issues.timetracker_timer_manually_add=Přidat čas
1686+
1687+
issues.time_estimate_set=Nastavit odhadovaný čas
1688+
issues.time_estimate_display=Odhad: %s
1689+
issues.change_time_estimate_at=změnil/a odhad času na <b>%s</b> %s
1690+
issues.remove_time_estimate_at=odstranil/a odhad času %s
1691+
issues.time_estimate_invalid=Formát odhadu času je neplatný
1692+
issues.start_tracking_history=započal/a práci %s
16681693
issues.tracker_auto_close=Časovač se automaticky zastaví po zavření tohoto úkolu
16691694
issues.tracking_already_started=`Již jste spustili sledování času na <a href="%s">jiném úkolu</a>!`
1695+
issues.stop_tracking_history=pracoval/a <b>%s</b> %s
16701696
issues.cancel_tracking_history=`zrušil/a sledování času %s`
16711697
issues.del_time=Odstranit tento časový záznam
1698+
issues.add_time_history=přidal/a strávený čas <b>%s</b> %s
16721699
issues.del_time_history=`odstranil/a strávený čas %s`
1700+
issues.add_time_manually=Přidat čas ručně
16731701
issues.add_time_hours=Hodiny
16741702
issues.add_time_minutes=Minuty
16751703
issues.add_time_sum_to_small=Čas nebyl zadán.
@@ -1922,6 +1950,9 @@ pulls.delete.title=Odstranit tento pull request?
19221950
pulls.delete.text=Opravdu chcete tento pull request smazat? (Tím se trvale odstraní veškerý obsah. Pokud jej hodláte archivovat, zvažte raději jeho uzavření.)
19231951

19241952
pulls.recently_pushed_new_branches=Nahráli jste větev <strong>%[1]s</strong> %[2]s
1953+
pulls.upstream_diverging_prompt_behind_1=Tato větev je %[1]d commit pozadu za %[2]s
1954+
pulls.upstream_diverging_prompt_behind_n=Tato větev je %[1]d commitů pozadu za %[2]s
1955+
pulls.upstream_diverging_prompt_base_newer=Hlavní větev %s má nové změny
19251956

19261957
pull.deleted_branch=(odstraněno):%s
19271958
pull.agit_documentation=Prohlédněte si dokumentaci o AGit
@@ -2595,6 +2626,9 @@ diff.image.overlay=Překrytí
25952626
diff.has_escaped=Tento řádek má skryté znaky Unicode
25962627
diff.show_file_tree=Zobrazit souborový strom
25972628
diff.hide_file_tree=Skrýt souborový strom
2629+
diff.submodule_added=Submodul %[1]s přidán v %[2]s
2630+
diff.submodule_deleted=Submodul %[1]s odebrán z %[2]s
2631+
diff.submodule_updated=Submodul %[1]s aktualizován: %[2]s
25982632

25992633
releases.desc=Sledování verzí projektu a souborů ke stažení.
26002634
release.releases=Vydání
@@ -2604,6 +2638,7 @@ release.new_release=Nové vydání
26042638
release.draft=Koncept
26052639
release.prerelease=Předběžná verze
26062640
release.stable=Stabilní
2641+
release.latest=Nejnovější
26072642
release.compare=Porovnat
26082643
release.edit=upravit
26092644
release.ahead.commits=<strong>%d</strong> revizí
@@ -2832,6 +2867,9 @@ teams.invite.title=Byli jste pozváni do týmu <strong>%s</strong> v organizaci
28322867
teams.invite.by=Pozvání od %s
28332868
teams.invite.description=Pro připojení k týmu klikněte na tlačítko níže.
28342869

2870+
view_as_role=Zobrazit jako: %s
2871+
view_as_public_hint=Prohlížíte README jako veřejný uživatel.
2872+
view_as_member_hint=Prohlížíte README jako člen této organizace.
28352873

28362874
[admin]
28372875
maintenance=Údržba
@@ -3502,6 +3540,7 @@ versions=Verze
35023540
versions.view_all=Zobrazit všechny
35033541
dependency.id=ID
35043542
dependency.version=Verze
3543+
search_in_external_registry=Hledat v %s
35053544
alpine.registry=Nastavte tento registr přidáním URL do <code>/etc/apk/repositories</code>:
35063545
alpine.registry.key=Stáhněte si veřejný RSA klíč registru do složky <code>/etc/apk/keys/</code> pro ověření podpisu indexu:
35073546
alpine.registry.info=Vyberte $branch a $repository ze seznamu níže.
@@ -3510,6 +3549,8 @@ alpine.repository=Informace o repozitáři
35103549
alpine.repository.branches=Větve
35113550
alpine.repository.repositories=Repozitáře
35123551
alpine.repository.architectures=Architektury
3552+
arch.registry=Přidejte server se souvisejícím repozitářem a architekturou do <code>/etc/pacman.conf</code>:
3553+
arch.install=Synchronizovat balíček s pacman:
35133554
arch.repository=Informace o repozitáři
35143555
arch.repository.repositories=Repozitáře
35153556
arch.repository.architectures=Architektury
@@ -3692,6 +3733,7 @@ runners.status.active=Aktivní
36923733
runners.status.offline=Offline
36933734
runners.version=Verze
36943735
runners.reset_registration_token=Resetovat registrační token
3736+
runners.reset_registration_token_confirm=Chcete zneplatnit stávající token a vygenerovat nový?
36953737
runners.reset_registration_token_success=Registrační token runneru byl úspěšně obnoven
36963738
36973739
runs.all_workflows=Všechny pracovní postupy
@@ -3724,6 +3766,7 @@ workflow.not_found=Pracovní postup „%s“ nebyl nalezen.
37243766
workflow.run_success=Pracovní postup „%s“ proběhl úspěšně.
37253767
workflow.from_ref=Použít pracovní postup od
37263768
workflow.has_workflow_dispatch=Tento pracovní postup má spouštěč události workflow_dispatch.
3769+
workflow.has_no_workflow_dispatch=Pracovní postup „%s“ memá workflow_dispatch spouštěč.
37273770
37283771
need_approval_desc=Potřebujete schválení pro spuštění pracovních postupů pro rozštěpený pull request.
37293772
@@ -3743,6 +3786,8 @@ variables.creation.success=Proměnná „%s“ byla přidána.
37433786
variables.update.failed=Úprava proměnné se nezdařila.
37443787
variables.update.success=Proměnná byla upravena.
37453788
3789+
logs.always_auto_scroll=Vždy automaticky posouvat logy
3790+
logs.always_expand_running=Vždy rozšířit běžící logy
37463791
37473792
[projects]
37483793
deleted.display_name=Odstraněný projekt

options/locale/locale_pt-PT.ini

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2627,6 +2627,9 @@ diff.image.overlay=Sobrepor
26272627
diff.has_escaped=Esta linha tem caracteres unicode escondidos
26282628
diff.show_file_tree=Mostrar árvore de ficheiros
26292629
diff.hide_file_tree=Esconder árvore de ficheiros
2630+
diff.submodule_added=Submódulo %[1]s adicionado em %[2]s
2631+
diff.submodule_deleted=Submódulo %[1]s eliminado de %[2]s
2632+
diff.submodule_updated=Submódulo %[1]s modificado: %[2]s
26302633

26312634
releases.desc=Acompanhe as versões e as descargas do repositório.
26322635
release.releases=Lançamentos

routers/api/v1/repo/branch.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ func DeleteBranch(ctx *context.APIContext) {
150150
}
151151
}
152152

153-
if err := repo_service.DeleteBranch(ctx, ctx.Doer, ctx.Repo.Repository, ctx.Repo.GitRepo, branchName); err != nil {
153+
if err := repo_service.DeleteBranch(ctx, ctx.Doer, ctx.Repo.Repository, ctx.Repo.GitRepo, branchName, nil); err != nil {
154154
switch {
155155
case git.IsErrBranchNotExist(err):
156156
ctx.NotFound(err)

0 commit comments

Comments
 (0)