Compare commits
31 Commits
2022.10.0.
...
2022.10
Author | SHA1 | Date | |
---|---|---|---|
511622820a | |||
0914f969e5 | |||
c611045290 | |||
89ac9e90d6 | |||
ae2a98b3bc | |||
bd242baa0a | |||
8e4caeb2a8 | |||
3b55b3d5a5 | |||
cc3b1afaa1 | |||
a22b6fdbdb | |||
e3041c4b5b | |||
8ad6d50a04 | |||
4db000f6d7 | |||
3821624c3b | |||
60a722b4ec | |||
65132aa107 | |||
48eac124a5 | |||
be23b18d33 | |||
748cc66946 | |||
304b2e4255 | |||
9fa183f143 | |||
82df528395 | |||
49e3bddc91 | |||
c52bf961e1 | |||
df3f9f0306 | |||
ef2d73aadc | |||
1ed721cccb | |||
a724216563 | |||
2bcf4d7a97 | |||
2dfa2dd68f | |||
e94ed0b7f0 |
@@ -1,54 +0,0 @@
|
||||
upload:
|
||||
prod:
|
||||
cpl:
|
||||
twine upload --repository-url https://pip.sh-edraft.de dist/sh_cpl-core/publish/setup/*
|
||||
twine upload -r pip.sh-edraft.de dist/sh_cpl-core/publish/setup/*
|
||||
cli:
|
||||
twine upload --repository-url https://pip.sh-edraft.de dist/sh_cpl-cli/publish/setup/*
|
||||
twine upload -r pip.sh-edraft.de dist/sh_cpl-cli/publish/setup/*
|
||||
|
||||
query:
|
||||
twine upload --repository-url https://pip-dev.sh-edraft.de dist/sh_cpl-query/publish/setup/*
|
||||
twine upload -r pip-dev.sh-edraft.de dist/sh_cpl-query/publish/setup/*
|
||||
|
||||
exp:
|
||||
cpl:
|
||||
twine upload --repository-url https://pip-exp.sh-edraft.de dist/sh_cpl-core/publish/setup/*
|
||||
twine upload -r pip-exp.sh-edraft.de dist/sh_cpl-core/publish/setup/*
|
||||
|
||||
cli:
|
||||
twine upload --repository-url https://pip-exp.sh-edraft.de dist/sh_cpl-cli/publish/setup/*
|
||||
twine upload -r pip-exp.sh-edraft.de dist/sh_cpl-cli/publish/setup/*
|
||||
|
||||
query:
|
||||
twine upload --repository-url https://pip-exp.sh-edraft.de dist/sh_cpl-query/publish/setup/*
|
||||
twine upload -r pip-exp.sh-edraft.de dist/sh_cpl-query/publish/setup/*
|
||||
|
||||
dev:
|
||||
cpl:
|
||||
twine upload --repository-url https://pip-dev.sh-edraft.de dist/sh_cpl-core/publish/setup/*
|
||||
twine upload -r pip-dev.sh-edraft.de dist/sh_cpl-core/publish/setup/*
|
||||
|
||||
cli:
|
||||
twine upload --repository-url https://pip-dev.sh-edraft.de dist/sh_cpl-cli/publish/setup/*
|
||||
twine upload -r pip-dev.sh-edraft.de dist/sh_cpl-cli/publish/setup/*
|
||||
|
||||
query:
|
||||
twine upload --repository-url https://pip-dev.sh-edraft.de dist/sh_cpl-query/publish/setup/*
|
||||
twine upload -r pip-dev.sh-edraft.de dist/sh_cpl-query/publish/setup/*
|
||||
|
||||
install:
|
||||
prod:
|
||||
pip install --extra-index-url https://pip.sh-edraft.de/ sh_cpl
|
||||
pip install --extra-index-url https://pip.sh-edraft.de/ sh_cpl-cli
|
||||
pip install --extra-index-url https://pip.sh-edraft.de/ sh_cpl-query
|
||||
|
||||
exp:
|
||||
pip install --extra-index-url https://pip-exp.sh-edraft.de/ sh_cpl
|
||||
pip install --extra-index-url https://pip-exp.sh-edraft.de/ sh_cpl-cli
|
||||
pip install --extra-index-url https://pip-exp.sh-edraft.de/ sh_cpl-query
|
||||
|
||||
dev:
|
||||
pip install --extra-index-url https://pip-dev.sh-edraft.de/ sh_cpl
|
||||
pip install --extra-index-url https://pip-dev.sh-edraft.de/ sh_cpl-cli
|
||||
pip install --extra-index-url https://pip-dev.sh-edraft.de/ sh_cpl-query
|
@@ -1,15 +0,0 @@
|
||||
#!/bin/bash
|
||||
# activate venv
|
||||
source /home/sven/Nextcloud_Sven/Schreibtisch/git_sh-edraft_de/sh_cpl/venv/bin/activate
|
||||
|
||||
# CPL
|
||||
cd /home/sven/Nextcloud_Sven/Schreibtisch/git_sh-edraft_de/sh_cpl/src/cpl_core
|
||||
cpl build
|
||||
|
||||
# CLI
|
||||
cd /home/sven/Nextcloud_Sven/Schreibtisch/git_sh-edraft_de/sh_cpl/src/cpl_cli
|
||||
cpl build
|
||||
|
||||
# CPL Query
|
||||
cd /home/sven/Nextcloud_Sven/Schreibtisch/git_sh-edraft_de/sh_cpl/src/cpl_query
|
||||
cpl build
|
@@ -1,3 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
google-chrome $PWD/../docs/build/html/index.html
|
@@ -1,8 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd ../docs/
|
||||
sphinx-apidoc -o source/ ../src/cpl_core
|
||||
sphinx-apidoc -o source/ ../src/cpl_query
|
||||
make clean
|
||||
make html;
|
||||
rm source/cpl_query.tests.rst
|
@@ -1 +0,0 @@
|
||||
print('Hello World')
|
@@ -1,15 +0,0 @@
|
||||
#!/bin/bash
|
||||
# activate venv
|
||||
source /home/sven/Nextcloud_Sven/Schreibtisch/git_sh-edraft_de/sh_cpl/venv/bin/activate
|
||||
|
||||
# CPL
|
||||
cd /home/sven/Nextcloud_Sven/Schreibtisch/git_sh-edraft_de/sh_cpl/src/cpl_core
|
||||
cpl publish
|
||||
|
||||
# CLI
|
||||
cd /home/sven/Nextcloud_Sven/Schreibtisch/git_sh-edraft_de/sh_cpl/src/cpl_cli
|
||||
cpl publish
|
||||
|
||||
# CPL Query
|
||||
cd /home/sven/Nextcloud_Sven/Schreibtisch/git_sh-edraft_de/sh_cpl/src/cpl_query
|
||||
cpl publish
|
@@ -1,16 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ $1 == "-prod" ]; then
|
||||
twine upload -r pip.sh-edraft.de dist/cpl-cli/publish/setup/*
|
||||
twine upload -r pip.sh-edraft.de dist/cpl-core/publish/setup/*
|
||||
twine upload -r pip.sh-edraft.de dist/cpl-query/publish/setup/*
|
||||
elif [ $1 == "-exp" ]; then
|
||||
twine upload -r pip-exp.sh-edraft.de dist/cpl-cli/publish/setup/*
|
||||
twine upload -r pip-exp.sh-edraft.de dist/cpl-core/publish/setup/*
|
||||
twine upload -r pip-exp.sh-edraft.de dist/cpl-query/publish/setup/*
|
||||
|
||||
else
|
||||
twine upload -r pip-dev.sh-edraft.de dist/cpl-cli/publish/setup/*
|
||||
twine upload -r pip-dev.sh-edraft.de dist/cpl-core/publish/setup/*
|
||||
twine upload -r pip-dev.sh-edraft.de dist/cpl-query/publish/setup/*
|
||||
fi
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -28,4 +28,4 @@ from .main import main
|
||||
from .startup import Startup
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.build'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.generate'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.console'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.console.source'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.console.source.name'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.console.source.tests'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.library'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.library.source'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.library.source.name'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.library.source.tests'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.unittest'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.unittest.source'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.new.unittest.source.name'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli._templates.publish'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.command'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -29,4 +29,4 @@ from .publish_service import PublishService
|
||||
from .version_service import VersionService
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -155,16 +155,21 @@ class GenerateService(CommandABC):
|
||||
directory = ''
|
||||
for subdir in template.path.split('/'):
|
||||
directory = os.path.join(directory, subdir)
|
||||
if subdir != 'src':
|
||||
file = InitTemplate(class_name, schematic, self._schematics[schematic]["Upper"], rel_path)
|
||||
Console.spinner(
|
||||
f'Creating {os.path.abspath(directory)}/{file.name}',
|
||||
self._create_file,
|
||||
os.path.join(os.path.abspath(directory), file.name),
|
||||
file.value,
|
||||
text_foreground_color=ForegroundColorEnum.green,
|
||||
spinner_foreground_color=ForegroundColorEnum.cyan
|
||||
)
|
||||
if subdir == 'src':
|
||||
continue
|
||||
|
||||
file = InitTemplate(class_name, schematic, self._schematics[schematic]["Upper"], rel_path)
|
||||
if os.path.exists(os.path.join(os.path.abspath(directory), file.name)):
|
||||
continue
|
||||
|
||||
Console.spinner(
|
||||
f'Creating {os.path.abspath(directory)}/{file.name}',
|
||||
self._create_file,
|
||||
os.path.join(os.path.abspath(directory), file.name),
|
||||
file.value,
|
||||
text_foreground_color=ForegroundColorEnum.green,
|
||||
spinner_foreground_color=ForegroundColorEnum.cyan
|
||||
)
|
||||
|
||||
if os.path.isfile(file_path):
|
||||
Console.error(f'{String.first_to_upper(schematic)} already exists!\n')
|
||||
|
@@ -76,23 +76,33 @@ class InstallService(CommandABC):
|
||||
Console.spinner(
|
||||
f'Installing: {dependency}',
|
||||
Pip.install if not self._is_virtual else self._wait, dependency if not self._is_virtual else 2,
|
||||
source=self._cli_settings.pip_path if 'cpl-' in dependency else None,
|
||||
'--upgrade',
|
||||
source=self._cli_settings.pip_path,
|
||||
stdout=subprocess.DEVNULL,
|
||||
stderr=subprocess.DEVNULL,
|
||||
text_foreground_color=ForegroundColorEnum.green,
|
||||
spinner_foreground_color=ForegroundColorEnum.cyan
|
||||
)
|
||||
local_package = Pip.get_package(dependency)
|
||||
if local_package is None:
|
||||
Error.warn(f'Installation of package {dependency} failed!')
|
||||
return
|
||||
|
||||
for dependency in self._project_settings.dev_dependencies:
|
||||
Console.spinner(
|
||||
f'Installing dev: {dependency}',
|
||||
Pip.install if not self._is_virtual else self._wait, dependency if not self._is_virtual else 2,
|
||||
source=self._cli_settings.pip_path if 'cpl-' in dependency else None,
|
||||
'--upgrade',
|
||||
source=self._cli_settings.pip_path,
|
||||
stdout=subprocess.DEVNULL,
|
||||
stderr=subprocess.DEVNULL,
|
||||
text_foreground_color=ForegroundColorEnum.green,
|
||||
spinner_foreground_color=ForegroundColorEnum.cyan
|
||||
)
|
||||
local_package = Pip.get_package(dependency)
|
||||
if local_package is None:
|
||||
Error.warn(f'Installation of package {dependency} failed!')
|
||||
return
|
||||
|
||||
if not self._is_virtual:
|
||||
Pip.reset_executable()
|
||||
@@ -154,7 +164,7 @@ class InstallService(CommandABC):
|
||||
Console.spinner(
|
||||
f'Installing: {package}' if not self._is_dev else f'Installing dev: {package}',
|
||||
Pip.install if not self._is_virtual else self._wait, package if not self._is_virtual else 2,
|
||||
source=self._cli_settings.pip_path if 'cpl-' in package or 'cpl_' in package else None,
|
||||
source=self._cli_settings.pip_path,
|
||||
stdout=subprocess.DEVNULL,
|
||||
stderr=subprocess.DEVNULL,
|
||||
text_foreground_color=ForegroundColorEnum.green,
|
||||
@@ -221,6 +231,18 @@ class InstallService(CommandABC):
|
||||
args.remove('simulate')
|
||||
Console.write_line('Running in simulation mode:')
|
||||
|
||||
if 'cpl-prod' in args:
|
||||
args.remove('cpl-prod')
|
||||
self._cli_settings.from_dict({'PipPath': 'https://pip.sh-edraft.de'})
|
||||
|
||||
if 'cpl-exp' in args:
|
||||
args.remove('cpl-exp')
|
||||
self._cli_settings.from_dict({'PipPath': 'https://pip-exp.sh-edraft.de'})
|
||||
|
||||
if 'cpl-dev' in args:
|
||||
args.remove('cpl-dev')
|
||||
self._cli_settings.from_dict({'PipPath': 'https://pip-dev.sh-edraft.de'})
|
||||
|
||||
VenvHelper.init_venv(self._is_virtual, self._env, self._project_settings)
|
||||
|
||||
if len(args) == 0:
|
||||
|
@@ -4,6 +4,7 @@ import subprocess
|
||||
import textwrap
|
||||
|
||||
from cpl_cli.configuration.venv_helper_service import VenvHelper
|
||||
from cpl_cli.migrations.base.migration_service_abc import MigrationServiceABC
|
||||
from cpl_core.configuration.configuration_abc import ConfigurationABC
|
||||
from cpl_core.console.console import Console
|
||||
from cpl_core.console.foreground_color_enum import ForegroundColorEnum
|
||||
@@ -23,7 +24,8 @@ class UpdateService(CommandABC):
|
||||
env: ApplicationEnvironmentABC,
|
||||
build_settings: BuildSettings,
|
||||
project_settings: ProjectSettings,
|
||||
cli_settings: CLISettings):
|
||||
cli_settings: CLISettings,
|
||||
migrations: MigrationServiceABC):
|
||||
"""
|
||||
Service for the CLI command update
|
||||
:param config:
|
||||
@@ -39,6 +41,7 @@ class UpdateService(CommandABC):
|
||||
self._build_settings = build_settings
|
||||
self._project_settings = project_settings
|
||||
self._cli_settings = cli_settings
|
||||
self._migrations = migrations
|
||||
self._is_simulation = False
|
||||
|
||||
self._project_file = f'{self._project_settings.name}.json'
|
||||
@@ -56,7 +59,7 @@ class UpdateService(CommandABC):
|
||||
:return:
|
||||
"""
|
||||
dependencies = []
|
||||
for package in self._project_settings.dependencies:
|
||||
for package in [*self._project_settings.dependencies, *self._project_settings.dev_dependencies]:
|
||||
name = package
|
||||
if '==' in package:
|
||||
name = package.split('==')[0]
|
||||
@@ -76,7 +79,7 @@ class UpdateService(CommandABC):
|
||||
'--upgrade',
|
||||
'--upgrade-strategy',
|
||||
'eager',
|
||||
source=self._cli_settings.pip_path if 'cpl-' in name else None,
|
||||
source=self._cli_settings.pip_path,
|
||||
stdout=subprocess.DEVNULL,
|
||||
stderr=subprocess.DEVNULL
|
||||
)
|
||||
@@ -105,6 +108,15 @@ class UpdateService(CommandABC):
|
||||
spinner_foreground_color=ForegroundColorEnum.cyan
|
||||
)
|
||||
|
||||
if 'cpl-cli' in [y for x, y in dependencies]:
|
||||
import cpl_cli
|
||||
|
||||
Console.spinner(
|
||||
'Running migrations', self._migrations.migrate_from, cpl_cli.__version__,
|
||||
text_foreground_color=ForegroundColorEnum.green,
|
||||
spinner_foreground_color=ForegroundColorEnum.cyan
|
||||
)
|
||||
|
||||
Console.write_line(f'Found {len(self._project_settings.dependencies)} dependencies.')
|
||||
|
||||
@staticmethod
|
||||
@@ -169,6 +181,18 @@ class UpdateService(CommandABC):
|
||||
Console.write_line('Running in simulation mode:')
|
||||
self._is_simulation = True
|
||||
|
||||
if 'cpl-prod' in args:
|
||||
args.remove('cpl-prod')
|
||||
self._cli_settings.from_dict({'PipPath': 'https://pip.sh-edraft.de'})
|
||||
|
||||
if 'cpl-exp' in args:
|
||||
args.remove('cpl-exp')
|
||||
self._cli_settings.from_dict({'PipPath': 'https://pip-exp.sh-edraft.de'})
|
||||
|
||||
if 'cpl-dev' in args:
|
||||
args.remove('cpl-dev')
|
||||
self._cli_settings.from_dict({'PipPath': 'https://pip-dev.sh-edraft.de'})
|
||||
|
||||
VenvHelper.init_venv(False, self._env, self._project_settings)
|
||||
|
||||
self._check_project_dependencies()
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.configuration'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -31,4 +31,4 @@ from .workspace_settings import WorkspaceSettings
|
||||
from .workspace_settings_name_enum import WorkspaceSettingsNameEnum
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -3,8 +3,8 @@
|
||||
"Name": "cpl-cli",
|
||||
"Version": {
|
||||
"Major": "2022",
|
||||
"Minor": "7",
|
||||
"Micro": "0.post2"
|
||||
"Minor": "10",
|
||||
"Micro": "0"
|
||||
},
|
||||
"Author": "Sven Heidemann",
|
||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||
@@ -16,7 +16,7 @@
|
||||
"LicenseName": "MIT",
|
||||
"LicenseDescription": "MIT, see LICENSE for more details.",
|
||||
"Dependencies": [
|
||||
"cpl-core>=2022.7.0.post2"
|
||||
"cpl-core>=2022.10.0"
|
||||
],
|
||||
"DevDependencies": [],
|
||||
"PythonVersion": ">=3.10",
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.live_server'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -5,6 +5,7 @@ import pkg_resources
|
||||
from cpl_cli.cli import CLI
|
||||
from cpl_cli.startup import Startup
|
||||
from cpl_cli.startup_argument_extension import StartupArgumentExtension
|
||||
from cpl_cli.startup_migration_extension import StartupMigrationExtension
|
||||
from cpl_cli.startup_workspace_extension import StartupWorkspaceExtension
|
||||
from cpl_core.application.application_builder import ApplicationBuilder
|
||||
from cpl_core.application.startup_extension_abc import StartupExtensionABC
|
||||
@@ -34,6 +35,7 @@ def main():
|
||||
app_builder.use_startup(Startup)
|
||||
app_builder.use_extension(StartupWorkspaceExtension)
|
||||
app_builder.use_extension(StartupArgumentExtension)
|
||||
app_builder.use_extension(StartupMigrationExtension)
|
||||
for extension in get_startup_extensions():
|
||||
app_builder.use_extension(extension)
|
||||
|
||||
|
26
src/cpl_cli/migrations/__init__.py
Normal file
26
src/cpl_cli/migrations/__init__.py
Normal file
@@ -0,0 +1,26 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
cpl-cli sh-edraft Common Python library CLI
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
sh-edraft Common Python library Command Line Interface
|
||||
|
||||
:copyright: (c) 2020 - 2022 sh-edraft.de
|
||||
:license: MIT, see LICENSE for more details.
|
||||
|
||||
"""
|
||||
|
||||
__title__ = 'cpl_cli.migrations'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
|
||||
# imports
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
26
src/cpl_cli/migrations/base/__init__.py
Normal file
26
src/cpl_cli/migrations/base/__init__.py
Normal file
@@ -0,0 +1,26 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
cpl-cli sh-edraft Common Python library CLI
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
sh-edraft Common Python library Command Line Interface
|
||||
|
||||
:copyright: (c) 2020 - 2022 sh-edraft.de
|
||||
:license: MIT, see LICENSE for more details.
|
||||
|
||||
"""
|
||||
|
||||
__title__ = 'cpl_cli.migrations.base'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
15
src/cpl_cli/migrations/base/migration_abc.py
Normal file
15
src/cpl_cli/migrations/base/migration_abc.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from abc import ABC, abstractmethod
|
||||
|
||||
|
||||
class MigrationABC(ABC):
|
||||
|
||||
@abstractmethod
|
||||
def __init__(self, version: str):
|
||||
self._version = version
|
||||
|
||||
@property
|
||||
def version(self) -> str:
|
||||
return self._version
|
||||
|
||||
@abstractmethod
|
||||
def migrate(self): pass
|
10
src/cpl_cli/migrations/base/migration_service_abc.py
Normal file
10
src/cpl_cli/migrations/base/migration_service_abc.py
Normal file
@@ -0,0 +1,10 @@
|
||||
from abc import ABC, abstractmethod
|
||||
|
||||
|
||||
class MigrationServiceABC(ABC):
|
||||
|
||||
@abstractmethod
|
||||
def __init__(self): pass
|
||||
|
||||
@abstractmethod
|
||||
def migrate_from(self, version: str): pass
|
11
src/cpl_cli/migrations/migration_2022_10.py
Normal file
11
src/cpl_cli/migrations/migration_2022_10.py
Normal file
@@ -0,0 +1,11 @@
|
||||
from cpl_cli.migrations.base.migration_abc import MigrationABC
|
||||
|
||||
|
||||
class Migration202210(MigrationABC):
|
||||
|
||||
def __init__(self):
|
||||
MigrationABC.__init__(self, '2022.10')
|
||||
|
||||
def migrate(self):
|
||||
# This migration could be deleted, but stays as an example.
|
||||
pass
|
26
src/cpl_cli/migrations/service/__init__.py
Normal file
26
src/cpl_cli/migrations/service/__init__.py
Normal file
@@ -0,0 +1,26 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
cpl-cli sh-edraft Common Python library CLI
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
sh-edraft Common Python library Command Line Interface
|
||||
|
||||
:copyright: (c) 2020 - 2022 sh-edraft.de
|
||||
:license: MIT, see LICENSE for more details.
|
||||
|
||||
"""
|
||||
|
||||
__title__ = 'cpl_cli.migrations.service'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
21
src/cpl_cli/migrations/service/migration_service.py
Normal file
21
src/cpl_cli/migrations/service/migration_service.py
Normal file
@@ -0,0 +1,21 @@
|
||||
from packaging import version
|
||||
|
||||
from cpl_cli.migrations.base.migration_abc import MigrationABC
|
||||
from cpl_cli.migrations.base.migration_service_abc import MigrationServiceABC
|
||||
from cpl_core.dependency_injection import ServiceProviderABC
|
||||
|
||||
|
||||
class MigrationService(MigrationServiceABC):
|
||||
|
||||
def __init__(self, services: ServiceProviderABC):
|
||||
MigrationServiceABC.__init__(self)
|
||||
|
||||
self._services = services
|
||||
|
||||
def migrate_from(self, _v: str):
|
||||
for migration_type in MigrationABC.__subclasses__():
|
||||
migration: MigrationABC = self._services.get_service(migration_type)
|
||||
if version.parse(migration.version) <= version.parse(_v):
|
||||
continue
|
||||
|
||||
migration.migrate()
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.publish'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -25,4 +25,4 @@ from .publisher_abc import PublisherABC
|
||||
from .publisher_service import PublisherService
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.source_creator'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -42,7 +42,10 @@ class StartupArgumentExtension(StartupExtensionABC):
|
||||
config.create_console_argument(ArgumentTypeEnum.Executable, '', 'install', ['i', 'I'], InstallService, True, validators=[ProjectValidator]) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'dev', ['d', 'D']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'virtual', ['v', 'V']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'simulate', ['s', 'S'])
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'simulate', ['s', 'S']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'cpl-prod', ['cp', 'CP']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'cpl-exp', ['ce', 'CE']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'cpl-dev', ['cd', 'CD'])
|
||||
config.create_console_argument(ArgumentTypeEnum.Executable, '', 'new', ['n', 'N'], NewService, True) \
|
||||
.add_console_argument(ArgumentTypeEnum.Variable, '', 'console', ['c', 'C'], ' ') \
|
||||
.add_console_argument(ArgumentTypeEnum.Variable, '', 'library', ['l', 'L'], ' ') \
|
||||
@@ -63,7 +66,10 @@ class StartupArgumentExtension(StartupExtensionABC):
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'virtual', ['v', 'V']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'simulate', ['s', 'S'])
|
||||
config.create_console_argument(ArgumentTypeEnum.Executable, '', 'update', ['u', 'U'], UpdateService, True, validators=[ProjectValidator]) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'simulate', ['s', 'S'])
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'simulate', ['s', 'S']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'cpl-prod', ['cp', 'CP']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'cpl-exp', ['ce', 'CE']) \
|
||||
.add_console_argument(ArgumentTypeEnum.Flag, '--', 'cpl-dev', ['cd', 'CD'])
|
||||
config.create_console_argument(ArgumentTypeEnum.Executable, '', 'version', ['v', 'V'], VersionService, True)
|
||||
|
||||
config.for_each_argument(lambda a: a.add_console_argument(ArgumentTypeEnum.Flag, '--', 'help', ['h', 'H']))
|
||||
|
28
src/cpl_cli/startup_migration_extension.py
Normal file
28
src/cpl_cli/startup_migration_extension.py
Normal file
@@ -0,0 +1,28 @@
|
||||
import os
|
||||
from typing import Optional
|
||||
|
||||
from cpl_cli.command.custom_script_service import CustomScriptService
|
||||
from cpl_cli.configuration.workspace_settings import WorkspaceSettings
|
||||
from cpl_cli.migrations.base.migration_abc import MigrationABC
|
||||
from cpl_cli.migrations.base.migration_service_abc import MigrationServiceABC
|
||||
from cpl_cli.migrations.migration_2022_10 import Migration202210
|
||||
from cpl_cli.migrations.service.migration_service import MigrationService
|
||||
from cpl_core.application.startup_extension_abc import StartupExtensionABC
|
||||
from cpl_core.configuration.argument_type_enum import ArgumentTypeEnum
|
||||
from cpl_core.configuration.configuration_abc import ConfigurationABC
|
||||
from cpl_core.dependency_injection.service_collection_abc import ServiceCollectionABC
|
||||
from cpl_core.environment.application_environment_abc import ApplicationEnvironmentABC
|
||||
from cpl_core.utils.string import String
|
||||
|
||||
|
||||
class StartupMigrationExtension(StartupExtensionABC):
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def configure_configuration(self, config: ConfigurationABC, env: ApplicationEnvironmentABC):
|
||||
pass
|
||||
|
||||
def configure_services(self, services: ServiceCollectionABC, env: ApplicationEnvironmentABC):
|
||||
services.add_singleton(MigrationServiceABC, MigrationService)
|
||||
services.add_singleton(MigrationABC, Migration202210)
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.validators'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.application'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -29,4 +29,4 @@ from .startup_abc import StartupABC
|
||||
from .startup_extension_abc import StartupExtensionABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -30,15 +30,18 @@ class ApplicationBuilder(ApplicationBuilderABC):
|
||||
self._app_extensions: list[Callable] = []
|
||||
self._startup_extensions: list[Callable] = []
|
||||
|
||||
def use_startup(self, startup: Type[StartupABC]):
|
||||
def use_startup(self, startup: Type[StartupABC]) -> 'ApplicationBuilder':
|
||||
self._startup = startup()
|
||||
return self
|
||||
|
||||
def use_extension(self, extension: Type[Union[ApplicationExtensionABC, StartupExtensionABC]]):
|
||||
def use_extension(self, extension: Type[Union[ApplicationExtensionABC, StartupExtensionABC]]) -> 'ApplicationBuilder':
|
||||
if issubclass(extension, ApplicationExtensionABC) and extension not in self._app_extensions:
|
||||
self._app_extensions.append(extension)
|
||||
elif issubclass(extension, StartupExtensionABC) and extension not in self._startup_extensions:
|
||||
self._startup_extensions.append(extension)
|
||||
|
||||
return self
|
||||
|
||||
def _build_startup(self):
|
||||
for ex in self._startup_extensions:
|
||||
extension = ex()
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.configuration'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -35,4 +35,4 @@ from .validator_abc import ValidatorABC
|
||||
from .variable_argument import VariableArgument
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.console'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -28,4 +28,4 @@ from .foreground_color_enum import ForegroundColorEnum
|
||||
from .spinner_thread import SpinnerThread
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -4,7 +4,7 @@
|
||||
"Version": {
|
||||
"Major": "2022",
|
||||
"Minor": "10",
|
||||
"Micro": "1"
|
||||
"Micro": "0.post7"
|
||||
},
|
||||
"Author": "Sven Heidemann",
|
||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.database'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -26,4 +26,4 @@ from .database_settings import DatabaseSettings
|
||||
from .table_abc import TableABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.database.connection'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -25,4 +25,4 @@ from .database_connection import DatabaseConnection
|
||||
from .database_connection_abc import DatabaseConnectionABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.database.context'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -25,4 +25,4 @@ from .database_context import DatabaseContext
|
||||
from .database_context_abc import DatabaseContextABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.dependency_injection'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -31,4 +31,4 @@ from .service_provider import ServiceProvider
|
||||
from .service_provider_abc import ServiceProviderABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.environment'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -26,4 +26,4 @@ from .environment_name_enum import EnvironmentNameEnum
|
||||
from .application_environment import ApplicationEnvironment
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.logging'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -28,4 +28,4 @@ from .logging_settings import LoggingSettings
|
||||
from .logging_settings_name_enum import LoggingSettingsNameEnum
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -37,16 +37,29 @@ class Logger(LoggerABC):
|
||||
self._check_for_settings(self._time_format_settings, TimeFormatSettings)
|
||||
self._check_for_settings(self._log_settings, LoggingSettings)
|
||||
|
||||
self._log = Template(self._log_settings.filename).substitute(
|
||||
date_time_now=self._env.date_time_now.strftime(self._time_format_settings.date_time_format),
|
||||
start_time=self._env.start_time.strftime(self._time_format_settings.date_time_log_format)
|
||||
)
|
||||
self._path = self._log_settings.path
|
||||
self._level = self._log_settings.level
|
||||
self._console = self._log_settings.console
|
||||
|
||||
self.create()
|
||||
|
||||
@property
|
||||
def _log(self) -> str:
|
||||
return Template(self._log_settings.filename).substitute(
|
||||
date_time_now=self._env.date_time_now.strftime(self._time_format_settings.date_time_format),
|
||||
date_now=self._env.date_time_now.strftime(self._time_format_settings.date_format),
|
||||
time_now=self._env.date_time_now.strftime(self._time_format_settings.time_format),
|
||||
start_time=self._env.start_time.strftime(self._time_format_settings.date_time_log_format)
|
||||
)
|
||||
|
||||
@property
|
||||
def _path(self) -> str:
|
||||
return Template(self._log_settings.path).substitute(
|
||||
date_time_now=self._env.date_time_now.strftime(self._time_format_settings.date_time_format),
|
||||
date_now=self._env.date_time_now.strftime(self._time_format_settings.date_format),
|
||||
time_now=self._env.date_time_now.strftime(self._time_format_settings.time_format),
|
||||
start_time=self._env.start_time.strftime(self._time_format_settings.date_time_log_format)
|
||||
)
|
||||
|
||||
def _check_for_settings(self, settings: ConfigurationModelABC, settings_type: type):
|
||||
self._level = LoggingLevelEnum.OFF
|
||||
self._console = LoggingLevelEnum.FATAL
|
||||
@@ -112,7 +125,8 @@ class Logger(LoggerABC):
|
||||
try:
|
||||
# open log file and append always
|
||||
if not os.path.isdir(self._path):
|
||||
self._fatal_console(__name__, 'Log directory not found')
|
||||
self._warn_console(__name__, 'Log directory not found, try to recreate logger')
|
||||
self.create()
|
||||
|
||||
with open(self._path + self._log, "a+", encoding="utf-8") as f:
|
||||
f.write(string + '\n')
|
||||
@@ -153,7 +167,7 @@ class Logger(LoggerABC):
|
||||
if self._level.value >= LoggingLevelEnum.TRACE.value:
|
||||
self._append_log(output)
|
||||
|
||||
# check if message can be shown in console_old
|
||||
# check if message can be shown in console
|
||||
if self._console.value >= LoggingLevelEnum.TRACE.value:
|
||||
Console.set_foreground_color(ForegroundColorEnum.green)
|
||||
Console.write_line(output)
|
||||
@@ -166,7 +180,7 @@ class Logger(LoggerABC):
|
||||
if self._level.value >= LoggingLevelEnum.DEBUG.value:
|
||||
self._append_log(output)
|
||||
|
||||
# check if message can be shown in console_old
|
||||
# check if message can be shown in console
|
||||
if self._console.value >= LoggingLevelEnum.DEBUG.value:
|
||||
Console.set_foreground_color(ForegroundColorEnum.green)
|
||||
Console.write_line(output)
|
||||
@@ -179,7 +193,7 @@ class Logger(LoggerABC):
|
||||
if self._level.value >= LoggingLevelEnum.INFO.value:
|
||||
self._append_log(output)
|
||||
|
||||
# check if message can be shown in console_old
|
||||
# check if message can be shown in console
|
||||
if self._console.value >= LoggingLevelEnum.INFO.value:
|
||||
Console.set_foreground_color(ForegroundColorEnum.green)
|
||||
Console.write_line(output)
|
||||
@@ -192,7 +206,7 @@ class Logger(LoggerABC):
|
||||
if self._level.value >= LoggingLevelEnum.WARN.value:
|
||||
self._append_log(output)
|
||||
|
||||
# check if message can be shown in console_old
|
||||
# check if message can be shown in console
|
||||
if self._console.value >= LoggingLevelEnum.WARN.value:
|
||||
Console.set_foreground_color(ForegroundColorEnum.yellow)
|
||||
Console.write_line(output)
|
||||
@@ -211,7 +225,7 @@ class Logger(LoggerABC):
|
||||
if self._level.value >= LoggingLevelEnum.ERROR.value:
|
||||
self._append_log(output)
|
||||
|
||||
# check if message can be shown in console_old
|
||||
# check if message can be shown in console
|
||||
if self._console.value >= LoggingLevelEnum.ERROR.value:
|
||||
Console.set_foreground_color(ForegroundColorEnum.red)
|
||||
Console.write_line(output)
|
||||
@@ -230,7 +244,7 @@ class Logger(LoggerABC):
|
||||
if self._level.value >= LoggingLevelEnum.FATAL.value:
|
||||
self._append_log(output)
|
||||
|
||||
# check if message can be shown in console_old
|
||||
# check if message can be shown in console
|
||||
if self._console.value >= LoggingLevelEnum.FATAL.value:
|
||||
Console.set_foreground_color(ForegroundColorEnum.red)
|
||||
Console.write_line(output)
|
||||
@@ -238,6 +252,22 @@ class Logger(LoggerABC):
|
||||
|
||||
sys.exit()
|
||||
|
||||
def _warn_console(self, name: str, message: str):
|
||||
r"""Writes a warning to console only
|
||||
|
||||
Parameter
|
||||
---------
|
||||
name: :class:`str`
|
||||
Error name
|
||||
message: :class:`str`
|
||||
Error message
|
||||
"""
|
||||
# check if message can be shown in console
|
||||
if self._console.value >= LoggingLevelEnum.WARN.value:
|
||||
Console.set_foreground_color(ForegroundColorEnum.yellow)
|
||||
Console.write_line(self._get_string(name, LoggingLevelEnum.WARN, message))
|
||||
Console.set_foreground_color(ForegroundColorEnum.default)
|
||||
|
||||
def _fatal_console(self, name: str, message: str, ex: Exception = None):
|
||||
r"""Writes an error to console only
|
||||
|
||||
@@ -258,7 +288,7 @@ class Logger(LoggerABC):
|
||||
else:
|
||||
output = self._get_string(name, LoggingLevelEnum.ERROR, message)
|
||||
|
||||
# check if message can be shown in console_old
|
||||
# check if message can be shown in console
|
||||
if self._console.value >= LoggingLevelEnum.FATAL.value:
|
||||
Console.set_foreground_color(ForegroundColorEnum.red)
|
||||
Console.write_line(output)
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.mailing'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -28,4 +28,4 @@ from .email_client_settings import EMailClientSettings
|
||||
from .email_client_settings_name_enum import EMailClientSettingsNameEnum
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -71,10 +71,6 @@ class EMailClient(EMailClientABC):
|
||||
self._logger.trace(__name__, f'Started {__name__}.send_mail')
|
||||
try:
|
||||
self.login()
|
||||
email.body += f'\n\nDies ist eine automatische E-Mail.' \
|
||||
f'\nGesendet von {self._environment.application_name}-{self._environment.environment_name}@{self._environment.host_name} für ' \
|
||||
f'{self._environment.customer}.'
|
||||
|
||||
self._logger.debug(__name__, f'Try to send email to {email.receiver_list}')
|
||||
self._server.sendmail(self._mail_settings.user_name, email.receiver_list, email.get_content(self._mail_settings.user_name))
|
||||
self._logger.info(__name__, f'Sent email to {email.receiver_list}')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.pipes'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -30,4 +30,4 @@ from .to_camel_case_pipe import ToCamelCasePipe
|
||||
from .to_snake_case_pipe import ToSnakeCasePipe
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -11,4 +11,7 @@ class VersionPipe(PipeABC):
|
||||
if atr.value not in value:
|
||||
raise KeyError(atr.value)
|
||||
|
||||
return f'{value[VersionSettingsNameEnum.major.value]}.{value[VersionSettingsNameEnum.minor.value]}.{value[VersionSettingsNameEnum.micro.value]}'
|
||||
v_str = f'{value[VersionSettingsNameEnum.major.value]}.{value[VersionSettingsNameEnum.minor.value]}'
|
||||
if value[VersionSettingsNameEnum.micro.value] is not None:
|
||||
v_str += f'.{value[VersionSettingsNameEnum.micro.value]}'
|
||||
return v_str
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.time'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -25,4 +25,4 @@ from .time_format_settings import TimeFormatSettings
|
||||
from .time_format_settings_names_enum import TimeFormatSettingsNamesEnum
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_core.utils'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2020 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.1'
|
||||
__version__ = '2022.10.0.post7'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -26,4 +26,4 @@ from .string import String
|
||||
from .pip import Pip
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='1')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post7')
|
||||
|
@@ -65,7 +65,7 @@ class Pip:
|
||||
"""
|
||||
result = None
|
||||
with suppress(Exception):
|
||||
args = [cls._executable, "-m", "pip", "show", package]
|
||||
args = [cls._executable, "-m", "pip", "freeze"]
|
||||
|
||||
result = subprocess.check_output(
|
||||
args,
|
||||
@@ -74,18 +74,11 @@ class Pip:
|
||||
|
||||
if result is None:
|
||||
return None
|
||||
for p in str(result.decode()).split('\n'):
|
||||
if p.startswith(package):
|
||||
return p
|
||||
|
||||
new_package: list[str] = str(result, 'utf-8').lower().split('\n')
|
||||
new_version = ''
|
||||
|
||||
for atr in new_package:
|
||||
if 'version' in atr:
|
||||
new_version = atr.split(': ')[1]
|
||||
|
||||
if new_version != '':
|
||||
return f'{package}=={new_version}'
|
||||
|
||||
return package
|
||||
return None
|
||||
|
||||
@classmethod
|
||||
def get_outdated(cls) -> bytes:
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_discord'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.2'
|
||||
__version__ = '2022.10.0.post6'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -55,4 +55,4 @@ def get_discord_collection(services: 'ServiceCollectionABC') -> 'DiscordCollecti
|
||||
# build-ignore-end
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post6')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_discord.application'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.2'
|
||||
__version__ = '2022.10.0.post6'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -24,4 +24,4 @@ from collections import namedtuple
|
||||
from .discord_bot_application_abc import DiscordBotApplicationABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post6')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_discord.command'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.2'
|
||||
__version__ = '2022.10.0.post6'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -25,4 +25,4 @@ from .discord_command_abc import DiscordCommandABC
|
||||
from .discord_commands_meta import DiscordCogMeta
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post6')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_discord.configuration'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.2'
|
||||
__version__ = '2022.10.0.post6'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -24,4 +24,4 @@ from collections import namedtuple
|
||||
from .discord_bot_settings import DiscordBotSettings
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post6')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_discord.container'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.2'
|
||||
__version__ = '2022.10.0.post6'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -31,4 +31,4 @@ from .thread import Thread
|
||||
from .voice_channel import VoiceChannel
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post6')
|
||||
|
@@ -4,7 +4,7 @@
|
||||
"Version": {
|
||||
"Major": "2022",
|
||||
"Minor": "10",
|
||||
"Micro": "2"
|
||||
"Micro": "0.post6"
|
||||
},
|
||||
"Author": "Sven Heidemann",
|
||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||
@@ -16,12 +16,12 @@
|
||||
"LicenseName": "MIT",
|
||||
"LicenseDescription": "MIT, see LICENSE for more details.",
|
||||
"Dependencies": [
|
||||
"cpl-core>=2022.10.1",
|
||||
"cpl-core>=2022.10.0",
|
||||
"discord.py==2.0.1",
|
||||
"cpl-query==2022.10.2"
|
||||
"cpl-query>=2022.10.0"
|
||||
],
|
||||
"DevDependencies": [
|
||||
"cpl-cli>=2022.7.0.post2"
|
||||
"cpl-cli>=2022.10.0"
|
||||
],
|
||||
"PythonVersion": ">=3.10.4",
|
||||
"PythonPath": {
|
||||
|
@@ -37,6 +37,10 @@ from cpl_discord.events.on_private_channel_create_abc import OnPrivateChannelCre
|
||||
from cpl_discord.events.on_private_channel_delete_abc import OnPrivateChannelDeleteABC
|
||||
from cpl_discord.events.on_private_channel_pins_update_abc import OnPrivateChannelPinsUpdateABC
|
||||
from cpl_discord.events.on_private_channel_update_abc import OnPrivateChannelUpdateABC
|
||||
from cpl_discord.events.on_raw_reaction_add_abc import OnRawReactionAddABC
|
||||
from cpl_discord.events.on_raw_reaction_clear_abc import OnRawReactionClearABC
|
||||
from cpl_discord.events.on_raw_reaction_clear_emoji_abc import OnRawReactionClearEmojiABC
|
||||
from cpl_discord.events.on_raw_reaction_remove_abc import OnRawReactionRemoveABC
|
||||
from cpl_discord.events.on_reaction_add_abc import OnReactionAddABC
|
||||
from cpl_discord.events.on_reaction_clear_abc import OnReactionClearABC
|
||||
from cpl_discord.events.on_reaction_clear_emoji_abc import OnReactionClearEmojiABC
|
||||
@@ -87,6 +91,10 @@ class DiscordEventTypesEnum(Enum):
|
||||
on_private_channel_delete = OnPrivateChannelDeleteABC
|
||||
on_private_channel_pins_update = OnPrivateChannelPinsUpdateABC
|
||||
on_private_channel_update = OnPrivateChannelUpdateABC
|
||||
on_raw_reaction_add = OnRawReactionAddABC
|
||||
on_raw_reaction_clear = OnRawReactionClearABC
|
||||
on_raw_reaction_clear_emoji = OnRawReactionClearEmojiABC
|
||||
on_raw_reaction_remove = OnRawReactionRemoveABC
|
||||
on_reaction_add = OnReactionAddABC
|
||||
on_reaction_clear = OnReactionClearABC
|
||||
on_reaction_clear_emoji = OnReactionClearEmojiABC
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_discord.events'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.2'
|
||||
__version__ = '2022.10.0.post6'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -69,4 +69,4 @@ from .on_voice_state_update_abc import OnVoiceStateUpdateABC
|
||||
from .on_webhooks_update_abc import OnWebhooksUpdateABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post6')
|
||||
|
13
src/cpl_discord/events/on_raw_reaction_add_abc.py
Normal file
13
src/cpl_discord/events/on_raw_reaction_add_abc.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from abc import ABC, abstractmethod
|
||||
import discord
|
||||
from discord import RawReactionActionEvent
|
||||
|
||||
|
||||
class OnRawReactionAddABC(ABC):
|
||||
|
||||
@abstractmethod
|
||||
def __init__(self): pass
|
||||
|
||||
@abstractmethod
|
||||
async def on_raw_reaction_add(self, payload: RawReactionActionEvent): pass
|
||||
|
13
src/cpl_discord/events/on_raw_reaction_clear_abc.py
Normal file
13
src/cpl_discord/events/on_raw_reaction_clear_abc.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from abc import ABC, abstractmethod
|
||||
import discord
|
||||
from discord import RawReactionActionEvent
|
||||
|
||||
|
||||
class OnRawReactionClearABC(ABC):
|
||||
|
||||
@abstractmethod
|
||||
def __init__(self): pass
|
||||
|
||||
@abstractmethod
|
||||
async def on_raw_reaction_clear(self, payload: RawReactionActionEvent): pass
|
||||
|
13
src/cpl_discord/events/on_raw_reaction_clear_emoji_abc.py
Normal file
13
src/cpl_discord/events/on_raw_reaction_clear_emoji_abc.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from abc import ABC, abstractmethod
|
||||
import discord
|
||||
from discord import RawReactionActionEvent
|
||||
|
||||
|
||||
class OnRawReactionClearEmojiABC(ABC):
|
||||
|
||||
@abstractmethod
|
||||
def __init__(self): pass
|
||||
|
||||
@abstractmethod
|
||||
async def on_raw_reaction_clear_emoji(self, payload: RawReactionActionEvent): pass
|
||||
|
13
src/cpl_discord/events/on_raw_reaction_remove_abc.py
Normal file
13
src/cpl_discord/events/on_raw_reaction_remove_abc.py
Normal file
@@ -0,0 +1,13 @@
|
||||
from abc import ABC, abstractmethod
|
||||
import discord
|
||||
from discord import RawReactionActionEvent
|
||||
|
||||
|
||||
class OnRawReactionRemoveABC(ABC):
|
||||
|
||||
@abstractmethod
|
||||
def __init__(self): pass
|
||||
|
||||
@abstractmethod
|
||||
async def on_raw_reaction_remove(self, payload: RawReactionActionEvent): pass
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_discord.helper'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.2'
|
||||
__version__ = '2022.10.0.post6'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -24,4 +24,4 @@ from collections import namedtuple
|
||||
from .to_containers_converter import ToContainersConverter
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post6')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_discord.service'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.2'
|
||||
__version__ = '2022.10.0.post6'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -29,4 +29,4 @@ from .discord_service import DiscordService
|
||||
from .discord_service_abc import DiscordServiceABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post6')
|
||||
|
@@ -43,8 +43,8 @@ class DiscordBotService(DiscordBotServiceABC):
|
||||
|
||||
def _get_settings(self, settings_from_config: DiscordBotSettings) -> DiscordBotSettings:
|
||||
new_settings = DiscordBotSettings()
|
||||
token = settings_from_config.token
|
||||
prefix = settings_from_config.prefix
|
||||
token = None if settings_from_config is None else settings_from_config.token
|
||||
prefix = None if settings_from_config is None else settings_from_config.prefix
|
||||
env_token = self._config.get_configuration('TOKEN')
|
||||
env_prefix = self._config.get_configuration('PREFIX')
|
||||
|
||||
|
@@ -2,6 +2,7 @@ from datetime import datetime
|
||||
from typing import Optional, Sequence, Union, Type
|
||||
|
||||
import discord
|
||||
from discord import RawReactionActionEvent
|
||||
from discord.ext import commands
|
||||
from discord.ext.commands import Context, CommandError, Cog, Command
|
||||
|
||||
@@ -46,6 +47,10 @@ from cpl_discord.events.on_private_channel_create_abc import OnPrivateChannelCre
|
||||
from cpl_discord.events.on_private_channel_delete_abc import OnPrivateChannelDeleteABC
|
||||
from cpl_discord.events.on_private_channel_pins_update_abc import OnPrivateChannelPinsUpdateABC
|
||||
from cpl_discord.events.on_private_channel_update_abc import OnPrivateChannelUpdateABC
|
||||
from cpl_discord.events.on_raw_reaction_add_abc import OnRawReactionAddABC
|
||||
from cpl_discord.events.on_raw_reaction_clear_abc import OnRawReactionClearABC
|
||||
from cpl_discord.events.on_raw_reaction_clear_emoji_abc import OnRawReactionClearEmojiABC
|
||||
from cpl_discord.events.on_raw_reaction_remove_abc import OnRawReactionRemoveABC
|
||||
from cpl_discord.events.on_reaction_add_abc import OnReactionAddABC
|
||||
from cpl_discord.events.on_reaction_clear_abc import OnReactionClearABC
|
||||
from cpl_discord.events.on_reaction_clear_emoji_abc import OnReactionClearEmojiABC
|
||||
@@ -161,12 +166,12 @@ class DiscordService(DiscordServiceABC, commands.Cog, metaclass=DiscordCogMeta):
|
||||
|
||||
@commands.Cog.listener()
|
||||
async def on_message(self, message: discord.Message):
|
||||
self._logger.trace(__name__, f'Received on_message:\n\t{message}\n\t{message.content}')
|
||||
self._logger.trace(__name__, f'Received on_message:\n\t{message}')
|
||||
await self._handle_event(OnMessageABC, message)
|
||||
|
||||
@commands.Cog.listener()
|
||||
async def on_message_delete(self, message: discord.Message):
|
||||
self._logger.trace(__name__, f'Received on_message_delete:\n\t{message}\n\t{message.content}')
|
||||
self._logger.trace(__name__, f'Received on_message_delete:\n\t{message}')
|
||||
await self._handle_event(OnMessageDeleteABC, message)
|
||||
|
||||
@commands.Cog.listener()
|
||||
@@ -179,6 +184,26 @@ class DiscordService(DiscordServiceABC, commands.Cog, metaclass=DiscordCogMeta):
|
||||
self._logger.trace(__name__, f'Received on_message_edit:\n\t{before}\n\t{after}')
|
||||
await self._handle_event(OnMessageEditABC, before, after)
|
||||
|
||||
@commands.Cog.listener()
|
||||
async def on_raw_reaction_add(self, payload: RawReactionActionEvent):
|
||||
self._logger.trace(__name__, f'Received on_raw_reaction_add')
|
||||
await self._handle_event(OnRawReactionAddABC, payload)
|
||||
|
||||
@commands.Cog.listener()
|
||||
async def on_raw_reaction_remove(self, payload: RawReactionActionEvent):
|
||||
self._logger.trace(__name__, f'Received on_raw_reaction_remove')
|
||||
await self._handle_event(OnRawReactionRemoveABC, payload)
|
||||
|
||||
@commands.Cog.listener()
|
||||
async def on_raw_reaction_clear(self, payload: RawReactionActionEvent):
|
||||
self._logger.trace(__name__, f'Received on_raw_reaction_clear')
|
||||
await self._handle_event(OnRawReactionClearABC, payload)
|
||||
|
||||
@commands.Cog.listener()
|
||||
async def on_raw_reaction_clear_emoji(self, payload: RawReactionActionEvent):
|
||||
self._logger.trace(__name__, f'Received on_raw_reaction_clear_emoji')
|
||||
await self._handle_event(OnRawReactionClearEmojiABC, payload)
|
||||
|
||||
@commands.Cog.listener()
|
||||
async def on_reaction_add(self, reaction: discord.Reaction, user: discord.User):
|
||||
self._logger.trace(__name__, f'Received on_reaction_add:\n\t{reaction}\n\t{user}')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_query'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.9'
|
||||
__version__ = '2022.10.0.post2'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='9')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post2')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_query.base'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.9'
|
||||
__version__ = '2022.10.0.post2'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -23,4 +23,4 @@ from collections import namedtuple
|
||||
# imports:
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='9')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post2')
|
||||
|
@@ -4,7 +4,7 @@
|
||||
"Version": {
|
||||
"Major": "2022",
|
||||
"Minor": "10",
|
||||
"Micro": "9"
|
||||
"Micro": "0.post2"
|
||||
},
|
||||
"Author": "Sven Heidemann",
|
||||
"AuthorEmail": "sven.heidemann@sh-edraft.de",
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_query.enumerable'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.9'
|
||||
__version__ = '2022.10.0.post2'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -27,4 +27,4 @@ from .ordered_enumerable import OrderedEnumerable
|
||||
from .ordered_enumerable_abc import OrderedEnumerableABC
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='9')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post2')
|
||||
|
@@ -249,9 +249,6 @@ class Enumerable(EnumerableABC):
|
||||
|
||||
_list = self.to_list()
|
||||
|
||||
if _index >= len(_list):
|
||||
raise IndexOutOfRangeException()
|
||||
|
||||
return Enumerable(self.type, _list[_index:])
|
||||
|
||||
def skip_last(self, _index: int) -> EnumerableABC:
|
||||
@@ -263,9 +260,6 @@ class Enumerable(EnumerableABC):
|
||||
|
||||
index = len(self) - _index
|
||||
|
||||
if index >= len(self) or index < 0:
|
||||
raise IndexOutOfRangeException()
|
||||
|
||||
return self.take(len(self) - _index)
|
||||
|
||||
def take(self, _index: int) -> EnumerableABC:
|
||||
@@ -277,9 +271,6 @@ class Enumerable(EnumerableABC):
|
||||
|
||||
_list = self.to_list()
|
||||
|
||||
if _index >= len(_list):
|
||||
raise IndexOutOfRangeException()
|
||||
|
||||
return Enumerable(self.type, _list[:_index])
|
||||
|
||||
def take_last(self, _index: int) -> EnumerableABC:
|
||||
@@ -292,9 +283,6 @@ class Enumerable(EnumerableABC):
|
||||
_list = self.to_list()
|
||||
index = len(_list) - _index
|
||||
|
||||
if index >= len(_list) or index < 0:
|
||||
raise IndexOutOfRangeException()
|
||||
|
||||
return self.skip(index)
|
||||
|
||||
def sum(self, _func: Callable = None) -> Union[int, float, complex]:
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_query.extension'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.9'
|
||||
__version__ = '2022.10.0.post2'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -24,4 +24,4 @@ from collections import namedtuple
|
||||
from .list import List
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='9')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post2')
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_query.iterable'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2021 - 2022 sh-edraft.de'
|
||||
__version__ = '2022.10.9'
|
||||
__version__ = '2022.10.0.post2'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -27,4 +27,4 @@ from .ordered_iterable_abc import OrderedIterableABC
|
||||
from .ordered_iterable import OrderedIterable
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='9')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post2')
|
||||
|
@@ -262,9 +262,6 @@ class Iterable(IterableABC):
|
||||
if _index is None:
|
||||
raise ArgumentNoneException(ExceptionArgument.index)
|
||||
|
||||
if _index >= len(self):
|
||||
raise IndexOutOfRangeException()
|
||||
|
||||
return Iterable(self.type, values=self[_index:])
|
||||
|
||||
def skip_last(self, _index: int) -> IterableABC:
|
||||
@@ -276,9 +273,6 @@ class Iterable(IterableABC):
|
||||
|
||||
index = len(self) - _index
|
||||
|
||||
if index >= len(self) or index < 0:
|
||||
raise IndexOutOfRangeException()
|
||||
|
||||
result = Iterable()
|
||||
result.extend(self[:index])
|
||||
return result
|
||||
@@ -290,9 +284,6 @@ class Iterable(IterableABC):
|
||||
if _index is None:
|
||||
raise ArgumentNoneException(ExceptionArgument.index)
|
||||
|
||||
if _index >= len(self):
|
||||
raise IndexOutOfRangeException()
|
||||
|
||||
result = Iterable()
|
||||
result.extend(self[:_index])
|
||||
return result
|
||||
@@ -301,9 +292,6 @@ class Iterable(IterableABC):
|
||||
if self is None:
|
||||
raise ArgumentNoneException(ExceptionArgument.list)
|
||||
|
||||
if _index is None:
|
||||
raise ArgumentNoneException(ExceptionArgument.index)
|
||||
|
||||
index = len(self) - _index
|
||||
|
||||
if index >= len(self) or index < 0:
|
||||
|
@@ -15,7 +15,7 @@ __title__ = 'cpl_translation'
|
||||
__author__ = 'Sven Heidemann'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright (c) 2022 sh-edraft.de'
|
||||
__version__ = '2022.7.0.post2'
|
||||
__version__ = '2022.10.0.post2'
|
||||
|
||||
from collections import namedtuple
|
||||
|
||||
@@ -51,4 +51,4 @@ init()
|
||||
# build-ignore-end
|
||||
|
||||
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
|
||||
version_info = VersionInfo(major='2022', minor='7', micro='0.post2')
|
||||
version_info = VersionInfo(major='2022', minor='10', micro='0.post2')
|
||||
|
@@ -3,7 +3,7 @@
|
||||
"Name": "cpl-translation",
|
||||
"Version": {
|
||||
"Major": "2022",
|
||||
"Minor": "7",
|
||||
"Minor": "10",
|
||||
"Micro": "0.post2"
|
||||
},
|
||||
"Author": "Sven Heidemann",
|
||||
@@ -16,10 +16,10 @@
|
||||
"LicenseName": "MIT",
|
||||
"LicenseDescription": "MIT, see LICENSE for more details.",
|
||||
"Dependencies": [
|
||||
"cpl-core>=2022.7.0.post2"
|
||||
"cpl-core>=2022.10.0"
|
||||
],
|
||||
"DevDependencies": [
|
||||
"cpl-cli>=2022.7.0.post2"
|
||||
"cpl-cli>=2022.10.0"
|
||||
],
|
||||
"PythonVersion": ">=3.10.4",
|
||||
"PythonPath": {
|
||||
|
@@ -34,7 +34,7 @@ class TranslationService(TranslationServiceABC):
|
||||
raise FileNotFoundError()
|
||||
|
||||
file_dict = {}
|
||||
with open(f'translation/{lang}.json', 'r') as file:
|
||||
with open(f'translation/{lang}.json', 'r', encoding='utf-8') as file:
|
||||
file_dict = json.load(file)
|
||||
file.close()
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user