Compare commits

..

20 Commits

Author SHA1 Message Date
60a349f918 [WIP] Fixed imports 2023-04-16 22:01:15 +02:00
a155bbc468 [WIP] Fixed imports 2023-04-16 21:52:03 +02:00
2e8886e255 [WIP] Fixed imports 2023-04-16 21:48:03 +02:00
aabbfeaa92 [WIP] Added scheduler 2023-04-16 21:46:17 +02:00
39ca803d36 Added take until 2023-04-16 16:52:06 +02:00
b7d518022a Improved tests 2023-04-16 16:15:55 +02:00
2ec4af8bb3 Improved tests 2023-04-16 15:58:46 +02:00
30b163a440 Added take 2023-04-16 15:48:33 +02:00
82f23f237c [WIP] operator implement 2023-04-16 03:06:55 +02:00
79a6c1db8f Improved imports 2023-04-16 00:57:35 +02:00
51803bf5d1 Added interval 2023-04-16 00:49:38 +02:00
a463ac5274 Improved subjects 2023-04-15 22:00:59 +02:00
3ee617ee38 Build project 2023-04-15 21:49:34 +02:00
e5fd7df519 Fixed subjects 2023-04-15 21:41:49 +02:00
7001b23b31 Added improved models 2023-04-15 20:06:43 +02:00
e94ff1b26f Added improved models 2023-04-15 19:46:21 +02:00
d7d41b878c Added behavior subject 2023-04-15 19:21:11 +02:00
9d05d76cfa Added closed test 2023-04-15 19:14:36 +02:00
e6ee543a1d Added subject 2023-04-15 18:59:24 +02:00
efc9cf9c83 Added observables 2023-04-15 16:17:31 +02:00
1000 changed files with 53201 additions and 7315 deletions

View File

@@ -1,76 +0,0 @@
name: Build on push
run-name: Build on push
on:
push:
branches:
- dev
jobs:
prepare:
uses: ./.gitea/workflows/prepare.yaml
with:
version_suffix: 'dev'
secrets: inherit
api:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, application, auth, core, dependency ]
with:
working_directory: src/cpl-api
secrets: inherit
application:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, core, dependency ]
with:
working_directory: src/cpl-application
secrets: inherit
auth:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, core, dependency, database ]
with:
working_directory: src/cpl-auth
secrets: inherit
core:
uses: ./.gitea/workflows/package.yaml
needs: [prepare]
with:
working_directory: src/cpl-core
secrets: inherit
database:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, core, dependency ]
with:
working_directory: src/cpl-database
secrets: inherit
dependency:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, core ]
with:
working_directory: src/cpl-dependency
secrets: inherit
mail:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, core, dependency ]
with:
working_directory: src/cpl-mail
secrets: inherit
query:
uses: ./.gitea/workflows/package.yaml
needs: [prepare]
with:
working_directory: src/cpl-query
secrets: inherit
translation:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, core, dependency ]
with:
working_directory: src/cpl-translation
secrets: inherit

View File

@@ -1,39 +0,0 @@
name: Build on push
run-name: Build on push
on:
push:
branches:
- master
jobs:
prepare:
uses: ./.gitea/workflows/prepare.yaml
secrets: inherit
core:
uses: ./.gitea/workflows/package.yaml
needs: [prepare]
with:
working_directory: src/cpl-core
secrets: inherit
query:
uses: ./.gitea/workflows/package.yaml
needs: [prepare]
with:
working_directory: src/cpl-query
secrets: inherit
translation:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, core ]
with:
working_directory: src/cpl-translation
secrets: inherit
mail:
uses: ./.gitea/workflows/package.yaml
needs: [ prepare, core ]
with:
working_directory: src/cpl-mail
secrets: inherit

View File

@@ -1,65 +0,0 @@
name: Build Package
run-name: Build Python Package
on:
workflow_call:
inputs:
version_suffix:
description: 'Suffix for version (z.B. "dev", "alpha", "beta")'
required: false
type: string
working_directory:
required: true
type: string
jobs:
build:
runs-on: [ runner ]
container: git.sh-edraft.de/sh-edraft.de/act-runner:latest
defaults:
run:
working-directory: ${{ inputs.working_directory }}
steps:
- name: Clone Repository
uses: https://github.com/actions/checkout@v3
with:
token: ${{ secrets.CI_ACCESS_TOKEN }}
- name: Download build version artifact
uses: actions/download-artifact@v3
with:
name: version
- name: Set version
run: |
sed -i -E "s/^version = \".*\"/version = \"$(cat /workspace/sh-edraft.de/cpl/version.txt)\"/" pyproject.toml
echo "Set version to $(cat /workspace/sh-edraft.de/cpl/version.txt)"
cat pyproject.toml
- name: Set pip conf
run: |
cat > .pip.conf <<'EOF'
[global]
extra-index-url = https://git.sh-edraft.de/api/packages/sh-edraft.de/pypi/simple/
EOF
- name: Install Dependencies
run: |
export PIP_CONFIG_FILE=".pip.conf"
pip install build
- name: Build Package
run: |
python -m build --outdir dist
- name: Login to registry git.sh-edraft.de
uses: https://github.com/docker/login-action@v1
with:
registry: git.sh-edraft.de
username: ${{ secrets.CI_USERNAME }}
password: ${{ secrets.CI_ACCESS_TOKEN }}
- name: Push image
run: |
pip install twine
python -m twine upload --repository-url https://git.sh-edraft.de/api/packages/sh-edraft.de/pypi -u ${{ secrets.CI_USERNAME }} -p ${{ secrets.CI_ACCESS_TOKEN }} ./dist/*

View File

@@ -1,54 +0,0 @@
name: Prepare Build
run-name: Prepare Build Version
on:
workflow_call:
inputs:
version_suffix:
description: 'Suffix for version (z.B. "dev", "alpha", "beta")'
required: false
type: string
jobs:
prepare:
runs-on: [ runner ]
container: git.sh-edraft.de/sh-edraft.de/act-runner:latest
steps:
- name: Clone Repository
uses: https://github.com/actions/checkout@v3
with:
token: ${{ secrets.CI_ACCESS_TOKEN }}
- name: Get Date and Build Number
run: |
git fetch --tags
git tag
DATE=$(date +'%Y.%m.%d')
TAG_COUNT=$(git tag -l "${DATE}.*" | wc -l)
BUILD_NUMBER=$(($TAG_COUNT + 1))
VERSION_SUFFIX=${{ inputs.version_suffix }}
if [ -n "$VERSION_SUFFIX" ] && [ "$VERSION_SUFFIX" = "dev" ]; then
BUILD_VERSION="${DATE}.dev${BUILD_NUMBER}"
elif [ -n "$VERSION_SUFFIX" ]; then
BUILD_VERSION="${DATE}.${BUILD_NUMBER}${VERSION_SUFFIX}"
else
BUILD_VERSION="${DATE}.${BUILD_NUMBER}"
fi
echo "$BUILD_VERSION" > version.txt
echo "VERSION $BUILD_VERSION"
- name: Create Git Tag for Build
run: |
git config user.name "ci"
git config user.email "dev@sh-edraft.de"
echo "tag $(cat version.txt)"
git tag $(cat version.txt)
git push origin --tags
- name: Upload build version artifact
uses: actions/upload-artifact@v3
with:
name: version
path: version.txt

View File

@@ -1,26 +0,0 @@
name: Test before pr merge
run-name: Test before pr merge
on:
pull_request:
types:
- opened
- edited
- reopened
- synchronize
- ready_for_review
jobs:
test-lint:
runs-on: [ runner ]
container: git.sh-edraft.de/sh-edraft.de/act-runner:latest
steps:
- name: Clone Repository
uses: https://github.com/actions/checkout@v3
with:
token: ${{ secrets.CI_ACCESS_TOKEN }}
- name: Installing black
run: python3.12 -m pip install black
- name: Checking black
run: python3.12 -m black src --check

1
.gitignore vendored
View File

@@ -113,7 +113,6 @@ venv.bak/
# Custom Environments
cpl-env/
.secret
# Spyder project settings
.spyderproject

View File

@@ -1,2 +0,0 @@
[global]
extra-index-url = https://git.sh-edraft.de/api/packages/sh-edraft.de/pypi/simple/

153
README.md
View File

@@ -0,0 +1,153 @@
<h1 align="center">CPL - Common python library</h1>
<!-- Summary -->
<p align="center">
<!-- <img src="" alt="cpl-logo" width="120px" height="120px"/> -->
<br>
<i>
CPL is a development platform for python server applications
<br>using Python.</i>
<br>
</p>
## Table of Contents
<!-- TABLE OF CONTENTS -->
<ol>
<li><a href="#Features">Features</a></li>
<li>
<a href="#getting-started">Getting Started</a>
<ul>
<li><a href="#prerequisites">Prerequisites</a></li>
<li><a href="#installation">Installation</a></li>
</ul>
</li>
<li><a href="#roadmap">Roadmap</a></li>
<li><a href="#contributing">Contributing</a></li>
<li><a href="#license">License</a></li>
<li><a href="#contact">Contact</a></li>
</ol>
## Features
<!-- FEATURE OVERVIEW -->
- Expandle
- Application base
- Standardized application classes
- Application object builder
- Application extension classes
- Startup classes
- Startup extension classes
- Configuration
- Configure via object mapped JSON
- Console argument handling
- Console class for in and output
- Banner
- Spinner
- Options (menu)
- Table
- Write
- Write_at
- Write_line
- Write_line_at
- Dependency injection
- Service lifetimes: singleton, scoped and transient
- Providing of application environment
- Environment (development, staging, testing, production)
- Appname
- Customer
- Hostname
- Runtime directory
- Working directory
- Logging
- Standardized logger
- Log-level (FATAL, ERROR, WARN, INFO, DEBUG & TRACE)
- Mail handling
- Send mails
- Pipe classes
- Convert input
- Utils
- Credential manager
- Encryption via BASE64
- PIP wrapper class based on subprocess
- Run pip commands
- String converter to different variants
- to_lower_case
- to_camel_case
- ...
<!-- GETTING STARTED -->
## Getting Started
[Get started with CPL][quickstart].
### Prerequisites
- Install [python] which includes [Pip installs packages][pip]
### Installation
Install the CPL package
```sh
pip install cpl-core --extra-index-url https://pip.sh-edraft.de
```
Install the CPL CLI
```sh
pip install cpl-cli --extra-index-url https://pip.sh-edraft.de
```
Create workspace:
```sh
cpl new <console|library|unittest> <PROJECT NAME>
```
Run the application:
```sh
cd <PROJECT NAME>
cpl start
```
<!-- ROADMAP -->
## Roadmap
See the [open issues](https://git.sh-edraft.de/sh-edraft.de/sh_cpl/issues) for a list of proposed features (and known issues).
<!-- CONTRIBUTING -->
## Contributing
### Contributing Guidelines
Read through our [contributing guidelines][contributing] to learn about our submission process, coding rules and more.
### Want to Help?
Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for [contributing][contributing].
<!-- LICENSE -->
## License
Distributed under the MIT License. See [LICENSE] for more information.
<!-- CONTACT -->
## Contact
Sven Heidemann - sven.heidemann@sh-edraft.de
Project link: [https://git.sh-edraft.de/sh-edraft.de/sh_common_py_lib](https://git.sh-edraft.de/sh-edraft.de/sh_cpl)
<!-- External LINKS -->
[pip_url]: https://pip.sh-edraft.de
[python]: https://www.python.org/
[pip]: https://pypi.org/project/pip/
<!-- Internal LINKS -->
[project]: https://git.sh-edraft.de/sh-edraft.de/sh_cpl
[quickstart]: https://git.sh-edraft.de/sh-edraft.de/sh_cpl/wiki/quickstart
[contributing]: https://git.sh-edraft.de/sh-edraft.de/sh_cpl/wiki/contributing
[license]: LICENSE

164
cpl-workspace.json Normal file
View File

@@ -0,0 +1,164 @@
{
"WorkspaceSettings": {
"DefaultProject": "cpl-core",
"Projects": {
"cpl-cli": "src/cpl_cli/cpl-cli.json",
"cpl-core": "src/cpl_core/cpl-core.json",
"cpl-discord": "src/cpl_discord/cpl-discord.json",
"cpl-query": "src/cpl_query/cpl-query.json",
"cpl-reactive-extensions": "src/cpl_reactive_extensions/cpl-reactive-extensions.json",
"cpl-translation": "src/cpl_translation/cpl-translation.json",
"set-version": "tools/set_version/set-version.json",
"set-pip-urls": "tools/set_pip_urls/set-pip-urls.json",
"unittests": "unittests/unittests/unittests.json",
"unittests_cli": "unittests/unittests_cli/unittests_cli.json",
"unittests_core": "unittests/unittests_core/unittests_core.json",
"unittests_query": "unittests/unittests_query/unittests_query.json",
"unittests_shared": "unittests/unittests_shared/unittests_shared.json",
"unittests_translation": "unittests/unittests_translation/unittests_translation.json",
"unittests_reactive_extenstions": "unittests/unittests_reactive_extenstions/unittests_reactive_extenstions.json"
},
"Scripts": {
"hello-world": "echo 'Hello World'",
"format": "echo 'Formatting:'; black ./",
"sv": "cpl set-version",
"set-version": "cpl run set-version --dev $ARGS; echo '';",
"spu": "cpl set-pip-urls",
"set-pip-urls": "cpl run set-pip-urls --dev $ARGS; echo '';",
"docs-build": "cpl format; echo 'Build Documentation'; cpl db-core; cpl db-discord; cpl db-query; cpl db-translation; cd docs/; make clean; make html;",
"db-core": "cd docs/; sphinx-apidoc -o source/ ../src/cpl_core; cd ../",
"db-discord": "cd docs/; sphinx-apidoc -o source/ ../src/cpl_discord; cd ../",
"db-query": "cd docs/; sphinx-apidoc -o source/ ../src/cpl_query; cd ../",
"db-translation": "cd docs/; sphinx-apidoc -o source/ ../src/cpl_translation; cd ../",
"db": "cpl docs-build",
"docs-open": "xdg-open $PWD/docs/build/html/index.html &",
"do": "cpl docs-open",
"test": "cpl run unittests",
"pre-build-all": "cpl sv $ARGS; cpl spu $ARGS;",
"build-all": "cpl build-cli; cpl build-core; cpl build-discord; cpl build-query; cpl build-reactive-extensions; cpl build-translation; cpl build-set-pip-urls; cpl build-set-version",
"ba": "cpl build-all $ARGS",
"build-cli": "echo 'Build cpl-cli'; cd ./src/cpl_cli; cpl build; cd ../../;",
"build-core": "echo 'Build cpl-core'; cd ./src/cpl_core; cpl build; cd ../../;",
"build-discord": "echo 'Build cpl-discord'; cd ./src/cpl_discord; cpl build; cd ../../;",
"build-query": "echo 'Build cpl-query'; cd ./src/cpl_query; cpl build; cd ../../;",
"build-reactive-extensions": "echo 'Build cpl-reactive-x'; cd ./src/cpl_reactive_extensions; cpl build; cd ../../;",
"build-translation": "echo 'Build cpl-translation'; cd ./src/cpl_translation; cpl build; cd ../../;",
"build-set-pip-urls": "echo 'Build set-pip-urls'; cd ./tools/set_pip_urls; cpl build; cd ../../;",
"build-set-version": "echo 'Build set-version'; cd ./tools/set_version; cpl build; cd ../../;",
"pre-publish-all": "cpl sv $ARGS; cpl spu $ARGS;",
"publish-all": "cpl publish-cli; cpl publish-core; cpl publish-discord; cpl publish-query; cpl publish-translation;",
"pa": "cpl publish-all $ARGS",
"publish-cli": "echo 'Publish cpl-cli'; cd ./src/cpl_cli; cpl publish; cd ../../;",
"publish-core": "echo 'Publish cpl-core'; cd ./src/cpl_core; cpl publish; cd ../../;",
"publish-discord": "echo 'Publish cpl-discord'; cd ./src/cpl_discord; cpl publish; cd ../../;",
"publish-query": "echo 'Publish cpl-query'; cd ./src/cpl_query; cpl publish; cd ../../;",
"publish-reactive-extensions": "echo 'Publish cpl-reactive-x'; cd ./src/cpl_reactive_extensions; cpl publish; cd ../../;",
"publish-translation": "echo 'Publish cpl-translation'; cd ./src/cpl_translation; cpl publish; cd ../../;",
"upload-prod-cli": "echo 'PROD Upload cpl-cli'; cpl upl-prod-cli;",
"upl-prod-cli": "twine upload -r pip.sh-edraft.de dist/cpl-cli/publish/setup/*",
"upload-prod-core": "echo 'PROD Upload cpl-core'; cpl upl-prod-core;",
"upl-prod-core": "twine upload -r pip.sh-edraft.de dist/cpl-core/publish/setup/*",
"upload-prod-discord": "echo 'PROD Upload cpl-discord'; cpl upl-prod-discord;",
"upl-prod-discord": "twine upload -r pip.sh-edraft.de dist/cpl-discord/publish/setup/*",
"upload-prod-query": "echo 'PROD Upload cpl-query'; cpl upl-prod-query;",
"upl-prod-query": "twine upload -r pip.sh-edraft.de dist/cpl-query/publish/setup/*",
"upload-prod-reactive-extensions": "echo 'PROD Upload cpl-reactive-extensions'; cpl upl-prod-query;",
"upl-prod-reactive-extensions": "twine upload -r pip.sh-edraft.de dist/cpl-reactive-extensions/publish/setup/*",
"upload-prod-translation": "echo 'PROD Upload cpl-translation'; cpl upl-prod-translation;",
"upl-prod-translation": "twine upload -r pip.sh-edraft.de dist/cpl-translation/publish/setup/*",
"upload-exp-cli": "echo 'EXP Upload cpl-cli'; cpl upl-exp-cli;",
"upl-exp-cli": "twine upload -r pip-exp.sh-edraft.de dist/cpl-cli/publish/setup/*",
"upload-exp-core": "echo 'EXP Upload cpl-core'; cpl upl-exp-core;",
"upl-exp-core": "twine upload -r pip-exp.sh-edraft.de dist/cpl-core/publish/setup/*",
"upload-exp-discord": "echo 'EXP Upload cpl-discord'; cpl upl-exp-discord;",
"upl-exp-discord": "twine upload -r pip-exp.sh-edraft.de dist/cpl-discord/publish/setup/*",
"upload-exp-query": "echo 'EXP Upload cpl-query'; cpl upl-exp-query;",
"upl-exp-query": "twine upload -r pip-exp.sh-edraft.de dist/cpl-query/publish/setup/*",
"upload-exp-reactive-extensions": "echo 'EXP Upload cpl-reactive-extensions'; cpl upl-exp-query;",
"upl-exp-reactive-extensions": "twine upload -r pip-exp.sh-edraft.de dist/cpl-reactive-extensions/publish/setup/*",
"upload-exp-translation": "echo 'EXP Upload cpl-translation'; cpl upl-exp-translation;",
"upl-exp-translation": "twine upload -r pip-exp.sh-edraft.de dist/cpl-translation/publish/setup/*",
"upload-dev-cli": "echo 'DEV Upload cpl-cli'; cpl upl-dev-cli;",
"upl-dev-cli": "twine upload -r pip-dev.sh-edraft.de dist/cpl-cli/publish/setup/*",
"upload-dev-core": "echo 'DEV Upload cpl-core'; cpl upl-dev-core;",
"upl-dev-core": "twine upload -r pip-dev.sh-edraft.de dist/cpl-core/publish/setup/*",
"upload-dev-discord": "echo 'DEV Upload cpl-discord'; cpl upl-dev-discord;",
"upl-dev-discord": "twine upload -r pip-dev.sh-edraft.de dist/cpl-discord/publish/setup/*",
"upload-dev-query": "echo 'DEV Upload cpl-query'; cpl upl-dev-query;",
"upl-dev-query": "twine upload -r pip-dev.sh-edraft.de dist/cpl-query/publish/setup/*",
"upload-dev-reactive-extensions": "echo 'DEV Upload cpl-reactive-extensions'; cpl upl-dev-query;",
"upl-dev-reactive-extensions": "twine upload -r pip-dev.sh-edraft.de dist/cpl-reactive-extensions/publish/setup/*",
"upload-dev-translation": "echo 'DEV Upload cpl-translation'; cpl upl-dev-translation;",
"upl-dev-translation": "twine upload -r pip-dev.sh-edraft.de dist/cpl-translation/publish/setup/*",
"pre-deploy-prod": "cpl sv $ARGS; cpl spu --environment=production;",
"deploy-prod": "cpl deploy-prod-cli; cpl deploy-prod-core; cpl deploy-prod-discord; cpl deploy-prod-query; cpl deploy-prod-translation;",
"dp": "cpl deploy-prod $ARGS",
"deploy-prod-cli": "cpl publish-cli; cpl upload-prod-cli",
"deploy-prod-core": "cpl publish-core; cpl upload-prod-core",
"deploy-prod-query": "cpl publish-query; cpl upload-prod-query",
"deploy-prod-discord": "cpl publish-discord; cpl upload-prod-discord",
"deploy-prod-translation": "cpl publish-translation; cpl upload-prod-translation",
"pre-deploy-exp": "cpl sv $ARGS; cpl spu --environment=staging;",
"deploy-exp": "cpl deploy-exp-cli; cpl deploy-exp-core; cpl deploy-exp-discord; cpl deploy-exp-query; cpl deploy-exp-translation;",
"de": "cpl deploy-exp $ARGS",
"deploy-exp-cli": "cpl publish-cli; cpl upload-exp-cli",
"deploy-exp-core": "cpl publish-core; cpl upload-exp-core",
"deploy-exp-discord": "cpl publish-discord; cpl upload-exp-discord",
"deploy-exp-query": "cpl publish-query; cpl upload-exp-query",
"deploy-exp-translation": "cpl publish-translation; cpl upload-exp-translation",
"pre-deploy-dev": "cpl sv $ARGS; cpl spu --environment=development;",
"deploy-dev": "cpl deploy-dev-cli; cpl deploy-dev-core; cpl deploy-dev-discord; cpl deploy-dev-query; cpl deploy-dev-translation;",
"dd": "cpl deploy-dev $ARGS",
"deploy-dev-cli": "cpl publish-cli; cpl upload-dev-cli",
"deploy-dev-core": "cpl publish-core; cpl upload-dev-core",
"deploy-dev-discord": "cpl publish-discord; cpl upload-dev-discord",
"deploy-dev-query": "cpl publish-query; cpl upload-dev-query",
"deploy-dev-translation": "cpl publish-query; cpl upload-dev-translation",
"dev-install": "cpl di-core; cpl di-cli; cpl di-query; cpl di-translation;",
"di": "cpl dev-install",
"di-core": "pip install cpl-core --pre --upgrade --extra-index-url https://pip-dev.sh-edraft.de",
"di-cli": "pip install cpl-cli --pre --upgrade --extra-index-url https://pip-dev.sh-edraft.de",
"di-discord": "pip install cpl-discord --pre --upgrade --extra-index-url https://pip-dev.sh-edraft.de",
"di-query": "pip install cpl-query --pre --upgrade --extra-index-url https://pip-dev.sh-edraft.de",
"di-translation": "pip install cpl-translation --pre --upgrade --extra-index-url https://pip-dev.sh-edraft.de",
"prod-install": "cpl pi-core; cpl pi-cli; cpl pi-query; cpl pi-translation;",
"pi": "cpl prod-install",
"pi-core": "pip install cpl-core --pre --upgrade --extra-index-url https://pip.sh-edraft.de",
"pi-cli": "pip install cpl-cli --pre --upgrade --extra-index-url https://pip.sh-edraft.de",
"pi-discord": "pip install cpl-discord --pre --upgrade --extra-index-url https://pip.sh-edraft.de",
"pi-query": "pip install cpl-query --pre --upgrade --extra-index-url https://pip.sh-edraft.de",
"pi-translation": "pip install cpl-translation --pre --upgrade --extra-index-url https://pip.sh-edraft.de"
}
}
}

20
docs/Makefile Normal file
View File

@@ -0,0 +1,20 @@
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = source
BUILDDIR = build
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

BIN
docs/build/doctrees/contributing.doctree vendored Normal file

Binary file not shown.

BIN
docs/build/doctrees/cpl_cli.add.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/cpl_cli.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/cpl_cli.help.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/cpl_cli.new.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/cpl_cli.run.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/cpl_core.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/cpl_discord.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/cpl_query.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/deprecated.doctree vendored Normal file

Binary file not shown.

BIN
docs/build/doctrees/environment.pickle vendored Normal file

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/index.doctree vendored Normal file

Binary file not shown.

BIN
docs/build/doctrees/introduction.doctree vendored Normal file

Binary file not shown.

BIN
docs/build/doctrees/modules.doctree vendored Normal file

Binary file not shown.

BIN
docs/build/doctrees/quickstart.doctree vendored Normal file

Binary file not shown.

BIN
docs/build/doctrees/setup.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
docs/build/doctrees/tutorials.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

4
docs/build/html/.buildinfo vendored Normal file
View File

@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 7161cd79d6fb56140ef1c390e01dab1c
tags: 645f666f9bcd5a90fca523b33c5a78b7

BIN
docs/build/html/_images/ide-emulate.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

BIN
docs/build/html/_images/ide-src.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

BIN
docs/build/html/_images/ide.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -0,0 +1,111 @@
# Contributing to CPL
We would love for you to contribute to CPL and help make it even better than it is today! As a contributor, here are the guidelines we would like you to follow:
- [Issuses and Bugs](#found-a-bug)
- [Feature Request](#feature-request)
- [Submission Guidelines](#submission-guidelines)
- [Coding Rules](#coding-rules)
- [License](#license)
## Found a Bug?
If you find a bug in the source code, you can help us by [submitting an issue](#submitting-an-issue) to our [Gitea Repository][gitea-repo]. Even better, you can [submit a Pull Request](#submitting-a-pull-request) with a fix.
## Feature Request
You can request a new feature by submitting an issue to our [Gitea Repository][gitea-repo]. If you would like to implement a new feature, please consider the size of the change in order to determine the right steps to proceed:
For a Major Feature, first open an issue and outline your proposal so that it can be discussed. This process allows us to better coordinate our efforts, prevent duplication of work, and help you to craft the change so that it is successfully accepted into the project.
Note: Adding a new topic to the documentation, or significantly re-writing a topic, counts as a major feature.
Small Features can be crafted and directly submitted as a [Pull Request](#submit-pr).
## Submission Guidelines
### Submitting an Issue
Before you submit an issue, please search the issue tracker, maybe an issue for your problem already exists and the discussion might inform you of workarounds readily available.
We want to fix all the issues as soon as possible, but before fixing a bug we need to reproduce and confirm it. In order to reproduce bugs, we require that you provide a minimal reproduction. Having a minimal reproducible scenario gives us a wealth of important information without going back and forth to you with additional questions.
A minimal reproduction allows us to quickly confirm a bug (or point out a coding problem) as well as confirm that we are fixing the right problem.
We require a minimal reproduction to save maintainers' time and ultimately be able to fix more bugs. Often, developers find coding problems themselves while preparing a minimal reproduction. We understand that sometimes it might be hard to extract essential bits of code from a larger codebase but we really need to isolate the problem before we can fix it.
Unfortunately, we are not able to investigate / fix bugs without a minimal reproduction, so if we don't hear back from you, we are going to close an issue that doesn't have enough info to be reproduced.
### Submitting a Pull Request
Before you submit your Pull Request (PR) consider the following guidelines:
1. Search the [repository][gitea-repo] for an open or closed PR that relates to your submission. You don't want to duplicate existing efforts.
2. Be sure that an issue describes the problem you're fixing, or documents the design for the feature you'd like to add. Discussing the design upfront helps to ensure that we're ready to accept your work.
3. Fork the sh-edraft.de/cpl repo.
4. In your forked repository, make your changes in a new git branch:
```sh
git checkout -b my-fix-branch master
```
5. Create your patch, including appropriate test cases.
<!-- 6. Follow our [Coding Rules](coding-rules). -->
6. Commit your changes.
```sh
git commit --all
```
Note: the optional commit ```-a``` command line option will automatically "add" and "rm" edited files.
7. Push your branch to the [repository][gitea-repo]:
```sh
git push origin my-fix-branch
```
8. In Gitea, send a pull request to cpl:master
### Reviewing a Pull Request
The sh-edraft.de team reserves the right not to accept pull requests from community members who haven't been good citizens of the community. Such behavior includes not following the CPL [coding rules](#coding-rules) and applies within or outside of CPL managed channels.
#### Addressing review feedback
If we ask for changes via code reviews then:
1. Make the required updates to the code.
2. Create a fixup commit and push to your repository (this will update your Pull Request):
```sh
git commit --all --fixup HEAD
git push
```
That's it! Thank you for your contribution!
## Coding Rules
To ensure consistency throughout the source code, keep these rules in mind as you are working:
- All features or bug fixes must be tested by one or more unit-tests.
- All public API methods must be documented.
- We follow [PEP 8 -- Style Guide for Python Code](https://www.python.org/dev/peps/pep-0008/).
## License
By contributing, you agree that your contributions will be licensed under its MIT License.
See [LICENSE](https://git.sh-edraft.de/sh-edraft.de/cpl/src/branch/master/LICENSE)
<!-- LINKS -->
[gitea-repo]: https://git.sh-edraft.de/sh-edraft.de/sh_cpl/
[coding-rules]: /

View File

@@ -0,0 +1,32 @@
# cpl add
## Contents
- [Description](#description)
- [Arguments](#arguments)
- [Flags](#flags)
Removes a project from workspace.
cpl **add** *&lt;source-project&gt;* *&lt;target-project&gt;* <br>
cpl **a** *&lt;source-project&gt;* *&lt;target-project&gt;* <br>
cpl **A** *&lt;source-project&gt;* *&lt;target-project&gt;*
## Description
Adds a project reference to given project.
If you call the command in a CPL workspace, you can use the project names. Otherwise the paths of the projects must be specified.
## Arguments
| Argument | Description | Value type |
|------------------------|:----------------------------------------------------------:|:----------:|
| ```<source-project>``` | Name of the project to which the reference has to be added | ```str``` |
| ```<target-project>``` | Name of the project to be referenced | ```str``` |
## Flags
| Argument | Description |
|------------------|:------------------------------------------:|
| ```--simulate``` | Specifies whether the command is simulated |

View File

@@ -0,0 +1,26 @@
# cpl build
## Contents
- [Description](#description)
<!-- - [Arguments](#arguments) -->
Copies an python app into an output directory named build/ at the given output path. Must be executed within a CPL workspace or project directory
cpl **build** <br>
cpl **b** <br>
cpl **B**
## Description
The command can be used to build a project of type "console" or "library".
The build command copies all included source files to the output directory. You can run the source files in the output directory directly.
The command is used to prepare the source files for the publish command or to copy them to an target for execution.
<!-- ## Arguments
| Argument | Description | Value type |
| ------------- |:-------------:|:----------------:|
| ```<project>``` | The name of the project to build. Can be an console or a library. | ```str``` -->

View File

@@ -0,0 +1,43 @@
# cpl generate
## Contents
- [Description](#description)
- [Arguments](#arguments)
- [Schematics](#schematics)
Generate a file based on schematic.
cpl **generate** *&lt;schematic&gt;* *&lt;name&gt;* <br>
cpl **g** *&lt;schematic&gt;* *&lt;name&gt;* <br>
cpl **G** *&lt;schematic&gt;* *&lt;name&gt;*
## Description
Generates files based on a schematic.
You can define custom schematics by creating templates in a ```.cpl``` folder.
## Arguments
| Argument | Description | Value type |
|-------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-------------:|
| ```<schematic>``` | The schematic to generate. | ```str``` |
| ```<name>``` | The name of the generated file. | ```str``` |
| ```--base``` | First element of path will be used as base-path not 'src'. For example: 'cpl g c test/Test' will be created at ```src/test/``` with --base it would be ```test/``` | ```str``` |
## Schematics
| Schematic | Description | Arguments |
|-----------------|:--------------------------------------:|:------------:|
| ```abc``` | Abstract base class | ```<name>``` |
| ```class``` | Class | ```<name>``` |
| ```enum``` | Enum class | ```<name>``` |
| ```pipe``` | Pipe class | ```<name>``` |
| ```service``` | Service class | ```<name>``` |
| ```settings``` | [Configmodel](cpl_core.configuration) | ```<name>``` |
| ```test``` | Test class | ```<name>``` |
| ```thread``` | Thread class | ```<name>``` |
| ```validator``` | Validator class | ```<name>``` |
| ```command``` | Discord bot command class | ```<name>``` |
| ```event``` | Discord bot event class | ```<name>``` |

View File

@@ -0,0 +1,22 @@
# cpl help
## Contents
- [Description](#description)
- [Arguments](#arguments)
Lists available command and their short descriptions.
cpl **help** *&lt;command&gt;* <br>
cpl **h** *&lt;command&gt;* <br>
cpl **H** *&lt;command&gt;*
## Description
Lists available command and their short descriptions.
## Arguments
| Argument | Description | Value type |
| ----------------- |:-----------------------------:|:-------------:|
| ```<command>``` | Shows a help message for this command in the console. | ```str``` |

View File

@@ -0,0 +1,31 @@
# cpl install
## Contents
- [Description](#description)
- [Arguments](#arguments)
Installs given package via pip
cpl **install** *&lt;package&gt;* <br>
cpl **i** *&lt;package&gt;* <br>
cpl **I** *&lt;package&gt;*
## Description
Install given package to project via pip.
Without given package it will install the depedencies of the CPL project your in.
## Arguments
| Argument | Description | Value type |
|-----------------|:----------------------:|:----------:|
| ```<package>``` | The package to install | ```str``` |
## Flags
| Argument | Description |
|------------------|:----------------------------------------------------:|
| ```--dev``` | Specifies whether the command is in development mode |
| ```--virtual``` | Specifies whether the command is virtual mode |
| ```--simulate``` | Specifies whether the command is simulated |

View File

@@ -0,0 +1,45 @@
# cpl new
## Contents
- [Description](#description)
- [Arguments](#arguments)
- [Project types](#project-types)
Generates a workspace and initial project or add a project to workspace.
cpl **new** *&lt;type&gt;* *&lt;name&gt;*<br>
cpl **n** *&lt;type&gt;* *&lt;name&gt;* <br>
cpl **N** *&lt;type&gt;* *&lt;name&gt;*
## Description
Generates a workspace and initial project or add a project to workspace.
You can define custom project types by creating templates in a ```.cpl``` folder.
If the command is running in a CPL workspace, it will add the new project to the workspace.
| Argument | Description | Value type |
|--------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:----------:|
| ```<type>``` | The type of the project, see [types](#project-types) | ```str``` |
| ```<name>``` | The name of the project | ```str``` |
| ```--base``` | First element of path will be used as base-path not 'src'. For example: 'cpl g c test/Test' will be created at ```src/test/``` with --base it would be ```test/``` | ```str``` |
## Project types
| Project type | Description |
|---------------|:----------------------------:|
| ```console``` | A simple console application |
| ```library``` | A package |
## Flags
| Argument | Description |
|---------------------------|:-------------------------------------------:|
| ```--async``` | Specifies whether async is used |
| ```--application-base``` | Specifies whether application base is used |
| ```--startup``` | Specifies whether startup is used |
| ```--service-providing``` | Specifies whether service-providing is used |
| ```--nothing``` | Specifies whether nothing is used |
| ```--venv``` | Specifies whether venv is used |

View File

@@ -0,0 +1,53 @@
# CLI Overview and Command Reference
## Table of Contents
1. [Install CPL](setup#install-the-package)
2. [Install CPL CLI](setup#install-the-cli)
3. [Basic workflow](#basic-workflow)
4. [CLI command-language syntax](#cli-command-language-syntax)
5. [Command overview](#command-overview)
## Basic workflow
To create, build, and serve a new, basic CPL project on a development server, go to the parent directory of your new workspace use the following commands:
```sh
cpl new console my-first-project
cd my-first-project
cpl start
```
In the terminal you will the output of the app.
## CLI command-language syntax
```cpl``` commandNameOrAlias requiredArg ```[optionalsArgs]```
- Most commands, and some options, have aliases. Aliases are shown in the syntax statement for each command.
- Arguments are not prefixed.
### Relative paths
Options that specify files can be given as absolute paths, or as paths relative to the current working directory, which is generally either the workspace or project root.
### Schematics
The cpl generate command takes as an argument the artifact to be generated. In addition to any general options, each artifact defines its own options in a schematic. Schematic options are supplied to the command in the same format as immediate command options.
## Command overview
| Command | Alias | Description |
| ----------------------------- |:-------------:|:----------------:|
| [add](cpl_cli.add) | a or a | Adds a project reference to given project.
| [build](cpl_cli.build) | b or B | Prepares files for publish into an output directory named dist/ at the given output path. Must be executed from within a workspace directory.
| [generate](cpl_cli.generate) | g or G | Generate a new file.
| [help](cpl_cli.help) | h or H | Lists available command and their short descriptions.
| [install](cpl_cli.install) | i or I | With argument installs packages to project, without argument installs project dependencies.
| [new](cpl_cli.new) | n or N | Creates new CPL project.
| [publish](cpl_cli.publish) | p or P | Prepares files for publish into an output directory named dist/ at the given output path and executes ```setup.py```. Must be executed from within a library workspace directory.
| [remove](cpl_cli.remove) | r or R | Removes a project from workspace.
| [start](cpl_cli.start) | s or S | Starts CPL project, restarting on file changes.
| [uninstall](cpl_cli.uninstall) | ui or UI | Uninstalls packages from project.
| [update](cpl_cli.update) | u or U | Update CPL and project dependencies.
| [version](cpl_cli.version) | v or V | Outputs CPL CLI version.

View File

@@ -0,0 +1,27 @@
# cpl publish
## Contents
- [Description](#description)
<!-- - [Arguments](#arguments) -->
Prepares files for publish into an output directory named dist/ at the given output path and executes ```setup.py```.
cpl **publish** <br>
cpl **p** <br>
cpl **P**
## Description
The command can be used to publish a project of type "console" or "library".
The publish command builds the source files and then creates an ```setup.py``` with data from ```cpl_core.json```.
The command executes the ```setup.py``` and removes all source files with the ```setup.py``` from the 'publish/' directory.
Generated files of ```setup.py``` are in the 'publish/setup/' directory.
<!-- ## Arguments
| Argument | Description | Value type |
| ------------- |:-------------:|:----------------:|
| ```<project>``` | The name of the project to build. Can be an console or a library. | ```str``` -->

View File

@@ -0,0 +1,30 @@
# cpl remove
## Contents
- [Description](#description)
- [Arguments](#arguments)
Removes a project from workspace.
cpl **remove** *&lt;project&gt;* <br>
cpl **r** *&lt;project&gt;* <br>
cpl **R** *&lt;project&gt;*
## Description
Removes a project reference and the files from workspace.
If you call the command in a CPL workspace, you can use the project names. Otherwise the paths of the projects must be specified.
## Arguments
| Argument | Description | Value type |
|-----------------|:---------------------------------:|:----------:|
| ```<project>``` | The name of the project to delete | ```str``` |
## Flags
| Argument | Description |
|------------------|:----------------------------------------------------:|
| ```--simulate``` | Specifies whether the command is simulated |

View File

@@ -0,0 +1,20 @@
CLI reference
=============
.. toctree::
:maxdepth: 4
cpl_cli.overview
cpl_cli.add
cpl_cli.build
cpl_cli.generate
cpl_cli.help
cpl_cli.install
cpl_cli.new
cpl_cli.publish
cpl_cli.remove
cpl_cli.run
cpl_cli.start
cpl_cli.uninstall
cpl_cli.update
cpl_cli.version

View File

@@ -0,0 +1,12 @@
# cpl run
Starts your application once.
cpl **run** <br>
cpl **r** <br>
cpl **R**
| Argument | Description | Value type |
|-----------------|:----------------------------------------------------------------------------------------------------:|:----------:|
| ```<project>``` | Optional parameter to specify which project to start, if not set default project will be started. | ```str``` |
| ```--dev``` | To run the project from source and not from dist after build. | ```str``` |

View File

@@ -0,0 +1,11 @@
# cpl start
Starts your application, restarting on file changes.
cpl **start** <br>
cpl **s** <br>
cpl **S**
| Argument | Description | Value type |
|-----------------|:----------------------------------------------------------------------------------------------------:|:----------:|
| ```--dev``` | To run the project from source and not from dist after build. | ```str``` |

View File

@@ -0,0 +1,30 @@
# cpl uninstall
## Contents
- [Description](#description)
- [Arguments](#arguments)
Uninstalls given package via pip
cpl **uninstall** *&lt;package&gt;* <br>
cpl **ui** *&lt;package&gt;* <br>
cpl **UI** *&lt;package&gt;*
## Description
Uninstall given package from project via pip.
## Arguments
| Argument | Description | Value type |
|-----------------|:------------------------:|:----------:|
| ```<package>``` | The package to uninstall | ```str``` |
## Flags
| Argument | Description |
|------------------|:----------------------------------------------------:|
| ```--dev``` | Specifies whether the command is in development mode |
| ```--virtual``` | Specifies whether the command is virtual mode |
| ```--simulate``` | Specifies whether the command is simulated |

View File

@@ -0,0 +1,13 @@
# cpl update
Updates the CPL and project dependencies.
cpl **update** <br>
cpl **u** <br>
cpl **U**
## Flags
| Argument | Description |
|------------------|:----------------------------------------------------:|
| ```--simulate``` | Specifies whether the command is simulated |

View File

@@ -0,0 +1,7 @@
# cpl version
Lists the version of CPL, CPL CLI and all installed packages from pip.
cpl **version** <br>
cpl **v** <br>
cpl **V**

View File

@@ -0,0 +1,61 @@
cpl\_core.application package
=============================
Submodules
----------
cpl\_core.application.application\_abc module
---------------------------------------------
.. automodule:: cpl_core.application.application_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.application.application\_builder module
-------------------------------------------------
.. automodule:: cpl_core.application.application_builder
:members:
:undoc-members:
:show-inheritance:
cpl\_core.application.application\_builder\_abc module
------------------------------------------------------
.. automodule:: cpl_core.application.application_builder_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.application.application\_extension\_abc module
--------------------------------------------------------
.. automodule:: cpl_core.application.application_extension_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.application.startup\_abc module
-----------------------------------------
.. automodule:: cpl_core.application.startup_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.application.startup\_extension\_abc module
----------------------------------------------------
.. automodule:: cpl_core.application.startup_extension_abc
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: cpl_core.application
:members:
:undoc-members:
:show-inheritance:

View File

@@ -0,0 +1,109 @@
cpl\_core.configuration package
===============================
Submodules
----------
cpl\_core.configuration.argument\_abc module
--------------------------------------------
.. automodule:: cpl_core.configuration.argument_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.argument\_builder module
------------------------------------------------
.. automodule:: cpl_core.configuration.argument_builder
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.argument\_executable\_abc module
--------------------------------------------------------
.. automodule:: cpl_core.configuration.argument_executable_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.argument\_type\_enum module
---------------------------------------------------
.. automodule:: cpl_core.configuration.argument_type_enum
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.configuration module
--------------------------------------------
.. automodule:: cpl_core.configuration.configuration
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.configuration\_abc module
-------------------------------------------------
.. automodule:: cpl_core.configuration.configuration_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.configuration\_model\_abc module
--------------------------------------------------------
.. automodule:: cpl_core.configuration.configuration_model_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.configuration\_variable\_name\_enum module
------------------------------------------------------------------
.. automodule:: cpl_core.configuration.configuration_variable_name_enum
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.executable\_argument module
---------------------------------------------------
.. automodule:: cpl_core.configuration.executable_argument
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.flag\_argument module
---------------------------------------------
.. automodule:: cpl_core.configuration.flag_argument
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.validator\_abc module
---------------------------------------------
.. automodule:: cpl_core.configuration.validator_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.configuration.variable\_argument module
-------------------------------------------------
.. automodule:: cpl_core.configuration.variable_argument
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: cpl_core.configuration
:members:
:undoc-members:
:show-inheritance:

View File

@@ -0,0 +1,53 @@
cpl\_core.console package
=========================
Submodules
----------
cpl\_core.console.background\_color\_enum module
------------------------------------------------
.. automodule:: cpl_core.console.background_color_enum
:members:
:undoc-members:
:show-inheritance:
cpl\_core.console.console module
--------------------------------
.. automodule:: cpl_core.console.console
:members:
:undoc-members:
:show-inheritance:
cpl\_core.console.console\_call module
--------------------------------------
.. automodule:: cpl_core.console.console_call
:members:
:undoc-members:
:show-inheritance:
cpl\_core.console.foreground\_color\_enum module
------------------------------------------------
.. automodule:: cpl_core.console.foreground_color_enum
:members:
:undoc-members:
:show-inheritance:
cpl\_core.console.spinner\_thread module
----------------------------------------
.. automodule:: cpl_core.console.spinner_thread
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: cpl_core.console
:members:
:undoc-members:
:show-inheritance:

View File

@@ -0,0 +1,29 @@
cpl\_core.database.connection package
=====================================
Submodules
----------
cpl\_core.database.connection.database\_connection module
---------------------------------------------------------
.. automodule:: cpl_core.database.connection.database_connection
:members:
:undoc-members:
:show-inheritance:
cpl\_core.database.connection.database\_connection\_abc module
--------------------------------------------------------------
.. automodule:: cpl_core.database.connection.database_connection_abc
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: cpl_core.database.connection
:members:
:undoc-members:
:show-inheritance:

View File

@@ -0,0 +1,29 @@
cpl\_core.database.context package
==================================
Submodules
----------
cpl\_core.database.context.database\_context module
---------------------------------------------------
.. automodule:: cpl_core.database.context.database_context
:members:
:undoc-members:
:show-inheritance:
cpl\_core.database.context.database\_context\_abc module
--------------------------------------------------------
.. automodule:: cpl_core.database.context.database_context_abc
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: cpl_core.database.context
:members:
:undoc-members:
:show-inheritance:

View File

@@ -0,0 +1,46 @@
cpl\_core.database package
==========================
Subpackages
-----------
.. toctree::
:maxdepth: 4
cpl_core.database.connection
cpl_core.database.context
Submodules
----------
cpl\_core.database.database\_settings module
--------------------------------------------
.. automodule:: cpl_core.database.database_settings
:members:
:undoc-members:
:show-inheritance:
cpl\_core.database.database\_settings\_name\_enum module
--------------------------------------------------------
.. automodule:: cpl_core.database.database_settings_name_enum
:members:
:undoc-members:
:show-inheritance:
cpl\_core.database.table\_abc module
------------------------------------
.. automodule:: cpl_core.database.table_abc
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: cpl_core.database
:members:
:undoc-members:
:show-inheritance:

View File

@@ -0,0 +1,85 @@
cpl\_core.dependency\_injection package
=======================================
Submodules
----------
cpl\_core.dependency\_injection.scope module
--------------------------------------------
.. automodule:: cpl_core.dependency_injection.scope
:members:
:undoc-members:
:show-inheritance:
cpl\_core.dependency\_injection.scope\_abc module
-------------------------------------------------
.. automodule:: cpl_core.dependency_injection.scope_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.dependency\_injection.scope\_builder module
-----------------------------------------------------
.. automodule:: cpl_core.dependency_injection.scope_builder
:members:
:undoc-members:
:show-inheritance:
cpl\_core.dependency\_injection.service\_collection module
----------------------------------------------------------
.. automodule:: cpl_core.dependency_injection.service_collection
:members:
:undoc-members:
:show-inheritance:
cpl\_core.dependency\_injection.service\_collection\_abc module
---------------------------------------------------------------
.. automodule:: cpl_core.dependency_injection.service_collection_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.dependency\_injection.service\_descriptor module
----------------------------------------------------------
.. automodule:: cpl_core.dependency_injection.service_descriptor
:members:
:undoc-members:
:show-inheritance:
cpl\_core.dependency\_injection.service\_lifetime\_enum module
--------------------------------------------------------------
.. automodule:: cpl_core.dependency_injection.service_lifetime_enum
:members:
:undoc-members:
:show-inheritance:
cpl\_core.dependency\_injection.service\_provider module
--------------------------------------------------------
.. automodule:: cpl_core.dependency_injection.service_provider
:members:
:undoc-members:
:show-inheritance:
cpl\_core.dependency\_injection.service\_provider\_abc module
-------------------------------------------------------------
.. automodule:: cpl_core.dependency_injection.service_provider_abc
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: cpl_core.dependency_injection
:members:
:undoc-members:
:show-inheritance:

View File

@@ -0,0 +1,37 @@
cpl\_core.environment package
=============================
Submodules
----------
cpl\_core.environment.application\_environment module
-----------------------------------------------------
.. automodule:: cpl_core.environment.application_environment
:members:
:undoc-members:
:show-inheritance:
cpl\_core.environment.application\_environment\_abc module
----------------------------------------------------------
.. automodule:: cpl_core.environment.application_environment_abc
:members:
:undoc-members:
:show-inheritance:
cpl\_core.environment.environment\_name\_enum module
----------------------------------------------------
.. automodule:: cpl_core.environment.environment_name_enum
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: cpl_core.environment
:members:
:undoc-members:
:show-inheritance:

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