CINXE.COM
Making Weblate more secure and robust
<!DOCTYPE html> <html lang="az" dir="ltr"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link rel="stylesheet" href="/static/CACHE/css/output.7eee1daec0b4.css" type="text/css"> <link rel="stylesheet" href="/static/vendor/font-source/source-sans-3.css"> <link rel="stylesheet" href="/static/vendor/font-source/source-code-pro.css"> <meta name="robots" content="index, follow" /> <title> Making Weblate more secure and robust </title> <meta name="description" content=" Having publicly running web application always brings challenges in terms of security and in generally in handling untrusted data. Security wise Weblate has been always quite good (mostly thanks to using Django which comes with built in protection against many vulnerabilities), but there were always things to improve in input validation or possible information leaks. " /> <meta name="keywords" content="Weblate,Git,gettext,resources,JSON,PO,MO,QTS,CAT,XLIFF,web,crowdsourcing,Tərcümə et" /> <link rel="author" href="mailto:info@weblate.org" /> <meta name="copyright" content="Copyright © Michal Čihař" /> <link rel="image_src" type="image/png" href="/static/weblate-128.png" /> <link rel="icon" type="image/png" sizes="32x32" href="/static/logo-32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/static/logo-16.png"> <link rel="apple-touch-icon" sizes="180x180" href="/static/weblate-180.png" /> <link rel="mask-icon" href="/static/weblate-black.svg" color="#144d3f"> <meta name="msapplication-TileColor" content="#144d3f"> <meta name="msapplication-config" content="/browserconfig.xml"> <link rel="manifest" href="/site.webmanifest"> <meta name="theme-color" content="#144d3f"> <meta property="og:image" content="https://weblate.org/media/images/weblate-html.jpg " /> <meta property="og:url" content="https://weblate.org/az/news/archive/making-weblate-more-secure-and-robust/" /> <meta property="og:title" content=" Making Weblate more secure and robust " /> <meta property="og:site_name" content="Weblate" /> <meta property="og:description" content=" Having publicly running web application always brings challenges in terms of security and in generally in handling untrusted data. Security wise Weblate has been always quite good (mostly thanks to using Django which comes with built in protection against many vulnerabilities), but there were always things to improve in input validation or possible information leaks. " /> <meta property="og:type" content="article" /> <meta property="article:published_time" content="2017-07-21T14:00:00+02:00" /> <meta property="article:author" content="Michal Čihař" /> <meta property="article:section" content="Bildiriş" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@WeblateOrg" /> <meta property="fb:app_id" content="741121112629028" /> <meta property="fb:page_id" content="371217713079025" /> <link rel="alternate" type="application/rss+xml" href="https://weblate.org/feed/" title="Weblate blog feed (RSS)" /> <link rel="alternate" hreflang="ar" href="/ar/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="be" href="/be/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="be-latn" href="/be-latn/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="bg" href="/bg/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="br" href="/br/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="ca" href="/ca/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="cs" href="/cs/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="da" href="/da/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="de" href="/de/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="en" href="/en/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="el" href="/el/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="en-gb" href="/en-gb/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="es" href="/es/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="fi" href="/fi/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="fr" href="/fr/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="fur" href="/fur/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="gl" href="/gl/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="he" href="/he/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="hu" href="/hu/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="hr" href="/hr/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="id" href="/id/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="is" href="/is/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="it" href="/it/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="ja" href="/ja/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="kab" href="/kab/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="kk" href="/kk/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="ko" href="/ko/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="nb" href="/nb/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="nl" href="/nl/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="pl" href="/pl/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="pt" href="/pt/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="pt-br" href="/pt-br/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="ro" href="/ro/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="ru" href="/ru/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="sk" href="/sk/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="sl" href="/sl/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="sq" href="/sq/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="sr" href="/sr/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="sr-latn" href="/sr-latn/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="sv" href="/sv/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="tr" href="/tr/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="uk" href="/uk/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="zh-hans" href="/zh-hans/news/archive/making-weblate-more-secure-and-robust/" /> <link rel="alternate" hreflang="zh-hant" href="/zh-hant/news/archive/making-weblate-more-secure-and-robust/" /> <meta name="google-site-verification" content="SSd77ql2j6xSOlvDHT2pO2r3ZMQQyMVTycyse-l9i6A" /> <meta name="wot-verification" content="b166aac1728babda4ade" /> <meta name="monetization" content="$ilp.uphold.com/ENU7fREdeZi9"> <link href="https://mastodon.social/@nijel" rel="me"> </head> <body class="page light "> <div class="line"></div> <header> <div class="row"> <div class="logo"> <a href="/az/">Weblate</a> </div> <a href="/saml2/login/?next=/az/news/archive/making-weblate-more-secure-and-robust/" class="user-tab user-anonymous"></a> <a href="https://hosted.weblate.org/" class="button border small app" target="_blank">Weblate'ə Gedin!</a> <nav class="main-menu"> <ul> <li class=""> <a href="/az/features/">Özəlliklər</a> </li> <li class=" hide1025"> <a href="/az/download/">Endir</a> </li> <li class=""> <a href="/az/hosting/">Pricing</a> </li> <li class=""> <a href="/az/contribute/">Contribute</a> </li> <li class="menu-light gethelp"> <a href="/az/support/">Kömək almaq</a> </li> <li class="menu-light active hide1025"> <a href="/az/news/">Bloq</a> </li> <li class="menu-light hide890"> <a href="/az/about/">Haqqında</a> </li> <li class="menu-light hide1100"> <a href="https://docs.weblate.org/">Dokumentasiya</a> </li> </ul> </nav> <a href="#" class="menu-show"><span></span><span></span><span></span><span></span>Menu</a> </div> </header> <section class="content"> <div class="row"> <div class="wrap"> <h1 class="section-title bold" lang="en" dir="ltr">Making Weblate more secure and robust</h1> <div class="article big post"> <div class="img"> <a href="/az/news/archive/making-weblate-more-secure-and-robust/"> <img src="/media/images/weblate-html.jpg" /> </a> </div> <div class="content"> <div class="post-links post-links-top"> <span>Paylaş</span> <a href="https://www.linkedin.com/sharing/share-offsite/?url=https://weblate.org/news/archive/making-weblate-more-secure-and-robust/&title=Making Weblate more secure and robust" class="icon icon-in"></a> <a href="https://twitter.com/intent/tweet?text=Making Weblate more secure and robust @WeblateOrg https://weblate.org/news/archive/making-weblate-more-secure-and-robust/" class="icon icon-tw"></a> <a href="https://www.facebook.com/sharer.php?u=https://weblate.org/news/archive/making-weblate-more-secure-and-robust/" class="icon icon-fb"></a> </div> <div class="author"> <div class="avatar"> <img src="https://hosted.weblate.org/avatar/80/nijel.png" /> </div> Michal Čihař <br /> <a href="/az/news/">Bloq</a> → <a href="/az/news/topic/announce/">Bildiriş</a> <br /> 21 İyul 2017 </div> <div lang="en" dir="ltr" class="entry"><p>Having publicly running web application always brings challenges in terms of security and in generally in handling untrusted data. Security wise <a href="https://weblate.org/">Weblate</a> has been always quite good (mostly thanks to using <a href="https://www.djangoproject.com/">Django</a> which comes with built in protection against many vulnerabilities), but there were always things to improve in input validation or possible information leaks.</p> <p>When <a href="https://weblate.org/">Weblate</a> has joined <a href="https://hackerone.com/weblate">HackerOne</a> (see <a href="https://blog.cihar.com/archives/2017/05/22/hackerone-experience-weblate/">our first month experience with it</a>), I was hoping to get some security driven core review, but apparently most people there are focused on black box testing. I can certainly understand that - it's easier to conduct and you need much less knowledge of the tested website to perform this.</p> <p>One big area where reports against Weblate came in was authentication. Originally we were mostly fully relying on default authentication pipeline coming with <a href="https://python-social-auth.readthedocs.io/">Python Social Auth</a>, but that showed some possible security implications and we ended up with having heavily customized authentication pipeline to avoid several risks. Some patches were submitted back, some issues reported, but still we've diverged quite a lot in this area.</p> <p>Second area where scanning was apparently performed, but almost none reports came, was input validation. Thanks to excellent <a href="https://docs.djangoproject.com/en/stable/topics/security/#cross-site-scripting-xss-protection">XSS protection in Django</a> nothing was really found. On the other side this has triggered several internal server errors on our side. At this point I was really happy to have <a href="https://rollbar.com/">Rollbar</a> configured to track all errors happening in the production. Thanks to having all such errors properly recorded and grouped it was really easy to go through them and fix them in our codebase.</p> <p>Most of the related fixes have landed in <a href="https://weblate.org/">Weblate</a> <a href="https://blog.cihar.com/archives/2017/05/17/weblate-214/">2.14</a> and <a href="https://blog.cihar.com/archives/2017/06/30/weblate-215/">2.15</a>, but obviously this is ongoing effort to make <a href="https://weblate.org/">Weblate</a> better with every release.</p></div> </div> <div class="clear"></div> <div class="post-footer"> <div class="post-links"> <h2>Share with friends</h2> <a href="https://www.linkedin.com/sharing/share-offsite/?url=https://weblate.org/news/archive/making-weblate-more-secure-and-robust/&title=Making Weblate more secure and robust" class="icon icon-in"></a> <a href="https://twitter.com/intent/tweet?text=Making Weblate more secure and robust @WeblateOrg https://weblate.org/news/archive/making-weblate-more-secure-and-robust/" class="icon icon-tw"></a> <a href="https://www.facebook.com/sharer.php?u=https://weblate.org/news/archive/making-weblate-more-secure-and-robust/" class="icon icon-fb"></a> </div> <h2>Other topics</h2> <a class="button inline border rev small" href="/az/news/topic/release/">Buraxılış</a> <a class="button inline border rev small" href="/az/news/topic/feature/">Özəlliklər</a> <a class="button inline border rev small" href="/az/news/topic/development/">Tərtibat</a> <a class="button inline border rev small" href="/az/news/topic/localization/">Yerli dil</a> <a class="button inline border rev small" href="/az/news/topic/milestone/">Milestones</a> </div> </div> <div class="related-posts"> <div class="section-title">Related Articles</div> <div class="articles"> <div class="article"> <div class="img"> <a href="/az/news/archive/versions-libre-projects-company/"> <img src="/media/images/GreenDark_kopie_8A4MVog.png" /> </a> </div> <div class="content"> <div class="date">1 İyul 2024</div> <h2> <a href="/az/news/archive/versions-libre-projects-company/" lang="en" dir="ltr">New versions, libre projects, and a company!</a> </h2> <p lang="en" dir="ltr">Long time, no blog, one could say. Let’s mend this and talk all the exciting things that happened for Weblate during this window of radio silence. There are new versions, new plans, new people, and a company!</p> </div> </div> <div class="article"> <div class="img"> <a href="/az/news/archive/we-care-about-you-now-even-better/"> <img src="/media/images/user_w2x.jpg" /> </a> </div> <div class="content"> <div class="date">4 Mart 2021</div> <h2> <a href="/az/news/archive/we-care-about-you-now-even-better/" lang="en" dir="ltr">We care about you. Now even better!</a> </h2> <p lang="en" dir="ltr">Getting your support and all the information about your Weblate services is now easier.</p> </div> </div> <div class="article"> <div class="img"> <a href="/az/news/archive/weblate-2020/"> <img src="/media/images/year_2020_dwnWSzK.jpg" /> </a> </div> <div class="content"> <div class="date">1 Yanvar 2021</div> <h2> <a href="/az/news/archive/weblate-2020/" lang="en" dir="ltr">Weblate achievements in 2020</a> </h2> <p lang="en" dir="ltr">Look back on all things Weblate in 2020</p> </div> </div> </div> <div class="clear"></div> <a href="/az/news/" class="button center">Back to blog</a> </div> </div> </div> </section> <footer> <div class="row"> <a class="f-logo" href="/az/">weblate</a> <div class="footicons"> <a href="https://www.linkedin.com/company/weblate/" class="icon icon-in" title="LinkedIn"></a> <a href="https://twitter.com/WeblateOrg" class="icon icon-tw" title="X"></a> <a rel="me" href="https://fosstodon.org/@weblate" class="icon icon-mastodon" title="Mastodon"></a> <a href="https://www.facebook.com/WeblateOrg" class="icon icon-fb" title="Facebook"></a> <a href="https://github.com/WeblateOrg/weblate" class="icon icon-git" title="GitHub"></a> <!-- <a href="#" class="icon icon-yt"></a> --> </div> <div class="langs"> <a class="open-langs" href="#"> Azərbaycan </a> <div class="langs-list"> <ul> <li > <a href="/ar/news/archive/making-weblate-more-secure-and-robust/">العربية</a> </li> <li class="active"> <a href="/az/news/archive/making-weblate-more-secure-and-robust/">Azərbaycan</a> </li> <li > <a href="/be/news/archive/making-weblate-more-secure-and-robust/">Беларуская</a> </li> <li > <a href="/be-latn/news/archive/making-weblate-more-secure-and-robust/">Biełaruskaja</a> </li> <li > <a href="/bg/news/archive/making-weblate-more-secure-and-robust/">Български</a> </li> <li > <a href="/br/news/archive/making-weblate-more-secure-and-robust/">Brezhoneg</a> </li> <li > <a href="/ca/news/archive/making-weblate-more-secure-and-robust/">Català</a> </li> <li > <a href="/cs/news/archive/making-weblate-more-secure-and-robust/">Čeština</a> </li> <li > <a href="/da/news/archive/making-weblate-more-secure-and-robust/">Dansk</a> </li> <li > <a href="/de/news/archive/making-weblate-more-secure-and-robust/">Deutsch</a> </li> <li > <a href="/en/news/archive/making-weblate-more-secure-and-robust/">English</a> </li> <li > <a href="/el/news/archive/making-weblate-more-secure-and-robust/">Ελληνικά</a> </li> <li > <a href="/en-gb/news/archive/making-weblate-more-secure-and-robust/">English (United Kingdom)</a> </li> <li > <a href="/es/news/archive/making-weblate-more-secure-and-robust/">Español</a> </li> <li > <a href="/fi/news/archive/making-weblate-more-secure-and-robust/">Suomi</a> </li> </ul> <ul> <li > <a href="/fr/news/archive/making-weblate-more-secure-and-robust/">Français</a> </li> <li > <a href="/fur/news/archive/making-weblate-more-secure-and-robust/">Furlan</a> </li> <li > <a href="/gl/news/archive/making-weblate-more-secure-and-robust/">Galego</a> </li> <li > <a href="/he/news/archive/making-weblate-more-secure-and-robust/">עברית</a> </li> <li > <a href="/hu/news/archive/making-weblate-more-secure-and-robust/">Magyar</a> </li> <li > <a href="/hr/news/archive/making-weblate-more-secure-and-robust/">Hrvatski</a> </li> <li > <a href="/id/news/archive/making-weblate-more-secure-and-robust/">Indonesia</a> </li> <li > <a href="/is/news/archive/making-weblate-more-secure-and-robust/">Íslenska</a> </li> <li > <a href="/it/news/archive/making-weblate-more-secure-and-robust/">Italiano</a> </li> <li > <a href="/ja/news/archive/making-weblate-more-secure-and-robust/">日本語</a> </li> <li > <a href="/kab/news/archive/making-weblate-more-secure-and-robust/">Taqbaylit</a> </li> <li > <a href="/kk/news/archive/making-weblate-more-secure-and-robust/">Қазақ тілі</a> </li> <li > <a href="/ko/news/archive/making-weblate-more-secure-and-robust/">한국어</a> </li> <li > <a href="/nb/news/archive/making-weblate-more-secure-and-robust/">Norsk bokmål</a> </li> <li > <a href="/nl/news/archive/making-weblate-more-secure-and-robust/">Nederlands</a> </li> </ul> <ul> <li > <a href="/pl/news/archive/making-weblate-more-secure-and-robust/">Polski</a> </li> <li > <a href="/pt/news/archive/making-weblate-more-secure-and-robust/">Português</a> </li> <li > <a href="/pt-br/news/archive/making-weblate-more-secure-and-robust/">Português brasileiro</a> </li> <li > <a href="/ro/news/archive/making-weblate-more-secure-and-robust/">Română</a> </li> <li > <a href="/ru/news/archive/making-weblate-more-secure-and-robust/">Русский</a> </li> <li > <a href="/sk/news/archive/making-weblate-more-secure-and-robust/">Slovenčina</a> </li> <li > <a href="/sl/news/archive/making-weblate-more-secure-and-robust/">Slovenščina</a> </li> <li > <a href="/sq/news/archive/making-weblate-more-secure-and-robust/">Shqip</a> </li> <li > <a href="/sr/news/archive/making-weblate-more-secure-and-robust/">Српски</a> </li> <li > <a href="/sr-latn/news/archive/making-weblate-more-secure-and-robust/">Srpski</a> </li> <li > <a href="/sv/news/archive/making-weblate-more-secure-and-robust/">Svenska</a> </li> <li > <a href="/tr/news/archive/making-weblate-more-secure-and-robust/">Türkçe</a> </li> <li > <a href="/uk/news/archive/making-weblate-more-secure-and-robust/">Українська</a> </li> <li > <a href="/zh-hans/news/archive/making-weblate-more-secure-and-robust/">简体中文</a> </li> <li > <a href="/zh-hant/news/archive/making-weblate-more-secure-and-robust/">正體中文</a> </li> </ul> <div class="bottom"> → <a href="/az/contribute/#translate">Help translate</a> </div> </div> </div> <nav class="main-menu"> <ul> <li class=""> <a href="/az/features/">Özəlliklər</a> </li> <li class=" hide1025"> <a href="/az/download/">Endir</a> </li> <li class=""> <a href="/az/hosting/">Pricing</a> </li> <li class=""> <a href="/az/contribute/">Contribute</a> </li> <li class=""> <a href="/az/donate/">İanə et(Donate)</a> </li> <li class=""> <a href="/az/careers/">Careers</a> </li> <li class="menu-light gethelp"> <a href="/az/support/">Kömək almaq</a> </li> <li class="menu-light active hide1025"> <a href="/az/news/">Bloq</a> </li> <li class="menu-light hide890"> <a href="/az/about/">Haqqında</a> </li> <li class="menu-light hide1100"> <a href="https://docs.weblate.org/">Dokumentasiya</a> </li> </ul> </nav> <div class="clear"></div> <div class="footer-center"> <a href="https://status.weblate.org/" class="service-status">Xidmət Vəziyyəti</a> </div> <div class="footer-left"> Copyright © <a href="https://cihar.com/">Michal Čihař</a> • <a href="https://docs.weblate.org/en/latest/contributing/license.html">Lisenziyalı GNU GPLv3+</a> </div> <div class="footer-right"> <a href="/az/terms/">Terms</a> • <a href="/az/privacy/">Privacy</a> • <a href="https://vitavalka.com/">Vita Valka</a> tərəfindən dizayn </div> </div> </footer> <section class="mobile-menu"> <div class="logo"> <a href="/az/">Weblate</a> </div> <nav class="main-menu"> <ul> <li class=""> <a href="/az/features/">Özəlliklər</a> </li> <li class=" hide1025"> <a href="/az/download/">Endir</a> </li> <li class=""> <a href="/az/hosting/">Pricing</a> </li> <li class=""> <a href="/az/contribute/">Contribute</a> </li> <li class=""> <a href="/az/donate/">İanə et(Donate)</a> </li> <li class=""> <a href="/az/careers/">Careers</a> </li> <li> <a href="https://shop.spreadshirt.net/weblate/">Merchandise</a> </li> <li class=""> <a href="/az/discover/">Discover</a> </li> <li class="menu-light gethelp"> <a href="/az/support/">Kömək almaq</a> </li> <li class="menu-light active hide1025"> <a href="/az/news/">Bloq</a> </li> <li class="menu-light hide890"> <a href="/az/about/">Haqqında</a> </li> <li class="menu-light hide1100"> <a href="https://docs.weblate.org/">Dokumentasiya</a> </li> <li class="menu-light"> <a href="https://hosted.weblate.org/" target="_blank">Weblate'ə Gedin!</a> </li> </ul> </nav> <div class="langs"> <a class="open-langs" href="#"> Azərbaycan </a> <div class="langs-list"> <ul> <li > <a href="/ar/news/archive/making-weblate-more-secure-and-robust/">العربية</a> </li> <li class="active"> <a href="/az/news/archive/making-weblate-more-secure-and-robust/">Azərbaycan</a> </li> <li > <a href="/be/news/archive/making-weblate-more-secure-and-robust/">Беларуская</a> </li> <li > <a href="/be-latn/news/archive/making-weblate-more-secure-and-robust/">Biełaruskaja</a> </li> <li > <a href="/bg/news/archive/making-weblate-more-secure-and-robust/">Български</a> </li> <li > <a href="/br/news/archive/making-weblate-more-secure-and-robust/">Brezhoneg</a> </li> <li > <a href="/ca/news/archive/making-weblate-more-secure-and-robust/">Català</a> </li> <li > <a href="/cs/news/archive/making-weblate-more-secure-and-robust/">Čeština</a> </li> <li > <a href="/da/news/archive/making-weblate-more-secure-and-robust/">Dansk</a> </li> <li > <a href="/de/news/archive/making-weblate-more-secure-and-robust/">Deutsch</a> </li> <li > <a href="/en/news/archive/making-weblate-more-secure-and-robust/">English</a> </li> <li > <a href="/el/news/archive/making-weblate-more-secure-and-robust/">Ελληνικά</a> </li> <li > <a href="/en-gb/news/archive/making-weblate-more-secure-and-robust/">English (United Kingdom)</a> </li> <li > <a href="/es/news/archive/making-weblate-more-secure-and-robust/">Español</a> </li> <li > <a href="/fi/news/archive/making-weblate-more-secure-and-robust/">Suomi</a> </li> </ul> <ul> <li > <a href="/fr/news/archive/making-weblate-more-secure-and-robust/">Français</a> </li> <li > <a href="/fur/news/archive/making-weblate-more-secure-and-robust/">Furlan</a> </li> <li > <a href="/gl/news/archive/making-weblate-more-secure-and-robust/">Galego</a> </li> <li > <a href="/he/news/archive/making-weblate-more-secure-and-robust/">עברית</a> </li> <li > <a href="/hu/news/archive/making-weblate-more-secure-and-robust/">Magyar</a> </li> <li > <a href="/hr/news/archive/making-weblate-more-secure-and-robust/">Hrvatski</a> </li> <li > <a href="/id/news/archive/making-weblate-more-secure-and-robust/">Indonesia</a> </li> <li > <a href="/is/news/archive/making-weblate-more-secure-and-robust/">Íslenska</a> </li> <li > <a href="/it/news/archive/making-weblate-more-secure-and-robust/">Italiano</a> </li> <li > <a href="/ja/news/archive/making-weblate-more-secure-and-robust/">日本語</a> </li> <li > <a href="/kab/news/archive/making-weblate-more-secure-and-robust/">Taqbaylit</a> </li> <li > <a href="/kk/news/archive/making-weblate-more-secure-and-robust/">Қазақ тілі</a> </li> <li > <a href="/ko/news/archive/making-weblate-more-secure-and-robust/">한국어</a> </li> <li > <a href="/nb/news/archive/making-weblate-more-secure-and-robust/">Norsk bokmål</a> </li> <li > <a href="/nl/news/archive/making-weblate-more-secure-and-robust/">Nederlands</a> </li> </ul> <ul> <li > <a href="/pl/news/archive/making-weblate-more-secure-and-robust/">Polski</a> </li> <li > <a href="/pt/news/archive/making-weblate-more-secure-and-robust/">Português</a> </li> <li > <a href="/pt-br/news/archive/making-weblate-more-secure-and-robust/">Português brasileiro</a> </li> <li > <a href="/ro/news/archive/making-weblate-more-secure-and-robust/">Română</a> </li> <li > <a href="/ru/news/archive/making-weblate-more-secure-and-robust/">Русский</a> </li> <li > <a href="/sk/news/archive/making-weblate-more-secure-and-robust/">Slovenčina</a> </li> <li > <a href="/sl/news/archive/making-weblate-more-secure-and-robust/">Slovenščina</a> </li> <li > <a href="/sq/news/archive/making-weblate-more-secure-and-robust/">Shqip</a> </li> <li > <a href="/sr/news/archive/making-weblate-more-secure-and-robust/">Српски</a> </li> <li > <a href="/sr-latn/news/archive/making-weblate-more-secure-and-robust/">Srpski</a> </li> <li > <a href="/sv/news/archive/making-weblate-more-secure-and-robust/">Svenska</a> </li> <li > <a href="/tr/news/archive/making-weblate-more-secure-and-robust/">Türkçe</a> </li> <li > <a href="/uk/news/archive/making-weblate-more-secure-and-robust/">Українська</a> </li> <li > <a href="/zh-hans/news/archive/making-weblate-more-secure-and-robust/">简体中文</a> </li> <li > <a href="/zh-hant/news/archive/making-weblate-more-secure-and-robust/">正體中文</a> </li> </ul> <div class="bottom"> → <a href="/az/contribute/#translate">Help translate</a> </div> </div> </div> </section> <script src="/static/CACHE/js/output.25ffa7798fc2.js"></script> </body> </html>