Skip to content

Commit 0ac1771

Browse files
committed
Merge branch 'main' of https://github.com/go-gitea/gitea into feature-jwt-asymmetric
2 parents 032c0ab + 9273601 commit 0ac1771

33 files changed

+165
-90
lines changed

models/notification.go

+6-2
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ type FindNotificationOptions struct {
7474
RepoID int64
7575
IssueID int64
7676
Status []NotificationStatus
77+
Source []NotificationSource
7778
UpdatedAfterUnix int64
7879
UpdatedBeforeUnix int64
7980
}
@@ -93,6 +94,9 @@ func (opts *FindNotificationOptions) ToCond() builder.Cond {
9394
if len(opts.Status) > 0 {
9495
cond = cond.And(builder.In("notification.status", opts.Status))
9596
}
97+
if len(opts.Source) > 0 {
98+
cond = cond.And(builder.In("notification.source", opts.Source))
99+
}
96100
if opts.UpdatedAfterUnix != 0 {
97101
cond = cond.And(builder.Gte{"notification.updated_unix": opts.UpdatedAfterUnix})
98102
}
@@ -111,13 +115,13 @@ func (opts *FindNotificationOptions) ToSession(e Engine) *xorm.Session {
111115
return sess
112116
}
113117

114-
func getNotifications(e Engine, options FindNotificationOptions) (nl NotificationList, err error) {
118+
func getNotifications(e Engine, options *FindNotificationOptions) (nl NotificationList, err error) {
115119
err = options.ToSession(e).OrderBy("notification.updated_unix DESC").Find(&nl)
116120
return
117121
}
118122

119123
// GetNotifications returns all notifications that fit to the given options.
120-
func GetNotifications(opts FindNotificationOptions) (NotificationList, error) {
124+
func GetNotifications(opts *FindNotificationOptions) (NotificationList, error) {
121125
return getNotifications(x, opts)
122126
}
123127

models/token.go

+7-1
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,15 @@ func GetAccessTokenBySHA(token string) (*AccessToken, error) {
5757
if token == "" {
5858
return nil, ErrAccessTokenEmpty{}
5959
}
60-
if len(token) < 8 {
60+
// A token is defined as being SHA1 sum these are 40 hexadecimal bytes long
61+
if len(token) != 40 {
6162
return nil, ErrAccessTokenNotExist{token}
6263
}
64+
for _, x := range []byte(token) {
65+
if x < '0' || (x > '9' && x < 'a') || x > 'f' {
66+
return nil, ErrAccessTokenNotExist{token}
67+
}
68+
}
6369
var tokens []AccessToken
6470
lastEight := token[len(token)-8:]
6571
err := x.Table(&AccessToken{}).Where("token_last_eight = ?", lastEight).Find(&tokens)

modules/markup/sanitizer.go

+2-5
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,6 @@ func ReplaceSanitizer() {
5050
sanitizer.policy.AllowURLSchemes(setting.Markdown.CustomURLSchemes...)
5151
}
5252

53-
// Allow keyword markup
54-
sanitizer.policy.AllowAttrs("class").Matching(regexp.MustCompile(`^` + keywordClass + `$`)).OnElements("span")
55-
5653
// Allow classes for anchors
5754
sanitizer.policy.AllowAttrs("class").Matching(regexp.MustCompile(`ref-issue`)).OnElements("a")
5855

@@ -68,8 +65,8 @@ func ReplaceSanitizer() {
6865
// Allow classes for emojis
6966
sanitizer.policy.AllowAttrs("class").Matching(regexp.MustCompile(`emoji`)).OnElements("img")
7067

71-
// Allow icons, emojis, and chroma syntax on span
72-
sanitizer.policy.AllowAttrs("class").Matching(regexp.MustCompile(`^((icon(\s+[\p{L}\p{N}_-]+)+)|(emoji))$|^([a-z][a-z0-9]{0,2})$`)).OnElements("span")
68+
// Allow icons, emojis, chroma syntax and keyword markup on span
69+
sanitizer.policy.AllowAttrs("class").Matching(regexp.MustCompile(`^((icon(\s+[\p{L}\p{N}_-]+)+)|(emoji))$|^([a-z][a-z0-9]{0,2})$|^` + keywordClass + `$`)).OnElements("span")
7370

7471
// Allow data tables
7572
sanitizer.policy.AllowAttrs("class").Matching(regexp.MustCompile(`data-table`)).OnElements("table")

options/locale/locale_bg-BG.ini

+1
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ loading=Зареждане…
8282

8383
error404=Страницата, която се опитвате да достъпите, <strong>не съществува</strong> или <strong>не сте оторизирани</strong> да я достъпите.
8484

85+
8586
[error]
8687

8788
[startpage]

options/locale/locale_cs-CZ.ini

+1-2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ step2=Krok 2:
9393

9494
error404=Stránka, kterou se snažíte zobrazit, buď <strong>neexistuje</strong>, nebo <strong>nemáte oprávnění</strong> ji zobrazit.
9595

96+
9697
[error]
9798
occurred=Nastala chyba
9899
report_message=Pokud jste si jisti, že se jedná o chybu Gitea, prosím vyhledejte problém na <a href="https://github.com/go-gitea/gitea/issues">GitHub</a> a v případě potřeby otevřete nový problém.
@@ -723,7 +724,6 @@ mirror_prune_desc=Odstranit zastaralé reference na vzdálené sledování
723724
mirror_interval=Interval zrcadlení (platné časové jednotky jsou „h“, „m“ a „s“). 0 zakáže automatickou synchronizaci.
724725
mirror_interval_invalid=Interval zrcadlení není platný.
725726
mirror_address=Klonovat z URL
726-
mirror_address_desc=Zadejte nějaké přístupové údaje do sekce Ověření klonování.
727727
mirror_address_url_invalid=Poskytnutá URL je neplatná. Všechny komponenty musíte správně nahradit escape sekvencí.
728728
mirror_address_protocol_invalid=Zadaná URL je neplatná. Mohou být zrcadleny pouze umístění http(s):// nebo git://.
729729
mirror_lfs=Úložiště velkých souborů (LFS)
@@ -786,7 +786,6 @@ form.reach_limit_of_creation_n=Již jste dosáhli svůj limit %d repozitářů.
786786
form.name_reserved=Jméno repozitáře „%s“ je rezervované.
787787
form.name_pattern_not_allowed=Vzor „%s“ není povolený v názvu repozitáře.
788788

789-
need_auth=Ověření klonování
790789
migrate_options=Možnosti migrace
791790
migrate_service=Migrační služba
792791
migrate_options_mirror_helper=Tento repozitář bude <span class="text blue">zrcadlem</span>

options/locale/locale_de-DE.ini

+1-2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ step2=Schritt 2:
9393

9494
error404=Die Seite, die du gerade versuchst aufzurufen, <strong>existiert entweder nicht</strong> oder <strong>du bist nicht berechtigt</strong>, diese anzusehen.
9595

96+
9697
[error]
9798
occurred=Ein Fehler ist aufgetreten
9899
report_message=Wenn du dir sicher bist, dass dies ein Gitea-Fehler ist, suche bitte auf <a href="https://github.com/go-gitea/gitea/issues">GitHub</a> nach diesem Fehler und erstelle gegebenenfalls einen neuen Bugreport.
@@ -723,7 +724,6 @@ mirror_prune_desc=Entferne veraltete remote-tracking Referenzen
723724
mirror_interval=Spiegel-Intervall (gültige Zeiteinheiten sind 'h', 'm', 's'). 0 schaltet die automatische Synchronisierung aus.
724725
mirror_interval_invalid=Das Spiegel-Intervall ist ungültig.
725726
mirror_address=Klonen via URL
726-
mirror_address_desc=Gib alle erforderlichen Anmeldedaten im Abschnitt "Autorisierung klonen" ein.
727727
mirror_address_url_invalid=Die angegebene URL ist ungültig. Achte darauf, alle URL-Komponenten korrekt zu maskieren.
728728
mirror_address_protocol_invalid=Die angegebene URL ist ungültig. Nur Pfade beginnend mit http(s):// oder git:// können gespiegelt werden.
729729
mirror_lfs=Großdatei-Speicher (LFS)
@@ -783,7 +783,6 @@ form.reach_limit_of_creation_n=Du hast bereits dein Limit von %d Repositories er
783783
form.name_reserved=Der Repository-Name „%s“ ist reserviert.
784784
form.name_pattern_not_allowed='%s' ist nicht erlaubt für Repository-Namen.
785785
786-
need_auth=Authentifizierung zum Klonen benötigt
787786
migrate_options=Migrationsoptionen
788787
migrate_service=Migrationsdienst
789788
migrate_options_mirror_helper=Dieses Repository wird ein <span class="text blue">Mirror</span> sein

options/locale/locale_es-ES.ini

+1-2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ step2=Paso 2:
9393

9494
error404=La página a la que está intentando acceder o <strong>no existe</strong> o <strong>no está autorizado</strong> para verla.
9595

96+
9697
[error]
9798
occurred=Se ha producido un error
9899
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.
@@ -723,7 +724,6 @@ mirror_prune_desc=Eliminar referencias de seguimiento de remotes obsoletas
723724
mirror_interval=Intervalo de réplica (Las unidades de tiempo válidas son 'h', 'm', 's'). Pone 0 para deshabilitar la sincronización automática.
724725
mirror_interval_invalid=El intervalo de réplica no es válido.
725726
mirror_address=Clonar desde URL
726-
mirror_address_desc=Agregue las credenciales que sean necesarias en la sección de Autorización de Clonado.
727727
mirror_address_url_invalid=La url proporcionada no es válida. Debe escapar correctamente de todos los componentes de la url.
728728
mirror_address_protocol_invalid=La url proporcionada no es válida. Sólo las ubicaciones http(s):// o git:// pueden ser replicadas desde.
729729
mirror_lfs=Almacenamiento de archivos grande (LFS)
@@ -783,7 +783,6 @@ form.reach_limit_of_creation_n=Ya han alcanzado su límite de repositorios de %d
783783
form.name_reserved=El nombre de repositorio '%s' está reservado.
784784
form.name_pattern_not_allowed=El patrón '%s' no está permitido en un nombre de repositorio.
785785

786-
need_auth=Autorización de clonación
787786
migrate_options=Opciones de migración
788787
migrate_service=Servicio de Migración
789788
migrate_options_mirror_helper=Este repositorio será uno <span class="text blue">replicado</span>

options/locale/locale_fa-IR.ini

+1-2
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ loading=بارگذاری…
8787

8888
error404=صفحه موردنظر شما یا <strong>وجود ندارد</strong> یا <strong>شما دسترسی کافی</strong> برای مشاهده آن را ندارید.
8989

90+
9091
[error]
9192
occurred=خطایی رخ داده است
9293
report_message=اگر شما مطمئن هستیند این مشکل مربوط به یک باگ در Gitea است، لطفا در <a href="https://github.com/go-gitea/gitea/issues">GitHub</a> مشکل را جستجو کنید و در صورت نیاز، یک موضوع جدید باز کنید.
@@ -665,7 +666,6 @@ mirror_prune_desc=حذف منابع پیگیری‌راه‌دور منسوخ
665666
mirror_interval=بازه زمانی قرینه سازی (mirror) با 'h', 'm', 's'. برای غیر فعال کردن همگام سازی خودکار 0 بگذارید.
666667
mirror_interval_invalid=بازه زمانی سازی قرینه نیست.
667668
mirror_address=همسان‌سازی از نشانی
668-
mirror_address_desc=هر گواهینامه لازم را در بخش Clone Authority (مجوز همسان‌سازی) قرار دهید.
669669
mirror_address_url_invalid=Url ارائه شده نامعتبر است. شما باید از تمام اجزای Url صحیح گزیر بزنید.
670670
mirror_address_protocol_invalid=نشانی ارائه شده غیرمعتبر است. فقط استفاده از http(s):// یا git:// می‌تواند قرینه شوند.
671671
mirror_last_synced=آخرین همگام سازی
@@ -704,7 +704,6 @@ archive.pull.nocomment=این مخزن بایگانی شده. شما نمی تو
704704
form.name_reserved=یک مخزن با نام '%s' از قبل وجود دارد.
705705
form.name_pattern_not_allowed=الگوی %s در نام مخزن مجاز نیست.
706706

707-
need_auth=مجوز همسان‌سازی
708707
migrate_items=مولفه های مهاجرت
709708
migrate_items_wiki=دانشنامه
710709
migrate_items_milestones=نقاط عطف

options/locale/locale_fi-FI.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ loading=Ladataan…
8181

8282
error404=Sivu, jota yrität nähdä, joko <strong>ei löydy</strong> tai <strong>et ole oikeutettu</strong> katsomaan sitä.
8383

84+
8485
[error]
8586
occurred=Tapahtui virhe
8687

@@ -523,7 +524,6 @@ template.issue_labels=Ongelmien tunnisteet
523524

524525

525526

526-
need_auth=Kloonauksen valtuutus
527527
migrate_items=Siirrettävät asiat
528528
migrate_items_wiki=Wiki
529529
migrate_items_milestones=Merkkipaalut

options/locale/locale_fr-FR.ini

+1-2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ step2=Étape 2:
9393
9494
error404=La page que vous essayez d'atteindre <strong>n'existe pas</strong> ou <strong>vous n'êtes pas autorisé</strong> à la voir.
9595

96+
9697
[error]
9798
occurred=Une erreur est survenue
9899
report_message=Si vous êtes sûr qu'il s'agit d'un bug de Gitea, cherchez s’il existe un ticket sur <a href="https://github.com/go-gitea/gitea/issues">GitHub</a> et ouvrez-en un nouveau si nécessaire.
@@ -721,7 +722,6 @@ mirror_prune_desc=Supprimer les références externes obsolètes
721722
mirror_interval=Intervalle de synchronisation ('h', 'm', et 's' sont des unités valides), 0 pour désactiver.
722723
mirror_interval_invalid=L'intervalle de synchronisation est invalide.
723724
mirror_address=Cloner depuis une URL
724-
mirror_address_desc=Mettez les identifiants requis dans la section Autorisation de Clonage.
725725
mirror_address_url_invalid=L'url fournie est invalide. Vous devez échapper tous les composants de l'url correctement.
726726
mirror_address_protocol_invalid=L'url fournie est invalide. Seuls les protocoles http(s):// ou git:// peuvent être la source du miroir.
727727
mirror_lfs=Stockage de fichiers volumineux (LFS)
@@ -781,7 +781,6 @@ form.reach_limit_of_creation_n=Vous avez déjà atteint la limite de %d dépôts
781781
form.name_reserved=Le dépôt "%s" a un nom réservé.
782782
form.name_pattern_not_allowed="%s" n'est pas autorisé dans un nom de dépôt.
783783

784-
need_auth=Autorisations de clonage
785784
migrate_options=Options de migration
786785
migrate_service=Service de migration
787786
migrate_options_mirror_helper=Ce dépôt sera un <span class="text blue">miroir</span>

options/locale/locale_hu-HU.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ loading=Betöltés…
8282

8383
error404=Az elérni kívánt oldal vagy <strong>nem létezik</strong>, vagy <strong>nincs jogosultsága</strong> a megtekintéséhez.
8484

85+
8586
[error]
8687
occurred=Probléma lépett fel
8788
report_message=Ha biztos benne, hogy ez egy Gitea hiba, keressen a problémára a <a href="https://github.com/go-gitea/gitea/issues">GitHub-on</a> és hozzon létre új hibajelentést, ha szükséges.
@@ -631,7 +632,6 @@ archive.pull.nocomment=Ez a tároló archíválva van. Nem szólhat hozzá ehhez
631632
form.name_reserved=A tárolónév ('%s') a rendszernek van fenntartva.
632633
form.name_pattern_not_allowed='%s' minta nem engedélyezett tárolónévben.
633634

634-
need_auth=Hitelesítés másoláshoz
635635
migrate_items_wiki=Wiki
636636
migrate_items_milestones=Mérföldkövek
637637
migrate_items_labels=Címkék

options/locale/locale_id-ID.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ loading=Memuat…
8181

8282

8383

84+
8485
[error]
8586

8687
[startpage]
@@ -639,7 +640,6 @@ archive.pull.nocomment=Repositori ini diarsipkan. Anda tidak dapat mengomentari
639640
form.name_reserved=Nama repositori '%s' dicadangkan.
640641
form.name_pattern_not_allowed=Pola '%s' tidak diperbolehkan dalam nama repositori.
641642

642-
need_auth=Otorisasi Kloning
643643
migrate_items=Ihwal Migrasi
644644
migrate_items_wiki=Wiki
645645
migrate_repo=Migrasi Repositori

options/locale/locale_it-IT.ini

+1-2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ step2=Passo 2:
9393
9494
error404=La pagina che stai cercando di raggiungere <strong>non esiste</strong> oppure <strong>non sei autorizzato</strong> a visualizzarla.
9595
96+
9697
[error]
9798
occurred=Si è verificato un errore
9899
report_message=Se sei sicuro che sia un bug di Gitea, cerca il problema su <a href="https://github.com/go-gitea/gitea/issues">GitHub</a> e apri una nuova segnalazione se necessario.
@@ -702,7 +703,6 @@ mirror_prune_desc=Rimuovi i riferimenti di puntamento-remoto obsoleti
702703
mirror_interval=Intervallo del Mirror (unità di tempo valide 'h', 'm', 's'). 0 per disabilitare la sincronizzazione automatica.
703704
mirror_interval_invalid=L'intervallo di aggiornamento dei mirror non è valido.
704705
mirror_address=Clona da URL
705-
mirror_address_desc=Inserisci le credenziali richieste nella scheda Clone sezione Autorizzazione.
706706
mirror_address_url_invalid=L'url fornito non è valido. Devi effettuare l'escape completo tutti i componenti dell'Url.
707707
mirror_address_protocol_invalid=L'url fornito non è valido. Solo dai link http(s):// o git:// possono essere replicate.
708708
mirror_last_synced=Ultima sincronizzazione
@@ -755,7 +755,6 @@ archive.pull.nocomment=Questo repository è archiviato. Non puoi commentare le r
755755
form.name_reserved=Il nome repository '%s' è riservato.
756756
form.name_pattern_not_allowed=Il modello '%s' non è consentito come nome di un repository.
757757

758-
need_auth=Autorizzazione clone
759758
migrate_options=Opzioni di migrazione
760759
migrate_service=Servizio migrazione
761760
migrate_options_mirror_helper=Questo repository sarà un <span class="text blue">mirror</span>

options/locale/locale_ja-JP.ini

+1-2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ step2=ステップ 2:
9393

9494
error404=アクセスしようとしたページは<strong>存在しない</strong>か、閲覧が<strong>許可されていません</strong>。
9595

96+
9697
[error]
9798
occurred=エラーが発生しました
9899
report_message=Giteaのバグが疑われる場合は、<a href="https://github.com/go-gitea/gitea/issues">GitHub</a>でIssueを検索して、見つからなければ新しいIssueを作成してください。
@@ -723,7 +724,6 @@ mirror_prune_desc=不要になった古いリモートトラッキング参照
723724
mirror_interval=ミラー間隔 (有効な時間の単位は'h''m''s')。 自動的な同期を無効にする場合は0。
724725
mirror_interval_invalid=ミラー間隔が不正です。
725726
mirror_address=クローンするURL
726-
mirror_address_desc=必要な資格情報は「クローン時の認証」セクションに設定してください。
727727
mirror_address_url_invalid=入力したURLは無効です。 URLの構成要素はすべて正しくエスケープする必要があります。
728728
mirror_address_protocol_invalid=入力したURLは無効です。 ミラーできるのは、http(s):// または git:// の場所からだけです。
729729
mirror_lfs=Large File Storage (LFS)
@@ -786,7 +786,6 @@ form.reach_limit_of_creation_n=すでにあなたが作成できるリポジト
786786
form.name_reserved=リポジトリ名 '%s' は予約されています。
787787
form.name_pattern_not_allowed='%s' の形式はリポジトリ名に使用できません。
788788

789-
need_auth=クローン時の認証
790789
migrate_options=移行オプション
791790
migrate_service=移行するサービス
792791
migrate_options_mirror_helper=このリポジトリを<span class="text blue">ミラー</span>にする

options/locale/locale_ko-KR.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ loading=불러오는 중...
8181

8282

8383

84+
8485
[error]
8586

8687
[startpage]
@@ -593,7 +594,6 @@ template.topics=토론 주제
593594
form.name_reserved=저장소 이름 '%s'은 예약 되어 있습니다.
594595
form.name_pattern_not_allowed='%s' 패턴은 저장소명으로 허용되지 않습니다.
595596

596-
need_auth=클론시 인증
597597
migrate_items_wiki=위키
598598
migrate_items_issues=이슈
599599
migrate_repo=저장소 마이그레이션

options/locale/locale_lv-LV.ini

+1-2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ step2=Solis 2:
9393

9494
error404=Lapa, ko vēlaties atvērt, <strong>neeksistē</strong> vai arī <strong>Jums nav tiesības</strong> to aplūkot.
9595

96+
9697
[error]
9798
occurred=Radusies kļūda
9899
report_message=Ja esat drošs, ka šī ir Gitea kļūda, pirms ziņošanas <a href="https://github.com/go-gitea/gitea/issues">Gitea problēmās</a> pārliecinieties, ka lietojat jaunāko Gitea versiju un par šādu kļūdu jau nav ziņots.
@@ -717,7 +718,6 @@ mirror_prune_desc=Izdzēst visas ārējās atsauces, kas ārējā repozitorijā
717718
mirror_interval=Spoguļošanas biežums (atļautās laika vienības 'h', 'm' un 's'). Ievadiet 0, lai atslēgtu automātisko spoguļošanu.
718719
mirror_interval_invalid=Nekorekts spoguļošanas intervāls.
719720
mirror_address=Spoguļa adrese
720-
mirror_address_desc=Pieslēgšanās rekvizītus norādiet autorizācijas sadaļā.
721721
mirror_address_url_invalid=Norādītais URL nav korekts. Norādiet visas URL daļas korekti.
722722
mirror_address_protocol_invalid=Norādītais URL nav korekts. Var spoguļot tikai no http(s):// vai git:// adresēm.
723723
mirror_last_synced=Pēdējo reizi sinhronizēts
@@ -773,7 +773,6 @@ form.reach_limit_of_creation_n=Sasniegts Jums noteiktais %d repozitoriju ierobe
773773
form.name_reserved=Repozitorija nosaukums '%s' ir jau rezervēts.
774774
form.name_pattern_not_allowed=Repozitorija nosaukums '%s' nav atļauts.
775775

776-
need_auth=Nepieciešama autorizācija
777776
migrate_options=Migrācijas opcijas
778777
migrate_service=Migrācijas serviss
779778
migrate_options_mirror_helper=Šis repozitorijs būs <span class="text blue">spogulis</span>

options/locale/locale_ml-IN.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ loading=ലഭ്യമാക്കുന്നു…
7575

7676

7777

78+
7879
[error]
7980

8081
[startpage]
@@ -611,7 +612,6 @@ archive.pull.nocomment=ഈ കലവറ ചരിത്രപരമായി ന
611612
form.name_reserved='%s' എന്ന കലവറയുടെ പേരു് മറ്റാവശ്യങ്ങള്‍ക്കായി നീക്കിവച്ചിരിക്കുന്നു.
612613
form.name_pattern_not_allowed=കലവറനാമത്തിൽ '%s' എന്ന ശ്രേണി അനുവദനീയമല്ല.
613614
614-
need_auth=ക്ലോൺ അംഗീകാരിയ്ക്കുക
615615
migrate_items=മൈഗ്രേഷൻ ഇനങ്ങൾ
616616
migrate_items_wiki=വിക്കി
617617
migrate_items_milestones=നാഴികക്കല്ലുകള്‍

0 commit comments

Comments
 (0)