chiark / gitweb /
fdroidserver.git
6 years agoMerge branch 'patch-1' into 'master'
Hans-Christoph Steiner [Tue, 24 Oct 2017 13:40:53 +0000 (13:40 +0000)]
Merge branch 'patch-1' into 'master'

HTTP, HTTPS

See merge request fdroid/fdroidserver!360

6 years agocommon: check file existence before opening manifest
Marcus Hoffmann [Tue, 24 Oct 2017 13:19:38 +0000 (15:19 +0200)]
common: check file existence before opening manifest

This fixes a problem when there is a broken symlink with the name
AndroidManifest.xml which will then lead to a crash when trying to open
it for trying to remove the debuggable flag.

6 years agoMerge branch 'deploy-localization-support' into 'master'
Hans-Christoph Steiner [Mon, 23 Oct 2017 10:27:22 +0000 (10:27 +0000)]
Merge branch 'deploy-localization-support' into 'master'

Deploy localization support

See merge request fdroid/fdroidserver!356

6 years agoHTTP, HTTPS
Allan Nordhøy [Sun, 22 Oct 2017 06:43:18 +0000 (06:43 +0000)]
HTTP, HTTPS

6 years agoMerge branch 'remove_basebox_ref' into 'master'
Hans-Christoph Steiner [Fri, 20 Oct 2017 19:54:50 +0000 (19:54 +0000)]
Merge branch 'remove_basebox_ref' into 'master'

makebuildserver: remove reference to f-droid.org/jessie64.box

See merge request fdroid/fdroidserver!357

6 years agomakebuildserver: remove reference to f-droid.org/jessie64.box
Marcus Hoffmann [Fri, 20 Oct 2017 02:38:39 +0000 (04:38 +0200)]
makebuildserver: remove reference to f-droid.org/jessie64.box

Also improve error message when the initial vagrant up fails, this is
most likely due to the missing jessie64.box file.

6 years agofix egg-link and easy_install support for Python3
Hans-Christoph Steiner [Thu, 19 Oct 2017 20:48:38 +0000 (22:48 +0200)]
fix egg-link and easy_install support for Python3

Wow, this is hacky and weird, but its been there for a long time. I
don't know if its even relevant anymore, but is isolated so it
shouldn't hurt anything.  Plus there is a test for it in
tests/complete-ci-tests, so it seems worth fixing.

6 years agofix finding translation files when installed
Hans-Christoph Steiner [Thu, 19 Oct 2017 20:36:19 +0000 (22:36 +0200)]
fix finding translation files when installed

6 years agoadd some context to some strings that are confusing to translators
Hans-Christoph Steiner [Thu, 19 Oct 2017 20:13:52 +0000 (22:13 +0200)]
add some context to some strings that are confusing to translators

6 years agostandardize on "build-tools" as the name of that Android SDK component
Hans-Christoph Steiner [Thu, 19 Oct 2017 19:07:50 +0000 (21:07 +0200)]
standardize on "build-tools" as the name of that Android SDK component

6 years agoupdate localization source files with `make -C locale`
Hans-Christoph Steiner [Thu, 19 Oct 2017 16:02:00 +0000 (18:02 +0200)]
update localization source files with `make -C locale`

* `make -C locale` updates all the sources
* `make -C locale compile` can compile the binaries, but the preferred way
  is `python3 setup.py compile_catalog`.

6 years agouse Babel to compile localizations and include in source tarball
Hans-Christoph Steiner [Thu, 19 Oct 2017 16:00:04 +0000 (18:00 +0200)]
use Babel to compile localizations and include in source tarball

python3-babel was also included in the gitlab-ci docker image:
https://gitlab.com/fdroid/ci-images-server/commit/ffc08dbc1daabfda725de41b712497708213b00e

6 years agoinclude in source tarball: be de es es_AR fr nb pt_BR tr uk zh_Hans zh_Hant
Hans-Christoph Steiner [Thu, 19 Oct 2017 15:35:29 +0000 (17:35 +0200)]
include in source tarball: be de es es_AR fr nb pt_BR tr uk zh_Hans zh_Hant

The way to officially include a new language in the source tarball is to
add it to the MANIFEST.in.  Otherwise, it will not be included in the
source tarball, and therefore won't be installed when using apt, pip, etc.

6 years agoupdate: make strings translatable
Hans-Christoph Steiner [Thu, 19 Oct 2017 18:52:15 +0000 (20:52 +0200)]
update: make strings translatable

6 years agoinclude README.rst in official release source tarball
Hans-Christoph Steiner [Thu, 19 Oct 2017 14:41:47 +0000 (16:41 +0200)]
include README.rst in official release source tarball

README.rst is still the standard for Python libs.

6 years agoFDroidException handle Exceptions that return things other than str
Hans-Christoph Steiner [Thu, 19 Oct 2017 18:37:39 +0000 (20:37 +0200)]
FDroidException handle Exceptions that return things other than str

This is related to a4c4a16ed9a600b09ff7b62d78eaceb377cf3a9c

6 years agotests: make `pip3 install` quieter for shorter CI logs
Hans-Christoph Steiner [Wed, 18 Oct 2017 12:58:07 +0000 (14:58 +0200)]
tests: make `pip3 install` quieter for shorter CI logs

6 years agotravis-ci: get OSX tests running again...
Hans-Christoph Steiner [Wed, 18 Oct 2017 11:40:32 +0000 (13:40 +0200)]
travis-ci: get OSX tests running again...

Java9 is starting to roll out on some of the Travis CI machines, but
the Android SDK does not yet work on Java9, it throws:

java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema

6 years agoMerge branch '391-fdroid-publish-unknown-execption' into 'master'
Hans-Christoph Steiner [Wed, 18 Oct 2017 13:11:24 +0000 (13:11 +0000)]
Merge branch '391-fdroid-publish-unknown-execption' into 'master'

better error message in publish when repo_key is not set

Closes #391

See merge request fdroid/fdroidserver!352

6 years agobetter error message in publish when repo_key is not set
Michael Pöhn [Mon, 16 Oct 2017 16:11:57 +0000 (18:11 +0200)]
better error message in publish when repo_key is not set

6 years ago`make update` to update all translation files from source code
Hans-Christoph Steiner [Tue, 17 Oct 2017 15:41:20 +0000 (17:41 +0200)]
`make update` to update all translation files from source code

6 years agoMerge branch 'weblate' into 'master'
Hans-Christoph Steiner [Tue, 17 Oct 2017 16:24:26 +0000 (16:24 +0000)]
Merge branch 'weblate' into 'master'

Weblate

See merge request fdroid/fdroidserver!354

6 years agoWeblate
Hans-Christoph Steiner [Tue, 17 Oct 2017 16:24:25 +0000 (16:24 +0000)]
Weblate

6 years agojenkins-build-makebuildserver: use current version for test build
Hans-Christoph Steiner [Tue, 17 Oct 2017 13:53:01 +0000 (15:53 +0200)]
jenkins-build-makebuildserver: use current version for test build

6 years agoMerge branch '1.0-fixes' into 'master'
Torsten Grote [Tue, 17 Oct 2017 14:19:47 +0000 (14:19 +0000)]
Merge branch '1.0-fixes' into 'master'

1.0 fixes

Closes #357

See merge request fdroid/fdroidserver!353

6 years agoinclude all argparse strings in translation template
Hans-Christoph Steiner [Fri, 13 Oct 2017 12:50:22 +0000 (14:50 +0200)]
include all argparse strings in translation template

The Python argparse library has its own strings, which are translatable
via gettext.  This gets those sources strings from the library, and
includes them in this project.  Since gettext is invoked and configured
in fdroidserver, fdroidserver needs to handle the translations for the
libraries it uses.

6 years agoupdate translation template and add file context for each string
Hans-Christoph Steiner [Fri, 13 Oct 2017 12:55:07 +0000 (14:55 +0200)]
update translation template and add file context for each string

The file context lets the translators know which command the string applies
to.  It does not have line numbers, since those are less useful, while
causing lots of merge conflicts.

6 years agoupdate: support Fastlane's official location for screenshots
Hans-Christoph Steiner [Tue, 10 Oct 2017 10:41:49 +0000 (12:41 +0200)]
update: support Fastlane's official location for screenshots

fastlane/android/metadata/locale/images/*Screenshots

https://github.com/fastlane/fastlane/blob/2.61.0/screengrab/lib/screengrab/runner.rb#L324

closes #357

6 years agoupdate: fix detection of Triple-T screenshots
Hans-Christoph Steiner [Tue, 10 Oct 2017 10:29:04 +0000 (12:29 +0200)]
update: fix detection of Triple-T screenshots

* https://github.com/westnordost/StreetComplete/issues/489
* https://forum.f-droid.org/t/screenshots-dont-show-up-in-client-using-gradle-play-publisher/881/2

#357

6 years agoserver: automatically create S3 bucket when using s3cmd
Hans-Christoph Steiner [Fri, 29 Sep 2017 15:50:23 +0000 (17:50 +0200)]
server: automatically create S3 bucket when using s3cmd

6 years agoserver: move strings to be gettext translatable
Hans-Christoph Steiner [Fri, 29 Sep 2017 15:49:48 +0000 (17:49 +0200)]
server: move strings to be gettext translatable

6 years agohandle exceptions that send a tuple for the error message
Hans-Christoph Steiner [Wed, 27 Sep 2017 15:35:51 +0000 (17:35 +0200)]
handle exceptions that send a tuple for the error message

Running `fdroid verify` I was seeing FDroidExceptions from verify.py:98
that had a tuple rather than a string.

Traceback (most recent call last):
  File "/home/hans/code/fdroid/server/fdroid", line 152, in <module>
    main()
  File "/home/hans/code/fdroid/server/fdroid", line 128, in main
    mod.main()
  File "/home/hans/code/fdroid/server/fdroidserver/verify.py", line 98, in main
    logging.info("...NOT verified - {0}".format(e))
  File "/home/hans/code/fdroid/server/fdroidserver/exception.py", line 22, in __str__
    ret += "\n==== detail begin ====\n%s\n==== detail end ====" % ''.join(self.detail).strip()
TypeError: sequence item 1: expected str instance, HTTPError found

6 years agoMerge branch 'error_on_jars' into 'master'
Hans-Christoph Steiner [Thu, 12 Oct 2017 11:46:59 +0000 (11:46 +0000)]
Merge branch 'error_on_jars' into 'master'

RFC: Error on jars

See merge request fdroid/fdroidserver!325

6 years agoMerge branch 'gradle-4.2.1' into 'master'
Hans-Christoph Steiner [Sun, 8 Oct 2017 19:06:09 +0000 (19:06 +0000)]
Merge branch 'gradle-4.2.1' into 'master'

makebuildserver: add Gradle 4.2.1

See merge request fdroid/fdroidserver!351

6 years agomakebuildserver: add Gradle 4.2.1
relan [Sun, 8 Oct 2017 18:10:43 +0000 (21:10 +0300)]
makebuildserver: add Gradle 4.2.1

N.B. Actual address of the distribution server is downloads.gradle.org;
services.gradle.org redirects to it.

6 years agoMerge branch '334-make-index-generation-fully-reproducible' into 'master'
Michael Pöhn [Fri, 6 Oct 2017 17:18:10 +0000 (17:18 +0000)]
Merge branch '334-make-index-generation-fully-reproducible' into 'master'

Resolve "make index generation fully reproducible"

Closes #334

See merge request fdroid/fdroidserver!343

6 years agoMerge branch 'print-vcs-client-version' into 'master'
Hans-Christoph Steiner [Fri, 6 Oct 2017 09:07:13 +0000 (09:07 +0000)]
Merge branch 'print-vcs-client-version' into 'master'

common: print VCS client version

See merge request fdroid/fdroidserver!349

6 years agocommon: print VCS client version
relan [Fri, 6 Oct 2017 06:37:47 +0000 (09:37 +0300)]
common: print VCS client version

This may help to debug issues with too old VCS clients.

6 years agoMerge branch 'fix_bare_except' into 'master'
Hans-Christoph Steiner [Wed, 4 Oct 2017 20:13:46 +0000 (20:13 +0000)]
Merge branch 'fix_bare_except' into 'master'

fix bare except to satisfy newer pycodestyle

See merge request fdroid/fdroidserver!348

6 years agoMerge branch 'build-tools-26-0-2' into 'master'
Hans-Christoph Steiner [Wed, 4 Oct 2017 20:13:33 +0000 (20:13 +0000)]
Merge branch 'build-tools-26-0-2' into 'master'

add build-tools 26.0.2

See merge request fdroid/fdroidserver!347

6 years agofix bare except to satisfy newer pycodestyle
Marcus Hoffmann [Wed, 4 Oct 2017 17:23:53 +0000 (19:23 +0200)]
fix bare except to satisfy newer pycodestyle

6 years agoadd build-tools 26.0.2
Marcus Hoffmann [Wed, 4 Oct 2017 17:03:41 +0000 (19:03 +0200)]
add build-tools 26.0.2

6 years agoimport: fix bitbucket import
Marcus Hoffmann [Wed, 4 Oct 2017 16:18:30 +0000 (18:18 +0200)]
import: fix bitbucket import

repo type can be found on main url, not under /src

6 years agoMerge branch 'fix-dot-gradle-removal' into 'master'
Hans-Christoph Steiner [Tue, 3 Oct 2017 13:19:47 +0000 (13:19 +0000)]
Merge branch 'fix-dot-gradle-removal' into 'master'

build: fix build/ and .gradle/ removal after cleaning

Closes #384

See merge request fdroid/fdroidserver!346

6 years agoMerge branch '291-include-apk-signatures-in-build-metadata-file' into 'master'
Hans-Christoph Steiner [Tue, 3 Oct 2017 12:57:34 +0000 (12:57 +0000)]
Merge branch '291-include-apk-signatures-in-build-metadata-file' into 'master'

include APK signatures in build metadata file

Closes #291

See merge request fdroid/fdroidserver!287

6 years agobuild: fix build/ and .gradle/ removal after cleaning
relan [Sun, 1 Oct 2017 06:57:32 +0000 (09:57 +0300)]
build: fix build/ and .gradle/ removal after cleaning

An app may not have a top-level build.gradle file, while Gradle still
creates top-level .gradle/ directory. When build.gradle is absent,
fdroidserver will not remove .gradle/, scanner will find binaries in it
and fail the whole build.

Fix this by also checking for settings.gradle file (should always exist
in the top-level directory) in addition to build.gradle.

6 years agouse OrderedDict for localization data in index-v1
Michael Pöhn [Mon, 4 Sep 2017 00:23:17 +0000 (02:23 +0200)]
use OrderedDict for localization data in index-v1

6 years agomake sure all timestamps in index-v1 are utc
Michael Pöhn [Sun, 3 Sep 2017 21:07:43 +0000 (23:07 +0200)]
make sure all timestamps in index-v1 are utc

6 years agoconvert apk timestamp from filesystem to utc before storing
Michael Pöhn [Thu, 31 Aug 2017 09:46:12 +0000 (11:46 +0200)]
convert apk timestamp from filesystem to utc before storing

6 years agomake sure apk-added datetime only gets returned rounded to days
Michael Pöhn [Fri, 25 Aug 2017 23:44:02 +0000 (01:44 +0200)]
make sure apk-added datetime only gets returned rounded to days

6 years agoadd test for index-v1.json
Michael Pöhn [Fri, 22 Sep 2017 14:12:41 +0000 (16:12 +0200)]
add test for index-v1.json

6 years agosort antiFeatures list in index-v1.json
Michael Pöhn [Wed, 16 Aug 2017 03:46:32 +0000 (05:46 +0200)]
sort antiFeatures list in index-v1.json

6 years agostore fdroid signing-key-fp-list in stats dir
Michael Pöhn [Tue, 5 Sep 2017 13:17:22 +0000 (15:17 +0200)]
store fdroid signing-key-fp-list in stats dir

6 years agoadded some docstrings and error messages
Michael Pöhn [Tue, 19 Sep 2017 22:58:19 +0000 (00:58 +0200)]
added some docstrings and error messages

6 years agochoose best apk version vor index v0
Michael Pöhn [Wed, 9 Aug 2017 15:14:51 +0000 (17:14 +0200)]
choose best apk version vor index v0

6 years agosort index-v1; publish now creates and stores a list of signature fingerprints
Michael Pöhn [Tue, 19 Sep 2017 22:16:13 +0000 (00:16 +0200)]
sort index-v1; publish now creates and stores a list of signature fingerprints

6 years agoadded functions for storing/loading signer fingerprints to stats
Michael Pöhn [Tue, 19 Sep 2017 14:03:11 +0000 (16:03 +0200)]
added functions for storing/loading signer fingerprints to stats

6 years agoadded some developer-signing key metadata to tests
Michael Pöhn [Tue, 4 Jul 2017 08:53:16 +0000 (10:53 +0200)]
added some developer-signing key metadata to tests

6 years agofunction for finding developer signature in metadata
Michael Pöhn [Thu, 14 Sep 2017 14:46:43 +0000 (16:46 +0200)]
function for finding developer signature in metadata

6 years agoadd signer to index v1
Michael Pöhn [Tue, 19 Sep 2017 13:34:29 +0000 (15:34 +0200)]
add signer to index v1

6 years agoadded parse release filename function
Michael Pöhn [Sat, 23 Sep 2017 11:10:52 +0000 (13:10 +0200)]
added parse release filename function

6 years agoskip singing apks which ar not validating with signatures from metadata
Michael Pöhn [Tue, 13 Jun 2017 16:12:45 +0000 (18:12 +0200)]
skip singing apks which ar not validating with signatures from metadata

6 years agotest for common.get_app_id_aapt
Michael Pöhn [Tue, 12 Sep 2017 16:17:46 +0000 (18:17 +0200)]
test for common.get_app_id_aapt

6 years agotry injecting signatures for metadata when publishing
Michael Pöhn [Thu, 14 Sep 2017 14:23:04 +0000 (16:23 +0200)]
try injecting signatures for metadata when publishing

6 years agocheck file existance before trying to verify apks; use centext manager for zips when...
Michael Pöhn [Sun, 11 Jun 2017 23:48:29 +0000 (01:48 +0200)]
check file existance before trying to verify apks; use centext manager for zips when verifying apk

6 years agoadd common functions for dealing with apk signatures
Michael Pöhn [Sat, 23 Sep 2017 07:36:22 +0000 (09:36 +0200)]
add common functions for dealing with apk signatures

6 years agorefactored publishing source tarball into a function
Michael Pöhn [Thu, 8 Jun 2017 10:52:11 +0000 (12:52 +0200)]
refactored publishing source tarball into a function

6 years agocommon function for fetching sha256 signing-key fingerprint
Michael Pöhn [Sat, 23 Sep 2017 07:02:50 +0000 (09:02 +0200)]
common function for fetching sha256 signing-key fingerprint

6 years agoMerge branch 'build-drozer-syntax-error' into 'master'
Hans-Christoph Steiner [Tue, 26 Sep 2017 08:49:51 +0000 (08:49 +0000)]
Merge branch 'build-drozer-syntax-error' into 'master'

building with --dscanner now exits gracefully when repo dir not present

See merge request fdroid/fdroidserver!344

6 years agotests: test setting up app git repo like `fdroid build` does
Hans-Christoph Steiner [Mon, 25 Sep 2017 14:34:25 +0000 (16:34 +0200)]
tests: test setting up app git repo like `fdroid build` does

I wrote this to try to find #379 but this test didn't trigger that bug.

6 years agotests: add setUp() method to common to handle standard stuff
Hans-Christoph Steiner [Mon, 25 Sep 2017 14:28:22 +0000 (16:28 +0200)]
tests: add setUp() method to common to handle standard stuff

6 years agomove lots of comments to function doc strings
Hans-Christoph Steiner [Wed, 20 Sep 2017 15:22:56 +0000 (17:22 +0200)]
move lots of comments to function doc strings

6 years agotravis-ci: quiet output for pip/sdkmanager installs
Hans-Christoph Steiner [Wed, 20 Sep 2017 13:54:50 +0000 (15:54 +0200)]
travis-ci: quiet output for pip/sdkmanager installs

The log was getting way too long.

6 years agoupdate MANIFEST.in
Hans-Christoph Steiner [Wed, 20 Sep 2017 10:23:41 +0000 (12:23 +0200)]
update MANIFEST.in

There were a number of new files missing.  Some files still manually
excluded.  Generated using:

 for f in `git ls-tree -r master --name-only | sort`; do echo include $f; done

6 years agouse pandoc to convert README.md to PyPI's reST format
Hans-Christoph Steiner [Wed, 20 Sep 2017 09:48:49 +0000 (11:48 +0200)]
use pandoc to convert README.md to PyPI's reST format

PyPI and Python packages expect the description to be in reST format, which
is a lot different than Markdown.  This does the conversion if pandoc is
installed.

6 years agobuild+drozer: error message instead of crash when repo-folder missing
Michael Pöhn [Mon, 25 Sep 2017 14:09:57 +0000 (16:09 +0200)]
build+drozer: error message instead of crash when repo-folder missing

6 years agoMerge branch 'gradle-4.2' into 'master'
Hans-Christoph Steiner [Mon, 25 Sep 2017 12:17:34 +0000 (12:17 +0000)]
Merge branch 'gradle-4.2' into 'master'

makebuildserver: add Gradle 4.2

See merge request fdroid/fdroidserver!342

6 years agomakebuildserver: add Gradle 4.2
relan [Sat, 23 Sep 2017 07:04:39 +0000 (10:04 +0300)]
makebuildserver: add Gradle 4.2

6 years agoMerge branch 'port-to-osx-and-trusty' into 'master'
Hans-Christoph Steiner [Wed, 20 Sep 2017 15:24:57 +0000 (15:24 +0000)]
Merge branch 'port-to-osx-and-trusty' into 'master'

port to OSX and Ubuntu/trusty

See merge request fdroid/fdroidserver!341

6 years agotravis-ci: always reinstall Java on OSX to get recent version
Hans-Christoph Steiner [Tue, 19 Sep 2017 18:10:25 +0000 (20:10 +0200)]
travis-ci: always reinstall Java on OSX to get recent version

The Travis images have quite old versions of Java currently.

6 years agotravis-ci: test on older OSX versions
Hans-Christoph Steiner [Sun, 17 Sep 2017 10:54:43 +0000 (12:54 +0200)]
travis-ci: test on older OSX versions

6 years agotests: use ci-test-app with current Gradle Android Plugin
Hans-Christoph Steiner [Tue, 19 Sep 2017 14:41:50 +0000 (16:41 +0200)]
tests: use ci-test-app with current Gradle Android Plugin

This works around the gradle 2.x bug where versions newer than 2.9 cannot
run things.  This also then specifies the version of Gradle Android Plugin
that is included in Debian/stretch.

6 years agotests: support Java setups where MD5 is not disabled by default
Hans-Christoph Steiner [Tue, 19 Sep 2017 18:01:15 +0000 (20:01 +0200)]
tests: support Java setups where MD5 is not disabled by default

For platforms using Java < 1.8.0_133, MD5 is still enabled for JAR
signatures.  Its just too painful to manage all this, so support this
in the tests.

6 years agotests: don't run gpgsign tests on Travis CI's OSX, gpg always fails
Hans-Christoph Steiner [Thu, 14 Sep 2017 12:34:29 +0000 (14:34 +0200)]
tests: don't run gpgsign tests on Travis CI's OSX, gpg always fails

6 years agotravis-ci: make Trusty builds a first class citizen
Hans-Christoph Steiner [Tue, 19 Sep 2017 17:58:45 +0000 (19:58 +0200)]
travis-ci: make Trusty builds a first class citizen

Trusty is used in Travis-CI, Windows Subsystem for Linux, and many other
places, so its an important target platform to test on.  This provides
testing for the backports in the Launchpad PPAs like:

* https://launchpad.net/~fdroid/+archive/ubuntu/fdroidserver
* https://launchpad.net/~fdroid/+archive/ubuntu/buildserver

6 years agotravis-ci: update OSX CI build to work again
Hans-Christoph Steiner [Tue, 19 Sep 2017 17:58:31 +0000 (19:58 +0200)]
travis-ci: update OSX CI build to work again

6 years agotests: support Ubuntu/trusty's python3.4-venv
Hans-Christoph Steiner [Fri, 15 Sep 2017 21:25:07 +0000 (23:25 +0200)]
tests: support Ubuntu/trusty's python3.4-venv

6 years agotests: prefer GNU sed on BSD/OSX, BSD's sed has lame syntax
Hans-Christoph Steiner [Sat, 16 Sep 2017 08:03:17 +0000 (10:03 +0200)]
tests: prefer GNU sed on BSD/OSX, BSD's sed has lame syntax

https://blog.remibergsma.com/2012/09/18/sed-inline-editing-different-on-mac-osx/

6 years agoallow spaces in filenames
Hans-Christoph Steiner [Tue, 19 Sep 2017 08:57:29 +0000 (10:57 +0200)]
allow spaces in filenames

This fixes all the bugs I could find that prevented fdroid from
handling files with spaces in them.  This is more important now that
fdroid supports random media files, and Repomaker

6 years agotests: move test APK with bad unicode filename to separate test
Hans-Christoph Steiner [Tue, 19 Sep 2017 14:48:20 +0000 (16:48 +0200)]
tests: move test APK with bad unicode filename to separate test

This filename has some messed up bytes related to bi-directional script
that is included (Left-to-Right and Right-to-Left).  GNU/Linux always
interprets filenames as pure byte sequences.  Windows and OSX store
filenames as Unicode strings.  So on OSX, the invalid filename gets
converted to a valid name.  That works fine, but the test fails because it
is compared to a file generated on Ubuntu, where it preserves the byte
sequence.

This includes an APK with a valid Unicode filename that includes
bi-directional script.

6 years agoindex: always use jarsigner for verifying JAR signatures
Hans-Christoph Steiner [Tue, 19 Sep 2017 13:07:19 +0000 (15:07 +0200)]
index: always use jarsigner for verifying JAR signatures

apksigner v0.7 (build-tools 26.0.1), Google made it require that the
AndroidManifest.xml was present in the archive before it verifies the
signature.  So this needs to stick with the jarsigner hack for JARs.

6 years agoinit: prompt user for Android SDK path using platform-specific default
Hans-Christoph Steiner [Tue, 19 Sep 2017 08:55:16 +0000 (10:55 +0200)]
init: prompt user for Android SDK path using platform-specific default

6 years agocreate blank config.py using cross-platform technique
Hans-Christoph Steiner [Sun, 17 Sep 2017 19:54:21 +0000 (21:54 +0200)]
create blank config.py using cross-platform technique

os.mknod() fails on OSX with:

Traceback (most recent call last):

  File "/Users/travis/build/fdroidtravis/fdroidserver/tests/../fdroid", line 154, in <module>
    main()
  File "/Users/travis/build/fdroidtravis/fdroidserver/tests/../fdroid", line 130, in main
    mod.main()
  File "/Users/travis/build/fdroidtravis/fdroidserver/fdroidserver/update.py", line 1768, in main
    common.write_to_config(config, 'repo_keyalias', config['repo_keyalias'])
  File "/Users/travis/build/fdroidtravis/fdroidserver/fdroidserver/common.py", line 2328, in write_to_config
    os.mknod(cfg)
PermissionError: [Errno 1] Operation not permitted

6 years agoMerge branch 'first-working-localization' into 'master'
Hans-Christoph Steiner [Tue, 19 Sep 2017 18:12:41 +0000 (18:12 +0000)]
Merge branch 'first-working-localization' into 'master'

First working localization

See merge request fdroid/fdroidserver!340

6 years agoupdate translation template with latest strings
Hans-Christoph Steiner [Fri, 15 Sep 2017 21:40:11 +0000 (23:40 +0200)]
update translation template with latest strings

6 years agoadd Makefile to handle refreshing translation template
Hans-Christoph Steiner [Fri, 15 Sep 2017 21:39:32 +0000 (23:39 +0200)]
add Makefile to handle refreshing translation template

To generate the translation files, run `make -C locale`or
`cd locale && make`

To update the template, run `make -C locale template` or
`cd locale && make fdroidserver.pot`

6 years agofix string formats that are ambiguous for translators
Hans-Christoph Steiner [Fri, 15 Sep 2017 21:20:29 +0000 (23:20 +0200)]
fix string formats that are ambiguous for translators

6 years agoensure _ is used only for gettext strings
Hans-Christoph Steiner [Fri, 15 Sep 2017 19:48:45 +0000 (21:48 +0200)]
ensure _ is used only for gettext strings

_ is often used for variables that are ignored, this makes that a bit more
explicit
!338

6 years agoEnglish source string corrections
Hans-Christoph Steiner [Fri, 15 Sep 2017 20:20:18 +0000 (22:20 +0200)]
English source string corrections

From @monolifed <monolifed@gmail.com>

6 years ago"No config.py found" should warning level, until people get use to it
Hans-Christoph Steiner [Sat, 16 Sep 2017 08:41:12 +0000 (10:41 +0200)]
"No config.py found" should warning level, until people get use to it

Since !335 changed the long standing behavior, now allowing `fdroid` to
work without a config.py being present, this message should be quite
visible in case people are expecting `fdroid` to fail when there is no
config.py present.