Commit Graph

3505 Commits

Author SHA1 Message Date
linsui 082df1d9b6 checkupdates: add a bookworm blocklist item 2024-03-14 21:44:32 +08:00
Hans-Christoph Steiner 6781525ddd use appdirs to get easy cross-platform standard directories
This is more important to get right now, with `fdroid install`, which
should work easily on all platforms.
2024-03-14 12:43:02 +00:00
proletarius101 b20a14af09
fix unnecessary or invalid openjdk installation scripts 2024-03-14 13:14:41 +01:00
Licaon_Kter f30dcf5069
Upgrade Buildserver VM to latest Debian (Bookworm) 2024-03-14 13:14:34 +01:00
Sergey Zolotarev 6d71690946 Fix path splitting error on Windows 2024-03-13 19:44:44 +00:00
Jochen Sprickerhof edb2d76e25
Add unversioned whatsNew to index-v2 (Closes: #1202)
copy_triple_t_store_metadata() can read the whatsNew from an unversioned
release-notes.txt. For v2 copy this to the latest build.
2024-03-13 06:40:33 +01:00
linsui a002e46997 scanner: update maven repo regex 2024-03-12 07:57:11 +00:00
Hans-Christoph Steiner cff3364fdf split out mirrors data structure into standalone, tested function 2024-03-06 13:31:46 +00:00
Hans-Christoph Steiner 7904f12d05 net: add test of automatic retries in download_file()
The existing logic from d1ddd525c in !1225 is confusing because it adds its
own retry loop on top of the retry mechanism that is built into requests.
So this test confirms that setting `download_file(retries=3)` actually
results in more than three retries.
2024-03-06 13:31:46 +00:00
Hans-Christoph Steiner 617a9e75c7 convert install.py to black code format 2024-03-06 13:31:46 +00:00
Hans-Christoph Steiner 76d9eddb3a method to globally set logging to output nicely to the console
This will make all of the direct calls to logging level functions output
in a format that looks appropriate for the console. Previously, the default
output looked like it should be written to a log file.
2024-03-06 12:53:20 +00:00
linsui 7913df25ba fix litecoin address regex 2024-02-28 08:00:39 +00:00
Hans-Christoph Steiner 04cedd1808 build: pass --refresh-scanner thru to buildserver VM 2024-02-16 11:43:42 +01:00
proletarius101 947217549a feat: add servergitmirrors as a dict support 2024-02-14 16:50:39 +00:00
linsui 2f313a0bd6 scanner: refresh data without scaning 2024-01-29 23:13:13 +08:00
Hans-Christoph Steiner 031a130395 scanner: add refresh_config config item for buildserver
Includes some cosmetic changes from black.
2024-01-25 17:04:38 +01:00
linsui 6fb2e07dda fdroid build: add --refresh-scanner option
Apply 1 suggestion(s) to 1 file(s)
2024-01-25 14:03:12 +01:00
linsui fe7e4f8226 scanner: refresh data before loading data 2024-01-25 14:03:12 +01:00
Gregor Düster b9c7e8f63a Fix "fdroid --version"
Fixes https://gitlab.com/fdroid/fdroidserver/-/issues/1164 .

Helpful resource:
https://packaging.python.org/en/latest/guides/single-sourcing-package-version/
2024-01-25 12:00:05 +00:00
Licaon_Kter ac6a08e10f Update default suss 2024-01-25 11:05:55 +01:00
Hans-Christoph Steiner 810387a009 deploy: update_serverwebroots() for testable logic
This moves all of the serverwebroot: logic into a function, and adds tests.
I did this because I ran into issues in the logic in main():

Traceback (most recent call last):
  File "/builds/eighthave/fdroidserver/fdroid", line 22, in <module>
    fdroidserver.__main__.main()
  File "/builds/eighthave/fdroidserver/fdroidserver/__main__.py", line 230, in main
    raise e
  File "/builds/eighthave/fdroidserver/fdroidserver/__main__.py", line 211, in main
    mod.main()
  File "/builds/eighthave/fdroidserver/fdroidserver/deploy.py", line 753, in main
    s = serverwebroot.rstrip('/').split(':')
AttributeError: 'dict' object has no attribute 'rstrip'
2024-01-23 18:49:12 +01:00
Hans-Christoph Steiner fbf097d390 deploy: update_serverwebroot() works w/o options/config
Since update_serverwebroot() is part of the public API, this function should
work without setting `fdroidserver.deploy.options` or
`fdroidserver.deploy.config`.
2024-01-23 17:48:47 +01:00
Hans-Christoph Steiner 7a656d45e3 config: convert serverwebroot: to list-of-dicts format
This allows for more metadata about the server and deploy mode.
2024-01-22 22:11:49 +01:00
Michael Pöhn 7211e9f9b4 🍲 add unit test for update.scan_repo_for_ipas 2024-01-11 11:34:21 +01:00
Michael Pöhn 995118bcd2 🥔 add strapped IPA file and test for parse_ipa 2024-01-11 11:34:21 +01:00
Michael Pöhn c288317530 🪨 version string conversion: error handling+tests 2024-01-11 11:34:21 +01:00
Michael Pöhn 3ee91d1777 🧴 force android package names for IPAs for now 2024-01-11 11:34:21 +01:00
Michael Pöhn ea9374ecf6 🛠️ update.py: finish minimal IPA support
This add a few missing pieces to get IPA support working. (added and
lastUpdated dates + caching for ipa files)
2024-01-11 11:34:05 +01:00
Jochen Sprickerhof 60371093e2 Make python3-biplist optional 2024-01-11 11:34:00 +01:00
Jochen Sprickerhof e3d319f30b Update with suggestions 2024-01-11 11:33:25 +01:00
Jochen Sprickerhof 7d06608531 Move version_string_to_int into separate function 2024-01-11 11:33:25 +01:00
Jochen Sprickerhof dfbb2df839 Use CFBundleShortVersionString for version code 2024-01-11 11:33:25 +01:00
Jochen Sprickerhof a987341c37 ipa: add Usage permissions 2024-01-11 11:33:25 +01:00
Jochen Sprickerhof 77daf6feb6 Add Apple ipa support (Closes: #1067) 2024-01-11 11:33:25 +01:00
Hans-Christoph Steiner d7a673523d "field will be in random order" only applies to config.py
YAML only has lists, no sets or tuples, so this warning can only ever make
any sense when config.py is the active config file.
2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner a1d9d9d885 switch to loading mirrors.yml with ruamel to get YAML 1.2 support 2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner 96fc49d7fc lint: check syntax of countryCode: fields for mirrors 2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner 4511da68b9 lint: support linting config files 2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner 3f35b0b361 lint: do yamllint install check once globally 2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner 6faaae9431 always parse srclib entries with parse_srclib_spec()
Remove duplicated code.
2024-01-07 10:50:29 +01:00
Hans-Christoph Steiner 15b983f48d handle all cases of @ in srclibs
expands on fdroidserver!1422
2024-01-07 10:50:29 +01:00
linsui 2331bcfe15 all @ in srclib tag 2023-12-19 15:49:17 +08:00
Hans-Christoph Steiner 2d5770985f gitlab-ci: silence irrelevant bandit error
This SSH connection is only ever to the Vagrant VM on the same machine.

>> Issue: [B507:ssh_no_host_key_verification] Paramiko call with policy set to automatically trust the unknown host key.
   Severity: High   Confidence: Medium
   CWE: CWE-295 (https://cwe.mitre.org/data/definitions/295.html)
   More Info: https://bandit.readthedocs.io/en/1.7.6/plugins/b507_ssh_no_host_key_verification.html
   Location: ./fdroidserver/build.py:104:8
103	        sshs = paramiko.SSHClient()
104	        sshs.set_missing_host_key_policy(paramiko.AutoAddPolicy())
105	        sshs.connect(sshinfo['hostname'], username=sshinfo['user'],
2023-12-15 08:40:27 +01:00
Hans-Christoph Steiner e2949cbd61 port to looseversion 2023-12-08 10:48:01 +01:00
Hans-Christoph Steiner ad9cabdab9 add looseversion license information to vendored file 2023-12-08 10:42:29 +01:00
Hans-Christoph Steiner a1a88d39cf download looseversion to vendor
e1a5a176a9/src/looseversion/__init__.py
2023-12-08 10:42:27 +01:00
Andrew Gunnerson 679ba6f552
Add support for Python 3.12
Python 3.12 completely removed the builtin `distutils` module. This
commit replaces its use with the `packaging` package, which is an
external dependency, but maintained by the Python developers.

Signed-off-by: Andrew Gunnerson <accounts+gitlab@chiller3.com>
2023-12-07 18:15:05 -05:00
Hans-Christoph Steiner 4536b130df index: add datatype checking to mirrors: and config/mirrors.yml 2023-12-07 17:25:15 +01:00
Hans-Christoph Steiner 6d541e3ef6
establish config/mirrors.yml as a way to set up mirrors
The mirrors: entry in config.yml is great for quick access and shorter
mirror lists.  Now that we are adding a lot more metadata to the mirrors,
including potentially the full text of the privacy policy, having this
in its own file should make these cases easier to manage.
2023-12-07 14:38:26 +01:00
Axel López 825f969652 Support `Uri.create()` syntax for maven repositories 2023-12-07 01:30:59 +00:00