Skip to content

Commit dc7a308

Browse files
authored
Merge branch 'main' into lunny/fix_archive
2 parents eb7cbf0 + b81106b commit dc7a308

File tree

25 files changed

+357
-125
lines changed

25 files changed

+357
-125
lines changed

integrations/repo_commits_test.go

+24-14
Original file line numberDiff line numberDiff line change
@@ -73,26 +73,36 @@ func doTestRepoCommitWithStatus(t *testing.T, state string, classes ...string) {
7373

7474
//By SHA
7575
req = NewRequest(t, "GET", "/api/v1/repos/user2/repo1/commits/"+path.Base(commitURL)+"/statuses")
76-
testRepoCommitsWithStatus(t, session.MakeRequest(t, req, http.StatusOK), state)
76+
reqOne := NewRequest(t, "GET", "/api/v1/repos/user2/repo1/commits/"+path.Base(commitURL)+"/status")
77+
testRepoCommitsWithStatus(t, session.MakeRequest(t, req, http.StatusOK), session.MakeRequest(t, reqOne, http.StatusOK), state)
78+
7779
//By Ref
7880
req = NewRequest(t, "GET", "/api/v1/repos/user2/repo1/commits/master/statuses")
79-
testRepoCommitsWithStatus(t, session.MakeRequest(t, req, http.StatusOK), state)
81+
reqOne = NewRequest(t, "GET", "/api/v1/repos/user2/repo1/commits/master/status")
82+
testRepoCommitsWithStatus(t, session.MakeRequest(t, req, http.StatusOK), session.MakeRequest(t, reqOne, http.StatusOK), state)
8083
req = NewRequest(t, "GET", "/api/v1/repos/user2/repo1/commits/v1.1/statuses")
81-
testRepoCommitsWithStatus(t, session.MakeRequest(t, req, http.StatusOK), state)
84+
reqOne = NewRequest(t, "GET", "/api/v1/repos/user2/repo1/commits/v1.1/status")
85+
testRepoCommitsWithStatus(t, session.MakeRequest(t, req, http.StatusOK), session.MakeRequest(t, reqOne, http.StatusOK), state)
8286
}
8387

84-
func testRepoCommitsWithStatus(t *testing.T, resp *httptest.ResponseRecorder, state string) {
88+
func testRepoCommitsWithStatus(t *testing.T, resp, respOne *httptest.ResponseRecorder, state string) {
8589
json := jsoniter.ConfigCompatibleWithStandardLibrary
86-
decoder := json.NewDecoder(resp.Body)
87-
statuses := []*api.CommitStatus{}
88-
assert.NoError(t, decoder.Decode(&statuses))
89-
assert.Len(t, statuses, 1)
90-
for _, s := range statuses {
91-
assert.Equal(t, api.CommitStatusState(state), s.State)
92-
assert.Equal(t, setting.AppURL+"api/v1/repos/user2/repo1/statuses/65f1bf27bc3bf70f64657658635e66094edbcb4d", s.URL)
93-
assert.Equal(t, "http://test.ci/", s.TargetURL)
94-
assert.Equal(t, "", s.Description)
95-
assert.Equal(t, "testci", s.Context)
90+
var statuses []*api.CommitStatus
91+
assert.NoError(t, json.Unmarshal(resp.Body.Bytes(), &statuses))
92+
var status api.CombinedStatus
93+
assert.NoError(t, json.Unmarshal(respOne.Body.Bytes(), &status))
94+
assert.NotNil(t, status)
95+
96+
if assert.Len(t, statuses, 1) {
97+
assert.Equal(t, api.CommitStatusState(state), statuses[0].State)
98+
assert.Equal(t, setting.AppURL+"api/v1/repos/user2/repo1/statuses/65f1bf27bc3bf70f64657658635e66094edbcb4d", statuses[0].URL)
99+
assert.Equal(t, "http://test.ci/", statuses[0].TargetURL)
100+
assert.Equal(t, "", statuses[0].Description)
101+
assert.Equal(t, "testci", statuses[0].Context)
102+
103+
assert.Len(t, status.Statuses, 1)
104+
assert.Equal(t, statuses[0], status.Statuses[0])
105+
assert.Equal(t, "65f1bf27bc3bf70f64657658635e66094edbcb4d", status.SHA)
96106
}
97107
}
98108

models/repo_unit.go

+9-8
Original file line numberDiff line numberDiff line change
@@ -91,14 +91,15 @@ func (cfg *IssuesConfig) ToDB() ([]byte, error) {
9191

9292
// PullRequestsConfig describes pull requests config
9393
type PullRequestsConfig struct {
94-
IgnoreWhitespaceConflicts bool
95-
AllowMerge bool
96-
AllowRebase bool
97-
AllowRebaseMerge bool
98-
AllowSquash bool
99-
AllowManualMerge bool
100-
AutodetectManualMerge bool
101-
DefaultMergeStyle MergeStyle
94+
IgnoreWhitespaceConflicts bool
95+
AllowMerge bool
96+
AllowRebase bool
97+
AllowRebaseMerge bool
98+
AllowSquash bool
99+
AllowManualMerge bool
100+
AutodetectManualMerge bool
101+
DefaultDeleteBranchAfterMerge bool
102+
DefaultMergeStyle MergeStyle
102103
}
103104

104105
// FromDB fills up a PullRequestsConfig from serialized format.

modules/structs/repo.go

+2
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,8 @@ type EditRepoOption struct {
172172
AllowManualMerge *bool `json:"allow_manual_merge,omitempty"`
173173
// either `true` to enable AutodetectManualMerge, or `false` to prevent it. `has_pull_requests` must be `true`, Note: In some special cases, misjudgments can occur.
174174
AutodetectManualMerge *bool `json:"autodetect_manual_merge,omitempty"`
175+
// set to `true` to delete pr branch after merge by default
176+
DefaultDeleteBranchAfterMerge *bool `json:"default_delete_branch_after_merge,omitempty"`
175177
// set to a merge style to be used by this repository: "merge", "rebase", "rebase-merge", or "squash". `has_pull_requests` must be `true`.
176178
DefaultMergeStyle *string `json:"default_merge_style,omitempty"`
177179
// set to `true` to archive this repository.

options/locale/locale_de-DE.ini

+5
Original file line numberDiff line numberDiff line change
@@ -326,6 +326,8 @@ hi_user_x=Hallo <b>%s</b>,
326326

327327
activate_account=Bitte aktiviere dein Konto
328328
activate_account.title=%s, bitte aktiviere dein Konto
329+
activate_account.text_1=Hallo <b>%[1]s</b>, danke für deine Registrierung bei %[2]!
330+
activate_account.text_2=Bitte klicke innerhalb von <b>%s</b> auf folgenden Link, um dein Konto zu aktivieren:
329331

330332
activate_email=Bestätige deine E-Mail-Adresse
331333
activate_email.title=%s, bitte verifiziere deine E-Mail-Adresse
@@ -1813,6 +1815,7 @@ settings.event_pull_request_review_desc=Pull-Request genehmigt, abgelehnt oder K
18131815
settings.event_pull_request_sync=Pull-Request synchronisiert
18141816
settings.event_pull_request_sync_desc=Pull-Request synchronisiert.
18151817
settings.branch_filter=Branch-Filter
1818+
settings.branch_filter_desc=Whitelist für Branches für Push-, Erzeugungs- und Löschevents, als glob Pattern beschrieben. Es werden Events für alle Branches gemeldet, falls das Pattern <code>*</code> ist, oder falls es leer ist. Siehe die <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> Dokumentation für die Syntax (Englisch). Beispiele: <code>master</code>, <code>{master,release*}</code>.
18161819
settings.active=Aktiv
18171820
settings.active_helper=Informationen über ausgelöste Ereignisse werden an diese Webhook-URL gesendet.
18181821
settings.add_hook_success=Webhook wurde hinzugefügt.
@@ -1882,6 +1885,7 @@ settings.dismiss_stale_approvals_desc=Wenn neue Commits gepusht werden, die den
18821885
settings.require_signed_commits=Signierte Commits erforderlich
18831886
settings.require_signed_commits_desc=Pushes auf diesen Branch ablehnen, wenn Commits nicht signiert oder nicht überprüfbar sind.
18841887
settings.protect_protected_file_patterns=Geschützte Dateimuster (durch Semikolon getrennt '\;'):
1888+
settings.protect_protected_file_patterns_desc=Geschützte Dateien, die nicht einmal geändert werden können, wenn der Benutzer die Rechte hat, Dateien in diesem Branch hinzuzufügen, zu bearbeiten, oder zu löschen. Verschiedene Pattern können per Semicolon (';') getrennt werden. Siehe die <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> Dokumentation für die Pattern Syntax (Englisch). Beispiele: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
18851889
settings.add_protected_branch=Schutz aktivieren
18861890
settings.delete_protected_branch=Schutz deaktivieren
18871891
settings.update_protect_branch_success=Branch-Schutz für den Branch „%s“ wurde geändert.
@@ -1909,6 +1913,7 @@ settings.tags.protection.allowed.teams=Erlaubte Teams
19091913
settings.tags.protection.allowed.noone=Niemand
19101914
settings.tags.protection.create=Tag schützen
19111915
settings.tags.protection.none=Es gibt keine geschützten Tags.
1916+
settings.tags.protection.pattern.description=Du kannst einen einzigen Namen oder ein globales Schema oder einen regulären Ausdruck verwenden, um mehrere Tags zu schützen. Mehr dazu im <a target="_blank" rel="noopener" href="https://docs.gitea.io/en-us/protected-tags/">geschützte Tags Guide (Englisch)</a>.
19121917
settings.bot_token=Bot-Token
19131918
settings.chat_id=Chat-ID
19141919
settings.matrix.homeserver_url=Homeserver-URL

options/locale/locale_en-US.ini

+1
Original file line numberDiff line numberDiff line change
@@ -1664,6 +1664,7 @@ settings.pulls.allow_rebase_merge_commit = Enable Rebasing with explicit merge c
16641664
settings.pulls.allow_squash_commits = Enable Squashing to Merge Commits
16651665
settings.pulls.allow_manual_merge = Enable Mark PR as manually merged
16661666
settings.pulls.enable_autodetect_manual_merge = Enable autodetect manual merge (Note: In some special cases, misjudgments can occur)
1667+
settings.pulls.default_delete_branch_after_merge = Delete pull request branch after merge by default
16671668
settings.projects_desc = Enable Repository Projects
16681669
settings.admin_settings = Administrator Settings
16691670
settings.admin_enable_health_check = Enable Repository Health Checks (git fsck)

options/locale/locale_es-ES.ini

+31-3
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ add=Añadir
8383
add_all=Añadir todo
8484
remove=Eliminar
8585
remove_all=Eliminar todos
86+
edit=Editar
8687

8788
write=Escribir
8889
preview=Vista previa
@@ -99,6 +100,8 @@ never=Nunca
99100
[error]
100101
occurred=Se ha producido un error
101102
report_message=Si estás seguro de que este es un error de Gitea, por favor busca un problema en <a href="https://github.com/go-gitea/gitea/issues">GitHub</a> y abre un nuevo problema si es necesario.
103+
missing_csrf=Solicitud incorrecta: sin token CSRF
104+
invalid_csrf=Solicitud incorrecta: el token CSRF no es válido
102105

103106
[startpage]
104107
app_desc=Un servicio de Git autoalojado y sin complicaciones
@@ -272,8 +275,8 @@ account_activated=La cuenta ha sido activada
272275
prohibit_login=Ingreso prohibido
273276
prohibit_login_desc=Su cuenta tiene prohibido ingresar al sistema. Por favor contacte con el administrador del sistema.
274277
resent_limit_prompt=Ya ha solicitado recientemente un correo de activación. Por favor, espere 3 minutos y vuelva a intentarlo.
275-
has_unconfirmed_mail=Hola %s, tu correo electrónico (<b>%s</b>) no está confirmado. Si no has recibido un correo de confirmación o necesitas que lo enviemos de nuevo, por favor, haz click en el siguiente botón.
276-
resend_mail=Haz click aquí para reenviar tu correo electrónico de activación
278+
has_unconfirmed_mail=Hola %s, su correo electrónico (<b>%s</b>) no está confirmado. Si no ha recibido un correo de confirmación o necesita que lo enviemos de nuevo, por favor, haga click en el siguiente botón.
279+
resend_mail=Haga click aquí para reenviar su correo electrónico de activación
277280
email_not_associate=Esta dirección de correo electrónico no esta asociada a ninguna cuenta.
278281
send_reset_mail=Enviar correo de recuperación de cuenta
279282
reset_password=Recuperación de cuenta
@@ -302,6 +305,8 @@ openid_connect_desc=La URI OpenID elegida es desconocida. Asóciela a una nueva
302305
openid_register_title=Crear una nueva cuenta
303306
openid_register_desc=La URI OpenID elegida es desconocida. Asóciela a una nueva cuenta aquí.
304307
openid_signin_desc=Introduzca su URI OpenID. Por ejemplo: https://anne.me, bob.openid.org.cn o gnusocial.net/carry.
308+
disable_forgot_password_mail=La recuperación de cuentas está desactivada porque no hay correo electrónico configurado. Por favor, contacte con el administrador del sitio.
309+
disable_forgot_password_mail_admin=La recuperación de cuentas solo está disponible cuando se configura el correo electrónico configurado. Por favor, configure el correo electrónico para permitir la recuperación de cuentas.
305310
email_domain_blacklisted=No puede registrarse con su correo electrónico.
306311
authorize_application=Autorizar aplicación
307312
authorize_redirect_notice=Será redirigido a %s si autoriza esta aplicación.
@@ -321,6 +326,8 @@ hi_user_x=Hola <b>%s</b>,
321326

322327
activate_account=Por favor, active su cuenta
323328
activate_account.title=%s, por favor activa tu cuenta
329+
activate_account.text_1=¡Hola <b>%[1]s</b>, gracias por registrarse en %[2]!
330+
activate_account.text_2=Por favor, haga clic en el siguiente enlace para activar su cuenta dentro de <b>%s</b>:
324331

325332
activate_email=Verifique su correo electrónico
326333
activate_email.title=%s, por favor verifica tu dirección de correo electrónico
@@ -719,6 +726,13 @@ email_notifications.onmention=Enviar correo sólo al ser mencionado
719726
email_notifications.disable=Deshabilitar las notificaciones por correo electrónico
720727
email_notifications.submit=Establecer preferencias de correo electrónico
721728

729+
visibility=Visibilidad del usuario
730+
visibility.public=Público
731+
visibility.public_tooltip=Visible para todos los usuarios
732+
visibility.limited=Limitado
733+
visibility.limited_tooltip=Visible sólo para usuarios conectados
734+
visibility.private=Privado
735+
visibility.private_tooltip=Sólo visible para los miembros de la organización
722736

723737
[repo]
724738
new_repo_helper=Un repositorio contiene todos los archivos del proyecto, incluyendo el historial de revisiones. ¿Ya lo tiene en otro lugar? <a href="%s">Migrar repositorio.</a>
@@ -797,6 +811,7 @@ delete_preexisting_label=Eliminar
797811
delete_preexisting=Eliminar archivos preexistentes
798812
delete_preexisting_content=Eliminar archivos en %s
799813
delete_preexisting_success=Eliminó archivos no adoptados en %s
814+
blame_prior=Ver la culpa antes de este cambio
800815

801816
transfer.accept=Aceptar transferencia
802817
transfer.accept_desc=Transferir a "%s"
@@ -990,7 +1005,7 @@ editor.file_is_a_symlink='%s' es un enlace simbólico. Los enlaces simbólicos n
9901005
editor.filename_is_a_directory=Nombre de archivo '%s' ya se utiliza como un nombre de directorio en este repositorio.
9911006
editor.file_editing_no_longer_exists=El archivo que está editando, '%s', ya no existe en este repositorio.
9921007
editor.file_deleting_no_longer_exists=El archivo que se está eliminando, '%s', ya no existe en este repositorio.
993-
editor.file_changed_while_editing=Desde que comenzó a editar, el contenido del archivo ha sido cambiado. <a target="_blank" rel="noopener noreferrer" href="%s">Clic aquí</a> para ver qué ha cambiado o <strong>presione confirmar de nuevo</strong> para sobrescribir los cambios.
1008+
editor.file_changed_while_editing=Desde que comenzó a editar, el contenido del archivo ha sido cambiado. <a target="_blank" rel="noopener noreferrer" href="%s">Haga clic aquí</a> para ver qué ha cambiado o <strong>presione confirmar de nuevo</strong> para sobrescribir los cambios.
9941009
editor.file_already_exists=Ya existe un archivo con nombre '%s' en este repositorio.
9951010
editor.commit_empty_file_header=Commit un archivo vacío
9961011
editor.commit_empty_file_text=El archivo que estás tratando de commit está vacío. ¿Proceder?
@@ -1870,6 +1885,7 @@ settings.dismiss_stale_approvals_desc=Cuando los nuevos commits que cambien el c
18701885
settings.require_signed_commits=Requiere commits firmados
18711886
settings.require_signed_commits_desc=Rechazar push en esta rama si los commits no están firmados o no son verificables.
18721887
settings.protect_protected_file_patterns=Patrones de archivos protegidos (separados con punto y coma '\;'):
1888+
settings.protect_protected_file_patterns_desc=Archivos protegidos que no están permitidos a ser cambiados directamente incluso si el usuario tiene permiso para agregar, editar o borrar archivos en esta rama. Múltiples patrones pueden separarse usando punto y coma ('\;'). Vea la documentación de <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> para la sintaxis de patrones. Ejemplos: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
18731889
settings.add_protected_branch=Activar protección
18741890
settings.delete_protected_branch=Desactivar protección
18751891
settings.update_protect_branch_success=La protección de la rama '%s' ha sido actualizada.
@@ -1888,6 +1904,16 @@ settings.choose_branch=Elija una rama…
18881904
settings.no_protected_branch=No hay ramas protegidas.
18891905
settings.edit_protected_branch=Editar
18901906
settings.protected_branch_required_approvals_min=Las aprobaciones necesarias no pueden ser negativas.
1907+
settings.tags=Etiquetas
1908+
settings.tags.protection=Protección de etiquetas
1909+
settings.tags.protection.pattern=Patrón de etiquetas
1910+
settings.tags.protection.allowed=Permitido
1911+
settings.tags.protection.allowed.users=Usuarios permitidos
1912+
settings.tags.protection.allowed.teams=Equipos permitidos
1913+
settings.tags.protection.allowed.noone=Ningún
1914+
settings.tags.protection.create=Proteger Etiqueta
1915+
settings.tags.protection.none=No hay etiquetas protegidas.
1916+
settings.tags.protection.pattern.description=Puede usar un solo nombre o un patrón de glob o expresión regular para que coincida con varias etiquetas. Lea más en la guía de etiquetas <a target="_blank" rel="noopener" href="https://docs.gitea.io/en-us/protected-tags/">protegida</a>.
18911917
settings.bot_token=Token del Bot
18921918
settings.chat_id=ID Chat
18931919
settings.matrix.homeserver_url=URL de Homeserver
@@ -1901,6 +1927,7 @@ settings.archive.success=El repositorio ha sido archivado exitosamente.
19011927
settings.archive.error=Ha ocurrido un error al intentar archivar el repositorio. Vea el registro para más detalles.
19021928
settings.archive.error_ismirror=No puede archivar un repositorio replicado.
19031929
settings.archive.branchsettings_unavailable=Los ajustes de rama no están disponibles si el repositorio está archivado.
1930+
settings.archive.tagsettings_unavailable=Los ajustes de las etiquetas no están disponibles si el repositorio está archivado.
19041931
settings.unarchive.button=Desarchivar Repositorio
19051932
settings.unarchive.header=Desarchivar este Repositorio
19061933
settings.unarchive.text=Des-archivar el repositorio restaurará su capacidad de recibir commits y pushes, así como nuevas incidencias y pull-requests.
@@ -2015,6 +2042,7 @@ release.deletion_tag_desc=Eliminará esta etiqueta del repositorio. El contenido
20152042
release.deletion_tag_success=La etiqueta ha sido eliminada.
20162043
release.tag_name_already_exist=Ya existe uno lanzamiento con esta etiqueta.
20172044
release.tag_name_invalid=El nombre de la etiqueta no es válido.
2045+
release.tag_name_protected=El nombre de la etiqueta está protegido.
20182046
release.tag_already_exist=Este nombre de etiqueta ya existe.
20192047
release.downloads=Descargas
20202048
release.download_count=Descargas: %s

options/locale/locale_fr-FR.ini

+2
Original file line numberDiff line numberDiff line change
@@ -1968,8 +1968,10 @@ release.delete_release=Supprimer cette version
19681968
release.delete_tag=Supprimer le tag
19691969
release.deletion=Supprimer cette version
19701970
release.deletion_success=Cette livraison a été supprimée.
1971+
release.deletion_tag_success=L'étiquette a été supprimée.
19711972
release.tag_name_already_exist=Une version avec ce nom de balise existe déjà.
19721973
release.tag_name_invalid=Le nom de balise est invalide.
1974+
release.tag_already_exist=Ce nom d'étiquette existe déjà.
19731975
release.downloads=Téléchargements
19741976
release.download_count=Télécharger: %s
19751977

options/locale/locale_ja-JP.ini

+4
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,8 @@ never=無し
100100
[error]
101101
occurred=エラーが発生しました
102102
report_message=Giteaのバグが疑われる場合は、<a href="https://github.com/go-gitea/gitea/issues">GitHub</a>でIssueを検索して、見つからなければ新しいIssueを作成してください。
103+
missing_csrf=不正なリクエスト: CSRFトークンが不明です
104+
invalid_csrf=不正なリクエスト: CSRFトークンが無効です
103105

104106
[startpage]
105107
app_desc=自分で立てる、超簡単 Git サービス
@@ -324,6 +326,8 @@ hi_user_x=こんにちは、<b>%s</b> さん。
324326

325327
activate_account=あなたのアカウントをアクティベートしてください。
326328
activate_account.title=%s さん、アカウントをアクティベートしてください
329+
activate_account.text_1=こんにちは、<b>%[1]s</b> さん。 %[2]s へのご登録ありがとうございます!
330+
activate_account.text_2=あなたのアカウントを有効化するため、<b>%s</b>以内に次のリンクをクリックしてください:
327331

328332
activate_email=メール アドレスを確認します
329333
activate_email.title=%s さん、メールアドレス確認をお願いします

0 commit comments

Comments
 (0)