Commit graph

2903 commits

Author SHA1 Message Date
Hans-Christoph Steiner
4fa11ef4fc
deploy: detect virustotal size limits while uploading
This prevents the size limits from blocking the whole deploy.
2020-01-14 11:19:02 +01:00
Hans-Christoph Steiner
058b47e484
deploy: fix virustotal report fetching, use GET and query string 2020-01-14 11:19:00 +01:00
Hans-Christoph Steiner
f2b48575e6
deploy: github/gitlab use bare git repos, only size the .git/ dir
needs test: generate giant APKs by including AndroidManifest.xml and and
large file from /dev/urandom, then sign it.  Then add those to the git repo.
2020-01-14 11:18:53 +01:00
Marcus Hoffmann
96ba194d65 bump title char_limit to 50
This follows google play in doing so.
Closes fdroidserver#726, fdroid/fdroiddata#1906.
2020-01-08 14:20:18 +01:00
Hans-Christoph Steiner
098bce2134 Merge branch 'git_fetch_force_tags' into 'master'
git force fetch tags

Closes #718

See merge request fdroid/fdroidserver!699
2020-01-02 13:45:22 +00:00
Gerhard Olsson
cf9bff1d56 AutoUpdateMode: Do not include + in suffix
Add suffix to version only
2020-01-02 13:27:12 +00:00
Marcus Hoffmann
83526e09a3 update: fix unarchiving of allowed disabled algorithm
6d0b1bbe6fae0909683f2c6a154515bc4bfcb674 didn't handle the
allow_disabled_algorithm case at all, so we add it back.

This additionally fixes a (previously existing) bug where setting
allow_disabled_algorithms to True didn't move apks back from archive to
repo. Introduce a new test for this.

The disabled_algorithm archiving logic is still all over the place so
ideally that needs a future refactor.
2020-01-01 15:25:43 +01:00
Marcus Hoffmann
a7a83e1ee3 update: keep CVC of an app out of the archive
We want to keep the stable version (CV) of an app in /repo with highest
priority and only move it to /archive when ArchivePolicy is set to 0.

For this to work we need two changes here:

1) when sorting apks by version code we insert the apk corresponding to
the CVC of the app afterwards with highest priority. So when walking the
list of apks afterwards the CVC apk is always kept first.

2) Instead of the two pass algorithm of moving things back and forth to
the archive we instead figure out where each apk of an app goes in first
before actually moving them into the right place.

Fixes: fdroid/fdroidserver#385
2020-01-01 15:25:43 +01:00
Marcus Hoffmann
3403402fbc git force fetch tags
The behaviour of fetching tags changed in git 2.20. We need to force
fetch tags to restore the earlier behaviour and make fdroid git
operations work with newer git versions.

Closes fdroid/fdroidserver#718
2019-12-23 14:48:52 +01:00
Hans-Christoph Steiner
e9830fc4ab Merge branch 'faster_yaml' into 'master'
metadata: use yaml C implementation when available

Closes #716

See merge request fdroid/fdroidserver!696
2019-12-23 10:09:50 +00:00
Marcus Hoffmann
01d00d54ca metadata: use yaml C implementation when available
This is an order of magnitude faster. Requires the C yaml bindings to be
installed.

Fixes fdroid/fdroidserver#716
2019-12-23 01:59:33 +01:00
Marcus Hoffmann
5642dc56ae remove unused function
The users of this were removed years ago in
013315bf10.
2019-12-23 01:29:06 +01:00
Michael Pöhn
d2481375bb Merge branch 'archive_description' into 'master'
archive description

See merge request fdroid/fdroidserver!694
2019-12-15 16:34:16 +00:00
Hans-Christoph Steiner
7d40e89341
checkupdates: split out vercode parsing into testable function 2019-12-03 23:51:48 +01:00
Hans-Christoph Steiner
492f12a7a8
nightly: set descriptions for repo and archive 2019-12-03 00:24:37 +01:00
Hans-Christoph Steiner
ddf1f8ea15
update: make default repo description translatable 2019-12-03 00:24:32 +01:00
Hans-Christoph Steiner
75639ba0e8
update: description is a hard requirement, set a default for archive 2019-12-03 00:23:56 +01:00
Jochen Sprickerhof
0e071a689d Support hex versionCode in build command line
Example: fdroid build net.gaast.giggity:0x200
2019-11-29 20:02:24 +01:00
Jochen Sprickerhof
b83c3c9e18 Support hex in versionCode
Example: https://github.com/Wilm0r/giggity/blob/master/app/src/main/AndroidManifest.xml#L2
2019-11-29 20:01:29 +01:00
Hans-Christoph Steiner
b95f66a806
scanner: only allow HTTPS versions of the whitelist 2019-11-13 11:59:24 +01:00
Hans-Christoph Steiner
e6bf586e74
common: make v2 signature message a debug message
https://gitlab.com/fdroid/fdroidserver/issues/703#note_238122327
closes #703
2019-11-13 11:59:23 +01:00
Hans-Christoph Steiner
3354e66bd3
common: use standard format tags when generating the log name 2019-11-13 11:59:20 +01:00
Hans-Christoph Steiner
2cbde77798
build: do not crash if SVN URL pre-validation fails; log error
This is the problem:
https://jenkins.debian.net/job/reproducible_fdroid_build_apps/704/console
2019-11-13 11:59:18 +01:00
Mike Hardy
3c398e2aa6 remove redundant google analytics match
'google.*play.*services' and 'firebase' will catch both manners of including analytics I think
https://developers.google.com/android/guides/setup#split
https://firebase.google.com/support/release-notes/android#latest_sdk_versions

This has the desired side effect of also allowing the libre analytics library
'net.mikehardy:google-analytics-java' and 'net.mikehardy:google-analytics-java7'
2019-11-02 18:40:58 +00:00
Hans-Christoph Steiner
0a8af2c55f Merge branch 'fix-readline-in-srclibs' into 'master'
build: fix bad regexs when removing signingConfig from srclibs

See merge request fdroid/fdroidserver!686
2019-10-25 08:18:08 +00:00
Hans-Christoph Steiner
afaa24f2fd
build: fix bad regexs when removing signingConfig from srclibs
I went through the source of all apps in fdroiddata for examples, and found
some that use readLine() for things totally unrelated to signingConfigs.

https://gitlab.com/fdroid/fdroiddata/merge_requests/4775#note_234132902
2019-10-23 12:44:47 +02:00
Michael Pöhn
c954a14139 update.py: fix archiving .log.gz files 2019-10-23 11:04:07 +02:00
Michael Pöhn
7fa3c34e5b update tests for fixed log deployment+changelog 2019-10-15 15:19:18 +02:00
Michael Pöhn
d665106813 fix disappearing build logs when deploying 2019-10-15 14:28:45 +02:00
Hans-Christoph Steiner
6d11da5e13 Merge branch 'triple-t-2' into 'master'
parse Triple-T v2.x layout

See merge request fdroid/fdroidserver!683
2019-10-08 11:15:12 +00:00
Hans-Christoph Steiner
a72904ee23
lint: allow Beerware and XSkat licenses
These licenses were already in our repo.  The are not FSF- or OSI-approved,
but they are included in Debian.  So for now at least, we should maintain
them in our list until we have a clearer picture of how we should make the
list of licenses we support.

* fdroidserver!682
* https://github.com/spdx/license-list-XML/issues/876
* Beerware in Debian:
  https://metadata.ftp-master.debian.org/changelogs//main/libm/libmd/libmd_1.0.1-3_copyright
* XSkat in Debian:
  https://metadata.ftp-master.debian.org/changelogs//main/x/xskat/xskat_4.0-7_copyright
2019-10-07 12:05:37 +02:00
Hans-Christoph Steiner
5904aef5a7
update: parse Triple-T v2.x layout
Thanks to the very nice example from Piwigo, included here under the GPLv3+
https://github.com/Piwigo/Piwigo-Android

https://gitlab.com/fdroid/fdroiddata/merge_requests/5579#note_225834868
2019-10-04 14:11:40 +02:00
Hans-Christoph Steiner
a7dd7a812f
update: strip leading/tailing whitespace on author contact fields
Whitespace is not valid in email addresses, URLs, or phone numbers, and the
triple-t/fastlane file format generally has a newline at the end.
2019-10-04 11:33:39 +02:00
Hans-Christoph Steiner
1ef4f74aff lint: include MIT-CMU, it is so close to FSF/OSI-free MIT
fdroidserver!682

https://github.com/spdx/license-list-data/issues/53

* FSF lists two closely related variants as  X11 or Expat, search for "MIT license" in https://www.gnu.org/licenses/license-list.html
* X11 is considered free: https://directory.fsf.org/wiki/License:X11
* Expat is considered free: https://directory.fsf.org/wiki/License:Expat
* It is included in Debian, so it is DFSG-free: https://metadata.ftp-master.debian.org/changelogs//main/f/flite/flite_2.1-release-3_copyright
* Fedora considers it free https://fedoraproject.org/wiki/Licensing:MIT#CMU_Style
2019-10-04 11:30:24 +02:00
Hans-Christoph Steiner
3801db064a lint: improve HTTPS check
It was missing some domains, so I added another rule.  @IzzySoft pointed
out it was redudnant, so this removes the redudant rule and fixes the
original.

https://gitlab.com/fdroid/fdroidserver/merge_requests/681/diffs#note_225263464
2019-10-04 11:12:48 +02:00
Hans-Christoph Steiner
af4e231f7d lint: enforce HTTPS on GitHub and GitLab pages
The always provide HTTPS, so let's enforce it.
2019-10-04 11:12:48 +02:00
Hans-Christoph Steiner
17320c23f4 lint: don't trip up on projects with 'master' in the name
https://gitlab.com/fdroid/fdroiddata/merge_requests/5557#note_223283359
2019-10-04 11:12:48 +02:00
Michael Pöhn
d5ab303d83 lint: license override config option + require FSF/OSI approved licenses by default 2019-10-02 22:14:09 +02:00
Michael Pöhn
3c9535d64b lint: fsf approved licenses only 2019-10-02 12:15:02 +02:00
Michael Pöhn
0963da9fd3 Merge branch 'bugly' into 'master'
scanner: blacklist Bugly

See merge request fdroid/fdroidserver!680
2019-09-28 07:59:52 +00:00
relan
bd96a17ef2 scanner: blacklist Bugly
The artifact is licensed under "The Bugly Software License, Version 1.0"
[1], but link to the full text [2] is broken. LICENSE file in the source
code repository is empty.

I guess this library is non-free.

[1] https://mvnrepository.com/artifact/com.tencent.bugly/crashreport/2.8.6.0
[2] http://bugly.qq.com/licenses/LICENSE-1.0.txt
[3] https://github.com/BuglyDevTeam/Bugly-Android
2019-09-28 07:58:19 +03:00
Hans-Christoph Steiner
c7048f2c39 update: log errors on bad graphics, and then ignore the file
Python PIL is not so tolerant, so bad EXIF causes crashes:

  File "/var/lib/jenkins/userContent/reproducible/reproducible_fdroid_build_apps/fdroidserver/update.py", line 2088, in main
    insert_localized_app_metadata(apps)
  File "/var/lib/jenkins/userContent/reproducible/reproducible_fdroid_build_apps/fdroidserver/update.py", line 978, in insert_localized_app_metadata
    _strip_and_copy_image(os.path.join(root, f), destdir)
  File "/var/lib/jenkins/userContent/reproducible/reproducible_fdroid_build_apps/fdroidserver/update.py", line 754, in _strip_and_copy_image
    in_image = Image.open(fp)
  File "/usr/lib/python3/dist-packages/PIL/Image.py", line 2687, in open
    % (filename if filename else fp))
OSError: cannot identify image file <_io.BufferedReader name='build/org.sw24softwares.starkeverben/fastlane/metadata/android/en-US/images/featureGraphic.png'>
2019-09-26 22:06:21 +02:00
relan
3a7ad650e3 scanner: fix local Debian Maven repo handling
The resulting regex was 'https?://file:///usr/share/maven-repo' causing
scanner error.
2019-08-29 21:32:54 +03:00
Hans-Christoph Steiner
70e7e720b9
update: use graphics filename with hash in index to support caching
Using a filename based on the hash of the contents means that the caching
algorithms for fdroidclient and browsers can safely cache the file forever
using the filename, since this guarantees that the contents will never
change for a given filename.

This does not cover screenshots, only icon.png, featureGraphic.png,
tvBanner.png, and promoGraphic.png.

fdroidserver#689
fdroid-website!453
2019-08-29 08:23:51 +02:00
Hans-Christoph Steiner
508af00e84
update: only copy graphics and screenshots if mtime/size has changed
Instead of copying every time, trust the filesystem to tell us when the
file has changed.
2019-08-29 08:23:47 +02:00
Hans-Christoph Steiner
7090ce63dd Merge branch 'remove-provides-in-yml' into 'master'
Remove `Provides:` in yaml metadata

Closes #676

See merge request fdroid/fdroidserver!654
2019-08-28 13:39:59 +00:00
Michael Pöhn
8e5232076f do not delete yml metadata when raumel not installed 2019-08-27 15:38:40 +02:00
Michael Pöhn
902f1307dc rewritemeta: refactor supported list to module variable SUPPORTED_FORMATS 2019-08-27 15:38:40 +02:00
Michael Pöhn
08acb55897 keep yaml metadata when rewrite failed 2019-08-27 15:38:40 +02:00
Michael Pöhn
39c589fb85 Merge branch 'update-create-template' into 'master'
make metadata template behave well for empty values

Closes #681

See merge request fdroid/fdroidserver!657
2019-07-24 11:02:38 +00:00