wlc 2.1.0__tar.gz → 2.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {wlc-2.1.0 → wlc-2.2.0}/CHANGES.rst +25 -0
- {wlc-2.1.0 → wlc-2.2.0}/MANIFEST.in +2 -0
- wlc-2.2.0/PKG-INFO +84 -0
- wlc-2.2.0/README.md +45 -0
- wlc-2.2.0/THREAT_MODEL.md +521 -0
- {wlc-2.1.0 → wlc-2.2.0}/pyproject.toml +35 -15
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_base.py +87 -4
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_config.py +204 -6
- wlc-2.2.0/tests/test_download.py +260 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_errors.py +18 -1
- wlc-2.2.0/tests/test_insecure_ssl.py +103 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_main.py +74 -86
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_urls.py +77 -1
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_wlc.py +88 -5
- {wlc-2.1.0 → wlc-2.2.0}/wlc/client.py +56 -33
- {wlc-2.1.0 → wlc-2.2.0}/wlc/config.py +169 -23
- {wlc-2.1.0 → wlc-2.2.0}/wlc/const.py +1 -1
- {wlc-2.1.0 → wlc-2.2.0}/wlc/http_debug.py +23 -2
- {wlc-2.1.0 → wlc-2.2.0}/wlc/main.py +152 -10
- {wlc-2.1.0 → wlc-2.2.0}/wlc/models.py +1 -1
- wlc-2.2.0/wlc.egg-info/PKG-INFO +84 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc.egg-info/SOURCES.txt +3 -0
- wlc-2.1.0/PKG-INFO +0 -169
- wlc-2.1.0/README.md +0 -130
- wlc-2.1.0/wlc.egg-info/PKG-INFO +0 -169
- {wlc-2.1.0 → wlc-2.2.0}/LICENSE +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/LICENSES/CC0-1.0.txt +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/LICENSES/GPL-3.0-or-later.txt +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/SECURITY.md +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/completion/wlc +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/setup.cfg +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/__init__.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/.weblate +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/categories +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/categories-1 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/changes +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-android +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-android-file +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-android-file--GET--format=zip +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-olderweblate +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate--DELETE-- +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate--PATCH--priority=80 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-changes +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-file +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-file--GET--format=zip +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-lock +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-lock--POST--lock=0 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-lock--POST--lock=1 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-lock--POST--lock=false +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-lock--POST--lock=true +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-repository +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-repository--POST--operation=cleanup +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-repository--POST--operation=commit +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-repository--POST--operation=pull +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-repository--POST--operation=push +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-repository--POST--operation=reset +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-statistics +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-statistics--GET--page=2 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-statistics--GET--page=3 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-translations +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-translations--GET--page=2 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/components-hello-weblate-translations--POST--language_code=nl_BE +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/languages +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/languages--GET--page=2 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/languages--GET--page=3 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/languages--POST--code=tst--name=Test-Language--direction=rtl--plural=number=2--formula=n-!=-1 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects--POST--name=Hello--slug=hello--web=http---example.com---source_language=name=Malayalam--code=ml +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects--POST--name=denied_json--slug=denide_json--web=http---some-weblate-app.com- +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-acl +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-empty +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-empty-components +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello--DELETE-- +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-categories +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-changes +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-components +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-components--POST--3fcd0ab4 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-components--POST--c9c26539 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-languages +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-repository +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-repository--POST--operation=cleanup +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-repository--POST--operation=commit +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-repository--POST--operation=pull +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-repository--POST--operation=push +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-repository--POST--operation=reset +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-hello-statistics +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/projects-invalid +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations--GET--page=2 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations--GET--page=3 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-android-en-units +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-android-en-units--POST--key=test-monolingual--value=-test-me- +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs--DELETE-- +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-changes +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-file +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-file--GET--format=csv +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-file--POST--3748506a +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-file--POST--5c6a101f +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-file--POST--85762547 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-file--POST--90a4957d +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-file--POST--f8672b4c +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-file--POST--fe040a0c +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-repository +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-repository--POST--operation=cleanup +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-repository--POST--operation=commit +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-repository--POST--operation=pull +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-repository--POST--operation=push +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-repository--POST--operation=reset +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-statistics +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-units +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/translations-hello-weblate-cs-units--GET--q=source%3A%3D%22mr%22 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/units +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/units-123 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/units-123--DELETE-- +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/units-123--PATCH--target=-foo---state=30 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/api/units-123--PUT--target=-foo---state=30 +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/mock/project-local-file.pot +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/section +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/weblate.ini +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_data/wlc +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_insecure_http.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_package.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_statistics.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/tests/test_utils.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wl +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc/__init__.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc/base.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc/exceptions.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc/output.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc/py.typed +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc/utils.py +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc.egg-info/dependency_links.txt +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc.egg-info/entry_points.txt +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc.egg-info/requires.txt +0 -0
- {wlc-2.1.0 → wlc-2.2.0}/wlc.egg-info/top_level.txt +0 -0
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
2.2.0
|
|
2
|
+
-----
|
|
3
|
+
|
|
4
|
+
* Released on 1st September 2026.
|
|
5
|
+
* Hardened authentication by disabling automatic ``netrc`` credentials,
|
|
6
|
+
rejecting credentials embedded in URLs, and redacting credentials from HTTP
|
|
7
|
+
failure logs.
|
|
8
|
+
* Scoped insecure HTTP and TLS exceptions to explicitly trusted origins and
|
|
9
|
+
prevented project configuration from enabling them.
|
|
10
|
+
* Hardened downloads against symbolic links, non-regular files, and
|
|
11
|
+
destination replacement races.
|
|
12
|
+
* Escaped control characters in structured CSV fields and improved handling of
|
|
13
|
+
non-text output values.
|
|
14
|
+
* Added a threat model and clarified configuration discovery and precedence.
|
|
15
|
+
* Updated development dependencies, CI actions, and Docker base images.
|
|
16
|
+
|
|
17
|
+
2.1.1
|
|
18
|
+
-----
|
|
19
|
+
|
|
20
|
+
* Released on 25th July 2026.
|
|
21
|
+
* Prevented URL parser differential SSRF in server-provided URLs by validating
|
|
22
|
+
request origins with the same parser used by the HTTP transport.
|
|
23
|
+
* Improved type annotations.
|
|
24
|
+
* Updated development dependencies, CI actions, and Docker base images.
|
|
25
|
+
|
|
1
26
|
2.1.0
|
|
2
27
|
-----
|
|
3
28
|
|
wlc-2.2.0/PKG-INFO
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: wlc
|
|
3
|
+
Version: 2.2.0
|
|
4
|
+
Summary: A command-line utility for Weblate, translation tool with tight version control integration
|
|
5
|
+
Author-email: Michal Čihař <michal@weblate.org>
|
|
6
|
+
License-Expression: GPL-3.0-or-later
|
|
7
|
+
Project-URL: Documentation, https://docs.weblate.org/
|
|
8
|
+
Project-URL: Download, https://github.com/WeblateOrg/wlc
|
|
9
|
+
Project-URL: Funding, https://weblate.org/donate/
|
|
10
|
+
Project-URL: Homepage, https://weblate.org/
|
|
11
|
+
Project-URL: Issue Tracker, https://github.com/WeblateOrg/wlc/issues
|
|
12
|
+
Project-URL: Source Code, https://github.com/WeblateOrg/wlc
|
|
13
|
+
Project-URL: Twitter, https://twitter.com/WeblateOrg
|
|
14
|
+
Keywords: i18n,l10n,gettext,git,mercurial,translate
|
|
15
|
+
Platform: any
|
|
16
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
17
|
+
Classifier: Intended Audience :: Developers
|
|
18
|
+
Classifier: Operating System :: OS Independent
|
|
19
|
+
Classifier: Programming Language :: Python
|
|
20
|
+
Classifier: Programming Language :: Python :: 3
|
|
21
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
24
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
25
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
26
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
27
|
+
Classifier: Topic :: Software Development :: Internationalization
|
|
28
|
+
Classifier: Topic :: Software Development :: Localization
|
|
29
|
+
Classifier: Topic :: Utilities
|
|
30
|
+
Requires-Python: >=3.10
|
|
31
|
+
Description-Content-Type: text/markdown
|
|
32
|
+
License-File: LICENSE
|
|
33
|
+
Requires-Dist: argcomplete
|
|
34
|
+
Requires-Dist: python-dateutil
|
|
35
|
+
Requires-Dist: pyxdg
|
|
36
|
+
Requires-Dist: requests>=2.33.0
|
|
37
|
+
Requires-Dist: urllib3>=2.7.0
|
|
38
|
+
Dynamic: license-file
|
|
39
|
+
|
|
40
|
+
<a href="https://weblate.org/"><img alt="Weblate" src="https://s.weblate.org/cdn/Logo-Darktext-borders.png" height="80px" /></a>
|
|
41
|
+
|
|
42
|
+
**Weblate is libre software web-based continuous localization system,
|
|
43
|
+
used by over 2500 libre projects and companies in more than 165 countries.**
|
|
44
|
+
|
|
45
|
+
# wlc
|
|
46
|
+
|
|
47
|
+
wlc is a [Weblate](https://weblate.org/) command-line client and Python library
|
|
48
|
+
using [Weblate's REST API](https://docs.weblate.org/en/latest/api.html).
|
|
49
|
+
|
|
50
|
+
[](https://weblate.org/)
|
|
51
|
+
[](https://hosted.weblate.org/engage/weblate/?utm_source=widget)
|
|
52
|
+
[](https://bestpractices.coreinfrastructure.org/projects/552)
|
|
53
|
+
[](https://pypi.org/project/wlc/)
|
|
54
|
+
[](https://docs.weblate.org/en/latest/wlc.html)
|
|
55
|
+
|
|
56
|
+
## Installation
|
|
57
|
+
|
|
58
|
+
Install wlc from PyPI:
|
|
59
|
+
|
|
60
|
+
```console
|
|
61
|
+
pip install wlc
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Documentation
|
|
65
|
+
|
|
66
|
+
See the Weblate documentation for complete usage information:
|
|
67
|
+
|
|
68
|
+
- [Command-line client, configuration, and Docker usage](https://docs.weblate.org/en/latest/wlc.html)
|
|
69
|
+
- [Python API](https://docs.weblate.org/en/latest/python.html)
|
|
70
|
+
|
|
71
|
+
Container images are published on
|
|
72
|
+
[Docker Hub](https://hub.docker.com/r/weblate/wlc) and the
|
|
73
|
+
[GitHub Container Registry](https://github.com/WeblateOrg/wlc/pkgs/container/wlc).
|
|
74
|
+
|
|
75
|
+
## Security
|
|
76
|
+
|
|
77
|
+
The [wlc threat model](https://github.com/WeblateOrg/wlc/blob/main/THREAT_MODEL.md)
|
|
78
|
+
documents the supported trust boundaries and security properties. Report security issues using the
|
|
79
|
+
[Weblate vulnerability reporting process](https://docs.weblate.org/en/latest/security/issues.html).
|
|
80
|
+
|
|
81
|
+
## Contributing
|
|
82
|
+
|
|
83
|
+
Contributions are welcome! See the
|
|
84
|
+
[contributor documentation](https://docs.weblate.org/en/latest/contributing/modules.html).
|
wlc-2.2.0/README.md
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<a href="https://weblate.org/"><img alt="Weblate" src="https://s.weblate.org/cdn/Logo-Darktext-borders.png" height="80px" /></a>
|
|
2
|
+
|
|
3
|
+
**Weblate is libre software web-based continuous localization system,
|
|
4
|
+
used by over 2500 libre projects and companies in more than 165 countries.**
|
|
5
|
+
|
|
6
|
+
# wlc
|
|
7
|
+
|
|
8
|
+
wlc is a [Weblate](https://weblate.org/) command-line client and Python library
|
|
9
|
+
using [Weblate's REST API](https://docs.weblate.org/en/latest/api.html).
|
|
10
|
+
|
|
11
|
+
[](https://weblate.org/)
|
|
12
|
+
[](https://hosted.weblate.org/engage/weblate/?utm_source=widget)
|
|
13
|
+
[](https://bestpractices.coreinfrastructure.org/projects/552)
|
|
14
|
+
[](https://pypi.org/project/wlc/)
|
|
15
|
+
[](https://docs.weblate.org/en/latest/wlc.html)
|
|
16
|
+
|
|
17
|
+
## Installation
|
|
18
|
+
|
|
19
|
+
Install wlc from PyPI:
|
|
20
|
+
|
|
21
|
+
```console
|
|
22
|
+
pip install wlc
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Documentation
|
|
26
|
+
|
|
27
|
+
See the Weblate documentation for complete usage information:
|
|
28
|
+
|
|
29
|
+
- [Command-line client, configuration, and Docker usage](https://docs.weblate.org/en/latest/wlc.html)
|
|
30
|
+
- [Python API](https://docs.weblate.org/en/latest/python.html)
|
|
31
|
+
|
|
32
|
+
Container images are published on
|
|
33
|
+
[Docker Hub](https://hub.docker.com/r/weblate/wlc) and the
|
|
34
|
+
[GitHub Container Registry](https://github.com/WeblateOrg/wlc/pkgs/container/wlc).
|
|
35
|
+
|
|
36
|
+
## Security
|
|
37
|
+
|
|
38
|
+
The [wlc threat model](https://github.com/WeblateOrg/wlc/blob/main/THREAT_MODEL.md)
|
|
39
|
+
documents the supported trust boundaries and security properties. Report security issues using the
|
|
40
|
+
[Weblate vulnerability reporting process](https://docs.weblate.org/en/latest/security/issues.html).
|
|
41
|
+
|
|
42
|
+
## Contributing
|
|
43
|
+
|
|
44
|
+
Contributions are welcome! See the
|
|
45
|
+
[contributor documentation](https://docs.weblate.org/en/latest/contributing/modules.html).
|