Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								a96e647b2f 
								
							 
						 
						
							
							
								
								deploy: common test setup for all tests of servergitmirrors  
							
							 
							
							... 
							
							
							
							This refactors the servergitmirrors tests into their own class. 
							
						 
						
							2025-09-29 13:25:13 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								b6e73345e2 
								
							 
						 
						
							
							
								
								deploy: convert to common.get_config()  
							
							 
							
							... 
							
							
							
							717df09be0 
							
						 
						
							2025-09-29 13:25:13 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								0a5f15dad7 
								
							 
						 
						
							
							
								
								nightly: GitLab URLs end in '.git' to avoid warning and redirects  
							
							 
							
							... 
							
							
							
							warning: redirecting to https://gitlab.com/fdroid/fdroidclient-nightly.git/  
							
						 
						
							2025-09-29 13:25:13 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								4cf3727db7 
								
							 
						 
						
							
							
								
								use example.com as default repo domain name, closes admin#300  
							
							 
							
							
							
						 
						
							2025-09-29 11:21:00 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									paul mayero 
								
							 
						 
						
							
							
							
							
								
							
							
								ffc0a6cec0 
								
							 
						 
						
							
							
								
								Fix tests for replacing s3cmd and libcloud  
							
							 
							
							
							
						 
						
							2025-09-25 14:21:02 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									linsui 
								
							 
						 
						
							
							
							
							
								
							
							
								5ded08048b 
								
							 
						 
						
							
							
								
								scanner: remove asLibraryDependency from catalog accessor  
							
							 
							
							
							
						 
						
							2025-09-18 11:19:32 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									linsui 
								
							 
						 
						
							
							
							
							
								
							
							
								5f6e59c76d 
								
							 
						 
						
							
							
								
								scanner: fix catalog match  
							
							 
							
							
							
						 
						
							2025-09-18 11:19:32 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								1f9fb16844 
								
							 
						 
						
							
							
								
								deploy: find rclone.conf in the root of the repo  
							
							 
							
							... 
							
							
							
							This enables the same way of managing the config as existed with s3cmd's
s3cfg file. 
							
						 
						
							2025-09-18 11:05:18 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									paul mayero 
								
							 
						 
						
							
							
							
							
								
							
							
								dbd769db9f 
								
							 
						 
						
							
							
								
								Remove libcloud and s3cmd from fdroidserver  
							
							 
							
							
							
						 
						
							2025-09-17 11:36:12 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Licaon_Kter 
								
							 
						 
						
							
							
							
							
								
							
							
								8b54e2b4cf 
								
							 
						 
						
							
							
								
								Remove UpstreamNonFree  
							
							 
							
							
							
						 
						
							2025-07-28 15:59:35 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									linsui 
								
							 
						 
						
							
							
							
							
								
							
							
								7a98650ed3 
								
							 
						 
						
							
							
								
								Sort import  
							
							 
							
							... 
							
							
							
							ruff check --fix --select I 
							
						 
						
							2025-07-26 15:35:19 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								6a3758d3c4 
								
							 
						 
						
							
							
								
								update: more accurate fastlane subdir/flavor matching  
							
							 
							
							... 
							
							
							
							This should fix Schildichat showing Element X's metadata. 
							
						 
						
							2025-07-26 12:36:32 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								5049645003 
								
							 
						 
						
							
							
								
								make gradlew-fdroid a standalone project  
							
							 
							
							... 
							
							
							
							https://gitlab.com/fdroid/gradlew-fdroid  
							
						 
						
							2025-07-25 17:46:31 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								96c0d928da 
								
							 
						 
						
							
							
								
								update: support fastlane/ dir in subdir:  
							
							 
							
							... 
							
							
							
							GNU Taler apps use this.
* https://git.taler.net/taler-android.git/tree/merchant-terminal/fastlane/metadata/android/en-US?h=pos-1.0.2  
							
						 
						
							2025-07-16 17:32:49 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								97b0b0eaf8 
								
							 
						 
						
							
							
								
								gitlab-ci: update gradle: job to only check files in  
							
							 
							
							... 
							
							
							
							While we are at it, also upgrade to Debian/trixie and rules:
this now handles making the merge requests:
https://gitlab.com/fdroid/gradle-transparency-log/-/merge_requests/2  
							
						 
						
							2025-07-16 14:08:54 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								52c1bcca70 
								
							 
						 
						
							
							
								
								only copy icons into repo/ if they changed  
							
							 
							
							... 
							
							
							
							This should make things more efficient and reduce the size of the diffs in
the transparency log.  Using shutil.copy2() preserves metadata. 
							
						 
						
							2025-06-25 09:46:20 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								dcd5336138 
								
							 
						 
						
							
							
								
								scanner: fix tests after  !1526  
							
							 
							
							
							
						 
						
							2025-06-23 23:10:15 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								63298ad2ad 
								
							 
						 
						
							
							
								
								update: change assert to fix flaky tests  
							
							 
							
							... 
							
							
							
							This was happening often:
```
======================================================================
FAIL: test_strip_and_copy_image_in_file_ctime_changed (tests.test_update.UpdateTest.test_strip_and_copy_image_in_file_ctime_changed)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builds/fdroid/fdroidserver/tests/test_update.py", line 1409, in test_strip_and_copy_image_in_file_ctime_changed
    self.assertNotAlmostEqual(
AssertionError: 1750683024.4857466 == 1750683024.4957466 within 0.01 delta (0.009999990463256836 difference)
``` 
							
						 
						
							2025-06-23 15:16:21 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								ce018158ee 
								
							 
						 
						
							
							
								
								nightly: set up test for git clone function  
							
							 
							
							
							
						 
						
							2025-06-18 18:03:59 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								494d811846 
								
							 
						 
						
							
							
								
								update: If cateogories.yml only has icon:, then add name:  
							
							 
							
							... 
							
							
							
							E.g. if _categories.yml_ is like:
```yaml
Time:
  icon: time.png
``` 
							
						 
						
							2025-06-16 17:13:48 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								59102fb07f 
								
							 
						 
						
							
							
								
								update: use ctime/mtime to control _strip_and_copy_image runs  
							
							 
							
							... 
							
							
							
							Oftentimes, the file that is copied is stripped, in which case, the file
size is different.  Using a file size check here means it will rerun the
strip and copy every time `fdroid update` is run for any image that needs
to be stripped.  If the source's ctime is newer than the destination, then
the process should run since it is a newly created file.  Even more so with
mtime, since the destination's mtime is reset based on the source's. 
							
						 
						
							2025-06-11 17:33:34 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									linsui 
								
							 
						 
						
							
							
							
							
								
							
							
								cd1630d2f5 
								
							 
						 
						
							
							
								
								Lazyload environment variables in config.yml  
							
							 
							
							
							
						 
						
							2025-06-11 13:02:09 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									linsui 
								
							 
						 
						
							
							
							
							
								
							
							
								a5d966bf0f 
								
							 
						 
						
							
							
								
								calculate all combinations of gradle flavors  
							
							 
							
							
							
						 
						
							2025-05-22 12:24:33 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									linsui 
								
							 
						 
						
							
							
							
							
								
							
							
								e957583337 
								
							 
						 
						
							
							
								
								common: add calculate_gradle_flavor_combination  
							
							 
							
							
							
						 
						
							2025-05-22 12:24:32 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								8c9b0b3a2a 
								
							 
						 
						
							
							
								
								add test case  
							
							 
							
							
							
						 
						
							2025-05-22 12:12:24 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Leo Heitmann Ruiz 
								
							 
						 
						
							
							
							
							
								
							
							
								5f534ea2cb 
								
							 
						 
						
							
							
								
								Add test case for Triple-T 1.0.0 graphics  
							
							 
							
							
							
						 
						
							2025-05-22 11:57:57 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								20b36f1970 
								
							 
						 
						
							
							
								
								SOURCE_DATE_EPOCH from app's git otherwise fdroiddata metadata file  
							
							 
							
							... 
							
							
							
							https://reproducible-builds.org/docs/source-date-epoch  
							
						 
						
							2025-05-19 16:31:40 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								4e7bda736c 
								
							 
						 
						
							
							
								
								update: never execute VCS e.g. git  
							
							 
							
							... 
							
							
							
							Package repos come from untrusted sources, in terms of the buildserver. They
should be handled in VMs and containers as much as possible to avoid
vulnerabilities.  As far as I could tell, `fdroid update` only has a single
place where it executes any VCS system: if there is .fdroid.yml present in
a package repo, then it will fetch the commit ID using git.
For better security properties, this implements a simple function to just
read the files to get that commit ID.  The function that executes git to do
the same thing is relabeled "unsafe".  That is used for status JSON
everywhere, but that runs on fdroiddata.git and fdroidserver.git, which are
trusted repos.
The unsafe version is also used in places where git.Repo() is needed for
other things. 
							
						 
						
							2025-05-12 18:30:03 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2a33857fd0 
								
							 
						 
						
							
							
								
								update: include stages timing info in update.json  
							
							 
							
							... 
							
							
							
							!1627  missed this, so stages only get included in running.json.  That means
the stages info is only visible while update is running, making it hard to
use. 
							
						 
						
							2025-04-23 19:26:50 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								17e5a59704 
								
							 
						 
						
							
							
								
								verify: generate <appid>.json files that list all reports  
							
							 
							
							
							
						 
						
							2025-04-10 15:41:46 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								9a8d80ee6b 
								
							 
						 
						
							
							
								
								purge dead code: apk_signer_fingerprint_short  
							
							 
							
							
							
						 
						
							2025-03-31 11:09:07 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								59474437b3 
								
							 
						 
						
							
							
								
								delete cruft test script  
							
							 
							
							
							
						 
						
							2025-03-25 10:23:00 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								40be283c4a 
								
							 
						 
						
							
							
								
								APK for testing maxSdkVersion handling  
							
							 
							
							... 
							
							
							
							APK is org.bitbucket.tickytacky.mirrormirror_4.apk disassembled with
`apktool decode`, maxSdkVersion added, then reassembled with `apktool build` 
							
						 
						
							2025-03-25 10:23:00 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								eef3188600 
								
							 
						 
						
							
							
								
								test_signatures: remove unneeded config from tests  
							
							 
							
							
							
						 
						
							2025-03-25 10:23:00 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								d024c8964f 
								
							 
						 
						
							
							
								
								convert test_signatures.py to black code format  
							
							 
							
							
							
						 
						
							2025-03-25 10:23:00 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								8f351d8406 
								
							 
						 
						
							
							
								
								publish: convert to black code format  
							
							 
							
							
							
						 
						
							2025-03-25 10:23:00 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								58609aa9f0 
								
							 
						 
						
							
							
								
								fix _dexdump_found() in test_scanner.py  !1621  
							
							 
							
							... 
							
							
							
							find_sdk_tools_cmd() will throw an exception if it can't find the tool, not
return None. 
							
						 
						
							2025-03-24 08:24:01 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								78efc16fc2 
								
							 
						 
						
							
							
								
								scanner: suppress verbose/confusing log output on success  
							
							 
							
							... 
							
							
							
							This additionally asserts that the right log output happened. 
							
						 
						
							2025-03-21 08:45:23 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								4b9100ae80 
								
							 
						 
						
							
							
								
								publish: remove last use of stats/ dir  
							
							 
							
							... 
							
							
							
							This file can be treated like the other index files in repo/. This also has
the advantage that it will automatically get synced by @CiaranG's existing
sync scripts. 
							
						 
						
							2025-03-20 15:08:32 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								38378ddfb7 
								
							 
						 
						
							
							
								
								rename v1_sort_packages to sort_package_versions  
							
							 
							
							
							
						 
						
							2025-03-20 15:08:32 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								8565a97465 
								
							 
						 
						
							
							
								
								rename functions and variables to reflect stats/ going away  
							
							 
							
							
							
						 
						
							2025-03-20 15:08:32 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								ec2b847e03 
								
							 
						 
						
							
							
								
								handle arches that are missing dexdump in tests  
							
							 
							
							... 
							
							
							
							dexdump is only available for certain CPU architectures.  Google binaries
are for amd64 and arm64.  Debian binaries are for amd64, arm64, armhf,
i386, and riscv64.  That leaves out armel, ppc64el, s390x, loong64, etc.
where pure Python code runs perfectly fine. 
							
						 
						
							2025-03-20 12:42:59 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								20569217d9 
								
							 
						 
						
							
							
								
								index: fail if user sets mirrors:isPrimary wrong  
							
							 
							
							... 
							
							
							
							Really, this is not meant to be set by the user in the config.  But if they
add something harmless that'll be ignored anyway, it seems that throwing an
error is too much.  So only throw the error if it is set wrongly. 
							
						 
						
							2025-03-20 11:13:09 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0b3fe26524 
								
							 
						 
						
							
							
								
								skip tests that won't run on a given CPU architecture  
							
							 
							
							
							
						 
						
							2025-03-19 15:47:06 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								025828932d 
								
							 
						 
						
							
							
								
								purge test exceptions for Python < 3.9, that's the min version  
							
							 
							
							
							
						 
						
							2025-03-19 11:11:36 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								c5f442616e 
								
							 
						 
						
							
							
								
								gitlab-ci: "PUBLISH" job to test in the signing server's setup  
							
							 
							
							
							
						 
						
							2025-03-12 17:27:26 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								9d147c6b6b 
								
							 
						 
						
							
							
								
								test_common: remove self.tmpdir and use standard self.testdir pat  
							
							 
							
							
							
						 
						
							2025-03-12 13:37:17 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								858068c64b 
								
							 
						 
						
							
							
								
								only show "unsafe perms on config.yml" when secrets are present  
							
							 
							
							... 
							
							
							
							This should make for fewer false positives. 
							
						 
						
							2025-03-12 13:37:17 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								36007d50e5 
								
							 
						 
						
							
							
								
								AbstractBaseTest class for sharing setUp and tearDown in tests  
							
							 
							
							
							
						 
						
							2025-03-12 13:37:17 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Hans-Christoph Steiner 
								
							 
						 
						
							
							
							
							
								
							
							
								f269232b96 
								
							 
						 
						
							
							
								
								hide error messages in tests that are meant to fail  
							
							 
							
							
							
						 
						
							2025-03-12 13:37:17 +01:00