1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-11-14 02:50:12 +01:00
Commit Graph

4031 Commits

Author SHA1 Message Date
Daniel Martí
cb6928978a Merge branch 'p2' into 'master'
Fix update crash in case of unset dates in APK; add an option to use APK's entry date

I encountered an error when I tried to add [TrackID APK](https://play.google.com/store/apps/details?id=com.sonyericsson.trackid) (files in the APK don't have dates set): as far as I can remember `datetime(*manifest.date_time)` was raising `ValueError`.

Also add an option to use date from APK as this APK's entry date (may be useful in case of a simple binary repo): `fdroid update --use-date-from-apk`.

I should have split this commit, but I hope this would be OK too.

See merge request !104
2016-02-18 13:35:33 +00:00
Dmitriy Bogdanov
476502fe8d Add '--use-date-from-apk' option to bash-completion 2016-02-18 16:42:16 +04:00
Dmitriy Bogdanov
0fdeade4d4 Add an option to use dates from APK 2016-02-18 16:41:43 +04:00
Dmitriy Bogdanov
a8b1472a43 Fix update crash in case of unset dates in APK 2016-02-18 16:40:51 +04:00
Hans-Christoph Steiner
3685ba16f7 setup.py: fix missing comma in classifiers 2016-02-18 11:47:02 +01:00
Hans-Christoph Steiner
506f1bfb70 python setup.py release alias for making official releases 2016-02-18 11:40:47 +01:00
Daniel Martí
05bcf8abd6 Bump to 0.6.0 2016-02-18 09:15:47 +00:00
Dmitriy Bogdanov
5d54b761af Add FDroidPopen usage test 2016-02-18 00:45:06 +04:00
Dmitriy Bogdanov
7fc55a3847 Fix pubkey extraction on update
Fix pubkey extraction in case of non-empty _JAVA_OPTIONS
2016-02-17 22:22:57 +04:00
Ciaran Gultnieks
8135760554 Change can't update category name - closes #80 2016-02-17 14:38:44 +00:00
Daniel Martí
163044648c Allow commonsware and gradle plugin repos 2016-02-17 13:00:05 +00:00
Daniel Martí
86d41dfe82 Merge branch 'debian-import-freeze' into 'master'
Debian import freeze

These are the issues as discussed in today's meeting.  More in the commit messages, and mostly, in the related issues.

See merge request !101
2016-02-17 11:40:12 +00:00
Hans-Christoph Steiner
e0312897c7 make "Current Version Code" default to most recent APK
closes #36 https://gitlab.com/fdroid/fdroidserver/issues/36
2016-02-17 10:40:07 +01:00
Hans-Christoph Steiner
3967a0068b added 'mirrors' option to config for giving official mirror URLs
serverwebroot has long supported uploading to multiple servers, this bit of
metadata communicates those official mirrors to the client so that it can
automatically do something useful with that information.

closes #14 https://gitlab.com/fdroid/fdroidserver/issues/14
2016-02-17 10:40:07 +01:00
Hans-Christoph Steiner
a7a053c4f5 use utf-8 as default encoding for config.py
This makes it easy to add all languages to the description.
2016-02-17 00:26:16 +01:00
Hans-Christoph Steiner
f861faa86d Merge branch 'full-bsd-osx-port' into 'master'
Full BSD/OSX port

This finishes up the OSX port by getting the full test suite running on OSX.  It also sets up an OSX CI job travis-ci.org, run as part of the github mirror here: https://github.com/f-droid/fdroidserver  You can see those CI builds here: https://travis-ci.org/f-droid/fdroidserver

This should translate entirely to *BSD since OSX's user land is merged with FreeBSD.

See merge request !100
2016-02-15 22:09:55 +00:00
Hans-Christoph Steiner
78151c04c5 travis-ci: make pip install deps based on setup.py 2016-02-15 23:06:32 +01:00
Hans-Christoph Steiner
a28ede2b67 PEP8 fix E225 missing whitespace around operator 2016-02-15 23:06:31 +01:00
Hans-Christoph Steiner
46d754416d travis-ci: run test suite on OSX and GNU/Linux 2016-02-15 23:06:31 +01:00
Hans-Christoph Steiner
0bdbadabff init: check if examples/ exists in layout before using the path
There is definitely some odd stuff that happens in all these paths, so
let's just check that examples/ exists, and move on from there.
2016-02-15 23:06:31 +01:00
Hans-Christoph Steiner
c9394b1c99 pre-commit: make pyflakes optional to support older platforms
Travis-CI defaults to Ubuntu/precise, which has a very old version of
pyflakes that throws false positives.
2016-02-15 23:06:31 +01:00
Hans-Christoph Steiner
2983f3505d support BSD and GNU sed in tests 2016-02-15 23:06:31 +01:00
Hans-Christoph Steiner
c91b715a15 run-tests: use OSX/BSD compatible mktemp -d
-d requires an arg on BSD
2016-02-15 23:06:31 +01:00
Hans-Christoph Steiner
ff30bded21 only test ./gendocs on GNU/Linux
This helps with getting the tests running on OSX and other platforms.
2016-02-15 23:06:31 +01:00
Hans-Christoph Steiner
5f1e57c7e6 complete-ci-tests: exit with error if setup is not correct 2016-02-15 23:06:31 +01:00
Daniel Martí
f06afe7884 Forgot to remove the output= debug prints 2016-02-15 13:49:12 +00:00
Daniel Martí
437d06c51e pre-commit: fix multiple file issue
When using -z, you should always quote. If not, stuff like this happens:

	.git/hooks/pre-commit: line 10: [: too many arguments
2016-02-15 12:04:34 +00:00
Daniel Martí
9800ed1a1a output= is now a glob path and can do gradle 2016-02-15 12:02:45 +00:00
Daniel Martí
da0a787879 Add gradle 2.11 2016-02-15 12:02:45 +00:00
Daniel Martí
9520839984 gradle wrapper script: add plugin 1.5 2016-02-15 12:02:45 +00:00
Daniel Martí
c2270f8434 Merge branch 'master' into 'master'
a couple fixes

these are three fixes, one related to my previous merge request, as discussed with @mvdan in IRC

See merge request !99
2016-02-12 09:13:53 +00:00
Hans-Christoph Steiner
5780c14df2 fix PEP9 E713 test for membership should be 'not in' 2016-02-12 08:33:22 +01:00
Hans-Christoph Steiner
dfca237329 fix errors in pre-commit hook when run in test suite 2016-02-12 08:33:22 +01:00
Hans-Christoph Steiner
8489047bcf build: check that metadata is present before creating tmp dirs
Before, `fdroid build` would create some subdirs, then fail when it could
not read the metadata via metadata.read_metadata().  This checks before
whether there is any metadata available, and warns the user accordingly.
2016-02-12 08:33:22 +01:00
Hans-Christoph Steiner
751fd3fb0a common: do not crash if the java_paths are not what is expected
Many commands work without the JDK installed, and it is also possible that
someone is using only JDK 8 or 9.
2016-02-12 08:33:21 +01:00
Daniel Martí
7feeaad095 common: add regexp for arch oracle paths 2016-02-11 21:48:51 +00:00
Daniel Martí
28db5b82c2 common: fix JDK detection on latest arch 2016-02-11 21:34:44 +00:00
Hans-Christoph Steiner
6fc62fe609 Merge branch 'auto-detect-java-homes' into 'master'
Auto detect java homes

There are a wide variety of possible JDKs (OpenJDK, Oracle, OSX, etc.) as well as standard paths for the JDK.  This includes code to look in standard paths for various platforms and enumerate the installed JDKs (e.g. 6, 7, 8, 9).  That is then used for `JAVA[6-9]_HOME` env vars and the path for `jarsigner` and `keytool`.

See merge request !98
2016-02-11 20:47:29 +00:00
Hans-Christoph Steiner
69c81c3817 use jarsigner and keytool from same JDK as is being set in JAVA7_HOME
Using the same JDK throughout should prevent weird bugs where a setup might
use Java8's jarsigner and Java7's keytool.  This also allows the user to
set java_paths and have jarsigner and keytool used from that specified JDK.

This incorporates almost all of the patch that is in the Debian package
that forces fdroidserver to use the default JDK on that Debian release.

closes #93 https://gitlab.com/fdroid/fdroidserver/issues/93
2016-02-11 21:17:23 +01:00
Hans-Christoph Steiner
fdf17e809c automatically detect various installed JDKs and set JAVA[6-9]_HOME
This checks for which JDKs are installed in common locations, then sets the
JAVA[6-9]_HOME env vars needed by some build environments.
2016-02-11 21:17:23 +01:00
Hans-Christoph Steiner
7f451a815b makebuildserver: add workaround to Ubuntu/trusty's old paramiko
Ubuntu trusty 14.04's paramiko does not work with jessie's openssh's
default settings, so they need to be tweaked in order to provide working
ssh to the instance.

https://stackoverflow.com/questions/7286929/paramiko-incompatible-ssh-peer-no-acceptable-kex-algorithm/32691055#32691055
2016-02-11 20:27:30 +01:00
Daniel Martí
1f59d6f0cf Merge branch 'jmastr/use_tag_if_version_name_is_unknown' into 'master'
use tag if version name is unknown

If we don't find the version name neither in the AndroidManifest.xml nor
in the build.grade file, we fallback to the tag the user specified to
search for.

That way we have a better version name than 'Unknown'.

See merge request !97
2016-02-11 19:06:22 +00:00
Julian Strobl
dd0b38a7e5 use tag if version name is unknown
If we don't find the version name neither in the AndroidManifest.xml nor
in the build.grade file, we fallback to the tag the user specified to
search for.

That way we have a better version name than 'Unknown'.
2016-02-11 19:50:16 +01:00
Daniel Martí
45d99d1cc9 Merge branch 'prevo' into 'master'
Add libexpat1-dev and libglib2.0-dev to the default recipe

These are needed to build the PrevoDB srcdep of
uk.co.busydoingnothing.prevo.

See merge request !96
2016-02-10 15:57:19 +00:00
Neil Roberts
c9404c8e39 Add libexpat1-dev and libglib2.0-dev to the default recipe
These are needed to build the PrevoDB srcdep of
uk.co.busydoingnothing.prevo.
2016-02-10 14:59:13 +00:00
Daniel Martí
a26a057b90 Merge branch 'jenkins-makebuildserver-works' into 'master'
Jenkins ./makebuildserver works!

These commits get `./makebuildserver` running in a Jenkins job. It builds the whole setup from scratch every time, including the vagrant and virtualbox setups.

Also, this modifies the git pre-commit hook to only run on the files being committed when called by git.

See merge request !95
2016-02-08 16:07:27 +00:00
Hans-Christoph Steiner
2ea38fa7e3 test ./makebuildserver by running a build in jenkins 2016-02-04 20:18:03 +01:00
Hans-Christoph Steiner
2d2ac66a26 script to run ./makebuildserver on Jenkins instances
This is being used to run it on both Guardian Project's and Debian's
Jenkins instances.
2016-02-04 20:16:35 +01:00
Hans-Christoph Steiner
09daa5eee0 makebuildserver: default memory to 1024MB, so it runs on normal machines
4 gigs is still a common amount of RAM these days for laptops, if the VM
takes almost all of that, it makes the machine drag to almost a halt. Most
apps build fine in 1gig of RAM, indeed that's the default for most CI
instances, like travis-ci and gitlab-ci.
2016-02-03 14:54:14 +01:00
Hans-Christoph Steiner
dd93505fce allow setting up an apt package cache for the build server setup
This creates a cache folder which will store the apt cache from the VM.
2016-02-03 14:54:14 +01:00