diff --git a/.trunk/.gitignore b/.trunk/.gitignore new file mode 100644 index 0000000..15966d0 --- /dev/null +++ b/.trunk/.gitignore @@ -0,0 +1,9 @@ +*out +*logs +*actions +*notifications +*tools +plugins +user_trunk.yaml +user.yaml +tmp diff --git a/.trunk/configs/.flake8 b/.trunk/configs/.flake8 new file mode 100644 index 0000000..d84bb77 --- /dev/null +++ b/.trunk/configs/.flake8 @@ -0,0 +1,10 @@ +# Autoformatter friendly flake8 config (all formatting rules disabled) +[flake8] +extend-ignore = D1, D2, E1, E2, E3, E501, W1, W2, W3, W5 +exclude = + .history + .vscode + .git + .venv + __pycache__ + diff --git a/.trunk/configs/.isort.cfg b/.trunk/configs/.isort.cfg new file mode 100644 index 0000000..b9fb3f3 --- /dev/null +++ b/.trunk/configs/.isort.cfg @@ -0,0 +1,2 @@ +[settings] +profile=black diff --git a/.trunk/configs/.markdownlint.yaml b/.trunk/configs/.markdownlint.yaml new file mode 100644 index 0000000..fb94039 --- /dev/null +++ b/.trunk/configs/.markdownlint.yaml @@ -0,0 +1,10 @@ +# Autoformatter friendly markdownlint config (all formatting rules disabled) +default: true +blank_lines: false +bullet: false +html: false +indentation: false +line_length: false +spaces: false +url: false +whitespace: false diff --git a/.trunk/configs/.sqlfluff b/.trunk/configs/.sqlfluff new file mode 100644 index 0000000..5d2192c --- /dev/null +++ b/.trunk/configs/.sqlfluff @@ -0,0 +1,2 @@ +[sqlfluff] +dialect = ansi diff --git a/.trunk/configs/.yamllint.yaml b/.trunk/configs/.yamllint.yaml new file mode 100644 index 0000000..4d44466 --- /dev/null +++ b/.trunk/configs/.yamllint.yaml @@ -0,0 +1,10 @@ +rules: + quoted-strings: + required: only-when-needed + extra-allowed: ["{|}"] + empty-values: + forbid-in-block-mappings: true + forbid-in-flow-mappings: true + key-duplicates: {} + octal-values: + forbid-implicit-octal: true diff --git a/.trunk/configs/ruff.toml b/.trunk/configs/ruff.toml new file mode 100644 index 0000000..6b2283a --- /dev/null +++ b/.trunk/configs/ruff.toml @@ -0,0 +1,5 @@ +# Generic, formatter-friendly config. +select = ["B", "D3", "D4", "E", "F"] + +# Never enforce `E501` (line length violations). This should be handled by formatters. +ignore = ["E501","F401"] diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml new file mode 100644 index 0000000..b9446a7 --- /dev/null +++ b/.trunk/trunk.yaml @@ -0,0 +1,58 @@ +# This file controls the behavior of Trunk: https://docs.trunk.io/cli +# To learn more about the format of this file, see https://docs.trunk.io/reference/trunk-yaml +version: 0.1 +cli: + version: 1.19.0 +plugins: + sources: + - id: trunk + ref: v1.4.2 + uri: https://github.com/trunk-io/plugins +runtimes: + enabled: + - node@18.12.1 + - python@3.10.8 +lint: + disabled: + - flake8 + - taplo + - pylint + - mypy + - git-diff-check + - checkov + - oxipng + - prettier + - trivy + - trufflehog + enabled: + - sql-formatter@15.1.2 + - sqlfluff@2.3.5 + - isort@5.13.2 + - ruff@0.1.14 + - bandit@1.7.7 + - markdownlint@0.38.0 + - yamllint@1.33.0 + - black@23.12.1 +actions: + disabled: + - trunk-fmt-pre-commit + enabled: + - trunk-announce + - trunk-check-pre-push + - trunk-upgrade-available +#ignore the following folders +# .history +# .vscode +# .idea +# .git +# .github +# .trunk# .vscode +# node_modules +# .DS_Store +# .pytest_cache +# .mypy_cache +# build +# dist +# __pycache__ +# .venv +# .ipynb_checkpoints diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..df88aea --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,30 @@ +{ + "files.exclude": { + "**/.git": true, + "**/.svn": true, + "**/.hg": true, + "**/CVS": true, + "**/.DS_Store": true, + "**/Thumbs.db": true, + "**/.trunk/*actions/": true, + "**/.trunk/*logs/": true, + "**/.trunk/*notifications/": true, + "**/.trunk/*out/": true, + "**/.trunk/*plugins/": true, + "**/.history": true, + "**/.pytest_cache": true, + ".pytest_cache": true, + "**/__pycache__": true, + "__pycache__": true + }, + "explorerExclude.backup": {}, + "python.testing.unittestEnabled": false, + "python.testing.unittestArgs": [ + "-v", + "-s", + "./test", + "-p", + "*_test.py" + ], + "python.testing.pytestEnabled": true, +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..279c350 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,14 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Compile UI", + "type": "shell", + "command": "pyuic6 ${file} -o ${fileDirname}/${fileBasenameNoExtension}_ui.py", + "group": { + "kind": "build", + "isDefault": true + } + } + ] +}