deleted Aeron, updates (languages, repositories)
This commit is contained in:
@ -156,6 +156,7 @@
|
||||
"https://github.com/Unvanquished/Unvanquished.git",
|
||||
"https://github.com/VDrift/vdrift.git",
|
||||
"https://github.com/Vakarias/farcolony.git",
|
||||
"https://github.com/ValHaris/asc-hq.git",
|
||||
"https://github.com/ValyriaTear/ValyriaTear.git",
|
||||
"https://github.com/Vanilla-NetHack/NetHack.git",
|
||||
"https://github.com/VilleKrumlinde/zgameeditor.git",
|
||||
@ -315,6 +316,7 @@
|
||||
"https://github.com/richardjs/Maelstrom.git",
|
||||
"https://github.com/riksweeney/edgar.git",
|
||||
"https://github.com/sago007/annchienta.git",
|
||||
"https://github.com/samcv/brainworkshop.git",
|
||||
"https://github.com/scummvm/scummvm.git",
|
||||
"https://github.com/simhacker/micropolis.git",
|
||||
"https://github.com/singularity/singularity.git",
|
||||
@ -353,6 +355,7 @@
|
||||
"https://github.com/weidai11/cryptopp.git",
|
||||
"https://github.com/wesnoth/wesnoth.git",
|
||||
"https://github.com/wfx/teg.git",
|
||||
"https://github.com/whoozle/btanks.git",
|
||||
"https://github.com/widelands/widelands.git",
|
||||
"https://github.com/worldforge/cyphesis.git",
|
||||
"https://github.com/worldforge/ember.git",
|
||||
@ -425,6 +428,7 @@
|
||||
"https://gitlab.com/osgames/howc.git",
|
||||
"https://gitlab.com/osgames/jewelhunt.git",
|
||||
"https://gitlab.com/osgames/jquest.git",
|
||||
"https://gitlab.com/osgames/kiki.git",
|
||||
"https://gitlab.com/osgames/koboldsquest2.git",
|
||||
"https://gitlab.com/osgames/kursk.git",
|
||||
"https://gitlab.com/osgames/lechemindeladam.git",
|
||||
@ -511,7 +515,6 @@
|
||||
],
|
||||
"svn": [
|
||||
"http://svn.uktrainsim.com/svn/openrails/trunk",
|
||||
"https://svn.code.sf.net/p/aeron/code/",
|
||||
"https://svn.code.sf.net/p/armagetronad/code/",
|
||||
"https://svn.code.sf.net/p/blobby/code/",
|
||||
"https://svn.code.sf.net/p/crossfire/code/",
|
||||
@ -530,7 +533,6 @@
|
||||
"https://svn.code.sf.net/p/xu4/code/"
|
||||
],
|
||||
"hg": [
|
||||
"http://hg.asc-hq.org/hg/asc",
|
||||
"http://hg.assembla.com/parpg-core",
|
||||
"http://hg.code.sf.net/p/grobots/trunk",
|
||||
"http://hg.code.sf.net/p/openblox/openblox",
|
||||
|
@ -174,6 +174,8 @@ def fix_entries():
|
||||
Fixes the keywords, code dependencies, build systems, .. entries, mostly by automatically sorting them.
|
||||
"""
|
||||
|
||||
# TODO also sort other fields, only read once and then do all, move to separate file
|
||||
|
||||
print('fix entries')
|
||||
|
||||
# keywords
|
||||
|
@ -26,6 +26,21 @@ osgc_name_aliases = {'parpg': 'PARPG', 'OpenRails': 'Open Rails', 'c-evo': 'C-ev
|
||||
def similarity(a, b):
|
||||
return SequenceMatcher(None, str.casefold(a), str.casefold(b)).ratio()
|
||||
|
||||
|
||||
def unique_field_contents(entries, field):
|
||||
"""
|
||||
"""
|
||||
unique_content = set()
|
||||
for entry in entries:
|
||||
if field in entry:
|
||||
field_content = entry[field]
|
||||
if type(field_content) is str:
|
||||
unique_content.add(field_content)
|
||||
else:
|
||||
unique_content.update(field_content)
|
||||
unique_content = sorted(list(unique_content), key=str.casefold)
|
||||
return unique_content
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
# paths
|
||||
@ -57,9 +72,11 @@ if __name__ == "__main__":
|
||||
entry['name'] = osgc_name_aliases[name]
|
||||
osgc_entries[index] = entry
|
||||
|
||||
# get all osgc 'lang' fields
|
||||
osgc_langs = set([x['lang'] for x in osgc_entries if 'lang' in x])
|
||||
print('osgc-languages: {}'.format(osgc_langs))
|
||||
# some field statistics
|
||||
print('osgc-languages: {}'.format(unique_field_contents(osgc_entries, 'lang')))
|
||||
print('osgc-licenses: {}'.format(unique_field_contents(osgc_entries, 'license')))
|
||||
print('osgc-development: {}'.format(unique_field_contents(osgc_entries, 'development')))
|
||||
print('osgc-status: {}'.format(unique_field_contents(osgc_entries, 'status')))
|
||||
|
||||
|
||||
# read our database
|
||||
@ -76,12 +93,12 @@ if __name__ == "__main__":
|
||||
print('{} in both, {} only in osgameclones, {} only with us'.format(len(common_names), len(osgc_names), len(our_names)))
|
||||
|
||||
# find similar names among the rest
|
||||
for osgc_name in osgc_names:
|
||||
for our_name in our_names:
|
||||
if similarity(osgc_name, our_name) > similarity_threshold:
|
||||
print('{} - {}'.format(osgc_name, our_name))
|
||||
#for osgc_name in osgc_names:
|
||||
# for our_name in our_names:
|
||||
# if similarity(osgc_name, our_name) > similarity_threshold:
|
||||
# print('{} - {}'.format(osgc_name, our_name))
|
||||
|
||||
# find those that entries in osgameclones that are also in our database
|
||||
# find those that entries in osgameclones that are also in our database and compare them
|
||||
for osgc_entry in osgc_entries:
|
||||
osgc_name = osgc_entry['name']
|
||||
|
||||
@ -90,8 +107,18 @@ if __name__ == "__main__":
|
||||
|
||||
if osgc_name == our_name:
|
||||
# a match, check the fields
|
||||
if osgc_entry['lang'] not in our_name['code language']:
|
||||
print()
|
||||
name = osgc_name
|
||||
|
||||
# lang field
|
||||
if 'lang' in osgc_entry:
|
||||
languages = osgc_entry['lang']
|
||||
our_languages = our_entry['code language']
|
||||
if type(languages) == str:
|
||||
languages = [languages]
|
||||
for lang in languages:
|
||||
if lang not in our_languages:
|
||||
print('{}: language {} not existing'.format(name, lang))
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user