Skip to content

Commit 0fae813

Browse files
committed
* 'main' of https://github.com/go-gitea/gitea: show pull link for agit pull request also (go-gitea#18235) [skip ci] Updated translations via Crowdin Add some .ignore entries (go-gitea#18296) Remove unneeded debug messages to stdout. (go-gitea#18298) Handle missing default branch better in owner/repo/branches page (go-gitea#18290) Revert "Prevent possible XSS when using jQuery (go-gitea#18289)" (go-gitea#18293) not show double error response in git hook (go-gitea#18292) Remove accidental debugging in blob_excerpt.tmpl (go-gitea#18287) Prevent possible XSS when using jQuery (go-gitea#18289) Return nicer error if trying to pull from non-existent user (go-gitea#18288) [skip ci] Updated translations via Crowdin docs: mention client_max_body_size affects LFS (go-gitea#18291) Add lockfile-check (go-gitea#18285) Webauthn nits (go-gitea#18284)
2 parents 6a2d9b0 + 43a22c6 commit 0fae813

Some content is hidden

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

48 files changed

+247
-576
lines changed

.ignore

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1-
/vendor
2-
/public/vendor/plugins
1+
*.min.css
2+
*.min.js
33
/modules/options/bindata.go
44
/modules/public/bindata.go
55
/modules/templates/bindata.go
6+
/public/vendor/plugins
7+
/vendor
8+
node_modules

Makefile

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ fmt-check:
292292
checks: checks-frontend checks-backend
293293

294294
.PHONY: checks-frontend
295-
checks-frontend: svg-check
295+
checks-frontend: lockfile-check svg-check
296296

297297
.PHONY: checks-backend
298298
checks-backend: swagger-check swagger-validate
@@ -700,6 +700,17 @@ svg-check: svg
700700
exit 1; \
701701
fi
702702

703+
.PHONY: lockfile-check
704+
lockfile-check:
705+
npm install --package-lock-only
706+
@diff=$$(git diff package-lock.json); \
707+
if [ -n "$$diff" ]; then \
708+
echo "package-lock.json is inconsistent with package.json"; \
709+
echo "Please run 'npm install --package-lock-only' and commit the result:"; \
710+
echo "$${diff}"; \
711+
exit 1; \
712+
fi
713+
703714
.PHONY: update-translations
704715
update-translations:
705716
mkdir -p ./translations

cmd/serv.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ func fail(userMessage, logMessage string, args ...interface{}) error {
9292
if len(logMessage) > 0 {
9393
_ = private.SSHLog(ctx, true, fmt.Sprintf(logMessage+": ", args...))
9494
}
95-
return cli.NewExitError(fmt.Sprintf("Gitea: %s", userMessage), 1)
95+
return cli.NewExitError("", 1)
9696
}
9797

9898
func runServ(c *cli.Context) error {

docs/content/doc/usage/reverse-proxies.en-us.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ This error indicates nginx is configured to restrict the file upload size.
128128

129129
In your nginx config file containing your Gitea proxy directive, find the `location { ... }` block for Gitea and add the line
130130
`client_max_body_size 16M;` to set this limit to 16 megabytes or any other number of choice.
131+
If you use Git LFS, this will also limit the size of the largest file you will be able to push.
131132

132133

133134
## Apache HTTPD

models/auth/webauthn.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ package auth
66

77
import (
88
"context"
9-
"encoding/base64"
9+
"encoding/base32"
1010
"fmt"
1111
"strings"
1212

@@ -94,7 +94,7 @@ type WebAuthnCredentialList []*WebAuthnCredential
9494
func (list WebAuthnCredentialList) ToCredentials() []webauthn.Credential {
9595
creds := make([]webauthn.Credential, 0, len(list))
9696
for _, cred := range list {
97-
credID, _ := base64.RawStdEncoding.DecodeString(cred.CredentialID)
97+
credID, _ := base32.HexEncoding.DecodeString(cred.CredentialID)
9898
creds = append(creds, webauthn.Credential{
9999
ID: credID,
100100
PublicKey: cred.PublicKey,
@@ -164,13 +164,13 @@ func HasWebAuthnRegistrationsByUID(uid int64) (bool, error) {
164164
}
165165

166166
// GetWebAuthnCredentialByCredID returns WebAuthn credential by credential ID
167-
func GetWebAuthnCredentialByCredID(credID string) (*WebAuthnCredential, error) {
168-
return getWebAuthnCredentialByCredID(db.DefaultContext, credID)
167+
func GetWebAuthnCredentialByCredID(userID int64, credID string) (*WebAuthnCredential, error) {
168+
return getWebAuthnCredentialByCredID(db.DefaultContext, userID, credID)
169169
}
170170

171-
func getWebAuthnCredentialByCredID(ctx context.Context, credID string) (*WebAuthnCredential, error) {
171+
func getWebAuthnCredentialByCredID(ctx context.Context, userID int64, credID string) (*WebAuthnCredential, error) {
172172
cred := new(WebAuthnCredential)
173-
if found, err := db.GetEngine(ctx).Where("credential_id = ?", credID).Get(cred); err != nil {
173+
if found, err := db.GetEngine(ctx).Where("user_id = ? AND credential_id = ?", userID, credID).Get(cred); err != nil {
174174
return nil, err
175175
} else if !found {
176176
return nil, ErrWebAuthnCredentialNotExist{CredentialID: credID}
@@ -187,7 +187,7 @@ func createCredential(ctx context.Context, userID int64, name string, cred *weba
187187
c := &WebAuthnCredential{
188188
UserID: userID,
189189
Name: name,
190-
CredentialID: base64.RawStdEncoding.EncodeToString(cred.ID),
190+
CredentialID: base32.HexEncoding.EncodeToString(cred.ID),
191191
PublicKey: cred.PublicKey,
192192
AttestationType: cred.AttestationType,
193193
AAGUID: cred.Authenticator.AAGUID,

models/auth/webauthn_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
package auth
66

77
import (
8-
"encoding/base64"
8+
"encoding/base32"
99
"testing"
1010

1111
"code.gitea.io/gitea/models/unittest"
@@ -61,7 +61,7 @@ func TestCreateCredential(t *testing.T) {
6161
res, err := CreateCredential(1, "WebAuthn Created Credential", &webauthn.Credential{ID: []byte("Test")})
6262
assert.NoError(t, err)
6363
assert.Equal(t, "WebAuthn Created Credential", res.Name)
64-
bs, err := base64.RawStdEncoding.DecodeString(res.CredentialID)
64+
bs, err := base32.HexEncoding.DecodeString(res.CredentialID)
6565
assert.NoError(t, err)
6666
assert.Equal(t, []byte("Test"), bs)
6767

models/migrations/migrations.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -368,6 +368,8 @@ var migrations = []Migration{
368368
NewMigration("Add authorize column to team_unit table", addAuthorizeColForTeamUnit),
369369
// v207 -> v208
370370
NewMigration("Add webauthn table and migrate u2f data to webauthn", addWebAuthnCred),
371+
// v208 -> v209
372+
NewMigration("Use base32.HexEncoding instead of base64 encoding for cred ID as it is case insensitive", useBase32HexForCredIDInWebAuthnCredential),
371373
}
372374

373375
// GetCurrentDBVersion returns the current db version

models/migrations/v208.go

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
// Copyright 2021 The Gitea Authors. All rights reserved.
2+
// Use of this source code is governed by a MIT-style
3+
// license that can be found in the LICENSE file.
4+
5+
package migrations
6+
7+
import (
8+
"encoding/base32"
9+
"encoding/base64"
10+
11+
"xorm.io/xorm"
12+
)
13+
14+
func useBase32HexForCredIDInWebAuthnCredential(x *xorm.Engine) error {
15+
16+
// Create webauthnCredential table
17+
type webauthnCredential struct {
18+
ID int64 `xorm:"pk autoincr"`
19+
CredentialID string `xorm:"INDEX"`
20+
}
21+
if err := x.Sync2(&webauthnCredential{}); err != nil {
22+
return err
23+
}
24+
25+
var start int
26+
regs := make([]*webauthnCredential, 0, 50)
27+
for {
28+
err := x.OrderBy("id").Limit(50, start).Find(&regs)
29+
if err != nil {
30+
return err
31+
}
32+
33+
for _, reg := range regs {
34+
credID, _ := base64.RawStdEncoding.DecodeString(reg.CredentialID)
35+
reg.CredentialID = base32.HexEncoding.EncodeToString(credID)
36+
37+
_, err := x.Update(reg)
38+
if err != nil {
39+
return err
40+
}
41+
}
42+
43+
if len(regs) < 50 {
44+
break
45+
}
46+
start += 50
47+
regs = regs[:0]
48+
}
49+
50+
return nil
51+
}

modules/markup/common/footnote.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ package common
1010
import (
1111
"bytes"
1212
"fmt"
13-
"os"
1413
"strconv"
1514
"unicode"
1615

@@ -415,7 +414,6 @@ func (r *FootnoteHTMLRenderer) RegisterFuncs(reg renderer.NodeRendererFuncRegist
415414
func (r *FootnoteHTMLRenderer) renderFootnoteLink(w util.BufWriter, source []byte, node ast.Node, entering bool) (ast.WalkStatus, error) {
416415
if entering {
417416
n := node.(*FootnoteLink)
418-
n.Dump(source, 0)
419417
is := strconv.Itoa(n.Index)
420418
_, _ = w.WriteString(`<sup id="fnref:`)
421419
_, _ = w.Write(n.Name)
@@ -431,7 +429,6 @@ func (r *FootnoteHTMLRenderer) renderFootnoteLink(w util.BufWriter, source []byt
431429
func (r *FootnoteHTMLRenderer) renderFootnoteBackLink(w util.BufWriter, source []byte, node ast.Node, entering bool) (ast.WalkStatus, error) {
432430
if entering {
433431
n := node.(*FootnoteBackLink)
434-
fmt.Fprintf(os.Stdout, "source:\n%s\n", string(n.Text(source)))
435432
_, _ = w.WriteString(` <a href="#fnref:`)
436433
_, _ = w.Write(n.Name)
437434
_, _ = w.WriteString(`" class="footnote-backref" role="doc-backlink">`)
@@ -444,7 +441,6 @@ func (r *FootnoteHTMLRenderer) renderFootnoteBackLink(w util.BufWriter, source [
444441
func (r *FootnoteHTMLRenderer) renderFootnote(w util.BufWriter, source []byte, node ast.Node, entering bool) (ast.WalkStatus, error) {
445442
n := node.(*Footnote)
446443
if entering {
447-
fmt.Fprintf(os.Stdout, "source:\n%s\n", string(n.Text(source)))
448444
_, _ = w.WriteString(`<li id="fn:`)
449445
_, _ = w.Write(n.Name)
450446
_, _ = w.WriteString(`" role="doc-endnote"`)

options/locale/locale_bg-BG.ini

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -29,18 +29,6 @@ twofa=Двуфакторно удостоверяване
2929
twofa_scratch=Двуфакторен скреч код
3030
passcode=Секретен код
3131

32-
u2f_insert_key=Въведете защитен ключ
33-
u2f_sign_in=Натиснете бутона на вашия ключ за сигурност. Ако вашият ключ няма бутон, го изключете и включете отново.
34-
u2f_press_button=Моля, натиснете бутона на вашия ключ…
35-
u2f_use_twofa=Използвате двуфакторен код от телефона си
36-
u2f_error=Вашият ключ за сигурност не може да бъде разпознат.
37-
u2f_unsupported_browser=Вашият браузър не поддържа U2F ключове за сигурност.
38-
u2f_error_1=Възникна грешка. Моля опитайте отново.
39-
u2f_error_2=Моля, уверете се че използвате правилен, шифрован (https://) URL.
40-
u2f_error_3=Сървърът не може да обработи заявката ви.
41-
u2f_error_4=Ключът за сигурност не е одобрен за тази заявка. Моля, уверете се, че ключът не е вече регистриран.
42-
u2f_error_5=Изтекло е вречето за разпознаване на ключа. Презаредете страницата и опитайте отново.
43-
u2f_reload=Презареди
4432

4533
repository=Хранилище
4634
organization=Организация
@@ -376,7 +364,6 @@ twofa=Двуфакторно удостоверяване
376364
account_link=Свързани акаунти
377365
organization=Организации
378366
uid=UID
379-
u2f=Ключове за сигурност
380367

381368
public_profile=Публичен профил
382369
profile_desc=Вашият имейл адрес ще се използва за изпращане на уведомления и други операции.
@@ -477,8 +464,6 @@ or_enter_secret=Или въведете този ключ: %s
477464
then_enter_passcode=И въведете кодът, показан в приложението:
478465
passcode_invalid=Този код е невалиден. Опитайте отново.
479466

480-
u2f_register_key=Добавяне на ключ за сигурност
481-
u2f_nickname=Псевдоним
482467

483468

484469

options/locale/locale_cs-CZ.ini

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -34,18 +34,6 @@ twofa=Dvoufaktorové ověřování
3434
twofa_scratch=Dvoufaktorový pomocný kód
3535
passcode=Přístupový kód
3636

37-
u2f_insert_key=Vložte bezpečnostní klíč
38-
u2f_sign_in=Stiskněte tlačítko na svém zabezpečovacím klíči. Pokud zabezpečovací klíč nemá žádné tlačítko, vložte jej znovu.
39-
u2f_press_button=Stiskněte prosím tlačítko na zabezpečovacím klíči…
40-
u2f_use_twofa=Použít dvoufaktorový kód z vašeho telefonu
41-
u2f_error=Nepodařilo se přečíst váš zabezpečovací klíč.
42-
u2f_unsupported_browser=Váš prohlížeč nepodporuje U2F zabezpečovací klíče.
43-
u2f_error_1=Došlo k neznámé chybě. Opakujte akci.
44-
u2f_error_2=Přesvědčte se, zda používáte správné šifrované (https://) URL.
45-
u2f_error_3=Server nemohl zpracovat váš požadavek.
46-
u2f_error_4=Zabezpečovací klíč není pro tento požadavek povolen. Prosím ujistěte se, zda klíč není již registrován.
47-
u2f_error_5=Požadavek vypršel dříve, než se podařilo přečíst váš klíč. Znovu načtěte tuto stránku a akci opakujte.
48-
u2f_reload=Znovu načíst
4937

5038
repository=Repozitář
5139
organization=Organizace
@@ -481,7 +469,6 @@ twofa=Dvoufaktorové ověřování
481469
account_link=Propojené účty
482470
organization=Organizace
483471
uid=UID
484-
u2f=Bezpečnostní klíče
485472

486473
public_profile=Veřejný profil
487474
biography_placeholder=Řekněte nám něco o sobě
@@ -684,12 +671,6 @@ passcode_invalid=Přístupový kód není platný. Zkuste to znovu.
684671
twofa_enrolled=Ve vašem účtu bylo povoleno dvoufaktorové ověřování. Uložte si pomocný token (%s) na bezpečném místě, protože bude zobrazen pouze jednou!
685672
twofa_failed_get_secret=Nepodařilo se získat tajemství.
686673

687-
u2f_desc=Bezpečnostní klíče jsou hardwarová zařízení obsahující kryptografické klíče. Mohou být použity pro dvoufaktorové ověřování. Bezpečnostní klíče musí podporovat <a rel="noreferrer" href="https://fidoalliance.org/">FIDO U2F</a> standard.
688-
u2f_register_key=Přidat bezpečnostní klíč
689-
u2f_nickname=Přezdívka
690-
u2f_press_button=Stiskněte tlačítko na vašem bezpečnostním klíči pro jeho registraci.
691-
u2f_delete_key=Odebrat bezpečnostní klíč
692-
u2f_delete_key_desc=Pokud odstraníte bezpečnostní klíč, již se s ním nebudete moci přihlásit. Pokračovat?
693674

694675
manage_account_links=Správa propojených účtů
695676
manage_account_links_desc=Tyto externí účty jsou propojeny s vaším Gitea účtem.

options/locale/locale_de-DE.ini

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -34,18 +34,6 @@ twofa=Zwei-Faktor-Authentifizierung
3434
twofa_scratch=Zwei-Faktor-Einmalpasswort
3535
passcode=PIN
3636

37-
u2f_insert_key=Hardware-Sicherheitsschlüssel einstecken
38-
u2f_sign_in=Drücke den Knopf auf deinem Sicherheitsschlüssel. Wenn dein Sicherheitsschlüssel keinen Knopf hat, stecke ihn erneut ein.
39-
u2f_press_button=Drücke den Knopf auf deinem Sicherheitsschlüssel…
40-
u2f_use_twofa=Zwei-Faktor-Authentifizierung via Handy verwenden
41-
u2f_error=Dein Sicherheitsschlüssel konnte nicht gelesen werden.
42-
u2f_unsupported_browser=Dein Browser unterstützt keine U2F-Sicherheitsschlüssel.
43-
u2f_error_1=Ein unbekannter Fehler ist aufgetreten. Bitte versuche es erneut.
44-
u2f_error_2=Bitte stell sicher, dass die korrekte verschlüsselte URL benutzt wird (https://).
45-
u2f_error_3=Der Server konnte deine Anfrage nicht bearbeiten.
46-
u2f_error_4=Für diese Anfrage ist der Sicherheitsschlüssel nicht erlaubt. Bitte stell sicher, dass er nicht bereits registriert ist.
47-
u2f_error_5=Das Zeitlimit wurde erreicht, bevor dein Schlüssel gelesen werden konnte. Bitte lade die Seite erneut.
48-
u2f_reload=Neu laden
4937

5038
repository=Repository
5139
organization=Organisation
@@ -506,7 +494,6 @@ twofa=Zwei-Faktor-Authentifizierung
506494
account_link=Verknüpfte Benutzerkonten
507495
organization=Organisationen
508496
uid=Uid
509-
u2f=Hardware-Sicherheitsschlüssel
510497

511498
public_profile=Öffentliches Profil
512499
biography_placeholder=Erzähle uns noch ein bisschen über dich
@@ -715,12 +702,6 @@ passcode_invalid=Die PIN ist falsch. Probiere es erneut.
715702
twofa_enrolled=Die Zwei-Faktor-Authentifizierung wurde für dein Konto aktiviert. Bewahre dein Einmalpasswort (%s) an einem sicheren Ort auf, da es nicht wieder angezeigt werden wird.
716703
twofa_failed_get_secret=Fehler beim Abrufen des Secrets.
717704
718-
u2f_desc=Sicherheitsschlüssel sind Geräte, die kryptografische Schlüssel beeinhalten. Diese können für die Zwei-Faktor-Authentifizierung verwendet werden. Der Sicherheitsschlüssel muss den Standard „<a href="https://fidoalliance.org/">FIDO U2F</a>“ unterstützen.
719-
u2f_register_key=Sicherheitsschlüssel hinzufügen
720-
u2f_nickname=Nickname
721-
u2f_press_button=Drücke den Knopf auf deinem Sicherheitsschlüssel, um diesen zu registrieren.
722-
u2f_delete_key=Sicherheitsschlüssel entfernen
723-
u2f_delete_key_desc=Wenn du einen Sicherheitsschlüssel entfernst, kannst du dich nicht mehr mit ihm anmelden. Fortfahren?
724705
725706
manage_account_links=Verknüpfte Accounts verwalten
726707
manage_account_links_desc=Diese externen Accounts sind mit deinem Gitea-Account verknüpft.

options/locale/locale_el-GR.ini

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -34,18 +34,6 @@ twofa=Έλεγχος Ταυτότητας Δύο Παραγόντων
3434
twofa_scratch=Κωδικός Μίας Χρήσης Δύο Παραγόντων
3535
passcode=Κωδικός
3636

37-
u2f_insert_key=Εισάγετε το κλειδί ασφαλείας σας
38-
u2f_sign_in=Πατήστε το κουμπί στο κλειδί ασφαλείας. Αν το κλειδί ασφαλείας σας δεν έχει κουμπί, τοποθετήστε το ξανά.
39-
u2f_press_button=Πατήστε το κουμπί στο κλειδί ασφαλείας…
40-
u2f_use_twofa=Χρήση ενός κωδικού δύο παραγόντων από το τηλέφωνό σας
41-
u2f_error=Αδυναμία ανάγνωσης του κλειδιού ασφαλείας.
42-
u2f_unsupported_browser=Ο περιηγητής (browser) σας δεν υποστηρίζει κλειδιά ασφαλείας U2F.
43-
u2f_error_1=Συνέβη ένα άγνωστο σφάλμα. Παρακαλώ προσπαθήστε ξανά.
44-
u2f_error_2=Βεβαιωθείτε ότι χρησιμοποιείτε το σωστό, κρυπτογραφημένο (https://) URL.
45-
u2f_error_3=Ο διακομιστής δεν μπόρεσε να επεξεργαστεί το αίτημά σας.
46-
u2f_error_4=Το κλειδί ασφαλείας δεν επιτρέπεται για αυτό το αίτημα. Βεβαιωθείτε ότι το κλειδί δεν έχει ήδη καταχωρηθεί.
47-
u2f_error_5=Λήξη χρόνου πριν το κλειδί να μπορεί να διαβαστεί. Παρακαλώ ξαναφορτώστε τη σελίδα και προσπαθήστε ξανά.
48-
u2f_reload=Επαναφόρτωση
4937

5038
repository=Αποθετήριο
5139
organization=Οργανισμός
@@ -522,7 +510,6 @@ twofa=Έλεγχος Ταυτότητας Δύο Παραγόντων
522510
account_link=Συνδεδεμένοι Λογαριασμοί
523511
organization=Οργανισμοί
524512
uid=Uid
525-
u2f=Κλειδιά Ασφαλείας
526513

527514
public_profile=Δημόσιο Προφίλ
528515
biography_placeholder=Πείτε μας λίγο για τον εαυτό σας
@@ -743,12 +730,6 @@ passcode_invalid=Ο κωδικός είναι λάθος. Δοκιμάστε ξ
743730
twofa_enrolled=Ο λογαριασμός σας έχει εγγραφεί σε ταυτοποίηση δύο παραγόντων. Αποθηκεύστε το διακριτικό μιας χρήσης (%s) σε ασφαλές μέρος καθώς εμφανίζεται μόνο μία φορά!
744731
twofa_failed_get_secret=Αποτυχία λήψης μυστικού.
745732
746-
u2f_desc=Τα κλειδιά ασφαλείας είναι συσκευές που περιέχουν κρυπτογραφικά κλειδιά. Μπορούν να χρησιμοποιηθούν για ταυτοποίηση δύο παραγόντων. Τα κλειδιά ασφαλείας πρέπει να υποστηρίζουν το πρότυπο <a rel="noreferrer" href="https://fidoalliance.org/">FIDO U2F</a>.
747-
u2f_register_key=Προσθήκη Κλειδιού Ασφαλείας
748-
u2f_nickname=Ψευδώνυμο
749-
u2f_press_button=Πίεσε το κουμπί στο κλειδί ασφαλείας για να το καταχωρήσεις.
750-
u2f_delete_key=Αφαίρεση Κλειδιού Ασφαλείας
751-
u2f_delete_key_desc=Αν αφαιρέσετε ένα κλειδί ασφαλείας δεν μπορείτε πλέον να συνδεθείτε με αυτό. Συνέχεια;
752733
753734
manage_account_links=Διαχείριση Συνδεδεμένων Λογαριασμών
754735
manage_account_links_desc=Αυτοί οι εξωτερικοί λογαριασμοί είναι συνδεδεμένοι στον Gitea λογαριασμό σας.

options/locale/locale_en-US.ini

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -748,10 +748,9 @@ passcode_invalid = The passcode is incorrect. Try again.
748748
twofa_enrolled = Your account has been enrolled into two-factor authentication. Store your scratch token (%s) in a safe place as it is only shown once!
749749
twofa_failed_get_secret = Failed to get secret.
750750

751-
webauthn_desc = Security keys are hardware devices containing cryptographic keys. They can be used for two-factor authentication. Security keys must support the <a rel="noreferrer" href="https://w3c.github.io/webauthn/#webauthn-authenticator">WebAuthn Authenticator</a> standard.
751+
webauthn_desc = Security keys are hardware devices containing cryptographic keys. They can be used for two-factor authentication. Security keys must support the <a rel="noreferrer" target="_blank" href="https://w3c.github.io/webauthn/#webauthn-authenticator">WebAuthn Authenticator</a> standard.
752752
webauthn_register_key = Add Security Key
753753
webauthn_nickname = Nickname
754-
webauthn_press_button = Press the button on your security key to register it.
755754
webauthn_delete_key = Remove Security Key
756755
webauthn_delete_key_desc = If you remove a security key you can no longer sign in with it. Continue?
757756

0 commit comments

Comments
 (0)