Merge pull request #1429 from clinton-hall/libs/refactor

Refactor libs
This commit is contained in:
Labrys of Knossos 2018-12-16 19:03:59 -05:00 committed by GitHub
commit 39f8949ede
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2314 changed files with 1108 additions and 17 deletions

View file

@ -11,11 +11,13 @@ import subprocess
import sys
import time
import libs.autoload
import libs.util
# init libs
PROGRAM_DIR = os.path.dirname(os.path.normpath(os.path.abspath(os.path.join(__file__, os.pardir))))
LIBS_DIR = os.path.join(PROGRAM_DIR, 'libs')
sys.path.insert(0, LIBS_DIR)
if not libs.autoload.completed:
sys.exit('Could not load vendored libraries.')
PROGRAM_DIR = libs.util.module_root()
# init preliminaries
SYS_ARGV = sys.argv[1:]
@ -28,7 +30,7 @@ CONFIG_FILE = os.path.join(PROGRAM_DIR, 'autoProcessMedia.cfg')
CONFIG_SPEC_FILE = os.path.join(PROGRAM_DIR, 'autoProcessMedia.cfg.spec')
CONFIG_MOVIE_FILE = os.path.join(PROGRAM_DIR, 'autoProcessMovie.cfg')
CONFIG_TV_FILE = os.path.join(PROGRAM_DIR, 'autoProcessTv.cfg')
TEST_FILE = os.path.join(os.path.join(PROGRAM_DIR, 'tests'), 'test.mp4')
TEST_FILE = os.path.join(PROGRAM_DIR, 'tests', 'test.mp4')
MYAPP = None
import six

View file

@ -0,0 +1,47 @@
import os
import sys
import libs.util
ROOT_DIR = libs.util.module_root()
LIB_DIR = os.path.join(ROOT_DIR, 'libs')
COMMON = 'common'
CUSTOM = 'custom'
PY2 = 'py2'
WIN = 'win'
LOADED = {}
MANDATORY = {
COMMON,
CUSTOM,
}
DIRECTORY = {
lib: os.path.join(LIB_DIR, lib)
for lib in [COMMON, CUSTOM, PY2, WIN]
}
if sys.platform == 'win32':
MANDATORY.add(WIN)
if sys.version_info < (3, ):
MANDATORY.add(PY2)
def add_libs(name):
if name in MANDATORY and name not in LOADED:
path = libs.util.add_path(DIRECTORY[name])
if path:
LOADED[name] = path
return path
def add_all_libs():
for lib in MANDATORY:
add_libs(lib)
return is_finished()
def is_finished():
return MANDATORY.issubset(LOADED.keys())

20
libs/__main__.py Normal file
View file

@ -0,0 +1,20 @@
import shutil
import os
import time
import libs
if __name__ == '__main__':
os.chdir(libs.LIB_DIR)
for lib, directory in libs.DIRECTORY.items():
if lib == 'custom':
continue
try:
shutil.rmtree(directory)
except FileNotFoundError:
pass
else:
print('Removed', directory)
time.sleep(10)
requirements = 'requirements-{name}.txt'.format(name=lib)
libs.util.install_requirements(requirements, file=True, path=directory)

6
libs/autoload.py Normal file
View file

@ -0,0 +1,6 @@
import libs
__all__ = ['completed']
completed = libs.add_all_libs()

View file

@ -1 +0,0 @@
import sys, types, os;p = os.path.join(sys._getframe(1).f_locals['sitedir'], *('backports',));ie = os.path.exists(os.path.join(p,'__init__.py'));m = not ie and sys.modules.setdefault('backports', types.ModuleType('backports'));mp = (m or []) and m.__dict__.setdefault('__path__',[]);(p not in mp) and mp.append(p)

Some files were not shown because too many files have changed in this diff Show more