Hans-Christoph Steiner
25b1a77424
fix merge conflict with https://hosted.weblate.org/projects/f-droid/fdroidserver/
2024-05-14 12:22:56 +02:00
Hans-Christoph Steiner
4c0fa1d0a9
Merge branch 'update-pot' into 'master'
...
make -C locale update
See merge request fdroid/fdroidserver!1484
2024-05-13 12:10:49 +00:00
Hans-Christoph Steiner
c37a26bcd2
make -C locale update
2024-05-13 13:59:52 +02:00
Hans-Christoph Steiner
b45b31b927
version 2.3 alpha 1
2024-05-13 10:45:09 +02:00
Hans-Christoph Steiner
2f148b4407
Merge branch 'weblate' into 'master'
...
weblate
See merge request fdroid/fdroidserver!1483
2024-05-13 08:44:31 +00:00
Hans-Christoph Steiner
6bebd8b160
safety: ignore CVE-2018-20225, should never affect fdroidserver
...
https://data.safetycli.com/v/67599/97c
2024-05-13 10:33:37 +02:00
Fjuro
7e1b2e0788
Translated using Weblate: Czech (cs) by Fjuro <fjuro@alius.cz>
...
Currently translated at 100.0% (552 of 552 strings)
Co-authored-by: Fjuro <fjuro@alius.cz>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/cs/
Translation: F-Droid/F-Droid Server
2024-05-13 10:25:52 +02:00
Random
34dd9a75e4
Translated using Weblate: Italian (it) by Random <random-r@users.noreply.hosted.weblate.org>
...
Currently translated at 100.0% (552 of 552 strings)
Co-authored-by: Random <random-r@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/it/
Translation: F-Droid/F-Droid Server
2024-05-13 10:25:43 +02:00
ALoLo_527
f6235831ae
Translated using Weblate: Chinese (Simplified) (zh_Hans) by ALoLo_527 <ALoLo@users.noreply.hosted.weblate.org>
...
Currently translated at 82.0% (453 of 552 strings)
Co-authored-by: ALoLo_527 <ALoLo@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/zh_Hans/
Translation: F-Droid/F-Droid Server
2024-05-13 10:25:35 +02:00
Oğuz Ersen
99841bf7c5
Translated using Weblate: Turkish (tr) by Oğuz Ersen <oguz@ersen.moe>
...
Currently translated at 100.0% (552 of 552 strings)
Co-authored-by: Oğuz Ersen <oguz@ersen.moe>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/tr/
Translation: F-Droid/F-Droid Server
2024-05-13 10:25:03 +02:00
Agnieszka C
c7f1bdd14c
Translated using Weblate: Polish (pl) by Agnieszka C <aga_04@o2.pl>
...
Currently translated at 100.0% (552 of 552 strings)
Co-authored-by: Agnieszka C <aga_04@o2.pl>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/pl/
Translation: F-Droid/F-Droid Server
2024-05-13 10:24:56 +02:00
gallegonovato
25278801de
Translated using Weblate: Spanish (es) by gallegonovato <fran-carro@hotmail.es>
...
Currently translated at 100.0% (552 of 552 strings)
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/f-droid/fdroidserver/es/
Translation: F-Droid/F-Droid Server
2024-05-13 10:24:45 +02:00
Michael Pöhn
8d9c048505
Merge branch 'config-options-as-module-level-variables' into 'master'
...
clarify that 'config' and 'options' should only be module-level variables
See merge request fdroid/fdroidserver!1477
2024-05-08 14:47:49 +00:00
Hans-Christoph Steiner
64c9154fff
gitlab-ci: fix macOS job after !1466
2024-05-08 16:36:21 +02:00
Hans-Christoph Steiner
5745ed4753
common: only try to delete .testfiles dir if it exists
...
Otherwise, some tests fail with an error.
2024-05-08 16:28:14 +02:00
Hans-Christoph Steiner
18f3acc32e
split out options from read_config()
...
There is no longer any reason for these to be intertwined.
This deliberately avoids touching some files as much as possible because
they are super tangled and due to be replaced. Those files are:
* fdroidserver/build.py
* fdroidserver/update.py
# Conflicts:
# tests/testcommon.py
# Conflicts:
# fdroidserver/btlog.py
# fdroidserver/import_subcommand.py
2024-05-08 16:26:46 +02:00
Hans-Christoph Steiner
685efa23d4
import: always load testcommon from localmodule
...
Having this import before sys.path.insert() made it load testcommon from
the Debian package.
2024-05-08 16:19:27 +02:00
Hans-Christoph Steiner
1e5699e90c
remove all references to optparse (deprecated since Python 3.2)
2024-05-08 16:19:27 +02:00
Hans-Christoph Steiner
717df09be0
clarify that config/options can be global or module-level variable
2024-05-08 16:19:27 +02:00
Hans-Christoph Steiner
92a3f4b191
rename local variable to stop overwriting global options
...
This fixes a bug where if smartcardoptions is set as a str in config.yml
will overwrite all command line options.
a4d069862
fdroidserver!1106
2024-05-08 16:19:27 +02:00
Hans-Christoph Steiner
1eaba25021
common: do not use module reference for local functions
...
This just makes things more confusing.
2024-05-08 16:19:27 +02:00
Hans-Christoph Steiner
8208841460
common: make explicit which test cases need mocked options
2024-05-08 16:19:27 +02:00
Hans-Christoph Steiner
660f8756e5
Merge branch 'docstrings' into 'master'
...
docstrings and code format from !1436
See merge request fdroid/fdroidserver!1482
2024-05-08 13:55:10 +00:00
Gregor Düster
dbdefe200c
Format files with ruff
2024-05-08 15:41:51 +02:00
Gregor Düster
df27405d8b
[build] Add more docstrings
2024-05-08 15:35:28 +02:00
Gregor Düster
1c70758940
[btlog] Add more docstrings
2024-05-08 15:31:43 +02:00
Gregor Düster
4109e8fb03
[checkupdates] Add module docstring
2024-05-08 15:31:38 +02:00
Gregor Düster
97346a2cba
[nightly] Add more docstrings
2024-05-08 15:31:32 +02:00
Gregor Düster
6c27fec94b
[import] Add more docstrings
2024-05-08 15:31:29 +02:00
Michael Pöhn
5d8c6b8cd5
Merge branch 'fix-ubuntu-ppa-job' into 'master'
...
Fix ubuntu ppa job
See merge request fdroid/fdroidserver!1481
2024-05-08 13:17:23 +00:00
Hans-Christoph Steiner
9f62445f38
gitlab-ci: fix ubuntu_lts_ppa job to work with Ubuntu/noble
2024-05-08 13:16:00 +00:00
Michael Pöhn
80705579c2
Merge branch 'getcert' into 'master'
...
get_first_signer_certificate: check all v1 v2 and v3 certs
Closes #1128
See merge request fdroid/fdroidserver!1466
2024-05-08 13:14:05 +00:00
Hans-Christoph Steiner
ad9f0a9022
include @obfusk's proof-of-concept APKs in test suite
...
https://github.com/obfusk/fdroid-fakesigner-poc/releases/tag/poc-apks
2024-05-07 16:22:59 +02:00
Hans-Christoph Steiner
fc4a9c96a5
test APK signatures with a cert chain are parsed like apksigner
...
Microsoft and SanDisk sign APKs with a X.509 certificate chain of
trust, so there are actually three certificates included. apksigner
only cares about one certificate and ignores the other certificates in
the chain.
The correct values come from:
apksigner verify --print-certs 883cbdae7aeb2e4b122e8ee8d89966c7062d0d49107a130235fa220a5b994a79.apk
X.509 certificates are machine generated and just data, so are not
copyrightable. So I included SANAPPSI.* directly.
2024-05-07 16:22:59 +02:00
Hans-Christoph Steiner
accdd65f91
also handle APKs entirely without JAR/v1 signatures
...
future-proofing!
2024-05-07 16:22:59 +02:00
Hans-Christoph Steiner
9a327b5097
reliable implementation of get_first_signer_certificate()
...
This keeps key pieces of @linsui's algorithm, specifically the check
that all certificates are the same. apksigner also does this check.
closes #1128
2024-05-07 16:22:59 +02:00
Hans-Christoph Steiner
a8fd360a88
skip AndroidManifest.xml and resources when fetching v2+ certs
2024-05-07 16:22:59 +02:00
FC (Fay) Stegerman
6f5fd2b132
PoC + writeup + patch
...
6c6dc25112/fdroidserver.patch (L28)
https://github.com/androguard/androguard/issues/1030
refs #1128
(this is an excerpt of the original patch)
2024-05-07 16:22:59 +02:00
Hans-Christoph Steiner
312f822764
androguard is required, stop using use_androguard()
2024-05-07 16:22:59 +02:00
linsui
2fea71a6c7
get_first_signer_certificate: check all v1 v2 and v3 certs
2024-05-07 16:22:59 +02:00
Hans-Christoph Steiner
93f361c623
replace decade old pyasn1 crypto impl with working asn1crypto
...
For some APKs, get_certificate() was returning a different result than
apksigner and keytool. So I just took the algorithm from androguard, which
uses asn1crypto instead of pyasn1. So that removes a dependency as well.
asn1crypto is already required by androguard.
The original get_certificate() came from 6e2d0a9e1
2024-05-07 16:22:59 +02:00
Hans-Christoph Steiner
4666330a4d
Merge branch 'gradlefile' into 'master'
...
throw error if gradle build method is used but no build.gradle file is found
See merge request fdroid/fdroidserver!1479
2024-05-07 14:14:26 +00:00
linsui
7104411296
throw error if gradle build method is used but no build.gradle file is found
2024-05-07 14:13:47 +00:00
Hans-Christoph Steiner
99bd544ab9
Merge branch 'fedora-40-ci-failure' into 'master'
...
make it easier to support the Fedora job
See merge request fdroid/fdroidserver!1474
2024-05-07 14:11:53 +00:00
Hans-Christoph Steiner
5df3d27126
gitlab-ci: stay on Fedora 39 until it is no longer supported
...
We can rely on the debian:testing job to test the bleeding edge, and it is
a lot easier to troubleshoot.
The Fedora job is a lot harder to troubleshoot than the Debian-based jobs,
and they are often quite bleeding edge. Currently, there is a change to
either Python or an image processing lib (Pillow?) that now compresses PNGs
differently than all previous releases. That breaks the tests based on
processing images and checking the SHA-256 matches.
70e7e720b9
fdroidserver!669
2024-05-07 12:58:23 +00:00
Hans-Christoph Steiner
1b65e33835
make it easy to keep test artifacts from jobs
...
When troubleshooting things that are difficult to reproduce locally, like
different behaviors in the fedora_latest job, these changes make it easy to
keep the test files around after the tests run. For example, if PNGs are
processed differently by newer Python versions.
2024-05-07 12:58:23 +00:00
Hans-Christoph Steiner
299e3e5f4c
index: handle image processing diffs across various Python versions
...
Apparently, the newest Python thingies strip the PNGs a tiny bit smaller,
so a fixed file size will lead to the test failing:
https://gitlab.com/fdroid/fdroidserver/-/jobs/6703386074
```
Traceback (most recent call last):
File "/builds/fdroid/fdroidserver/tests/index.TestCase", line 704, in test_package_metadata
self.assertEqual(36027, metadata['featureGraphic']['en-US']['size'])
AssertionError: 36027 != 35619
```
2024-05-07 12:58:23 +00:00
Hans-Christoph Steiner
1cb1394de3
Merge branch 'debugkey' into 'master'
...
lint: blocklist known AOSP debug keys in AASK
See merge request fdroid/fdroidserver!1478
2024-05-07 11:33:12 +00:00
Hans-Christoph Steiner
9a9b5beeaa
simplify test setup
...
I'm in the midst of working towards getting rid of the "config" instances
that are in the subcommand module, e.g. `fdroidserver.lint.config`
2024-05-07 11:33:04 +00:00
Hans-Christoph Steiner
14c8647909
add additional tests
2024-05-07 11:33:04 +00:00