from yaml import Loader
YamlLoader = Loader
-from collections import OrderedDict
-
import fdroidserver.common
from fdroidserver.exception import MetaDataException
app.update(yamlinfo)
return app
+
def write_yaml(mf, app):
def _class_as_dict_representer(dumper, data):
if k in app:
del app[k]
- #yaml.add_representer(fdroidserver.metadata.App, _class_as_dict_representer)
- #ruamel.yaml.add_representer(fdroidserver.metadata.Build, _class_as_dict_representer)
- #yaml.dump(app.asOrderedDict(), mf, default_flow_style=False, Dumper=yamlordereddictloader.Dumper)
+ # yaml.add_representer(fdroidserver.metadata.App, _class_as_dict_representer)
+ ruamel.yaml.add_representer(fdroidserver.metadata.Build, _class_as_dict_representer)
+ # yaml.dump(app.asOrderedDict(), mf, default_flow_style=False, Dumper=yamlordereddictloader.Dumper)
yaml_app_field_order = [
'Categories',
# bogus comment and over-write its value
preformated.yaml_set_comment_before_after_key(f, 'bogus')
preformated.ca.items[f][1][0].value = '\n'
- # TODO implement dump for builds
- del(preformated['builds'])
ruamel.yaml.round_trip_dump(preformated, mf, indent=4, block_seq_indent=2)
-def write_yaml(mf, app):
-
- def _class_as_dict_representer(dumper, data):
- '''Creates a YAML representation of a App/Build instance'''
- return dumper.represent_dict(data)
-
- empty_keys = [k for k, v in app.items() if not v]
- for k in empty_keys:
- del app[k]
-
- for k in ['added', 'lastUpdated', 'id', 'metadatapath']:
- if k in app:
- del app[k]
-
- yaml.add_representer(fdroidserver.metadata.App, _class_as_dict_representer)
- yaml.add_representer(fdroidserver.metadata.Build, _class_as_dict_representer)
- yaml.dump(app, mf, default_flow_style=False)
-
-
build_line_sep = re.compile(r'(?<!\\),')
build_cont = re.compile(r'^[ \t]')