Skip to content

Commit 8135f52

Browse files
committed
Add support for libloot-python 15.x
Also disabled initialise_locale as that's not a thing anymore updated taglists Update to use current loot.pyd Update to use new loot.pyd update to new loot.pyd initialise_locale is no longer a thing I don't know what this even does
1 parent bb87507 commit 8135f52

10 files changed

Lines changed: 74125 additions & 11170 deletions

File tree

Mopy/Bash Patches/Fallout3/taglist.yaml

Lines changed: 5439 additions & 444 deletions
Large diffs are not rendered by default.

Mopy/Bash Patches/Fallout4/taglist.yaml

Lines changed: 2888 additions & 211 deletions
Large diffs are not rendered by default.

Mopy/Bash Patches/FalloutNV/taglist.yaml

Lines changed: 939 additions & 203 deletions
Large diffs are not rendered by default.

Mopy/Bash Patches/Oblivion/taglist.yaml

Lines changed: 17028 additions & 5005 deletions
Large diffs are not rendered by default.

Mopy/Bash Patches/Skyrim/taglist.yaml

Lines changed: 36710 additions & 4795 deletions
Large diffs are not rendered by default.

Mopy/Bash Patches/SkyrimSE/taglist.yaml

Lines changed: 11095 additions & 487 deletions
Large diffs are not rendered by default.

Mopy/bash/bosh/mods_metadata.py

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import errno
2626
import os
2727

28-
import loot_api
28+
import loot
2929

3030
from ._mergeability import is_esl_capable
3131
from .. import balt, bolt, bush, bass, load_order
@@ -43,11 +43,12 @@ class ConfigHelpers(object):
4343
def __init__(self):
4444
"""bass.dir must have been initialized"""
4545
global lootDb
46-
deprint(u'Using LOOT API version:', loot_api.Version.string())
46+
deprint(u'Using LOOT API version:', loot.Version.string())
4747
try:
4848
gameType = self.getLootApiGameType(bush.game.fsName)
49-
loot_api.initialise_locale('')
50-
loot_game = loot_api.create_game_handle(gameType, bass.dirs['app'].s)
49+
# initialise_locale is no longer a function
50+
# loot.initialise_locale('')
51+
loot_game = loot.create_game_handle(gameType, bass.dirs['app'].s)
5152
lootDb = loot_game.get_database()
5253
except (OSError, AttributeError):
5354
deprint(u'The LOOT API failed to initialize', traceback=True)
@@ -129,30 +130,30 @@ def getTagsInfoCache(self, modName):
129130
@staticmethod
130131
def getLootApiGameType(fsName):
131132
if fsName == 'Oblivion':
132-
return loot_api.GameType.tes4
133+
return loot.GameType.tes4
133134
# TODO See if LOOT adds a new GameType for Enderal
134135
elif fsName in ('Enderal', 'Skyrim'):
135-
return loot_api.GameType.tes5
136+
return loot.GameType.tes5
136137
elif fsName == 'Skyrim Special Edition':
137-
return loot_api.GameType.tes5se
138+
return loot.GameType.tes5se
138139
elif fsName == 'Skyrim VR':
139-
return loot_api.GameType.tes5vr
140+
return loot.GameType.tes5vr
140141
elif fsName == 'Fallout3':
141-
return loot_api.GameType.fo3
142+
return loot.GameType.fo3
142143
elif fsName == 'FalloutNV':
143-
return loot_api.GameType.fonv
144+
return loot.GameType.fonv
144145
elif fsName == 'Fallout4':
145-
return loot_api.GameType.fo4
146+
return loot.GameType.fo4
146147
elif fsName == 'Fallout4VR':
147-
return loot_api.GameType.fo4vr
148+
return loot.GameType.fo4vr
148149
else:
149150
return None
150151

151152
@staticmethod
152153
def getDirtyMessage(modName):
153154
if lootDb is None:
154155
return False, u''
155-
if lootDb.get_plugin_cleanliness(modName.s, True) == loot_api.PluginCleanliness.dirty:
156+
if lootDb.get_plugin_cleanliness(modName.s, True) == loot.PluginCleanliness.dirty:
156157
return True, 'Contains dirty edits, needs cleaning.'
157158
else:
158159
return False, ''

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ chardet~=3.0
33
pywin32>=220,<225
44
https://github.com/wrye-bash/dev-tools/raw/master/wheels/wxPython-3.0.2.0-cp27-cp27m-win32.whl
55
# Runtime, recommended
6-
https://bintray.com/loot/snapshots/download_file?file_path=loot_api_python-4.0.2-7-g580bf87_master-python2.7-win32.zip
6+
https://bintray.com/loot/snapshots/download_file?file_path=libloot-python-4.0.2-10-gdcf9b8b_master-python2.7-win32.zip
77
scandir~=1.9
88
# Compile/Build-time
99
pygit2~=0.28

scripts/build.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@
4949
import zipfile
5050
from contextlib import contextmanager
5151

52-
import loot_api
52+
import loot
5353
import pygit2
5454
import PyInstaller.__main__
5555

scripts/update_taglist.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
import sys
3838
import tempfile
3939

40-
import loot_api
40+
import loot
4141

4242
import utils
4343

@@ -88,16 +88,16 @@ def main(args):
8888
utils.setup_log(LOGGER, verbosity=args.verbosity, logfile=args.logfile)
8989
LOGGER.debug(
9090
u"Loaded the LOOT API v{} using wrapper version {}".format(
91-
loot_api.Version.string(), loot_api.WrapperVersion.string()
91+
loot.Version.string(), loot.WrapperVersion.string()
9292
)
9393
)
9494
game_data = [
95-
(u"Oblivion", "Oblivion.esm", "oblivion", loot_api.GameType.tes4),
96-
(u"Skyrim", "Skyrim.esm", "skyrim", loot_api.GameType.tes5),
97-
(u"SkyrimSE", "Skyrim.esm", "skyrimse", loot_api.GameType.tes5se),
98-
(u"Fallout3", "Fallout3.esm", "fallout3", loot_api.GameType.fo3),
99-
(u"FalloutNV", "FalloutNV.esm", "falloutnv", loot_api.GameType.fonv),
100-
(u"Fallout4", "Fallout4.esm", "fallout4", loot_api.GameType.fo4),
95+
(u"Oblivion", "Oblivion.esm", "oblivion", loot.GameType.tes4),
96+
(u"Skyrim", "Skyrim.esm", "skyrim", loot.GameType.tes5),
97+
(u"SkyrimSE", "Skyrim.esm", "skyrimse", loot.GameType.tes5se),
98+
(u"Fallout3", "Fallout3.esm", "fallout3", loot.GameType.fo3),
99+
(u"FalloutNV", "FalloutNV.esm", "falloutnv", loot.GameType.fonv),
100+
(u"Fallout4", "Fallout4.esm", "fallout4", loot.GameType.fo4),
101101
]
102102
for game_name, master_name, repository, game_type in game_data:
103103
game_install_path = mock_game_install(master_name)
@@ -111,8 +111,8 @@ def main(args):
111111
)
112112
continue
113113
download_masterlist(repository, args.masterlist_version, masterlist_path)
114-
loot_api.initialise_locale("")
115-
loot_game = loot_api.create_game_handle(game_type, game_install_path)
114+
# loot.initialise_locale("")
115+
loot_game = loot.create_game_handle(game_type, game_install_path)
116116
loot_db = loot_game.get_database()
117117
loot_db.load_lists(masterlist_path)
118118
loot_db.write_minimal_list(taglist_path, True)

0 commit comments

Comments
 (0)