Michael Pöhn
e83221eb03
improve yaml build flag check cost; added unit test for unknown app fields, builds flags checks when parsing yaml
2018-08-14 12:31:12 +02:00
Michael Pöhn
25b4a47951
check for unknown app fields and build flags when parsing yml
2018-08-14 12:31:12 +02:00
Michael Pöhn
1e7d9b854d
never interpret "disable" as bool in yaml metadata
2018-08-02 17:31:58 +02:00
Hans-Christoph Steiner
b03c4a7353
NoSourceSince Anti-Feature should only be added to index
...
Before, it was being added to the metadata, so that rewritemeta would
output it.
fdroid/fdroidserver!529
#508
2018-07-10 23:32:07 +02:00
Izzy
5d8e1bde4f
new AntiFeature: SourceGone (automatically set at NoSourceSince). closes #508
2018-07-10 12:36:49 +00:00
Hans-Christoph Steiner
ff90c0246e
fix PEP8 W605 invalid escape sequence
...
Python 3.7 will get a lot stricter with escape sequences. They must be
valid.
* https://lintlyci.github.io/Flake8Rules/rules/W605.html
* https://docs.python.org/3/whatsnew/3.6.html#deprecated-python-behavior
2018-05-29 13:51:47 +02:00
relan
4d56c6c262
metadata: write values of TYPE_INT fields
...
Otherwise we end up with empty values after "fdroid rewritemeta".
2018-02-11 09:51:53 +03:00
Hans-Christoph Steiner
05eef5a454
metadata: add new Translation app field for URL for contributions
...
This is a field requested from a bunch of translators so they can easily
find where to translate apps:
https://forum.f-droid.org/t/translation-field-for-app-entries/1403/5
2018-02-05 15:45:12 +01:00
relan
86f34ee70a
build: make per-build hard time limit customizable
...
Add "timeout=n" metadata field that overrides build timeout (in seconds).
The default is 7200, i.e. 2 hours.
2018-01-30 11:14:50 +03:00
Hans-Christoph Steiner
099c98bc60
metadata: fix crash when there are duplicate metadata files
...
The string had the variable 'appid' while the format() call had only the
variable 'path'. This also standardizes on 'appid' like the rest of the
code.
2018-01-26 10:18:42 +01:00
Hans-Christoph Steiner
513c95894c
build: remove unused, unmaintained Kivy build method
...
This code has never been used and contains some insecure uses of shell=True
Building Kivy apps should be done with the buildozer=yes method. The
buildozer method should probably be moved to a provisioner once that is in
place.
2018-01-23 23:16:05 +01:00
Marcus Hoffmann
e775d330c2
build: fix --no-refresh
...
This was broken by the in-source-tree .fdroid.yml file support.
Also support this for building on the buildserver.
2017-12-26 00:20:17 +01:00
Andrea Scarpino
19a83b6219
Add Liberapay support
2017-12-12 11:53:31 +01:00
Hans-Christoph Steiner
4af8f196e3
metadata: error if .fdroid.txt exists, it is unsupported
...
Using .txt format has bugs when used embedded in an app's git repo, so
tell the user to use YAML or JSON.
#364
2017-12-11 22:11:16 +01:00
Marcus Hoffmann
0f18005104
metadata: make help for metadata -W option clearer
...
specify possible choices and provide clearer help text
2017-12-07 20:28:27 +01:00
Hans-Christoph Steiner
30b2f5a48a
build: sort fdroid build --all by most recently changed first
2017-11-30 17:32:53 +01:00
Hans-Christoph Steiner
230d8971ba
metadata: make all strings translatable
2017-10-25 23:01:25 +02:00
Hans-Christoph Steiner
ffc91e301a
make _ always be the gettext function, nothing else
...
This avoids hard bugs where the _() function gets overidden by a str or
something else.
2017-10-25 23:01:25 +02:00
Hans-Christoph Steiner
255932453c
ensure _ is used only for gettext strings
...
_ is often used for variables that are ignored, this makes that a bit more
explicit
!338
2017-09-16 13:19:38 +02:00
Hans-Christoph Steiner
278d67d960
implement gettext localization
...
This allows all the text to be localized via Weblate. This is a quick
overview of all the strings, but there are certainly some that were left
out.
closes #342
2017-09-15 11:39:00 +02:00
Marcus Hoffmann
a9a19527c7
metadata: also read .fdroid.txt metadata
...
This is documented as working here:
https://f-droid.org/docs/Building_Applications/
(second to last paragraph)
fixes #364
2017-08-22 00:03:43 +02:00
Hans-Christoph Steiner
c67f8e349c
metadata: handle empty YAML files without crashing
...
!311
2017-07-26 18:21:28 -07:00
Izzy
b787ec9e34
Updating syntax check for Flattr (see #284 )
2017-07-20 20:26:25 +02:00
Hans-Christoph Steiner
dfb07808d3
support configing buildserver VM per-build with sudo=
...
This adds the 'sudo' build field, which is just a script that is run as
root. For more info, see the issue that this closes:
refs #318
closes #317
2017-07-06 17:29:23 +02:00
Hans-Christoph Steiner
abe422fd7a
handle App instance with no Builds when writing YAML
2017-07-06 16:00:44 +02:00
Hans-Christoph Steiner
df99c85ca6
support manually adding per-build antiFeatures in metadata
...
For cases like the OpenVPN vuln that was recently announced, it is useful
for fdroiddata maintainers to be able to mark builds that have known
vulnerabilities.
2017-07-06 12:25:48 +02:00
Hans-Christoph Steiner
b34d5c83b9
Merge branch '343-ruamel-yaml-version-check' into 'master'
...
check version of ruamel.yaml and raise according error message
See merge request !301
2017-07-06 08:10:14 +00:00
Michael Pöhn
4ca57ebfbb
check version of ruamel.yaml and raise according error message
2017-07-06 09:07:54 +02:00
Izzy
4d9c60d352
added new AntiFeature: ApplicationDebuggable
...
Useful e.g. for "test repositories" to indicate an app was compiled with
"application-debuggable"
2017-07-04 21:15:04 +02:00
Michael Pöhn
1b362c2183
correct yaml-rewriting for buildozer flag
2017-07-04 13:27:45 +02:00
Michael Pöhn
0980fb4df8
import ruamel.ymal only when re-writing yaml metadata
2017-07-04 11:51:08 +02:00
Michael Pöhn
19d422da86
rewritemeta yaml: fixed boolen mapping for build flags
2017-07-04 11:51:08 +02:00
Michael Pöhn
056a28f897
fix indentation
2017-07-04 11:51:08 +02:00
Michael Pöhn
75ebb6e8cc
fix building with yml metadata
2017-07-04 11:51:08 +02:00
Michael Pöhn
7ab197be2e
completed ordered yaml field list
2017-07-04 11:51:08 +02:00
Michael Pöhn
f1e0089931
prettify write_yaml metadata
2017-07-04 11:51:08 +02:00
Michael Pöhn
7aa92abebc
yaml rewrite version code as int
2017-07-04 11:51:08 +02:00
Michael Pöhn
f9d4007ea6
rewrite metadata builds list to yaml
2017-07-04 11:51:08 +02:00
Michael Pöhn
fbd5e8772c
yaml metadata rewrite: correct blank line
2017-07-04 11:51:08 +02:00
Michael Pöhn
735b7d0f33
fixed pyflakes/pep warings
2017-07-04 11:51:08 +02:00
Michael Pöhn
0f90ab9aac
rewrite to yaml works for app data now (builds still missing)
2017-07-04 11:51:08 +02:00
lb@lb520
230286786f
Added a method to build python/kivy projects using buildozer.
2017-06-20 14:16:31 +02:00
Hans-Christoph Steiner
30ff777897
rewritemeta: do not include empty Summary: or Description:
...
Since the Summary: and Description: in the metadata file has the highest
priority of all the localized texts, adding blank versions means that
apps would always have blank Summary and Description even if the app has
those fields in the localized sections of fdroiddata and/or in the app's
source repo itself.
fdroiddata!2262
2017-06-07 22:10:25 +02:00
Torsten Grote
1fcd8e63a3
Replace sys.exit() in non-main functions by exceptions
...
Also move all exceptions into one module
2017-05-22 16:51:11 -03:00
Hans-Christoph Steiner
84bb41a91f
metadata: switch from deprecated cgi.escape to html.escape
...
cgi.escape is deprecated in Python 3.x and has security issues:
https://bugs.python.org/issue26398
html.escape() differs from cgi.escape() by its defaults to quote=True:
s = html.escape( """& < " ' >""" ) # s = '& < " ' >'
2017-05-18 16:13:17 +02:00
Hans-Christoph Steiner
4f758f5c78
fix white space trimming when writing .txt format
...
Some of the internal data format changes somehow broke the white space
trimming when writing out .txt.
closes #285
2017-05-02 14:55:23 +02:00
Hans-Christoph Steiner
0d00705aed
use pyyaml for rewriting .yml metadata files
...
This replaces the broken, custom code with the standard YAML lib.
In rewritemeta, do not call app.metadatapath since it will be deleted when
the dict is cleaned up for outputing. metadatapath is only used internally
and should not be written out.
closes #169
refs #290
2017-05-02 14:55:23 +02:00
Hans-Christoph Steiner
cb49f57c06
support "Author Web Site" as metadata field
...
Fastlane Supply, Triple-T Gradle Play Publisher, and many app stores
include the possibility to specify a website for the author, as distinct
from the website for the app.
closes #204
2017-04-19 10:05:24 +02:00
Hans-Christoph Steiner
7d4176dd50
metadata: don't crash if metadata includes blank Categories list
...
If someone includes just 'Categories:', it shouldn't crash.
2017-04-03 20:18:54 +02:00
Hans-Christoph Steiner
713d9195c3
ensure that app.Categories is always a list of strings
...
This just makes it easier for people writing build recipes. Rewriting will
output a list of strings as well.
The test index.xml and categories.txt are updated to include the new number
categories, and the changed CurrentVersionCode to 2147483647 (MAX_VALUE)
2017-03-17 13:55:40 +01:00