From fb7fec7ea619318b0e0830c0f9260335c0d4e173 Mon Sep 17 00:00:00 2001 From: Daniel Tomlinson Date: Sun, 21 Nov 2021 13:58:52 +0000 Subject: [PATCH] feat: initial commit --- .coveragerc | 10 + .github/workflows/analysis.yml | 62 + .github/workflows/tests.yml | 63 + .gitignore | 145 ++ CHANGELOG.md | 14 + CODE_OF_CONDUCT.md | 77 + LICENSE | 15 + README.md | 109 + TODO.todo | 152 ++ assets/tembo_logo.png | Bin 0 -> 453132 bytes docs/assets/tembo_doc_logo.png | Bin 0 -> 4076 bytes docs/cli_reference/main.md | 7 + docs/css/extra.css | 4 + docs/css/mkdocstrings.css | 6 + docs/gen_reference.py | 28 + docs/home/changelog.md | 1 + docs/home/license.md | 3 + docs/index.md | 8 + duties.py | 449 +++++ mkdocs.yaml | 107 + mypy.ini | 2 + poetry.lock | 1763 +++++++++++++++++ prospector.yaml | 125 ++ pyproject.toml | 61 + requirements.txt | 11 + requirements_dev.txt | 96 + setup.py | 37 + sonar-project.properties | 9 + tembo/__init__.py | 10 + tembo/__main__.py | 12 + tembo/_version.py | 3 + tembo/cli/__init__.py | 31 + tembo/cli/cli.py | 210 ++ tembo/exceptions.py | 51 + tembo/journal/__init__.py | 5 + tembo/journal/pages.py | 480 +++++ tembo/utils/__init__.py | 18 + tests/__init__.py | 0 tests/test_cli/__init__.py | 0 tests/test_cli/data/config/empty/config.yml | 1 + .../data/config/missing_keys/config.yml | 5 + .../data/config/missing_template/config.yml | 8 + .../data/config/optional_keys/config.yml | 6 + tests/test_cli/data/config/success/config.yml | 16 + tests/test_cli/data/some_scope/some_scope.md | 1 + tests/test_cli/test_cli.py | 303 +++ tests/test_journal/test_pages.py | 388 ++++ .../some_template_date_tokens.md.tpl | 1 + .../some_template_input_tokens.md.tpl | 1 + ...emplate_input_tokens_preserve_order.md.tpl | 1 + .../some_template_name_tokens.md.tpl | 1 + .../.templates/some_template_no_tokens.md.tpl | 3 + .../test_pages/does_exist/some_note.md | 1 + 53 files changed, 4920 insertions(+) create mode 100644 .coveragerc create mode 100644 .github/workflows/analysis.yml create mode 100644 .github/workflows/tests.yml create mode 100644 .gitignore create mode 100644 CHANGELOG.md create mode 100644 CODE_OF_CONDUCT.md create mode 100644 LICENSE create mode 100644 README.md create mode 100644 TODO.todo create mode 100644 assets/tembo_logo.png create mode 100644 docs/assets/tembo_doc_logo.png create mode 100644 docs/cli_reference/main.md create mode 100644 docs/css/extra.css create mode 100644 docs/css/mkdocstrings.css create mode 100644 docs/gen_reference.py create mode 100644 docs/home/changelog.md create mode 100644 docs/home/license.md create mode 100644 docs/index.md create mode 100644 duties.py create mode 100644 mkdocs.yaml create mode 100644 mypy.ini create mode 100644 poetry.lock create mode 100644 prospector.yaml create mode 100644 pyproject.toml create mode 100644 requirements.txt create mode 100644 requirements_dev.txt create mode 100644 setup.py create mode 100644 sonar-project.properties create mode 100644 tembo/__init__.py create mode 100644 tembo/__main__.py create mode 100644 tembo/_version.py create mode 100644 tembo/cli/__init__.py create mode 100644 tembo/cli/cli.py create mode 100644 tembo/exceptions.py create mode 100644 tembo/journal/__init__.py create mode 100644 tembo/journal/pages.py create mode 100644 tembo/utils/__init__.py create mode 100644 tests/__init__.py create mode 100644 tests/test_cli/__init__.py create mode 100644 tests/test_cli/data/config/empty/config.yml create mode 100644 tests/test_cli/data/config/missing_keys/config.yml create mode 100644 tests/test_cli/data/config/missing_template/config.yml create mode 100644 tests/test_cli/data/config/optional_keys/config.yml create mode 100644 tests/test_cli/data/config/success/config.yml create mode 100644 tests/test_cli/data/some_scope/some_scope.md create mode 100644 tests/test_cli/test_cli.py create mode 100644 tests/test_journal/test_pages.py create mode 100644 tests/test_journal/test_pages/.templates/some_template_date_tokens.md.tpl create mode 100644 tests/test_journal/test_pages/.templates/some_template_input_tokens.md.tpl create mode 100644 tests/test_journal/test_pages/.templates/some_template_input_tokens_preserve_order.md.tpl create mode 100644 tests/test_journal/test_pages/.templates/some_template_name_tokens.md.tpl create mode 100644 tests/test_journal/test_pages/.templates/some_template_no_tokens.md.tpl create mode 100644 tests/test_journal/test_pages/does_exist/some_note.md diff --git a/.coveragerc b/.coveragerc new file mode 100644 index 0000000..47dfca3 --- /dev/null +++ b/.coveragerc @@ -0,0 +1,10 @@ +[report] +exclude_lines = + # Have to re-enable the standard pragma + pragma: no cover + + # Don't complain if tests don't hit defensive assertion code: + raise NotImplementedError + +[run] +source=tembo diff --git a/.github/workflows/analysis.yml b/.github/workflows/analysis.yml new file mode 100644 index 0000000..6021bae --- /dev/null +++ b/.github/workflows/analysis.yml @@ -0,0 +1,62 @@ +name: analysis + +on: + push: + branches: + - main + +jobs: + analysis: + runs-on: ubuntu-latest + steps: + # Checkout repo & install Python + - name: Check out repository + uses: actions/checkout@v2 + with: + # disable shallow clones for better sonarcloud accuracy + fetch-depth: 0 + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: 3.9 + # Install & configure Poetry + - name: Install Poetry + uses: snok/install-poetry@v1 + with: + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true + # Load cached venv + - name: Load cached venv + id: cached-poetry-dependencies + uses: actions/cache@v2 + with: + path: .venv + key: venv-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} + # Install dependencies if no cache + - name: Install dependencies + if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' + run: poetry install --no-interaction --no-root + # Install package if needed + - name: Install package + run: poetry install --no-interaction + # Run tests + - name: Run tests + run: | + source .venv/bin/activate + pytest -v --cov --junitxml=pytest.xml --suppress-tests-failed-exit-code + coverage xml -i + sed -i 's/\/home\/runner\/work\/tembo-core\/tembo-core\///g' coverage.xml + sed -i 's/\/home\/runner\/work\/tembo-core\/tembo-core\///g' pytest.xml + # Build docs + - name: Build docs + run: | + source .venv/bin/activate + coverage html + mkdocs gh-deploy + # Upload to sonarcloud + - name: SonarCloud Scan + uses: sonarsource/sonarcloud-github-action@master + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 0000000..cdf92b2 --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,63 @@ +name: tests + +on: + pull_request: + types: + - opened + - synchronize + - reopened + +jobs: + tests: + runs-on: ubuntu-latest + steps: + # Checkout repo & install Python + - name: Check out repository + uses: actions/checkout@v2 + with: + # disable shallow clones for better sonarcloud accuracy + fetch-depth: 0 + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: 3.9 + # Install & configure Poetry + - name: Install Poetry + uses: snok/install-poetry@v1 + with: + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true + # Load cached venv + - name: Load cached venv + id: cached-poetry-dependencies + uses: actions/cache@v2 + with: + path: .venv + key: venv-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} + # Install dependencies if no cache + - name: Install dependencies + if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' + run: poetry install --no-interaction --no-root + # Install package if needed + - name: Install package + run: poetry install --no-interaction + # Run tests + - name: Run tests + run: | + source .venv/bin/activate + pytest -v --cov --junitxml=pytest.xml + coverage xml -i + sed -i 's/\/home\/runner\/work\/tembo-core\/tembo-core\///g' coverage.xml + sed -i 's/\/home\/runner\/work\/tembo-core\/tembo-core\///g' pytest.xml + # Run linting + - name: Run prospector linting + run: | + source .venv/bin/activate + prospector "./tembo" + # Upload to sonarcloud + - name: SonarCloud Scan + uses: sonarsource/sonarcloud-github-action@master + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e38fc2f --- /dev/null +++ b/.gitignore @@ -0,0 +1,145 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# custom +.vscode/ +**/__pycache__ +**/.DS_Store +.python-version +codecov diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..826a83f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,14 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + + + +## [0.1.0](https://github.com/tembo-pages/tembo-core/releases/tag/0.1.0) - 2021-11-20 + +[Compare with first commit](https://github.com/tembo-pages/tembo-core/compare/8884a942c5c2a2815a1bbc75fb106555402d2055...0.1.0) + +### Features +- update duties ([e2b4ef9](https://github.com/tembo-pages/tembo-core/commit/e2b4ef9f91c484d0d26ee5afcd308b6470f46370) by Daniel Tomlinson). diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..9447d91 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,77 @@ + +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to make participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, sex characteristics, gender identity and expression, +level of experience, education, socio-economic status, nationality, personal +appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or + advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies within all project spaces, and it also applies when +an individual is representing the project or its community in public spaces. +Examples of representing a project or community include using an official +project e-mail address, posting via an official social media account, or acting +as an appointed representative at an online or offline event. Representation of +a project may be further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at [INSERT EMAIL ADDRESS]. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see +https://www.contributor-covenant.org/faq diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..c57b892 --- /dev/null +++ b/LICENSE @@ -0,0 +1,15 @@ +ISC License + +Copyright (c) 2021 Daniel Tomlinson + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..7e0a386 --- /dev/null +++ b/README.md @@ -0,0 +1,109 @@ +# Tembo + + + +A simple folder organiser for your work notes. + +![](https://img.shields.io/codecov/c/github/tembo-pages/tembo-core?style=flat-square) + +![Sonar Coverage](https://img.shields.io/sonar/coverage/tembo-pages_tembo-core?server=https%3A%2F%2Fsonarcloud.io&style=flat-square) +![Sonar Tests](https://img.shields.io/sonar/tests/tembo-pages_tembo-core?compact_message&failed_label=failed&passed_label=passed&server=https%3A%2F%2Fsonarcloud.io&skipped_label=skipped&style=flat-square) +![Sonar Tech Debt](https://img.shields.io/sonar/tech_debt/tembo-pages_tembo-core?server=https%3A%2F%2Fsonarcloud.io&style=flat-square) + +## config.yml + +```yaml +# time tokens: https://strftime.org +tembo: + base_path: ~/tembo + # template_path: ~/tembo/templates + scopes: + - name: scratchpad + example: tembo new scratchpad + path: "scratchpad/{d:%B_%Y}" + filename: "{d:%B_%W}" + extension: md + template_filename: scratchpad.md.tpl + - name: wtodo + example: tembo new wtodo | directory is month_year, filename is month_week-of-year + path: "wtodo/{d:%B_%Y}" + filename: "week_{d:%W}" + extension: todo + template_filename: weekly.todo.tpl + - name: meeting + example: tembo new meeting $meeting_title + path: "meetings/{d:%B_%y}" + filename: "{d:%a_%d_%m_%y}-{input0}" + extension: md + template_filename: meeting.md.tpl + - name: knowledge + example: tembo new knowledge $project $filename + path: "knowledge/{input0}" + filename: "{input1}" + extension: md + template_filename: knowledge.md.tpl + logging: + level: INFO + path: ~/tembo/.logs +``` + +## templates + +### knowledge + +``` +--- +created: {d:%d-%m-%Y} +--- + +# {input0} - {input1}.md +``` + +### meeting + +``` +--- +created: {d:%d-%m-%Y} +--- + +# {d:%A %d %B %Y} - {input0} + +## People + +Head: + +Attendees: + +## Actions + + +## Notes + +``` + +### scratchpad + +``` +--- +created: {d:%d-%m-%Y} +--- + +# Scratchpad - Week {d:%W} - {d:%B-%y} +``` + +### wtodo + +``` +--- +created: {d:%d-%m-%Y} +--- + +Weekly TODO | Week {d:%W} {d:%B}-{d:%Y} + +Work: + +Documentation: +``` diff --git a/TODO.todo b/TODO.todo new file mode 100644 index 0000000..cbc904e --- /dev/null +++ b/TODO.todo @@ -0,0 +1,152 @@ +Priority: + ✔ Version duty @done(21-11-09 23:54) + ✔ Duty to `poetry build` and extract + copy `setup.py` to root @done(21-11-10 22:14) + ✘ Duty to run tests in isolation @cancelled(21-11-10 22:30) + ✔ Docstrings @done(21-11-15 21:37) + ✔ Update trilium with latest docstrings (documenting __init__ at class level etc) @done(21-11-15 21:37) + Make sure the gist is updated for prospector with the right ignores + ✔ Go over Panaetius @done(21-11-15 21:37) + ✔ Update docstrings with latest @done(21-11-15 21:37) + ✔ Write basic README.md page with 2 uses @done(21-11-15 21:37) + Script and Module usage + ✔ Build and publish latest version @done(21-11-15 21:37) + ☐ Write Tembo documentation with mkdocs + ✔ Document duties in Trilium and create a gist for common duties @done(21-11-15 21:37) + ☐ Document writing documentation in Trilium with example to Trilium + ☐ Integrate sonarcloud with CI (github actions?) + +Documentation: + Docstrings: + ✔ Use Duty to write module docstrings @done(21-11-15 21:37) + ✔ Use Duty to add Class docstrings @done(21-11-15 21:37) + ✔ Document these in Trilium and rewrite the docstrings notes @done(21-11-15 21:37) + ☐ Add the comment on Reddit (artie buco?) about imports in a module + + ✔ Add the CLI initialisation boilerplate to trilium @done(21-11-10 22:50) + ✔ _version, base command, __init__.py etc @done(21-11-10 22:49) + ☐ Write documentation using `mkdocs` + ✔ Create a boilerplate `duties.py` for common tasks for future projects. Put in a gist. @done(21-11-15 21:37) + ☐ Look at how to use github actions + Use for an example + ☐ Build the docs using a github action. + +Functionality: + ✔ Use the python runner Duty @done(21-11-15 21:37) + + ✔ Run tests @done(21-11-10 22:54) + ✔ Update poetry @done(21-11-10 22:54) + ☐ Build docs + ✔ Document using Duty @done(21-11-15 21:37) + ✔ Duty for auto insert version from `poetry version`. @done(21-11-09 23:53) + Need to decide what file to place `__version__` in. + +VSCode: + PyInstaller: + ☐ Document build error: + PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install 3.8.11 mac + PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.8.11 linux + ☐ Freeze a click app: + ☐ If python 3.9 can be used with Pyinstaller, rewrite the code to use the latest Python features + dict.update -> |= + walrus := + +VSCode: + ☐ Look at + +Logging: + Documentation: + Tembo: + ☐ Document creating new Tembo config + ☐ ~/tembo needs creating + ☐ ~/tembo/.config + ☐ ~/tembo/.templates + ☐ ~/tembo/logs + ☐ Document how to overwrite these with ENV vars + ☐ have a git repo with all the above already configured and walk user through + clone the repo, delete .git, git init, configure and add git origin + +Archive: + ✘ test logs: @cancelled(21-11-09 23:15) @project(Priority) + document this + ✔ Write the tests @done(21-11-07 15:36) @project(Priority) + ✔ documented poetry with extras (panaetius `pyproject.toml`) @done(21-11-09 22:29) @project(Documentation) + ✔ Document using `__main__.py` and `cli.py` @done(21-11-07 15:21) @project(Documentation.Docstrings) + Use Duty as an example + ✔ Document regex usage @done(21-11-09 22:39) @project(Documentation) + ✔ Document how to use pytest to read a logging message @done(21-11-09 22:57) @project(Documentation) + + caplog as fixture + reading `caplog.records[0].message` + see `_old_test_pages.py` + ✔ Document testing value of an exception raised @done(21-11-09 22:50) @project(Documentation) + When you use `with pytest.raises` you can use `.value` to access the attributes + reading `.value.code` + reading `str(.value)` + ✔ Document working with exceptions @done(21-11-09 22:17) @project(Documentation) + ✔ General pattern - raise exceptions in codebase, catch them in the CLI. @done(21-11-09 22:16) @project(Documentation) + Allows people to use via an API and handle the exceptions themselves. + You can use python builtins but custom exceptions are better for internal control + ✔ Capturing exceptions in the CLI. @done(21-11-09 22:16) @project(Documentation) + Access the message of the exception with `.args[0]`. + use `raise SystemExit(1) from exception` in order to gracefully exit + ✔ Adding custom args to an exception @done(21-11-09 22:17) @project(Documentation) + Overwrite `__init__`, access them in pytest with `.value.$args` + Access them in a try,except with `raise $excpetion as $name; $name.$arg` + ✔ Document capturing stdout @done(21-11-09 22:59) @project(Documentation) + Use `capsys` + `assert capsys.readouterr().out` + A new line may be inserted if using `click.echo()` + + ✔ Document using datadir with a module rather than a shared one. Link to tembo as an example. @done(21-11-09 22:59) @project(Documentation) + ✘ Can prospector ignore tests dir? document this in the gist if so @cancelled(21-11-09 23:08) @project(Documentation) + ✔ Redo the documentation on a CLI, reorganise and inocropoate all the new tembo layouts @done(21-11-09 23:08) @project(Documentation) + ✔ Document importing in inidivudal tests using `importlib.reload` @done(21-11-09 23:13) @project(Documentation.Testing) + Globally import the module + Use `importlib.reload(module)` in each test instead of explicitly importing the module. + This is because the import is cached. + + ✔ Replace loggers with `click.echo` for command outputs. Keep logging messages for actual logging messages? @done(21-11-09 22:17) @project(Functionality) + Define a format: [TEMBO:$datetime] $message 🐘 - document this in general python for CLI + ✔ Refactor the tembo new command so the cli is split out into manageable methods @done(21-11-07 15:35) @project(Functionality) + ✘ Use the complicated CLI example so the tembo new has its own module to define functions in @cancelled(21-11-07 15:35) @project(Functionality) + ✔ Replace all logger errors with exceptions, move logger messages to the cli. @done(21-11-07 15:35) @project(Functionality) + ✔ How to pass a successful save notification back to the CLI? Return a bool? Or is there some other way? @done(21-11-07 15:35) @project(Functionality) + ✘ Replace pendulum with datetime @cancelled(21-11-07 15:35) @project(Functionality) + ✔ Make options a property on the class, add to abstract @done(21-10-30 19:31) @project(Functionality) + ✘ Make all internal tembo logs be debug @cancelled(21-11-09 22:20) @project(Logging) + ✘ User can enable them with the config @cancelled(21-11-09 22:20) @project(Logging) + ✔ Write tests! @2d @done(21-11-07 15:36) @project(Tests) + Use coverage as going along to make sure all bases are covered in the testing + ✔ Document the python/logging/typing in Trilium @done(21-10-25 14:33) @project(Priority) + ✔ Update typing annotations to include generics instead @done(21-10-25 22:38) @project(Priority) + https://docs.python.org/3/library/collections.abc.html#collections-abstract-base-classes + ✔ Move any `tembo.CONFIG` calls out of `pages.py` and ensure these are passed in from the cli. @done(21-10-28 19:44) @project(Functionality) + ✔ Make `config scope` a dict in `cli.py`. @done(21-10-28 19:44) @project(Functionality) + ✔ Make example optional @done(21-10-29 00:15) @project(Functionality) + ✔ Add the `--example` output to the miscounted token message so the user knows the correct command to use. @done(21-10-29 00:15) @project(Functionality) + ✔ Page options dataclass @done(21-10-28 20:09) @project(Functionality) + ✔ Make user_input optional @important @done(21-10-30 03:20) @project(Functionality) + ✔ Look at `_convert_to_path()` and see if it can be rewritten to make it clearer when there isn't a base path. @done(21-10-30 02:14) @project(Functionality) + ✔ Replace scoped page creator inputs so that the whole class uses the options dict rather than the variables passed around. @done(21-10-30 03:20) @project(Functionality) + ✔ Go through code TODOs @done(21-10-25 05:52) @project(Priority) + ✔ Check code order and make sure things are where they should be @done(21-10-25 13:31) @project(Priority) + ✔ Add version option @done(21-10-25 13:40) @project(Functionality) + ✘ Document usage of Panaetius in a module @cancelled(21-10-25 13:31) @project(Logging.Documentation) + ✘ Uses `strftime` tokens: @cancelled(21-10-25 13:32) @project(Logging.Documentation) + ✔ Document latest typing. @done(21-10-25 14:14) @project(Logging.Documentation) + ✔ Using from `__future__` with `|` @done(21-10-25 13:48) @project(Logging.Documentation) + ✔ `using Tuple[str, ...]` @done(21-10-25 13:49) @project(Logging.Documentation) + ✔ `Sequence` vs `Collection` @done(21-10-25 13:55) @project(Logging.Documentation) + ✔ Document how to do docstrings in python. Don't document `__init__` do it in class. @done(21-10-25 13:57) @project(Logging.Documentation) + ✔ Document using jinja2 briefly and link to Tembo (link to ) @done(21-10-25 14:21) @project(Logging.Documentation) + ✔ How to raise + debug an exception? @done(21-10-25 14:32) @project(Logging.Documentation.Logging) + ✔ Document how to raise a logger.critical instead of exception @done(21-10-25 14:32) @project(Logging.Documentation.Logging) + ✔ tokens @done(21-10-25 05:35) @project(Bug) + ✔ Handle case where there are no scopes in the config and command is invoked. @done(21-10-25 04:32) @project(Functionality) + ✔ Have an `--example` flag to `new` that prints an example given in the `config.yml` @done(21-10-25 04:55) @project(Functionality) + ✔ Should be a `tembo new --list` to list all possible names. @done(21-10-25 05:28) @project(Functionality) + ✘ When template not found, raise a Tembo error @cancelled(21-10-25 05:29) @project(Functionality) + ✔ Convert spaces to underscores in filepath @done(21-10-25 05:35) @project(Functionality) + ✘ Add update notification? @cancelled(21-10-25 05:29) @project(Functionality) + ✔ `TEMBO_CONFIG` should follow same pattern as other env vars and be a python string when read in @done(21-10-24 05:31) @project(Functionality) + ✘ Uses Pendulum tokens: https://pendulum.eustace.io/docs/#tokens @cancelled(21-10-24 05:32) @project(Logging.Documentation) diff --git a/assets/tembo_logo.png b/assets/tembo_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f65ca988e080ccad921b56956154cf118130bf96 GIT binary patch literal 453132 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 z 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

>es}LZsy>Ugf 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

Af0FH08I|m!e6b- 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%0AndTV}VU!`QfHGZ0`Vbo`&4Ox7E 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

{4PW%Mj-@uHF7Vbyf0JUvnyB6 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�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 kj50<;V9kq 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 Optional[str]: + for line in lines: + match = regex.search(line) + if match: + return match.groupdict()["version"] + return None + + +def _unreleased(versions, last_release): + for index, version in enumerate(versions): + if version.tag == last_release: + return versions[:index] + return versions + + +def update_changelog( + inplace_file: str, + marker: str, + version_regex: str, + commit_style: str, +) -> None: + """ + Update the given changelog file in place. + Arguments: + inplace_file: The file to update in-place. + marker: The line after which to insert new contents. + version_regex: A regular expression to find currently documented versions in the file. + template_url: The URL to the Jinja template used to render contents. + commit_style: The style of commit messages to parse. + """ + from git_changelog.build import Changelog + from jinja2.sandbox import SandboxedEnvironment + + env = SandboxedEnvironment(autoescape=False) + template = env.from_string(changelog_template()) + changelog = Changelog(".", style=commit_style) + + if len(changelog.versions_list) == 1: + last_version = changelog.versions_list[0] + if last_version.planned_tag is None: + planned_tag = "0.1.0" + last_version.tag = planned_tag + last_version.url += planned_tag + last_version.compare_url = last_version.compare_url.replace("HEAD", planned_tag) + + with open(inplace_file, "r") as changelog_file: + lines = changelog_file.read().splitlines() + + last_released = _latest(lines, re.compile(version_regex)) + if last_released: + changelog.versions_list = _unreleased(changelog.versions_list, last_released) + rendered = template.render(changelog=changelog, inplace=True) + lines[lines.index(marker)] = rendered + + with open(inplace_file, "w") as changelog_file: # noqa: WPS440 + changelog_file.write("\n".join(lines).rstrip("\n") + "\n") + + +@duty +def changelog(ctx): + """ + Update the changelog in-place with latest commits. + Arguments: + ctx: The context instance (passed automatically). + """ + ctx.run( + update_changelog, + kwargs={ + "inplace_file": "CHANGELOG.md", + "marker": "", + "version_regex": r"^## \[v?(?P[^\]]+)", + "commit_style": "angular", + }, + title="Updating changelog", + pty=True, + ) + + +def rm_tree(directory: pathlib.Path): + """ + Recursively delete a directory and all its contents. + + Args: + directory (pathlib.Path): The directory to delete. + """ + for child in directory.glob("*"): + if child.is_file(): + child.unlink() + else: + rm_tree(child) + directory.rmdir() + + +def changelog_template() -> str: + return """ +{% if not inplace -%} +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +{% endif %} +{% macro render_commit(commit) -%} +- {{ commit.style.subject|default(commit.subject) }} ([{{ commit.hash|truncate(7, True, '') }}]({{ commit.url }}) by {{ commit.author_name }}). +{%- if commit.text_refs.issues_not_in_subject %} References: {% for issue in commit.text_refs.issues_not_in_subject -%} +{% if issue.url %}[{{ issue.ref }}]({{ issue.url }}){%else %}{{ issue.ref }}{% endif %}{% if not loop.last %}, {% endif -%} +{%- endfor -%}{%- endif -%} +{%- endmacro -%} + +{%- macro render_section(section) -%} +### {{ section.type or "Misc" }} +{% for commit in section.commits|sort(attribute='author_date',reverse=true)|unique(attribute='subject') -%} +{{ render_commit(commit) }} +{% endfor %} +{%- endmacro -%} + +{%- macro render_version(version) -%} +{%- if version.tag or version.planned_tag -%} +## [{{ version.tag or version.planned_tag }}]({{ version.url }}){% if version.date %} - {{ version.date }}{% endif %} + +[Compare with {{ version.previous_version.tag|default("first commit") }}]({{ version.compare_url }}) +{%- else -%} +## Unrealeased + +[Compare with latest]({{ version.compare_url }}) +{%- endif %} + +{% for type, section in version.sections_dict|dictsort -%} +{%- if type and type in changelog.style.DEFAULT_RENDER -%} +{{ render_section(section) }} +{% endif -%} +{%- endfor -%} +{%- endmacro -%} + +{% for version in changelog.versions_list -%} +{{ render_version(version) }} +{%- endfor -%} + """ diff --git a/mkdocs.yaml b/mkdocs.yaml new file mode 100644 index 0000000..3b5b93e --- /dev/null +++ b/mkdocs.yaml @@ -0,0 +1,107 @@ +# Project Information + +# Repository +site_name: Tembo +site_url: https://tembo-pages.github.io/tembo-core/ +site_description: "Tembo: A simple folder organiser for your work notes." +site_author: Daniel Tomlinson +repo_url: https://github.com/tembo-pages/tembo-core +repo_name: tembo-pages/tembo-core + +# Preview Controls +# set use_directory_urls false if browsing locally +# use_directory_urls: false + +# Page Tree +nav: + - Home: + - Overview: index.md + - Changelog: home/changelog.md + - License: home/license.md + - Code Reference: code_reference/ + - CLI Reference: + - tembo: cli_reference/main.md + - Development: + - Coverage report: coverage.md + +# Theme +theme: + name: material + logo: assets/tembo_doc_logo.png + icon: + repo: fontawesome/brands/github + features: + - navigation.tabs + - navigation.top + - navigation.instant + palette: + - media: "(prefers-color-scheme: light)" + scheme: default + primary: deep orange + accent: orange + toggle: + icon: material/weather-sunny + name: Switch to dark mode + - media: "(prefers-color-scheme: dark)" + scheme: slate + primary: deep orange + accent: orange + toggle: + icon: material/weather-night + name: Switch to light mode + +# Extensions - see https://squidfunk.github.io/mkdocs-material/setup/extensions/?h= for all options +markdown_extensions: + - admonition + - codehilite: + guess_lang: true + - toc: + # sets the character used to bookmark the title + permalink: "¤" + - pymdownx.highlight: + # show title, linenums + # auto_title: true + # linenums: true + # linenums_style: pymdownx-inline + - pymdownx.details + - pymdownx.inlinehilite + - pymdownx.superfences + - pymdownx.snippets + - pymdownx.arithmatex: + generic: true + - mkdocs-click + +# Plugins +plugins: + - search: + lang: en + - mkdocstrings: + handlers: + python: + import: + - https://docs.python.org/3/objects.inv + - gen-files: + scripts: + - docs/gen_reference.py + - literate-nav: + nav_file: SUMMARY.md + - coverage + +# Customisation +extra_javascript: + - https://polyfill.io/v3/polyfill.min.js?features=es6 + - https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js + +# CSS +extra_css: + - css/mkdocstrings.css + # - css/extra.css + +extra: + social: + - icon: fontawesome/brands/github + link: https://github.com/tembo-pages/tembo-core + - icon: fontawesome/solid/paper-plane + link: mailto:dtomlinson@panaetius.co.uk + - icon: fontawesome/brands/twitter + link: https://twitter.com/dmot7291 diff --git a/mypy.ini b/mypy.ini new file mode 100644 index 0000000..3d1cd43 --- /dev/null +++ b/mypy.ini @@ -0,0 +1,2 @@ +[mypy] +ignore_missing_imports = true diff --git a/poetry.lock b/poetry.lock new file mode 100644 index 0000000..1853f0b --- /dev/null +++ b/poetry.lock @@ -0,0 +1,1763 @@ +[[package]] +name = "altgraph" +version = "0.17.2" +description = "Python graph (network) package" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "ansimarkup" +version = "1.5.0" +description = "Produce colored terminal text with an xml-like markup" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +colorama = "*" + +[package.extras] +devel = ["bumpversion (>=0.5.2)", "check-manifest (>=0.35)", "readme-renderer (>=16.0)", "flake8", "pep8-naming"] +tests = ["tox (>=2.6.0)", "pytest (>=3.0.3)", "pytest-cov (>=2.3.1)"] + +[[package]] +name = "astroid" +version = "2.8.5" +description = "An abstract syntax tree for Python with inference support." +category = "dev" +optional = false +python-versions = "~=3.6" + +[package.dependencies] +lazy-object-proxy = ">=1.4.0" +typing-extensions = {version = ">=3.10", markers = "python_version < \"3.10\""} +wrapt = ">=1.11,<1.14" + +[[package]] +name = "astunparse" +version = "1.6.3" +description = "An AST unparser for Python" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +six = ">=1.6.1,<2.0" + +[[package]] +name = "atomicwrites" +version = "1.4.0" +description = "Atomic file writes." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "attrs" +version = "21.2.0" +description = "Classes Without Boilerplate" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.extras] +dev = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface", "furo", "sphinx", "sphinx-notfound-page", "pre-commit"] +docs = ["furo", "sphinx", "zope.interface", "sphinx-notfound-page"] +tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins", "zope.interface"] +tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "mypy", "pytest-mypy-plugins"] + +[[package]] +name = "bandit" +version = "1.7.1" +description = "Security oriented static analyser for python code." +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +colorama = {version = ">=0.3.9", markers = "platform_system == \"Windows\""} +GitPython = ">=1.0.1" +PyYAML = ">=5.3.1" +stevedore = ">=1.20.0" + +[[package]] +name = "certifi" +version = "2021.10.8" +description = "Python package for providing Mozilla's CA Bundle." +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "charset-normalizer" +version = "2.0.7" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +category = "dev" +optional = false +python-versions = ">=3.5.0" + +[package.extras] +unicode_backport = ["unicodedata2"] + +[[package]] +name = "click" +version = "8.0.3" +description = "Composable command line interface toolkit" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[[package]] +name = "colorama" +version = "0.4.4" +description = "Cross-platform colored terminal text." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "coverage" +version = "6.1.2" +description = "Code coverage measurement for Python" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +tomli = {version = "*", optional = true, markers = "extra == \"toml\""} + +[package.extras] +toml = ["tomli"] + +[[package]] +name = "dodgy" +version = "0.2.1" +description = "Dodgy: Searches for dodgy looking lines in Python code" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "dparse" +version = "0.5.1" +description = "A parser for Python dependency files" +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +packaging = "*" +pyyaml = "*" +toml = "*" + +[package.extras] +pipenv = ["pipenv"] + +[[package]] +name = "duty" +version = "0.7.0" +description = "A simple task runner." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +failprint = ">=0.8,<1.0" + +[[package]] +name = "failprint" +version = "0.8.0" +description = "Run a command, print its output only if it fails." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +ansimarkup = ">=1.4,<2.0" +jinja2 = ">=2.11,<4" +ptyprocess = {version = ">=0.6,<1.0", markers = "sys_platform != \"win32\""} + +[[package]] +name = "flake8" +version = "2.3.0" +description = "the modular source code checker: pep8, pyflakes and co" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +mccabe = ">=0.2.1" +pep8 = ">=1.5.7" +pyflakes = ">=0.8.1" + +[[package]] +name = "flake8-polyfill" +version = "1.0.2" +description = "Polyfill package for Flake8 plugins" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +flake8 = "*" + +[[package]] +name = "future" +version = "0.18.2" +description = "Clean single-source support for Python 3 and 2" +category = "dev" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "ghp-import" +version = "2.0.2" +description = "Copy your docs directly to the gh-pages branch." +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +python-dateutil = ">=2.8.1" + +[package.extras] +dev = ["twine", "markdown", "flake8", "wheel"] + +[[package]] +name = "git-changelog" +version = "0.5.0" +description = "Automatic Changelog generator using Jinja2 templates." +category = "dev" +optional = false +python-versions = ">=3.6.2" + +[package.dependencies] +Jinja2 = ">=2.10,<4" +semver = ">=2.13,<3.0" + +[[package]] +name = "gitdb" +version = "4.0.9" +description = "Git Object Database" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +smmap = ">=3.0.1,<6" + +[[package]] +name = "gitpython" +version = "3.1.24" +description = "GitPython is a python library used to interact with Git repositories" +category = "dev" +optional = false +python-versions = ">=3.7" + +[package.dependencies] +gitdb = ">=4.0.1,<5" +typing-extensions = {version = ">=3.7.4.3", markers = "python_version < \"3.10\""} + +[[package]] +name = "idna" +version = "3.3" +description = "Internationalized Domain Names in Applications (IDNA)" +category = "dev" +optional = false +python-versions = ">=3.5" + +[[package]] +name = "importlib-metadata" +version = "4.8.2" +description = "Read metadata from Python packages" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +zipp = ">=0.5" + +[package.extras] +docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"] +perf = ["ipython"] +testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "packaging", "pep517", "pyfakefs", "flufl.flake8", "pytest-perf (>=0.9.2)", "pytest-black (>=0.3.7)", "pytest-mypy", "importlib-resources (>=1.3)"] + +[[package]] +name = "iniconfig" +version = "1.1.1" +description = "iniconfig: brain-dead simple config-ini parsing" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "isort" +version = "5.10.1" +description = "A Python utility / library to sort Python imports." +category = "dev" +optional = false +python-versions = ">=3.6.1,<4.0" + +[package.extras] +pipfile_deprecated_finder = ["pipreqs", "requirementslib"] +requirements_deprecated_finder = ["pipreqs", "pip-api"] +colors = ["colorama (>=0.4.3,<0.5.0)"] +plugins = ["setuptools"] + +[[package]] +name = "jinja2" +version = "3.0.3" +description = "A very fast and expressive template engine." +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +MarkupSafe = ">=2.0" + +[package.extras] +i18n = ["Babel (>=2.7)"] + +[[package]] +name = "lazy-object-proxy" +version = "1.6.0" +description = "A fast and thorough lazy object proxy." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" + +[[package]] +name = "macholib" +version = "1.15.2" +description = "Mach-O header analysis and editing" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +altgraph = ">=0.15" + +[[package]] +name = "markdown" +version = "3.3.6" +description = "Python implementation of Markdown." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +importlib-metadata = {version = ">=4.4", markers = "python_version < \"3.10\""} + +[package.extras] +testing = ["coverage", "pyyaml"] + +[[package]] +name = "markupsafe" +version = "2.0.1" +description = "Safely add untrusted strings to HTML/XML markup." +category = "main" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "mccabe" +version = "0.6.1" +description = "McCabe checker, plugin for flake8" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "mergedeep" +version = "1.3.4" +description = "A deep merge function for 🐍." +category = "dev" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "mkdocs" +version = "1.2.3" +description = "Project documentation with Markdown." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +click = ">=3.3" +ghp-import = ">=1.0" +importlib-metadata = ">=3.10" +Jinja2 = ">=2.10.1" +Markdown = ">=3.2.1" +mergedeep = ">=1.3.4" +packaging = ">=20.5" +PyYAML = ">=3.10" +pyyaml-env-tag = ">=0.1" +watchdog = ">=2.0" + +[package.extras] +i18n = ["babel (>=2.9.0)"] + +[[package]] +name = "mkdocs-autorefs" +version = "0.3.0" +description = "Automatically link across pages in MkDocs." +category = "dev" +optional = false +python-versions = ">=3.6,<4.0" + +[package.dependencies] +Markdown = ">=3.3,<4.0" +mkdocs = ">=1.1,<2.0" + +[[package]] +name = "mkdocs-click" +version = "0.4.0" +description = "An MkDocs extension to generate documentation for Click command line applications" +category = "dev" +optional = false +python-versions = ">=3.7" + +[package.dependencies] +click = ">=7,<9" +markdown = ">=3.0.0,<4.0.0" + +[[package]] +name = "mkdocs-coverage" +version = "0.2.4" +description = "MkDocs plugin to integrate your coverage HTML report into your site." +category = "dev" +optional = false +python-versions = ">=3.6.1" + +[package.dependencies] +mkdocs = ">=1.1,<2.0" + +[[package]] +name = "mkdocs-gen-files" +version = "0.3.3" +description = "MkDocs plugin to programmatically generate documentation pages during the build" +category = "dev" +optional = false +python-versions = ">=3.7,<4.0" + +[package.dependencies] +mkdocs = ">=1.0.3,<2.0.0" + +[[package]] +name = "mkdocs-literate-nav" +version = "0.4.0" +description = "MkDocs plugin to specify the navigation in Markdown instead of YAML" +category = "dev" +optional = false +python-versions = ">=3.6,<4.0" + +[package.dependencies] +mkdocs = ">=1.0.3,<2.0.0" + +[[package]] +name = "mkdocs-material" +version = "7.3.6" +description = "A Material Design theme for MkDocs" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +jinja2 = ">=2.11.1" +markdown = ">=3.2" +mkdocs = ">=1.2.3" +mkdocs-material-extensions = ">=1.0" +pygments = ">=2.10" +pymdown-extensions = ">=9.0" + +[[package]] +name = "mkdocs-material-extensions" +version = "1.0.3" +description = "Extension pack for Python Markdown." +category = "dev" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "mkdocstrings" +version = "0.16.2" +description = "Automatic documentation from sources, for MkDocs." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +Jinja2 = ">=2.11.1,<4.0" +Markdown = ">=3.3,<4.0" +MarkupSafe = ">=1.1,<3.0" +mkdocs = ">=1.2,<2.0" +mkdocs-autorefs = ">=0.1,<0.4" +pymdown-extensions = ">=6.3,<10.0" +pytkdocs = ">=0.2.0,<0.13.0" + +[[package]] +name = "mypy" +version = "0.910" +description = "Optional static typing for Python" +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +mypy-extensions = ">=0.4.3,<0.5.0" +toml = "*" +typing-extensions = ">=3.7.4" + +[package.extras] +dmypy = ["psutil (>=4.0)"] +python2 = ["typed-ast (>=1.4.0,<1.5.0)"] + +[[package]] +name = "mypy-extensions" +version = "0.4.3" +description = "Experimental type system extensions for programs checked with the mypy typechecker." +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "packaging" +version = "21.3" +description = "Core utilities for Python packages" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +pyparsing = ">=2.0.2,<3.0.5 || >3.0.5" + +[[package]] +name = "panaetius" +version = "2.3.2" +description = "Python module to gracefully handle a .config file/environment variables for scripts, with built in masking for sensitive options. Provides a Splunk friendly formatted logger instance." +category = "main" +optional = false +python-versions = "^3.7" +develop = true + +[package.dependencies] +PyYAML = "^6.0" +toml = "^0.10.0" + +[package.source] +type = "directory" +url = "../../panaetius" + +[[package]] +name = "pbr" +version = "5.8.0" +description = "Python Build Reasonableness" +category = "dev" +optional = false +python-versions = ">=2.6" + +[[package]] +name = "pefile" +version = "2021.9.3" +description = "Python PE parsing module" +category = "dev" +optional = false +python-versions = ">=3.6.0" + +[package.dependencies] +future = "*" + +[[package]] +name = "pendulum" +version = "2.1.2" +description = "Python datetimes made easy" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[package.dependencies] +python-dateutil = ">=2.6,<3.0" +pytzdata = ">=2020.1" + +[[package]] +name = "pep8" +version = "1.7.1" +description = "Python style guide checker" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "pep8-naming" +version = "0.10.0" +description = "Check PEP-8 naming conventions, plugin for flake8" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +flake8-polyfill = ">=1.0.2,<2" + +[[package]] +name = "platformdirs" +version = "2.4.0" +description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.extras] +docs = ["Sphinx (>=4)", "furo (>=2021.7.5b38)", "proselint (>=0.10.2)", "sphinx-autodoc-typehints (>=1.12)"] +test = ["appdirs (==1.4.4)", "pytest (>=6)", "pytest-cov (>=2.7)", "pytest-mock (>=3.6)"] + +[[package]] +name = "pluggy" +version = "1.0.0" +description = "plugin and hook calling mechanisms for python" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.extras] +dev = ["pre-commit", "tox"] +testing = ["pytest", "pytest-benchmark"] + +[[package]] +name = "prospector" +version = "1.5.1" +description = "" +category = "dev" +optional = false +python-versions = ">=3.6.1,<4.0" + +[package.dependencies] +bandit = {version = ">=1.5.1", optional = true, markers = "extra == \"with_bandit\" or extra == \"with_everything\""} +dodgy = ">=0.2.1,<0.3.0" +mccabe = ">=0.6.0,<0.7.0" +mypy = {version = ">=0.600", optional = true, markers = "extra == \"with_mypy\" or extra == \"with_everything\""} +pep8-naming = ">=0.3.3,<=0.10.0" +pycodestyle = ">=2.6.0,<2.9.0" +pydocstyle = ">=2.0.0" +pyflakes = ">=2.2.0,<2.4.0" +pylint = ">=2.8.3,<3" +pylint-celery = "0.3" +pylint-django = ">=2.4.4,<3.0.0" +pylint-flask = "0.6" +pylint-plugin-utils = ">=0.6,<0.7" +PyYAML = "*" +requirements-detector = ">=0.7,<0.8" +setoptconf-tmp = ">=0.3.1,<0.4.0" +toml = ">=0.10.2,<0.11.0" + +[package.extras] +with_bandit = ["bandit (>=1.5.1)"] +with_everything = ["bandit (>=1.5.1)", "frosted (>=1.4.1)", "mypy (>=0.600)", "pyroma (>=2.4)", "vulture (>=1.5)"] +with_frosted = ["frosted (>=1.4.1)"] +with_mypy = ["mypy (>=0.600)"] +with_pyroma = ["pyroma (>=2.4)"] +with_vulture = ["vulture (>=1.5)"] + +[[package]] +name = "ptyprocess" +version = "0.7.0" +description = "Run a subprocess in a pseudo terminal" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "py" +version = "1.11.0" +description = "library with cross-python path, ini-parsing, io, code, log facilities" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "pycodestyle" +version = "2.8.0" +description = "Python style guide checker" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" + +[[package]] +name = "pydocstyle" +version = "6.1.1" +description = "Python docstring style checker" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +snowballstemmer = "*" + +[package.extras] +toml = ["toml"] + +[[package]] +name = "pyflakes" +version = "2.3.1" +description = "passive checker of Python programs" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "pygments" +version = "2.10.0" +description = "Pygments is a syntax highlighting package written in Python." +category = "dev" +optional = false +python-versions = ">=3.5" + +[[package]] +name = "pyinstaller" +version = "4.5.1" +description = "PyInstaller bundles a Python application and all its dependencies into a single package." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +altgraph = "*" +macholib = {version = ">=1.8", markers = "sys_platform == \"darwin\""} +pefile = {version = ">=2017.8.1", markers = "sys_platform == \"win32\""} +pyinstaller-hooks-contrib = ">=2020.6" +pywin32-ctypes = {version = ">=0.2.0", markers = "sys_platform == \"win32\""} + +[package.extras] +encryption = ["tinyaes (>=1.0.0)"] +hook_testing = ["pytest (>=2.7.3)", "execnet (>=1.5.0)", "psutil"] + +[[package]] +name = "pyinstaller-hooks-contrib" +version = "2021.3" +description = "Community maintained hooks for PyInstaller" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "pylint" +version = "2.11.1" +description = "python code static checker" +category = "dev" +optional = false +python-versions = "~=3.6" + +[package.dependencies] +astroid = ">=2.8.0,<2.9" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +isort = ">=4.2.5,<6" +mccabe = ">=0.6,<0.7" +platformdirs = ">=2.2.0" +toml = ">=0.7.1" +typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""} + +[[package]] +name = "pylint-celery" +version = "0.3" +description = "pylint-celery is a Pylint plugin to aid Pylint in recognising and understandingerrors caused when using the Celery library" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +astroid = ">=1.0" +pylint = ">=1.0" +pylint-plugin-utils = ">=0.2.1" + +[[package]] +name = "pylint-django" +version = "2.4.4" +description = "A Pylint plugin to help Pylint understand the Django web framework" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +pylint = ">=2.0" +pylint-plugin-utils = ">=0.5" + +[package.extras] +for_tests = ["django-tables2", "factory-boy", "coverage", "pytest"] +with_django = ["django"] + +[[package]] +name = "pylint-flask" +version = "0.6" +description = "pylint-flask is a Pylint plugin to aid Pylint in recognizing and understanding errors caused when using Flask" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +pylint-plugin-utils = ">=0.2.1" + +[[package]] +name = "pylint-plugin-utils" +version = "0.6" +description = "Utilities and helpers for writing Pylint plugins" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +pylint = ">=1.7" + +[[package]] +name = "pymdown-extensions" +version = "9.1" +description = "Extension pack for Python Markdown." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +Markdown = ">=3.2" + +[[package]] +name = "pyparsing" +version = "3.0.6" +description = "Python parsing module" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.extras] +diagrams = ["jinja2", "railroad-diagrams"] + +[[package]] +name = "pytest" +version = "6.2.5" +description = "pytest: simple powerful testing with Python" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""} +attrs = ">=19.2.0" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +iniconfig = "*" +packaging = "*" +pluggy = ">=0.12,<2.0" +py = ">=1.8.2" +toml = "*" + +[package.extras] +testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"] + +[[package]] +name = "pytest-cov" +version = "3.0.0" +description = "Pytest plugin for measuring coverage." +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +coverage = {version = ">=5.2.1", extras = ["toml"]} +pytest = ">=4.6" + +[package.extras] +testing = ["fields", "hunter", "process-tests", "six", "pytest-xdist", "virtualenv"] + +[[package]] +name = "pytest-custom-exit-code" +version = "0.3.0" +description = "Exit pytest test session with custom exit code in different scenarios" +category = "dev" +optional = false +python-versions = ">2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.dependencies] +pytest = ">=4.0.2" + +[[package]] +name = "pytest-datadir" +version = "1.3.1" +description = "pytest plugin for test data directories and files" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.dependencies] +pytest = ">=2.7.0" + +[[package]] +name = "python-dateutil" +version = "2.8.2" +description = "Extensions to the standard Python datetime module" +category = "main" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" + +[package.dependencies] +six = ">=1.5" + +[[package]] +name = "pytkdocs" +version = "0.12.0" +description = "Load Python objects documentation." +category = "dev" +optional = false +python-versions = ">=3.6.1" + +[package.dependencies] +astunparse = {version = ">=1.6,<2.0", markers = "python_version < \"3.9\""} + +[package.extras] +numpy-style = ["docstring_parser (>=0.7,<1.0)"] + +[[package]] +name = "pytzdata" +version = "2020.1" +description = "The Olson timezone database for Python." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "pywin32-ctypes" +version = "0.2.0" +description = "" +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "pyyaml" +version = "6.0" +description = "YAML parser and emitter for Python" +category = "main" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "pyyaml-env-tag" +version = "0.1" +description = "A custom YAML tag for referencing environment variables in YAML files. " +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +pyyaml = "*" + +[[package]] +name = "requests" +version = "2.26.0" +description = "Python HTTP for Humans." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = {version = ">=2.0.0,<2.1.0", markers = "python_version >= \"3\""} +idna = {version = ">=2.5,<4", markers = "python_version >= \"3\""} +urllib3 = ">=1.21.1,<1.27" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] +use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"] + +[[package]] +name = "requirements-detector" +version = "0.7" +description = "Python tool to find and list requirements of a Python project" +category = "dev" +optional = false +python-versions = "*" + +[package.dependencies] +astroid = ">=1.4" + +[[package]] +name = "safety" +version = "1.10.3" +description = "Checks installed dependencies for known vulnerabilities." +category = "dev" +optional = false +python-versions = ">=3.5" + +[package.dependencies] +Click = ">=6.0" +dparse = ">=0.5.1" +packaging = "*" +requests = "*" + +[[package]] +name = "semver" +version = "2.13.0" +description = "Python helper for Semantic Versioning (http://semver.org/)" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "setoptconf-tmp" +version = "0.3.1" +description = "A module for retrieving program settings from various sources in a consistant method." +category = "dev" +optional = false +python-versions = "*" + +[package.extras] +yaml = ["pyyaml"] + +[[package]] +name = "six" +version = "1.16.0" +description = "Python 2 and 3 compatibility utilities" +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "smmap" +version = "5.0.0" +description = "A pure Python implementation of a sliding window memory map manager" +category = "dev" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "snowballstemmer" +version = "2.2.0" +description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +category = "dev" +optional = false +python-versions = "*" + +[[package]] +name = "stevedore" +version = "3.5.0" +description = "Manage dynamic plugins for Python applications" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +pbr = ">=2.0.0,<2.1.0 || >2.1.0" + +[[package]] +name = "toml" +version = "0.10.2" +description = "Python Library for Tom's Obvious, Minimal Language" +category = "main" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" + +[[package]] +name = "tomli" +version = "1.2.2" +description = "A lil' TOML parser" +category = "dev" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "typing-extensions" +version = "4.0.0" +description = "Backported and Experimental Type Hints for Python 3.6+" +category = "dev" +optional = false +python-versions = ">=3.6" + +[[package]] +name = "urllib3" +version = "1.26.7" +description = "HTTP library with thread-safe connection pooling, file post, and more." +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" + +[package.extras] +brotli = ["brotlipy (>=0.6.0)"] +secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"] +socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] + +[[package]] +name = "watchdog" +version = "2.1.6" +description = "Filesystem events monitoring" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.extras] +watchmedo = ["PyYAML (>=3.10)"] + +[[package]] +name = "wrapt" +version = "1.13.3" +description = "Module for decorators, wrappers and monkey patching." +category = "dev" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" + +[[package]] +name = "zipp" +version = "3.6.0" +description = "Backport of pathlib-compatible object wrapper for zip files" +category = "dev" +optional = false +python-versions = ">=3.6" + +[package.extras] +docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"] +testing = ["pytest (>=4.6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "jaraco.itertools", "func-timeout", "pytest-black (>=0.3.7)", "pytest-mypy"] + +[metadata] +lock-version = "1.1" +python-versions = "^3.8" +content-hash = "0126a464628e466ebffe16877a2a727a10a2a298c90f504274f264b5ab8b4fcd" + +[metadata.files] +altgraph = [ + {file = "altgraph-0.17.2-py2.py3-none-any.whl", hash = "sha256:743628f2ac6a7c26f5d9223c91ed8ecbba535f506f4b6f558885a8a56a105857"}, + {file = "altgraph-0.17.2.tar.gz", hash = "sha256:ebf2269361b47d97b3b88e696439f6e4cbc607c17c51feb1754f90fb79839158"}, +] +ansimarkup = [ + {file = "ansimarkup-1.5.0-py2.py3-none-any.whl", hash = "sha256:3146ca74af5f69e48a9c3d41b31085c0d6378f803edeb364856d37c11a684acf"}, + {file = "ansimarkup-1.5.0.tar.gz", hash = "sha256:96c65d75bbed07d3dcbda8dbede8c2252c984f90d0ca07434b88a6bbf345fad3"}, +] +astroid = [ + {file = "astroid-2.8.5-py3-none-any.whl", hash = "sha256:abc423a1e85bc1553954a14f2053473d2b7f8baf32eae62a328be24f436b5107"}, + {file = "astroid-2.8.5.tar.gz", hash = "sha256:11f7356737b624c42e21e71fe85eea6875cb94c03c82ac76bd535a0ff10b0f25"}, +] +astunparse = [ + {file = "astunparse-1.6.3-py2.py3-none-any.whl", hash = "sha256:c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8"}, + {file = "astunparse-1.6.3.tar.gz", hash = "sha256:5ad93a8456f0d084c3456d059fd9a92cce667963232cbf763eac3bc5b7940872"}, +] +atomicwrites = [ + {file = "atomicwrites-1.4.0-py2.py3-none-any.whl", hash = "sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197"}, + {file = "atomicwrites-1.4.0.tar.gz", hash = "sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"}, +] +attrs = [ + {file = "attrs-21.2.0-py2.py3-none-any.whl", hash = "sha256:149e90d6d8ac20db7a955ad60cf0e6881a3f20d37096140088356da6c716b0b1"}, + {file = "attrs-21.2.0.tar.gz", hash = "sha256:ef6aaac3ca6cd92904cdd0d83f629a15f18053ec84e6432106f7a4d04ae4f5fb"}, +] +bandit = [ + {file = "bandit-1.7.1-py3-none-any.whl", hash = "sha256:f5acd838e59c038a159b5c621cf0f8270b279e884eadd7b782d7491c02add0d4"}, + {file = "bandit-1.7.1.tar.gz", hash = "sha256:a81b00b5436e6880fa8ad6799bc830e02032047713cbb143a12939ac67eb756c"}, +] +certifi = [ + {file = "certifi-2021.10.8-py2.py3-none-any.whl", hash = "sha256:d62a0163eb4c2344ac042ab2bdf75399a71a2d8c7d47eac2e2ee91b9d6339569"}, + {file = "certifi-2021.10.8.tar.gz", hash = "sha256:78884e7c1d4b00ce3cea67b44566851c4343c120abd683433ce934a68ea58872"}, +] +charset-normalizer = [ + {file = "charset-normalizer-2.0.7.tar.gz", hash = "sha256:e019de665e2bcf9c2b64e2e5aa025fa991da8720daa3c1138cadd2fd1856aed0"}, + {file = "charset_normalizer-2.0.7-py3-none-any.whl", hash = "sha256:f7af805c321bfa1ce6714c51f254e0d5bb5e5834039bc17db7ebe3a4cec9492b"}, +] +click = [ + {file = "click-8.0.3-py3-none-any.whl", hash = "sha256:353f466495adaeb40b6b5f592f9f91cb22372351c84caeb068132442a4518ef3"}, + {file = "click-8.0.3.tar.gz", hash = "sha256:410e932b050f5eed773c4cda94de75971c89cdb3155a72a0831139a79e5ecb5b"}, +] +colorama = [ + {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, + {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, +] +coverage = [ + {file = "coverage-6.1.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:675adb3b3380967806b3cbb9c5b00ceb29b1c472692100a338730c1d3e59c8b9"}, + {file = "coverage-6.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:95a58336aa111af54baa451c33266a8774780242cab3704b7698d5e514840758"}, + {file = "coverage-6.1.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:d0a595a781f8e186580ff8e3352dd4953b1944289bec7705377c80c7e36c4d6c"}, + {file = "coverage-6.1.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:d3c5f49ce6af61154060640ad3b3281dbc46e2e0ef2fe78414d7f8a324f0b649"}, + {file = "coverage-6.1.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:310c40bed6b626fd1f463e5a83dba19a61c4eb74e1ac0d07d454ebbdf9047e9d"}, + {file = "coverage-6.1.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a4d48e42e17d3de212f9af44f81ab73b9378a4b2b8413fd708d0d9023f2bbde4"}, + {file = "coverage-6.1.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ffa545230ca2ad921ad066bf8fd627e7be43716b6e0fcf8e32af1b8188ccb0ab"}, + {file = "coverage-6.1.2-cp310-cp310-win32.whl", hash = "sha256:cd2d11a59afa5001ff28073ceca24ae4c506da4355aba30d1e7dd2bd0d2206dc"}, + {file = "coverage-6.1.2-cp310-cp310-win_amd64.whl", hash = "sha256:96129e41405887a53a9cc564f960d7f853cc63d178f3a182fdd302e4cab2745b"}, + {file = "coverage-6.1.2-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:1de9c6f5039ee2b1860b7bad2c7bc3651fbeb9368e4c4d93e98a76358cdcb052"}, + {file = "coverage-6.1.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:80cb70264e9a1d04b519cdba3cd0dc42847bf8e982a4d55c769b9b0ee7cdce1e"}, + {file = "coverage-6.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:ba6125d4e55c0b8e913dad27b22722eac7abdcb1f3eab1bd090eee9105660266"}, + {file = "coverage-6.1.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:8492d37acdc07a6eac6489f6c1954026f2260a85a4c2bb1e343fe3d35f5ee21a"}, + {file = "coverage-6.1.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:66af99c7f7b64d050d37e795baadf515b4561124f25aae6e1baa482438ecc388"}, + {file = "coverage-6.1.2-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:ebcc03e1acef4ff44f37f3c61df478d6e469a573aa688e5a162f85d7e4c3860d"}, + {file = "coverage-6.1.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98d44a8136eebbf544ad91fef5bd2b20ef0c9b459c65a833c923d9aa4546b204"}, + {file = "coverage-6.1.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:c18725f3cffe96732ef96f3de1939d81215fd6d7d64900dcc4acfe514ea4fcbf"}, + {file = "coverage-6.1.2-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:c8e9c4bcaaaa932be581b3d8b88b677489975f845f7714efc8cce77568b6711c"}, + {file = "coverage-6.1.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:06d009e8a29483cbc0520665bc46035ffe9ae0e7484a49f9782c2a716e37d0a0"}, + {file = "coverage-6.1.2-cp36-cp36m-win32.whl", hash = "sha256:e5432d9c329b11c27be45ee5f62cf20a33065d482c8dec1941d6670622a6fb8f"}, + {file = "coverage-6.1.2-cp36-cp36m-win_amd64.whl", hash = "sha256:82fdcb64bf08aa5db881db061d96db102c77397a570fbc112e21c48a4d9cb31b"}, + {file = "coverage-6.1.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:94f558f8555e79c48c422045f252ef41eb43becdd945e9c775b45ebfc0cbd78f"}, + {file = "coverage-6.1.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:046647b96969fda1ae0605f61288635209dd69dcd27ba3ec0bf5148bc157f954"}, + {file = "coverage-6.1.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:cc799916b618ec9fd00135e576424165691fec4f70d7dc12cfaef09268a2478c"}, + {file = "coverage-6.1.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:62646d98cf0381ffda301a816d6ac6c35fc97aa81b09c4c52d66a15c4bef9d7c"}, + {file = "coverage-6.1.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:27a3df08a855522dfef8b8635f58bab81341b2fb5f447819bc252da3aa4cf44c"}, + {file = "coverage-6.1.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:610c0ba11da8de3a753dc4b1f71894f9f9debfdde6559599f303286e70aeb0c2"}, + {file = "coverage-6.1.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:35b246ae3a2c042dc8f410c94bcb9754b18179cdb81ff9477a9089dbc9ecc186"}, + {file = "coverage-6.1.2-cp37-cp37m-win32.whl", hash = "sha256:0cde7d9fe2fb55ff68ebe7fb319ef188e9b88e0a3d1c9c5db7dd829cd93d2193"}, + {file = "coverage-6.1.2-cp37-cp37m-win_amd64.whl", hash = "sha256:958ac66272ff20e63d818627216e3d7412fdf68a2d25787b89a5c6f1eb7fdd93"}, + {file = "coverage-6.1.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a300b39c3d5905686c75a369d2a66e68fd01472ea42e16b38c948bd02b29e5bd"}, + {file = "coverage-6.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d3855d5d26292539861f5ced2ed042fc2aa33a12f80e487053aed3bcb6ced13"}, + {file = "coverage-6.1.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:586d38dfc7da4a87f5816b203ff06dd7c1bb5b16211ccaa0e9788a8da2b93696"}, + {file = "coverage-6.1.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a34fccb45f7b2d890183a263578d60a392a1a218fdc12f5bce1477a6a68d4373"}, + {file = "coverage-6.1.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bc1ee1318f703bc6c971da700d74466e9b86e0c443eb85983fb2a1bd20447263"}, + {file = "coverage-6.1.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:3f546f48d5d80a90a266769aa613bc0719cb3e9c2ef3529d53f463996dd15a9d"}, + {file = "coverage-6.1.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fd92ece726055e80d4e3f01fff3b91f54b18c9c357c48fcf6119e87e2461a091"}, + {file = "coverage-6.1.2-cp38-cp38-win32.whl", hash = "sha256:24ed38ec86754c4d5a706fbd5b52b057c3df87901a8610d7e5642a08ec07087e"}, + {file = "coverage-6.1.2-cp38-cp38-win_amd64.whl", hash = "sha256:97ef6e9119bd39d60ef7b9cd5deea2b34869c9f0b9777450a7e3759c1ab09b9b"}, + {file = "coverage-6.1.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6e5a8c947a2a89c56655ecbb789458a3a8e3b0cbf4c04250331df8f647b3de59"}, + {file = "coverage-6.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7a39590d1e6acf6a3c435c5d233f72f5d43b585f5be834cff1f21fec4afda225"}, + {file = "coverage-6.1.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9d2c2e3ce7b8cc932a2f918186964bd44de8c84e2f9ef72dc616f5bb8be22e71"}, + {file = "coverage-6.1.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3348865798c077c695cae00da0924136bb5cc501f236cfd6b6d9f7a3c94e0ec4"}, + {file = "coverage-6.1.2-cp39-cp39-win32.whl", hash = "sha256:fae3fe111670e51f1ebbc475823899524e3459ea2db2cb88279bbfb2a0b8a3de"}, + {file = "coverage-6.1.2-cp39-cp39-win_amd64.whl", hash = "sha256:af45eea024c0e3a25462fade161afab4f0d9d9e0d5a5d53e86149f74f0a35ecc"}, + {file = "coverage-6.1.2-pp36.pp37.pp38-none-any.whl", hash = "sha256:eab14fdd410500dae50fd14ccc332e65543e7b39f6fc076fe90603a0e5d2f929"}, + {file = "coverage-6.1.2.tar.gz", hash = "sha256:d9a635114b88c0ab462e0355472d00a180a5fbfd8511e7f18e4ac32652e7d972"}, +] +dodgy = [ + {file = "dodgy-0.2.1-py3-none-any.whl", hash = "sha256:51f54c0fd886fa3854387f354b19f429d38c04f984f38bc572558b703c0542a6"}, + {file = "dodgy-0.2.1.tar.gz", hash = "sha256:28323cbfc9352139fdd3d316fa17f325cc0e9ac74438cbba51d70f9b48f86c3a"}, +] +dparse = [ + {file = "dparse-0.5.1-py3-none-any.whl", hash = "sha256:e953a25e44ebb60a5c6efc2add4420c177f1d8404509da88da9729202f306994"}, + {file = "dparse-0.5.1.tar.gz", hash = "sha256:a1b5f169102e1c894f9a7d5ccf6f9402a836a5d24be80a986c7ce9eaed78f367"}, +] +duty = [ + {file = "duty-0.7.0-py3-none-any.whl", hash = "sha256:45068baf1639f16464aa40e9d8f698f0ae09408368fe53a34e9bfe6993dfd743"}, + {file = "duty-0.7.0.tar.gz", hash = "sha256:5ebfd4640ab41e3058f1d8433f74228d60c9a808def1784e65319ef1899a9d15"}, +] +failprint = [ + {file = "failprint-0.8.0-py3-none-any.whl", hash = "sha256:a8215a7aca5ce687116b995cd3a9667180f222ab88c4328a5007d2fa0b5c0f78"}, + {file = "failprint-0.8.0.tar.gz", hash = "sha256:4633b52f9395bf042ad996c96cd7819a94b2021833030dd1eb692ebbd86b89a1"}, +] +flake8 = [ + {file = "flake8-2.3.0-py2.py3-none-any.whl", hash = "sha256:c99cc9716d6655d9c8bcb1e77632b8615bf0abd282d7abd9f5c2148cad7fc669"}, + {file = "flake8-2.3.0.tar.gz", hash = "sha256:5ee1a43ccd0716d6061521eec6937c983efa027793013e572712c4da55c7c83e"}, +] +flake8-polyfill = [ + {file = "flake8-polyfill-1.0.2.tar.gz", hash = "sha256:e44b087597f6da52ec6393a709e7108b2905317d0c0b744cdca6208e670d8eda"}, + {file = "flake8_polyfill-1.0.2-py2.py3-none-any.whl", hash = "sha256:12be6a34ee3ab795b19ca73505e7b55826d5f6ad7230d31b18e106400169b9e9"}, +] +future = [ + {file = "future-0.18.2.tar.gz", hash = "sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d"}, +] +ghp-import = [ + {file = "ghp-import-2.0.2.tar.gz", hash = "sha256:947b3771f11be850c852c64b561c600fdddf794bab363060854c1ee7ad05e071"}, + {file = "ghp_import-2.0.2-py3-none-any.whl", hash = "sha256:5f8962b30b20652cdffa9c5a9812f7de6bcb56ec475acac579807719bf242c46"}, +] +git-changelog = [ + {file = "git-changelog-0.5.0.tar.gz", hash = "sha256:6a1b43d21edb2b42e6c21250de97761602ff01deb8f139c84ba1b11cc591bd92"}, + {file = "git_changelog-0.5.0-py3-none-any.whl", hash = "sha256:ca7fd3371dd6918c6c19202bbccadc59030da48a5fe350601f15fc5c36c1431a"}, +] +gitdb = [ + {file = "gitdb-4.0.9-py3-none-any.whl", hash = "sha256:8033ad4e853066ba6ca92050b9df2f89301b8fc8bf7e9324d412a63f8bf1a8fd"}, + {file = "gitdb-4.0.9.tar.gz", hash = "sha256:bac2fd45c0a1c9cf619e63a90d62bdc63892ef92387424b855792a6cabe789aa"}, +] +gitpython = [ + {file = "GitPython-3.1.24-py3-none-any.whl", hash = "sha256:dc0a7f2f697657acc8d7f89033e8b1ea94dd90356b2983bca89dc8d2ab3cc647"}, + {file = "GitPython-3.1.24.tar.gz", hash = "sha256:df83fdf5e684fef7c6ee2c02fc68a5ceb7e7e759d08b694088d0cacb4eba59e5"}, +] +idna = [ + {file = "idna-3.3-py3-none-any.whl", hash = "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff"}, + {file = "idna-3.3.tar.gz", hash = "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"}, +] +importlib-metadata = [ + {file = "importlib_metadata-4.8.2-py3-none-any.whl", hash = "sha256:53ccfd5c134223e497627b9815d5030edf77d2ed573922f7a0b8f8bb81a1c100"}, + {file = "importlib_metadata-4.8.2.tar.gz", hash = "sha256:75bdec14c397f528724c1bfd9709d660b33a4d2e77387a3358f20b848bb5e5fb"}, +] +iniconfig = [ + {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, + {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, +] +isort = [ + {file = "isort-5.10.1-py3-none-any.whl", hash = "sha256:6f62d78e2f89b4500b080fe3a81690850cd254227f27f75c3a0c491a1f351ba7"}, + {file = "isort-5.10.1.tar.gz", hash = "sha256:e8443a5e7a020e9d7f97f1d7d9cd17c88bcb3bc7e218bf9cf5095fe550be2951"}, +] +jinja2 = [ + {file = "Jinja2-3.0.3-py3-none-any.whl", hash = "sha256:077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8"}, + {file = "Jinja2-3.0.3.tar.gz", hash = "sha256:611bb273cd68f3b993fabdc4064fc858c5b47a973cb5aa7999ec1ba405c87cd7"}, +] +lazy-object-proxy = [ + {file = "lazy-object-proxy-1.6.0.tar.gz", hash = "sha256:489000d368377571c6f982fba6497f2aa13c6d1facc40660963da62f5c379726"}, + {file = "lazy_object_proxy-1.6.0-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:c6938967f8528b3668622a9ed3b31d145fab161a32f5891ea7b84f6b790be05b"}, + {file = "lazy_object_proxy-1.6.0-cp27-cp27m-win32.whl", hash = "sha256:ebfd274dcd5133e0afae738e6d9da4323c3eb021b3e13052d8cbd0e457b1256e"}, + {file = "lazy_object_proxy-1.6.0-cp27-cp27m-win_amd64.whl", hash = "sha256:ed361bb83436f117f9917d282a456f9e5009ea12fd6de8742d1a4752c3017e93"}, + {file = "lazy_object_proxy-1.6.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:d900d949b707778696fdf01036f58c9876a0d8bfe116e8d220cfd4b15f14e741"}, + {file = "lazy_object_proxy-1.6.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:5743a5ab42ae40caa8421b320ebf3a998f89c85cdc8376d6b2e00bd12bd1b587"}, + {file = "lazy_object_proxy-1.6.0-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:bf34e368e8dd976423396555078def5cfc3039ebc6fc06d1ae2c5a65eebbcde4"}, + {file = "lazy_object_proxy-1.6.0-cp36-cp36m-win32.whl", hash = "sha256:b579f8acbf2bdd9ea200b1d5dea36abd93cabf56cf626ab9c744a432e15c815f"}, + {file = "lazy_object_proxy-1.6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:4f60460e9f1eb632584c9685bccea152f4ac2130e299784dbaf9fae9f49891b3"}, + {file = "lazy_object_proxy-1.6.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:d7124f52f3bd259f510651450e18e0fd081ed82f3c08541dffc7b94b883aa981"}, + {file = "lazy_object_proxy-1.6.0-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:22ddd618cefe54305df49e4c069fa65715be4ad0e78e8d252a33debf00f6ede2"}, + {file = "lazy_object_proxy-1.6.0-cp37-cp37m-win32.whl", hash = "sha256:9d397bf41caad3f489e10774667310d73cb9c4258e9aed94b9ec734b34b495fd"}, + {file = "lazy_object_proxy-1.6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:24a5045889cc2729033b3e604d496c2b6f588c754f7a62027ad4437a7ecc4837"}, + {file = "lazy_object_proxy-1.6.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:17e0967ba374fc24141738c69736da90e94419338fd4c7c7bef01ee26b339653"}, + {file = "lazy_object_proxy-1.6.0-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:410283732af311b51b837894fa2f24f2c0039aa7f220135192b38fcc42bd43d3"}, + {file = "lazy_object_proxy-1.6.0-cp38-cp38-win32.whl", hash = "sha256:85fb7608121fd5621cc4377a8961d0b32ccf84a7285b4f1d21988b2eae2868e8"}, + {file = "lazy_object_proxy-1.6.0-cp38-cp38-win_amd64.whl", hash = "sha256:d1c2676e3d840852a2de7c7d5d76407c772927addff8d742b9808fe0afccebdf"}, + {file = "lazy_object_proxy-1.6.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:b865b01a2e7f96db0c5d12cfea590f98d8c5ba64ad222300d93ce6ff9138bcad"}, + {file = "lazy_object_proxy-1.6.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:4732c765372bd78a2d6b2150a6e99d00a78ec963375f236979c0626b97ed8e43"}, + {file = "lazy_object_proxy-1.6.0-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:9698110e36e2df951c7c36b6729e96429c9c32b3331989ef19976592c5f3c77a"}, + {file = "lazy_object_proxy-1.6.0-cp39-cp39-win32.whl", hash = "sha256:1fee665d2638491f4d6e55bd483e15ef21f6c8c2095f235fef72601021e64f61"}, + {file = "lazy_object_proxy-1.6.0-cp39-cp39-win_amd64.whl", hash = "sha256:f5144c75445ae3ca2057faac03fda5a902eff196702b0a24daf1d6ce0650514b"}, +] +macholib = [ + {file = "macholib-1.15.2-py2.py3-none-any.whl", hash = "sha256:885613dd02d3e26dbd2b541eb4cc4ce611b841f827c0958ab98656e478b9e6f6"}, + {file = "macholib-1.15.2.tar.gz", hash = "sha256:1542c41da3600509f91c165cb897e7e54c0e74008bd8da5da7ebbee519d593d2"}, +] +markdown = [ + {file = "Markdown-3.3.6-py3-none-any.whl", hash = "sha256:9923332318f843411e9932237530df53162e29dc7a4e2b91e35764583c46c9a3"}, + {file = "Markdown-3.3.6.tar.gz", hash = "sha256:76df8ae32294ec39dcf89340382882dfa12975f87f45c3ed1ecdb1e8cefc7006"}, +] +markupsafe = [ + {file = "MarkupSafe-2.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d8446c54dc28c01e5a2dbac5a25f071f6653e6e40f3a8818e8b45d790fe6ef53"}, + {file = "MarkupSafe-2.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:36bc903cbb393720fad60fc28c10de6acf10dc6cc883f3e24ee4012371399a38"}, + {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d7d807855b419fc2ed3e631034685db6079889a1f01d5d9dac950f764da3dad"}, + {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:add36cb2dbb8b736611303cd3bfcee00afd96471b09cda130da3581cbdc56a6d"}, + {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:168cd0a3642de83558a5153c8bd34f175a9a6e7f6dc6384b9655d2697312a646"}, + {file = "MarkupSafe-2.0.1-cp310-cp310-win32.whl", hash = "sha256:99df47edb6bda1249d3e80fdabb1dab8c08ef3975f69aed437cb69d0a5de1e28"}, + {file = "MarkupSafe-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:e0f138900af21926a02425cf736db95be9f4af72ba1bb21453432a07f6082134"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:0446679737af14f45767963a1a9ef7620189912317d095f2d9ffa183a4d25d2b"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:f826e31d18b516f653fe296d967d700fddad5901ae07c622bb3705955e1faa94"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:fa130dd50c57d53368c9d59395cb5526eda596d3ffe36666cd81a44d56e48872"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:905fec760bd2fa1388bb5b489ee8ee5f7291d692638ea5f67982d968366bef9f"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf5d821ffabf0ef3533c39c518f3357b171a1651c1ff6827325e4489b0e46c3c"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0d4b31cc67ab36e3392bbf3862cfbadac3db12bdd8b02a2731f509ed5b829724"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:baa1a4e8f868845af802979fcdbf0bb11f94f1cb7ced4c4b8a351bb60d108145"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:6c4ca60fa24e85fe25b912b01e62cb969d69a23a5d5867682dd3e80b5b02581d"}, + {file = "MarkupSafe-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b2f4bf27480f5e5e8ce285a8c8fd176c0b03e93dcc6646477d4630e83440c6a9"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0717a7390a68be14b8c793ba258e075c6f4ca819f15edfc2a3a027c823718567"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:6557b31b5e2c9ddf0de32a691f2312a32f77cd7681d8af66c2692efdbef84c18"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:49e3ceeabbfb9d66c3aef5af3a60cc43b85c33df25ce03d0031a608b0a8b2e3f"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:d7f9850398e85aba693bb640262d3611788b1f29a79f0c93c565694658f4071f"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:6a7fae0dd14cf60ad5ff42baa2e95727c3d81ded453457771d02b7d2b3f9c0c2"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:b7f2d075102dc8c794cbde1947378051c4e5180d52d276987b8d28a3bd58c17d"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e9936f0b261d4df76ad22f8fee3ae83b60d7c3e871292cd42f40b81b70afae85"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:2a7d351cbd8cfeb19ca00de495e224dea7e7d919659c2841bbb7f420ad03e2d6"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:60bf42e36abfaf9aff1f50f52644b336d4f0a3fd6d8a60ca0d054ac9f713a864"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:a30e67a65b53ea0a5e62fe23682cfe22712e01f453b95233b25502f7c61cb415"}, + {file = "MarkupSafe-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:611d1ad9a4288cf3e3c16014564df047fe08410e628f89805e475368bd304914"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5bb28c636d87e840583ee3adeb78172efc47c8b26127267f54a9c0ec251d41a9"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:be98f628055368795d818ebf93da628541e10b75b41c559fdf36d104c5787066"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:1d609f577dc6e1aa17d746f8bd3c31aa4d258f4070d61b2aa5c4166c1539de35"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7d91275b0245b1da4d4cfa07e0faedd5b0812efc15b702576d103293e252af1b"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:01a9b8ea66f1658938f65b93a85ebe8bc016e6769611be228d797c9d998dd298"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:47ab1e7b91c098ab893b828deafa1203de86d0bc6ab587b160f78fe6c4011f75"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:97383d78eb34da7e1fa37dd273c20ad4320929af65d156e35a5e2d89566d9dfb"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fcf051089389abe060c9cd7caa212c707e58153afa2c649f00346ce6d260f1b"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5855f8438a7d1d458206a2466bf82b0f104a3724bf96a1c781ab731e4201731a"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3dd007d54ee88b46be476e293f48c85048603f5f516008bee124ddd891398ed6"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-win32.whl", hash = "sha256:023cb26ec21ece8dc3907c0e8320058b2e0cb3c55cf9564da612bc325bed5e64"}, + {file = "MarkupSafe-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:984d76483eb32f1bcb536dc27e4ad56bba4baa70be32fa87152832cdd9db0833"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2ef54abee730b502252bcdf31b10dacb0a416229b72c18b19e24a4509f273d26"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3c112550557578c26af18a1ccc9e090bfe03832ae994343cfdacd287db6a6ae7"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:53edb4da6925ad13c07b6d26c2a852bd81e364f95301c66e930ab2aef5b5ddd8"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f5653a225f31e113b152e56f154ccbe59eeb1c7487b39b9d9f9cdb58e6c79dc5"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:4efca8f86c54b22348a5467704e3fec767b2db12fc39c6d963168ab1d3fc9135"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:ab3ef638ace319fa26553db0624c4699e31a28bb2a835c5faca8f8acf6a5a902"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:f8ba0e8349a38d3001fae7eadded3f6606f0da5d748ee53cc1dab1d6527b9509"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c47adbc92fc1bb2b3274c4b3a43ae0e4573d9fbff4f54cd484555edbf030baf1"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:37205cac2a79194e3750b0af2a5720d95f786a55ce7df90c3af697bfa100eaac"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:1f2ade76b9903f39aa442b4aadd2177decb66525062db244b35d71d0ee8599b6"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-win32.whl", hash = "sha256:10f82115e21dc0dfec9ab5c0223652f7197feb168c940f3ef61563fc2d6beb74"}, + {file = "MarkupSafe-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:693ce3f9e70a6cf7d2fb9e6c9d8b204b6b39897a2c4a1aa65728d5ac97dcc1d8"}, + {file = "MarkupSafe-2.0.1.tar.gz", hash = "sha256:594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a"}, +] +mccabe = [ + {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, + {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, +] +mergedeep = [ + {file = "mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307"}, + {file = "mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8"}, +] +mkdocs = [ + {file = "mkdocs-1.2.3-py3-none-any.whl", hash = "sha256:a1fa8c2d0c1305d7fc2b9d9f607c71778572a8b110fb26642aa00296c9e6d072"}, + {file = "mkdocs-1.2.3.tar.gz", hash = "sha256:89f5a094764381cda656af4298727c9f53dc3e602983087e1fe96ea1df24f4c1"}, +] +mkdocs-autorefs = [ + {file = "mkdocs-autorefs-0.3.0.tar.gz", hash = "sha256:2f89556eb2107d72e3aff41b04dcaaf1125d407a33b8027fbc982137d248d37d"}, + {file = "mkdocs_autorefs-0.3.0-py3-none-any.whl", hash = "sha256:261875003e49b5d708993fd2792a69d624cbc8cf7de49e96c81d3d9825977ca4"}, +] +mkdocs-click = [ + {file = "mkdocs_click-0.4.0-py3-none-any.whl", hash = "sha256:3b54c65bd1e6e2b600da71d77705e911d15d86bc2c2b341ff5d7f76b9fe1505b"}, + {file = "mkdocs_click-0.4.0.tar.gz", hash = "sha256:b34be84cde57850733fb1b32db37b472620ac2c3e97db4abbe11dbd6b98124f2"}, +] +mkdocs-coverage = [ + {file = "mkdocs-coverage-0.2.4.tar.gz", hash = "sha256:d0535b9ecf0a436fcbda3c8d7d58209d05441d79fa9388e12de99e50631f9b0a"}, + {file = "mkdocs_coverage-0.2.4-py3-none-any.whl", hash = "sha256:7caf6953c8aa10d4386e8536e2e0d3e2f0b4f8a3066f94417bd216ef6e4baa37"}, +] +mkdocs-gen-files = [ + {file = "mkdocs-gen-files-0.3.3.tar.gz", hash = "sha256:0bfe82ecb62b3d2064349808c898063ad955a77804436e0a54fa029414c893bb"}, + {file = "mkdocs_gen_files-0.3.3-py3-none-any.whl", hash = "sha256:bcfbaa496c5fc8164a9a243963e444c8750c619e18cd54e217549586c9132461"}, +] +mkdocs-literate-nav = [ + {file = "mkdocs-literate-nav-0.4.0.tar.gz", hash = "sha256:29bf383170b80200d16f0d8528f4925ae96982677c8a98f84af70343a3b38bcf"}, + {file = "mkdocs_literate_nav-0.4.0-py3-none-any.whl", hash = "sha256:2012ac97bc2316890ac35deabd653fd3c6a7434923d572de965c5b6c80f09537"}, +] +mkdocs-material = [ + {file = "mkdocs-material-7.3.6.tar.gz", hash = "sha256:1b1dbd8ef2508b358d93af55a5c5db3f141c95667fad802301ec621c40c7c217"}, + {file = "mkdocs_material-7.3.6-py2.py3-none-any.whl", hash = "sha256:1b6b3e9e09f922c2d7f1160fe15c8f43d4adc0d6fb81aa6ff0cbc7ef5b78ec75"}, +] +mkdocs-material-extensions = [ + {file = "mkdocs-material-extensions-1.0.3.tar.gz", hash = "sha256:bfd24dfdef7b41c312ede42648f9eb83476ea168ec163b613f9abd12bbfddba2"}, + {file = "mkdocs_material_extensions-1.0.3-py3-none-any.whl", hash = "sha256:a82b70e533ce060b2a5d9eb2bc2e1be201cf61f901f93704b4acf6e3d5983a44"}, +] +mkdocstrings = [ + {file = "mkdocstrings-0.16.2-py3-none-any.whl", hash = "sha256:671fba8a6c7a8455562aae0a3fa85979fbcef261daec5b2bac4dd1479acc14df"}, + {file = "mkdocstrings-0.16.2.tar.gz", hash = "sha256:3d8a86c283dfa21818d5b9579aa4e750eea6b5c127b43ad8b00cebbfb7f9634e"}, +] +mypy = [ + {file = "mypy-0.910-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:a155d80ea6cee511a3694b108c4494a39f42de11ee4e61e72bc424c490e46457"}, + {file = "mypy-0.910-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:b94e4b785e304a04ea0828759172a15add27088520dc7e49ceade7834275bedb"}, + {file = "mypy-0.910-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:088cd9c7904b4ad80bec811053272986611b84221835e079be5bcad029e79dd9"}, + {file = "mypy-0.910-cp35-cp35m-win_amd64.whl", hash = "sha256:adaeee09bfde366d2c13fe6093a7df5df83c9a2ba98638c7d76b010694db760e"}, + {file = "mypy-0.910-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:ecd2c3fe726758037234c93df7e98deb257fd15c24c9180dacf1ef829da5f921"}, + {file = "mypy-0.910-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:d9dd839eb0dc1bbe866a288ba3c1afc33a202015d2ad83b31e875b5905a079b6"}, + {file = "mypy-0.910-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:3e382b29f8e0ccf19a2df2b29a167591245df90c0b5a2542249873b5c1d78212"}, + {file = "mypy-0.910-cp36-cp36m-win_amd64.whl", hash = "sha256:53fd2eb27a8ee2892614370896956af2ff61254c275aaee4c230ae771cadd885"}, + {file = "mypy-0.910-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b6fb13123aeef4a3abbcfd7e71773ff3ff1526a7d3dc538f3929a49b42be03f0"}, + {file = "mypy-0.910-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:e4dab234478e3bd3ce83bac4193b2ecd9cf94e720ddd95ce69840273bf44f6de"}, + {file = "mypy-0.910-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:7df1ead20c81371ccd6091fa3e2878559b5c4d4caadaf1a484cf88d93ca06703"}, + {file = "mypy-0.910-cp37-cp37m-win_amd64.whl", hash = "sha256:0aadfb2d3935988ec3815952e44058a3100499f5be5b28c34ac9d79f002a4a9a"}, + {file = "mypy-0.910-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ec4e0cd079db280b6bdabdc807047ff3e199f334050db5cbb91ba3e959a67504"}, + {file = "mypy-0.910-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:119bed3832d961f3a880787bf621634ba042cb8dc850a7429f643508eeac97b9"}, + {file = "mypy-0.910-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:866c41f28cee548475f146aa4d39a51cf3b6a84246969f3759cb3e9c742fc072"}, + {file = "mypy-0.910-cp38-cp38-win_amd64.whl", hash = "sha256:ceb6e0a6e27fb364fb3853389607cf7eb3a126ad335790fa1e14ed02fba50811"}, + {file = "mypy-0.910-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1a85e280d4d217150ce8cb1a6dddffd14e753a4e0c3cf90baabb32cefa41b59e"}, + {file = "mypy-0.910-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:42c266ced41b65ed40a282c575705325fa7991af370036d3f134518336636f5b"}, + {file = "mypy-0.910-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:3c4b8ca36877fc75339253721f69603a9c7fdb5d4d5a95a1a1b899d8b86a4de2"}, + {file = "mypy-0.910-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:c0df2d30ed496a08de5daed2a9ea807d07c21ae0ab23acf541ab88c24b26ab97"}, + {file = "mypy-0.910-cp39-cp39-win_amd64.whl", hash = "sha256:c6c2602dffb74867498f86e6129fd52a2770c48b7cd3ece77ada4fa38f94eba8"}, + {file = "mypy-0.910-py3-none-any.whl", hash = "sha256:ef565033fa5a958e62796867b1df10c40263ea9ded87164d67572834e57a174d"}, + {file = "mypy-0.910.tar.gz", hash = "sha256:704098302473cb31a218f1775a873b376b30b4c18229421e9e9dc8916fd16150"}, +] +mypy-extensions = [ + {file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"}, + {file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"}, +] +packaging = [ + {file = "packaging-21.3-py3-none-any.whl", hash = "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522"}, + {file = "packaging-21.3.tar.gz", hash = "sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb"}, +] +panaetius = [] +pbr = [ + {file = "pbr-5.8.0-py2.py3-none-any.whl", hash = "sha256:176e8560eaf61e127817ef93d8a844803abb27a4d4637f0ff3bb783129be2e0a"}, + {file = "pbr-5.8.0.tar.gz", hash = "sha256:672d8ebee84921862110f23fcec2acea191ef58543d34dfe9ef3d9f13c31cddf"}, +] +pefile = [ + {file = "pefile-2021.9.3.tar.gz", hash = "sha256:344a49e40a94e10849f0fe34dddc80f773a12b40675bf2f7be4b8be578bdd94a"}, +] +pendulum = [ + {file = "pendulum-2.1.2-cp27-cp27m-macosx_10_15_x86_64.whl", hash = "sha256:b6c352f4bd32dff1ea7066bd31ad0f71f8d8100b9ff709fb343f3b86cee43efe"}, + {file = "pendulum-2.1.2-cp27-cp27m-win_amd64.whl", hash = "sha256:318f72f62e8e23cd6660dbafe1e346950281a9aed144b5c596b2ddabc1d19739"}, + {file = "pendulum-2.1.2-cp35-cp35m-macosx_10_15_x86_64.whl", hash = "sha256:0731f0c661a3cb779d398803655494893c9f581f6488048b3fb629c2342b5394"}, + {file = "pendulum-2.1.2-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:3481fad1dc3f6f6738bd575a951d3c15d4b4ce7c82dce37cf8ac1483fde6e8b0"}, + {file = "pendulum-2.1.2-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:9702069c694306297ed362ce7e3c1ef8404ac8ede39f9b28b7c1a7ad8c3959e3"}, + {file = "pendulum-2.1.2-cp35-cp35m-win_amd64.whl", hash = "sha256:fb53ffa0085002ddd43b6ca61a7b34f2d4d7c3ed66f931fe599e1a531b42af9b"}, + {file = "pendulum-2.1.2-cp36-cp36m-macosx_10_15_x86_64.whl", hash = "sha256:c501749fdd3d6f9e726086bf0cd4437281ed47e7bca132ddb522f86a1645d360"}, + {file = "pendulum-2.1.2-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:c807a578a532eeb226150d5006f156632df2cc8c5693d778324b43ff8c515dd0"}, + {file = "pendulum-2.1.2-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:2d1619a721df661e506eff8db8614016f0720ac171fe80dda1333ee44e684087"}, + {file = "pendulum-2.1.2-cp36-cp36m-win_amd64.whl", hash = "sha256:f888f2d2909a414680a29ae74d0592758f2b9fcdee3549887779cd4055e975db"}, + {file = "pendulum-2.1.2-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:e95d329384717c7bf627bf27e204bc3b15c8238fa8d9d9781d93712776c14002"}, + {file = "pendulum-2.1.2-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:4c9c689747f39d0d02a9f94fcee737b34a5773803a64a5fdb046ee9cac7442c5"}, + {file = "pendulum-2.1.2-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:1245cd0075a3c6d889f581f6325dd8404aca5884dea7223a5566c38aab94642b"}, + {file = "pendulum-2.1.2-cp37-cp37m-win_amd64.whl", hash = "sha256:db0a40d8bcd27b4fb46676e8eb3c732c67a5a5e6bfab8927028224fbced0b40b"}, + {file = "pendulum-2.1.2-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:f5e236e7730cab1644e1b87aca3d2ff3e375a608542e90fe25685dae46310116"}, + {file = "pendulum-2.1.2-cp38-cp38-manylinux1_i686.whl", hash = "sha256:de42ea3e2943171a9e95141f2eecf972480636e8e484ccffaf1e833929e9e052"}, + {file = "pendulum-2.1.2-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7c5ec650cb4bec4c63a89a0242cc8c3cebcec92fcfe937c417ba18277d8560be"}, + {file = "pendulum-2.1.2-cp38-cp38-win_amd64.whl", hash = "sha256:33fb61601083f3eb1d15edeb45274f73c63b3c44a8524703dc143f4212bf3269"}, + {file = "pendulum-2.1.2-cp39-cp39-manylinux1_i686.whl", hash = "sha256:29c40a6f2942376185728c9a0347d7c0f07905638c83007e1d262781f1e6953a"}, + {file = "pendulum-2.1.2-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:94b1fc947bfe38579b28e1cccb36f7e28a15e841f30384b5ad6c5e31055c85d7"}, + {file = "pendulum-2.1.2.tar.gz", hash = "sha256:b06a0ca1bfe41c990bbf0c029f0b6501a7f2ec4e38bfec730712015e8860f207"}, +] +pep8 = [ + {file = "pep8-1.7.1-py2.py3-none-any.whl", hash = "sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee"}, + {file = "pep8-1.7.1.tar.gz", hash = "sha256:fe249b52e20498e59e0b5c5256aa52ee99fc295b26ec9eaa85776ffdb9fe6374"}, +] +pep8-naming = [ + {file = "pep8-naming-0.10.0.tar.gz", hash = "sha256:f3b4a5f9dd72b991bf7d8e2a341d2e1aa3a884a769b5aaac4f56825c1763bf3a"}, + {file = "pep8_naming-0.10.0-py2.py3-none-any.whl", hash = "sha256:5d9f1056cb9427ce344e98d1a7f5665710e2f20f748438e308995852cfa24164"}, +] +platformdirs = [ + {file = "platformdirs-2.4.0-py3-none-any.whl", hash = "sha256:8868bbe3c3c80d42f20156f22e7131d2fb321f5bc86a2a345375c6481a67021d"}, + {file = "platformdirs-2.4.0.tar.gz", hash = "sha256:367a5e80b3d04d2428ffa76d33f124cf11e8fff2acdaa9b43d545f5c7d661ef2"}, +] +pluggy = [ + {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, + {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, +] +prospector = [ + {file = "prospector-1.5.1-py3-none-any.whl", hash = "sha256:47f8ff3fd36ae276967eb392ca20b300a7bdea66c0d0252250a4d89a6c03ab15"}, + {file = "prospector-1.5.1.tar.gz", hash = "sha256:851c2892cd615cfee91fd27cfaf7a5061d14daf2853aa8f012e927b98f919578"}, +] +ptyprocess = [ + {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, + {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, +] +py = [ + {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, + {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, +] +pycodestyle = [ + {file = "pycodestyle-2.8.0-py2.py3-none-any.whl", hash = "sha256:720f8b39dde8b293825e7ff02c475f3077124006db4f440dcbc9a20b76548a20"}, + {file = "pycodestyle-2.8.0.tar.gz", hash = "sha256:eddd5847ef438ea1c7870ca7eb78a9d47ce0cdb4851a5523949f2601d0cbbe7f"}, +] +pydocstyle = [ + {file = "pydocstyle-6.1.1-py3-none-any.whl", hash = "sha256:6987826d6775056839940041beef5c08cc7e3d71d63149b48e36727f70144dc4"}, + {file = "pydocstyle-6.1.1.tar.gz", hash = "sha256:1d41b7c459ba0ee6c345f2eb9ae827cab14a7533a88c5c6f7e94923f72df92dc"}, +] +pyflakes = [ + {file = "pyflakes-2.3.1-py2.py3-none-any.whl", hash = "sha256:7893783d01b8a89811dd72d7dfd4d84ff098e5eed95cfa8905b22bbffe52efc3"}, + {file = "pyflakes-2.3.1.tar.gz", hash = "sha256:f5bc8ecabc05bb9d291eb5203d6810b49040f6ff446a756326104746cc00c1db"}, +] +pygments = [ + {file = "Pygments-2.10.0-py3-none-any.whl", hash = "sha256:b8e67fe6af78f492b3c4b3e2970c0624cbf08beb1e493b2c99b9fa1b67a20380"}, + {file = "Pygments-2.10.0.tar.gz", hash = "sha256:f398865f7eb6874156579fdf36bc840a03cab64d1cde9e93d68f46a425ec52c6"}, +] +pyinstaller = [ + {file = "pyinstaller-4.5.1-py3-none-macosx_10_13_universal2.whl", hash = "sha256:ecc2baadeeefd2b6fbf39d13c65d4aa603afdda1c6aaaebc4577ba72893fee9e"}, + {file = "pyinstaller-4.5.1-py3-none-manylinux2014_aarch64.whl", hash = "sha256:4d848cd782ee0893d7ad9fe2bfe535206a79f0b6760cecc5f2add831258b9322"}, + {file = "pyinstaller-4.5.1-py3-none-manylinux2014_i686.whl", hash = "sha256:8f747b190e6ad30e2d2fd5da9a64636f61aac8c038c0b7f685efa92c782ea14f"}, + {file = "pyinstaller-4.5.1-py3-none-manylinux2014_x86_64.whl", hash = "sha256:c587da8f521a7ce1b9efb4e3d0117cd63c92dc6cedff24590aeef89372f53012"}, + {file = "pyinstaller-4.5.1-py3-none-win32.whl", hash = "sha256:fed9f5e4802769a416a8f2ca171c6be961d1861cc05a0b71d20dfe05423137e9"}, + {file = "pyinstaller-4.5.1-py3-none-win_amd64.whl", hash = "sha256:aae456205c68355f9597411090576bb31b614e53976b4c102d072bbe5db8392a"}, + {file = "pyinstaller-4.5.1.tar.gz", hash = "sha256:30733baaf8971902286a0ddf77e5499ac5f7bf8e7c39163e83d4f8c696ef265e"}, +] +pyinstaller-hooks-contrib = [ + {file = "pyinstaller-hooks-contrib-2021.3.tar.gz", hash = "sha256:169b09802a19f83593114821d6ba0416a05c7071ef0ca394f7bfb7e2c0c916c8"}, + {file = "pyinstaller_hooks_contrib-2021.3-py2.py3-none-any.whl", hash = "sha256:a52bc3834281266bbf77239cfc9521923336ca622f44f90924546ed6c6d3ad5e"}, +] +pylint = [ + {file = "pylint-2.11.1-py3-none-any.whl", hash = "sha256:0f358e221c45cbd4dad2a1e4b883e75d28acdcccd29d40c76eb72b307269b126"}, + {file = "pylint-2.11.1.tar.gz", hash = "sha256:2c9843fff1a88ca0ad98a256806c82c5a8f86086e7ccbdb93297d86c3f90c436"}, +] +pylint-celery = [ + {file = "pylint-celery-0.3.tar.gz", hash = "sha256:41e32094e7408d15c044178ea828dd524beedbdbe6f83f712c5e35bde1de4beb"}, +] +pylint-django = [ + {file = "pylint-django-2.4.4.tar.gz", hash = "sha256:f63f717169b0c2e4e19c28f1c32c28290647330184fcb7427805ae9b6994f3fc"}, + {file = "pylint_django-2.4.4-py3-none-any.whl", hash = "sha256:aff49d9602a39c027b4ed7521a041438893205918f405800063b7ff692b7371b"}, +] +pylint-flask = [ + {file = "pylint-flask-0.6.tar.gz", hash = "sha256:f4d97de2216bf7bfce07c9c08b166e978fe9f2725de2a50a9845a97de7e31517"}, +] +pylint-plugin-utils = [ + {file = "pylint-plugin-utils-0.6.tar.gz", hash = "sha256:57625dcca20140f43731311cd8fd879318bf45a8b0fd17020717a8781714a25a"}, + {file = "pylint_plugin_utils-0.6-py3-none-any.whl", hash = "sha256:2f30510e1c46edf268d3a195b2849bd98a1b9433229bb2ba63b8d776e1fc4d0a"}, +] +pymdown-extensions = [ + {file = "pymdown-extensions-9.1.tar.gz", hash = "sha256:74247f2c80f1d9e3c7242abe1c16317da36c6f26c7ad4b8a7f457f0ec20f0365"}, + {file = "pymdown_extensions-9.1-py3-none-any.whl", hash = "sha256:b03e66f91f33af4a6e7a0e20c740313522995f69a03d86316b1449766c473d0e"}, +] +pyparsing = [ + {file = "pyparsing-3.0.6-py3-none-any.whl", hash = "sha256:04ff808a5b90911829c55c4e26f75fa5ca8a2f5f36aa3a51f68e27033341d3e4"}, + {file = "pyparsing-3.0.6.tar.gz", hash = "sha256:d9bdec0013ef1eb5a84ab39a3b3868911598afa494f5faa038647101504e2b81"}, +] +pytest = [ + {file = "pytest-6.2.5-py3-none-any.whl", hash = "sha256:7310f8d27bc79ced999e760ca304d69f6ba6c6649c0b60fb0e04a4a77cacc134"}, + {file = "pytest-6.2.5.tar.gz", hash = "sha256:131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89"}, +] +pytest-cov = [ + {file = "pytest-cov-3.0.0.tar.gz", hash = "sha256:e7f0f5b1617d2210a2cabc266dfe2f4c75a8d32fb89eafb7ad9d06f6d076d470"}, + {file = "pytest_cov-3.0.0-py3-none-any.whl", hash = "sha256:578d5d15ac4a25e5f961c938b85a05b09fdaae9deef3bb6de9a6e766622ca7a6"}, +] +pytest-custom-exit-code = [ + {file = "pytest-custom_exit_code-0.3.0.tar.gz", hash = "sha256:51ffff0ee2c1ddcc1242e2ddb2a5fd02482717e33a2326ef330e3aa430244635"}, + {file = "pytest_custom_exit_code-0.3.0-py3-none-any.whl", hash = "sha256:6e0ce6e57ce3a583cb7e5023f7d1021e19dfec22be41d9ad345bae2fc61caf3b"}, +] +pytest-datadir = [ + {file = "pytest-datadir-1.3.1.tar.gz", hash = "sha256:d3af1e738df87515ee509d6135780f25a15959766d9c2b2dbe02bf4fb979cb18"}, + {file = "pytest_datadir-1.3.1-py2.py3-none-any.whl", hash = "sha256:1847ed0efe0bc54cac40ab3fba6d651c2f03d18dd01f2a582979604d32e7621e"}, +] +python-dateutil = [ + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, +] +pytkdocs = [ + {file = "pytkdocs-0.12.0-py3-none-any.whl", hash = "sha256:12cb4180d5eafc7819dba91142948aa7b85ad0a3ad0e956db1cdc6d6c5d0ef56"}, + {file = "pytkdocs-0.12.0.tar.gz", hash = "sha256:746905493ff79482ebc90816b8c397c096727a1da8214a0ccff662a8412e91b3"}, +] +pytzdata = [ + {file = "pytzdata-2020.1-py2.py3-none-any.whl", hash = "sha256:e1e14750bcf95016381e4d472bad004eef710f2d6417240904070b3d6654485f"}, + {file = "pytzdata-2020.1.tar.gz", hash = "sha256:3efa13b335a00a8de1d345ae41ec78dd11c9f8807f522d39850f2dd828681540"}, +] +pywin32-ctypes = [ + {file = "pywin32-ctypes-0.2.0.tar.gz", hash = "sha256:24ffc3b341d457d48e8922352130cf2644024a4ff09762a2261fd34c36ee5942"}, + {file = "pywin32_ctypes-0.2.0-py2.py3-none-any.whl", hash = "sha256:9dc2d991b3479cc2df15930958b674a48a227d5361d413827a4cfd0b5876fc98"}, +] +pyyaml = [ + {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, + {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"}, + {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"}, + {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"}, + {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"}, + {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"}, + {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"}, + {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"}, + {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"}, + {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"}, + {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"}, + {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"}, + {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"}, + {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"}, + {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"}, + {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, +] +pyyaml-env-tag = [ + {file = "pyyaml_env_tag-0.1-py3-none-any.whl", hash = "sha256:af31106dec8a4d68c60207c1886031cbf839b68aa7abccdb19868200532c2069"}, + {file = "pyyaml_env_tag-0.1.tar.gz", hash = "sha256:70092675bda14fdec33b31ba77e7543de9ddc88f2e5b99160396572d11525bdb"}, +] +requests = [ + {file = "requests-2.26.0-py2.py3-none-any.whl", hash = "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24"}, + {file = "requests-2.26.0.tar.gz", hash = "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"}, +] +requirements-detector = [ + {file = "requirements-detector-0.7.tar.gz", hash = "sha256:0d1e13e61ed243f9c3c86e6cbb19980bcb3a0e0619cde2ec1f3af70fdbee6f7b"}, +] +safety = [ + {file = "safety-1.10.3-py2.py3-none-any.whl", hash = "sha256:5f802ad5df5614f9622d8d71fedec2757099705c2356f862847c58c6dfe13e84"}, + {file = "safety-1.10.3.tar.gz", hash = "sha256:30e394d02a20ac49b7f65292d19d38fa927a8f9582cdfd3ad1adbbc66c641ad5"}, +] +semver = [ + {file = "semver-2.13.0-py2.py3-none-any.whl", hash = "sha256:ced8b23dceb22134307c1b8abfa523da14198793d9787ac838e70e29e77458d4"}, + {file = "semver-2.13.0.tar.gz", hash = "sha256:fa0fe2722ee1c3f57eac478820c3a5ae2f624af8264cbdf9000c980ff7f75e3f"}, +] +setoptconf-tmp = [ + {file = "setoptconf-tmp-0.3.1.tar.gz", hash = "sha256:e0480addd11347ba52f762f3c4d8afa3e10ad0affbc53e3ffddc0ca5f27d5778"}, + {file = "setoptconf_tmp-0.3.1-py3-none-any.whl", hash = "sha256:76035d5cd1593d38b9056ae12d460eca3aaa34ad05c315b69145e138ba80a745"}, +] +six = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] +smmap = [ + {file = "smmap-5.0.0-py3-none-any.whl", hash = "sha256:2aba19d6a040e78d8b09de5c57e96207b09ed71d8e55ce0959eeee6c8e190d94"}, + {file = "smmap-5.0.0.tar.gz", hash = "sha256:c840e62059cd3be204b0c9c9f74be2c09d5648eddd4580d9314c3ecde0b30936"}, +] +snowballstemmer = [ + {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, + {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, +] +stevedore = [ + {file = "stevedore-3.5.0-py3-none-any.whl", hash = "sha256:a547de73308fd7e90075bb4d301405bebf705292fa90a90fc3bcf9133f58616c"}, + {file = "stevedore-3.5.0.tar.gz", hash = "sha256:f40253887d8712eaa2bb0ea3830374416736dc8ec0e22f5a65092c1174c44335"}, +] +toml = [ + {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, + {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, +] +tomli = [ + {file = "tomli-1.2.2-py3-none-any.whl", hash = "sha256:f04066f68f5554911363063a30b108d2b5a5b1a010aa8b6132af78489fe3aade"}, + {file = "tomli-1.2.2.tar.gz", hash = "sha256:c6ce0015eb38820eaf32b5db832dbc26deb3dd427bd5f6556cf0acac2c214fee"}, +] +typing-extensions = [ + {file = "typing_extensions-4.0.0-py3-none-any.whl", hash = "sha256:829704698b22e13ec9eaf959122315eabb370b0884400e9818334d8b677023d9"}, + {file = "typing_extensions-4.0.0.tar.gz", hash = "sha256:2cdf80e4e04866a9b3689a51869016d36db0814d84b8d8a568d22781d45d27ed"}, +] +urllib3 = [ + {file = "urllib3-1.26.7-py2.py3-none-any.whl", hash = "sha256:c4fdf4019605b6e5423637e01bc9fe4daef873709a7973e195ceba0a62bbc844"}, + {file = "urllib3-1.26.7.tar.gz", hash = "sha256:4987c65554f7a2dbf30c18fd48778ef124af6fab771a377103da0585e2336ece"}, +] +watchdog = [ + {file = "watchdog-2.1.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:9693f35162dc6208d10b10ddf0458cc09ad70c30ba689d9206e02cd836ce28a3"}, + {file = "watchdog-2.1.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:aba5c812f8ee8a3ff3be51887ca2d55fb8e268439ed44110d3846e4229eb0e8b"}, + {file = "watchdog-2.1.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4ae38bf8ba6f39d5b83f78661273216e7db5b00f08be7592062cb1fc8b8ba542"}, + {file = "watchdog-2.1.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:ad6f1796e37db2223d2a3f302f586f74c72c630b48a9872c1e7ae8e92e0ab669"}, + {file = "watchdog-2.1.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:922a69fa533cb0c793b483becaaa0845f655151e7256ec73630a1b2e9ebcb660"}, + {file = "watchdog-2.1.6-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b2fcf9402fde2672545b139694284dc3b665fd1be660d73eca6805197ef776a3"}, + {file = "watchdog-2.1.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3386b367e950a11b0568062b70cc026c6f645428a698d33d39e013aaeda4cc04"}, + {file = "watchdog-2.1.6-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8f1c00aa35f504197561060ca4c21d3cc079ba29cf6dd2fe61024c70160c990b"}, + {file = "watchdog-2.1.6-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b52b88021b9541a60531142b0a451baca08d28b74a723d0c99b13c8c8d48d604"}, + {file = "watchdog-2.1.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8047da932432aa32c515ec1447ea79ce578d0559362ca3605f8e9568f844e3c6"}, + {file = "watchdog-2.1.6-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e92c2d33858c8f560671b448205a268096e17870dcf60a9bb3ac7bfbafb7f5f9"}, + {file = "watchdog-2.1.6-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:b7d336912853d7b77f9b2c24eeed6a5065d0a0cc0d3b6a5a45ad6d1d05fb8cd8"}, + {file = "watchdog-2.1.6-py3-none-manylinux2014_aarch64.whl", hash = "sha256:cca7741c0fcc765568350cb139e92b7f9f3c9a08c4f32591d18ab0a6ac9e71b6"}, + {file = "watchdog-2.1.6-py3-none-manylinux2014_armv7l.whl", hash = "sha256:25fb5240b195d17de949588628fdf93032ebf163524ef08933db0ea1f99bd685"}, + {file = "watchdog-2.1.6-py3-none-manylinux2014_i686.whl", hash = "sha256:be9be735f827820a06340dff2ddea1fb7234561fa5e6300a62fe7f54d40546a0"}, + {file = "watchdog-2.1.6-py3-none-manylinux2014_ppc64.whl", hash = "sha256:d0d19fb2441947b58fbf91336638c2b9f4cc98e05e1045404d7a4cb7cddc7a65"}, + {file = "watchdog-2.1.6-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:3becdb380d8916c873ad512f1701f8a92ce79ec6978ffde92919fd18d41da7fb"}, + {file = "watchdog-2.1.6-py3-none-manylinux2014_s390x.whl", hash = "sha256:ae67501c95606072aafa865b6ed47343ac6484472a2f95490ba151f6347acfc2"}, + {file = "watchdog-2.1.6-py3-none-manylinux2014_x86_64.whl", hash = "sha256:e0f30db709c939cabf64a6dc5babb276e6d823fd84464ab916f9b9ba5623ca15"}, + {file = "watchdog-2.1.6-py3-none-win32.whl", hash = "sha256:e02794ac791662a5eafc6ffeaf9bcc149035a0e48eb0a9d40a8feb4622605a3d"}, + {file = "watchdog-2.1.6-py3-none-win_amd64.whl", hash = "sha256:bd9ba4f332cf57b2c1f698be0728c020399ef3040577cde2939f2e045b39c1e5"}, + {file = "watchdog-2.1.6-py3-none-win_ia64.whl", hash = "sha256:a0f1c7edf116a12f7245be06120b1852275f9506a7d90227648b250755a03923"}, + {file = "watchdog-2.1.6.tar.gz", hash = "sha256:a36e75df6c767cbf46f61a91c70b3ba71811dfa0aca4a324d9407a06a8b7a2e7"}, +] +wrapt = [ + {file = "wrapt-1.13.3-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:e05e60ff3b2b0342153be4d1b597bbcfd8330890056b9619f4ad6b8d5c96a81a"}, + {file = "wrapt-1.13.3-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:85148f4225287b6a0665eef08a178c15097366d46b210574a658c1ff5b377489"}, + {file = "wrapt-1.13.3-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:2dded5496e8f1592ec27079b28b6ad2a1ef0b9296d270f77b8e4a3a796cf6909"}, + {file = "wrapt-1.13.3-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:e94b7d9deaa4cc7bac9198a58a7240aaf87fe56c6277ee25fa5b3aa1edebd229"}, + {file = "wrapt-1.13.3-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:498e6217523111d07cd67e87a791f5e9ee769f9241fcf8a379696e25806965af"}, + {file = "wrapt-1.13.3-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:ec7e20258ecc5174029a0f391e1b948bf2906cd64c198a9b8b281b811cbc04de"}, + {file = "wrapt-1.13.3-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:87883690cae293541e08ba2da22cacaae0a092e0ed56bbba8d018cc486fbafbb"}, + {file = "wrapt-1.13.3-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:f99c0489258086308aad4ae57da9e8ecf9e1f3f30fa35d5e170b4d4896554d80"}, + {file = "wrapt-1.13.3-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:6a03d9917aee887690aa3f1747ce634e610f6db6f6b332b35c2dd89412912bca"}, + {file = "wrapt-1.13.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:936503cb0a6ed28dbfa87e8fcd0a56458822144e9d11a49ccee6d9a8adb2ac44"}, + {file = "wrapt-1.13.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f9c51d9af9abb899bd34ace878fbec8bf357b3194a10c4e8e0a25512826ef056"}, + {file = "wrapt-1.13.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:220a869982ea9023e163ba915077816ca439489de6d2c09089b219f4e11b6785"}, + {file = "wrapt-1.13.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:0877fe981fd76b183711d767500e6b3111378ed2043c145e21816ee589d91096"}, + {file = "wrapt-1.13.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:43e69ffe47e3609a6aec0fe723001c60c65305784d964f5007d5b4fb1bc6bf33"}, + {file = "wrapt-1.13.3-cp310-cp310-win32.whl", hash = "sha256:78dea98c81915bbf510eb6a3c9c24915e4660302937b9ae05a0947164248020f"}, + {file = "wrapt-1.13.3-cp310-cp310-win_amd64.whl", hash = "sha256:ea3e746e29d4000cd98d572f3ee2a6050a4f784bb536f4ac1f035987fc1ed83e"}, + {file = "wrapt-1.13.3-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:8c73c1a2ec7c98d7eaded149f6d225a692caa1bd7b2401a14125446e9e90410d"}, + {file = "wrapt-1.13.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:086218a72ec7d986a3eddb7707c8c4526d677c7b35e355875a0fe2918b059179"}, + {file = "wrapt-1.13.3-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:e92d0d4fa68ea0c02d39f1e2f9cb5bc4b4a71e8c442207433d8db47ee79d7aa3"}, + {file = "wrapt-1.13.3-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:d4a5f6146cfa5c7ba0134249665acd322a70d1ea61732723c7d3e8cc0fa80755"}, + {file = "wrapt-1.13.3-cp35-cp35m-win32.whl", hash = "sha256:8aab36778fa9bba1a8f06a4919556f9f8c7b33102bd71b3ab307bb3fecb21851"}, + {file = "wrapt-1.13.3-cp35-cp35m-win_amd64.whl", hash = "sha256:944b180f61f5e36c0634d3202ba8509b986b5fbaf57db3e94df11abee244ba13"}, + {file = "wrapt-1.13.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:2ebdde19cd3c8cdf8df3fc165bc7827334bc4e353465048b36f7deeae8ee0918"}, + {file = "wrapt-1.13.3-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:610f5f83dd1e0ad40254c306f4764fcdc846641f120c3cf424ff57a19d5f7ade"}, + {file = "wrapt-1.13.3-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5601f44a0f38fed36cc07db004f0eedeaadbdcec90e4e90509480e7e6060a5bc"}, + {file = "wrapt-1.13.3-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:e6906d6f48437dfd80464f7d7af1740eadc572b9f7a4301e7dd3d65db285cacf"}, + {file = "wrapt-1.13.3-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:766b32c762e07e26f50d8a3468e3b4228b3736c805018e4b0ec8cc01ecd88125"}, + {file = "wrapt-1.13.3-cp36-cp36m-win32.whl", hash = "sha256:5f223101f21cfd41deec8ce3889dc59f88a59b409db028c469c9b20cfeefbe36"}, + {file = "wrapt-1.13.3-cp36-cp36m-win_amd64.whl", hash = "sha256:f122ccd12fdc69628786d0c947bdd9cb2733be8f800d88b5a37c57f1f1d73c10"}, + {file = "wrapt-1.13.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:46f7f3af321a573fc0c3586612db4decb7eb37172af1bc6173d81f5b66c2e068"}, + {file = "wrapt-1.13.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:778fd096ee96890c10ce96187c76b3e99b2da44e08c9e24d5652f356873f6709"}, + {file = "wrapt-1.13.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0cb23d36ed03bf46b894cfec777eec754146d68429c30431c99ef28482b5c1df"}, + {file = "wrapt-1.13.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:96b81ae75591a795d8c90edc0bfaab44d3d41ffc1aae4d994c5aa21d9b8e19a2"}, + {file = "wrapt-1.13.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:7dd215e4e8514004c8d810a73e342c536547038fb130205ec4bba9f5de35d45b"}, + {file = "wrapt-1.13.3-cp37-cp37m-win32.whl", hash = "sha256:47f0a183743e7f71f29e4e21574ad3fa95676136f45b91afcf83f6a050914829"}, + {file = "wrapt-1.13.3-cp37-cp37m-win_amd64.whl", hash = "sha256:fd76c47f20984b43d93de9a82011bb6e5f8325df6c9ed4d8310029a55fa361ea"}, + {file = "wrapt-1.13.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b73d4b78807bd299b38e4598b8e7bd34ed55d480160d2e7fdaabd9931afa65f9"}, + {file = "wrapt-1.13.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:ec9465dd69d5657b5d2fa6133b3e1e989ae27d29471a672416fd729b429eb554"}, + {file = "wrapt-1.13.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:dd91006848eb55af2159375134d724032a2d1d13bcc6f81cd8d3ed9f2b8e846c"}, + {file = "wrapt-1.13.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ae9de71eb60940e58207f8e71fe113c639da42adb02fb2bcbcaccc1ccecd092b"}, + {file = "wrapt-1.13.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:51799ca950cfee9396a87f4a1240622ac38973b6df5ef7a41e7f0b98797099ce"}, + {file = "wrapt-1.13.3-cp38-cp38-win32.whl", hash = "sha256:4b9c458732450ec42578b5642ac53e312092acf8c0bfce140ada5ca1ac556f79"}, + {file = "wrapt-1.13.3-cp38-cp38-win_amd64.whl", hash = "sha256:7dde79d007cd6dfa65afe404766057c2409316135cb892be4b1c768e3f3a11cb"}, + {file = "wrapt-1.13.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:981da26722bebb9247a0601e2922cedf8bb7a600e89c852d063313102de6f2cb"}, + {file = "wrapt-1.13.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:705e2af1f7be4707e49ced9153f8d72131090e52be9278b5dbb1498c749a1e32"}, + {file = "wrapt-1.13.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:25b1b1d5df495d82be1c9d2fad408f7ce5ca8a38085e2da41bb63c914baadff7"}, + {file = "wrapt-1.13.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:77416e6b17926d953b5c666a3cb718d5945df63ecf922af0ee576206d7033b5e"}, + {file = "wrapt-1.13.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:865c0b50003616f05858b22174c40ffc27a38e67359fa1495605f96125f76640"}, + {file = "wrapt-1.13.3-cp39-cp39-win32.whl", hash = "sha256:0a017a667d1f7411816e4bf214646d0ad5b1da2c1ea13dec6c162736ff25a374"}, + {file = "wrapt-1.13.3-cp39-cp39-win_amd64.whl", hash = "sha256:81bd7c90d28a4b2e1df135bfbd7c23aee3050078ca6441bead44c42483f9ebfb"}, + {file = "wrapt-1.13.3.tar.gz", hash = "sha256:1fea9cd438686e6682271d36f3481a9f3636195578bab9ca3382e2f5f01fc185"}, +] +zipp = [ + {file = "zipp-3.6.0-py3-none-any.whl", hash = "sha256:9fe5ea21568a0a70e50f273397638d39b03353731e6cbbb3fd8502a33fec40bc"}, + {file = "zipp-3.6.0.tar.gz", hash = "sha256:71c644c5369f4a6e07636f0aa966270449561fcea2e3d6747b8d23efaa9d7832"}, +] diff --git a/prospector.yaml b/prospector.yaml new file mode 100644 index 0000000..5a0a6d3 --- /dev/null +++ b/prospector.yaml @@ -0,0 +1,125 @@ +output-format: vscode +doc-warnings: true +strictness: none + +ignore-patterns: + - (^|/)\..+ + +# https://pylint.pycqa.org/en/latest/technical_reference/features.html +pylint: + run: true + disable: + # disables TODO warnings + - fixme +# !doc docstrings + - missing-module-docstring + - missing-class-docstring + - missing-function-docstring +# ! doc end of docstrings + # disables warnings about abstract methods not overridden + - abstract-method + # used when an ancestor class method has an __init__ method which is not called by a derived class. + - super-init-not-called + # either all return statements in a function should return an expression, or none of them should. + # - inconsistent-return-statements + # Used when an expression that is not a function call is assigned to nothing. Probably something else was intended. + # - expression-not-assigned + # Used when a line is longer than a given number of characters. + # - line-too-long + enable: + options: + max-locals: 15 + max-returns: 6 + max-branches: 12 + max-statements: 50 + max-parents: 7 + max-attributes: 20 + min-public-methods: 0 + max-public-methods: 25 + max-module-lines: 1000 + max-line-length: 99 + max-args: 8 + +mccabe: + run: true + options: + max-complexity: 10 + +# https://pep8.readthedocs.io/en/release-1.7.x/intro.html#error-codes +pep8: + run: true + options: + max-line-length: 99 + single-line-if-stmt: n + disable: + # line too long + - E501 + +pyroma: + run: false + disable: + - PYR19 + - PYR16 + +# https://pep257.readthedocs.io/en/latest/error_codes.html +# http://www.pydocstyle.org/en/6.1.1/error_codes.html +pep257: + disable: +# !doc docstrings + # # Missing docstring in public package + # - D104 + # # Missing docstring in __init__ + # - D107 + # # Missing docstring in public module + # - D100 + # # Missing docstring in public class + # - D101 + # # Missing docstring in public method + # - D102 + # # Missing docstring in public function + # - D103 + # # Missing docstring in magic method + # - D105 + # # One-line docstring should fit on one line with quotes + # - D200 + # # No blank lines allowed after function docstring + # - D202 + # # Multi-line docstring summary should start at the second line + # - D213 + # # First word of the docstring should not be This + # - D404 + # DEFAULT IGNORES + # 1 blank line required before class docstring + - D203 + # Multi-line docstring summary should start at the first line + - D212 +# !doc end of docstrings + # Section name should end with a newline + - D406 + # Missing dashed underline after section + - D407 + # Missing blank line after last section + - D413 + +# https://flake8.pycqa.org/en/latest/user/error-codes.html +pyflakes: + disable: + # module imported but unused + # - F401 + +dodgy: + run: true + +bandit: + run: true + # options: + # ignore assert warning + # - B101 + +mypy: + run: true + options: + # https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-type-hints-for-third-party-library + ignore-missing-imports: true + # https://mypy.readthedocs.io/en/stable/running_mypy.html#following-imports + follow-imports: normal diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..2e71aa4 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,61 @@ +[tool.poetry] +name = "tembo" +description = "A simple folder organiser for your work notes." +version = "0.0.8" +license = "ISC" +authors = ["dtomlinson "] +readme = "./README.md" +homepage = "https://tembo-pages.github.io/tembo-core/" +repository = "https://github.com/tembo-pages/tembo-core/" +documentation = "https://tembo-pages.github.io/tembo-core/" +keywords = ["notes", "organisation", "work"] + +[tool.poetry.dependencies] +python = "^3.8" +click = "^8.0.3" +pendulum = "^2.1.2" +Jinja2 = "^3.0.2" +# panaetius = "^2.3.2" +panaetius = { path = "../../panaetius", develop = true } + + +[tool.poetry.dev-dependencies] +pytest = "^6.2.5" +pytest-cov = "^3.0.0" +pytest-datadir = "^1.3.1" +pytest-custom-exit-code = "^0.3.0" +coverage = "^6.0.2" +prospector = { extras = ["with_bandit", "with_mypy"], version = "^1.5.1" } +duty = "^0.7.0" +pyinstaller = "^4.5.1" +isort = "^5.10.0" +mkdocs = "^1.2.3" +mkdocs-material = "^7.3.6" +mkdocstrings = "^0.16.2" +mkdocs-gen-files = "^0.3.3" +mkdocs-literate-nav = "^0.4.0" +mkdocs-coverage = "^0.2.4" +mkdocs-click = "^0.4.0" +mypy = "^0.910" +safety = "^1.10.3" +git-changelog = "^0.5.0" +Jinja2 = "^3.0.3" + +[build-system] +requires = ["poetry-core>=1.0.0"] +build-backend = "poetry.core.masonry.api" + +[tool.poetry.scripts] +"tembo" = "tembo.cli.cli:main" + +[tool.black] +line-length = 120 + +[tool.isort] +line_length = 120 +multi_line_output = 3 +force_single_line = false +balanced_wrapping = true +default_section = "THIRDPARTY" +known_first_party = "duty" +include_trailing_comma = true diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..cdc06cb --- /dev/null +++ b/requirements.txt @@ -0,0 +1,11 @@ +click==8.0.3; python_version >= "3.6" +colorama==0.4.4; python_version >= "3.6" and python_full_version < "3.0.0" and platform_system == "Windows" or platform_system == "Windows" and python_version >= "3.6" and python_full_version >= "3.5.0" +jinja2==3.0.3; python_version >= "3.6" +markupsafe==2.0.1; python_version >= "3.6" +panaetius @ /home/dtomlinson/git-repos/python/panaetius; python_version >= "3.7" and python_version < "4.0" +pendulum==2.1.2; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") +python-dateutil==2.8.2; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +pytzdata==2020.1; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +pyyaml==6.0; python_version >= "3.7" and python_version < "4.0" +six==1.16.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +toml==0.10.2; python_version >= "3.7" and python_full_version < "3.0.0" and python_version < "4.0" or python_version >= "3.7" and python_version < "4.0" and python_full_version >= "3.3.0" diff --git a/requirements_dev.txt b/requirements_dev.txt new file mode 100644 index 0000000..c7eec7c --- /dev/null +++ b/requirements_dev.txt @@ -0,0 +1,96 @@ +altgraph==0.17.2; sys_platform == "darwin" and python_version >= "3.6" +ansimarkup==1.5.0; python_version >= "3.6" +astroid==2.8.5; python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.1" +astunparse==1.6.3; python_full_version >= "3.6.1" and python_version >= "3.6" and python_version < "3.9" +atomicwrites==1.4.0; python_version >= "3.6" and python_full_version < "3.0.0" and sys_platform == "win32" or sys_platform == "win32" and python_version >= "3.6" and python_full_version >= "3.4.0" +attrs==21.2.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +bandit==1.7.1; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.5" +certifi==2021.10.8; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.5" +charset-normalizer==2.0.7; python_full_version >= "3.6.0" and python_version >= "3.5" +click==8.0.3; python_version >= "3.6" +colorama==0.4.4; platform_system == "Windows" and python_version >= "3.6" and python_full_version >= "3.6.1" and sys_platform == "win32" and python_version < "4.0" +coverage==6.1.2; python_version >= "3.6" +dodgy==0.2.1; python_full_version >= "3.6.1" and python_version < "4.0" +dparse==0.5.1; python_version >= "3.5" +duty==0.7.0; python_version >= "3.6" +failprint==0.8.0; python_version >= "3.6" +flake8-polyfill==1.0.2; python_full_version >= "3.6.1" and python_version < "4.0" +flake8==2.3.0; python_full_version >= "3.6.1" and python_version < "4.0" +future==0.18.2; sys_platform == "win32" and python_version >= "3.6" and python_full_version >= "3.6.0" +ghp-import==2.0.2; python_version >= "3.6" +git-changelog==0.5.0; python_full_version >= "3.6.2" +gitdb==4.0.9; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.7" +gitpython==3.1.24; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.7" +idna==3.3; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.5" +importlib-metadata==4.8.2; python_version < "3.10" and python_version >= "3.6" +iniconfig==1.1.1; python_version >= "3.6" +isort==5.10.1; python_full_version >= "3.6.1" and python_version < "4.0" +jinja2==3.0.3; python_version >= "3.6" +lazy-object-proxy==1.6.0; python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.1" +macholib==1.15.2; sys_platform == "darwin" and python_version >= "3.6" +markdown==3.3.6; python_version >= "3.7" and python_version < "4.0" +markupsafe==2.0.1; python_version >= "3.6" +mccabe==0.6.1; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.6" +mergedeep==1.3.4; python_version >= "3.6" +mkdocs-autorefs==0.3.0; python_version >= "3.6" and python_version < "4.0" +mkdocs-click==0.4.0; python_version >= "3.7" +mkdocs-coverage==0.2.4; python_full_version >= "3.6.1" +mkdocs-gen-files==0.3.3; python_version >= "3.7" and python_version < "4.0" +mkdocs-literate-nav==0.4.0; python_version >= "3.6" and python_version < "4.0" +mkdocs-material-extensions==1.0.3; python_version >= "3.6" +mkdocs-material==7.3.6 +mkdocs==1.2.3; python_version >= "3.6" +mkdocstrings==0.16.2; python_version >= "3.6" +mypy-extensions==0.4.3; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.5" +mypy==0.910; python_version >= "3.5" +packaging==21.3; python_version >= "3.6" +panaetius @ /home/dtomlinson/git-repos/python/panaetius; python_version >= "3.7" and python_version < "4.0" +pbr==5.8.0; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.6" +pefile==2021.9.3; sys_platform == "win32" and python_version >= "3.6" and python_full_version >= "3.6.0" +pendulum==2.1.2; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") +pep8-naming==0.10.0; python_full_version >= "3.6.1" and python_version < "4.0" +pep8==1.7.1; python_full_version >= "3.6.1" and python_version < "4.0" +platformdirs==2.4.0; python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.1" +pluggy==1.0.0; python_version >= "3.6" +prospector==1.5.1; python_full_version >= "3.6.1" and python_version < "4.0" +ptyprocess==0.7.0; sys_platform != "win32" and python_version >= "3.6" +py==1.11.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +pycodestyle==2.8.0; python_full_version >= "3.6.1" and python_version < "4.0" +pydocstyle==6.1.1; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.6" +pyflakes==2.3.1; python_full_version >= "3.6.1" and python_version < "4.0" +pygments==2.10.0; python_version >= "3.5" +pyinstaller-hooks-contrib==2021.3; python_version >= "3.6" +pyinstaller==4.5.1; python_version >= "3.6" +pylint-celery==0.3; python_full_version >= "3.6.1" and python_version < "4.0" +pylint-django==2.4.4; python_full_version >= "3.6.1" and python_version < "4.0" +pylint-flask==0.6; python_full_version >= "3.6.1" and python_version < "4.0" +pylint-plugin-utils==0.6; python_full_version >= "3.6.1" and python_version < "4.0" +pylint==2.11.1; python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.1" +pymdown-extensions==9.1; python_version >= "3.6" +pyparsing==3.0.6; python_version >= "3.6" +pytest-cov==3.0.0; python_version >= "3.6" +pytest-custom-exit-code==0.3.0; (python_version > "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") +pytest-datadir==1.3.1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") +pytest==6.2.5; python_version >= "3.6" +python-dateutil==2.8.2; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" +pytkdocs==0.12.0; python_full_version >= "3.6.1" and python_version >= "3.6" +pytzdata==2020.1; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" +pywin32-ctypes==0.2.0; sys_platform == "win32" and python_version >= "3.6" +pyyaml-env-tag==0.1; python_version >= "3.6" +pyyaml==6.0; python_version >= "3.7" and python_version < "4.0" and python_full_version >= "3.6.1" +requests==2.26.0; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.5" +requirements-detector==0.7; python_full_version >= "3.6.1" and python_version < "4.0" +safety==1.10.3; python_version >= "3.5" +semver==2.13.0; python_full_version >= "3.6.2" +setoptconf-tmp==0.3.1; python_full_version >= "3.6.1" and python_version < "4.0" +six==1.16.0; python_full_version >= "3.6.1" and python_version >= "3.6" and python_version < "3.9" +smmap==5.0.0; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.7" +snowballstemmer==2.2.0; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.6" +stevedore==3.5.0; python_full_version >= "3.6.1" and python_version < "4.0" and python_version >= "3.6" +toml==0.10.2; python_version >= "3.7" and python_version < "4.0" and python_full_version >= "3.6.1" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.6") and (python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.5") +tomli==1.2.2; python_version >= "3.6" +typing-extensions==4.0.0; python_full_version >= "3.6.1" and python_version < "3.10" and python_version >= "3.7" +urllib3==1.26.7; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version < "4" and python_version >= "3.5" +watchdog==2.1.6; python_version >= "3.6" +wrapt==1.13.3; python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.1" +zipp==3.6.0; python_version >= "3.6" diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..35ca0e1 --- /dev/null +++ b/setup.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +from setuptools import setup + +packages = \ +['tembo', 'tembo.cli', 'tembo.journal', 'tembo.utils'] + +package_data = \ +{'': ['*']} + +install_requires = \ +['Jinja2>=3.0.2,<4.0.0', + 'click>=8.0.3,<9.0.0', + 'panaetius>=2.3.2,<3.0.0', + 'pendulum>=2.1.2,<3.0.0'] + +entry_points = \ +{'console_scripts': ['tembo = tembo.cli.cli:main']} + +setup_kwargs = { + 'name': 'tembo', + 'version': '0.0.8', + 'description': 'A simple folder organiser for your work notes.', + 'long_description': '# Tembo\n\n\n\nA simple folder organiser for your work notes.\n\n![](https://img.shields.io/codecov/c/github/tembo-pages/tembo-core?style=flat-square)\n\n![Sonar Coverage](https://img.shields.io/sonar/coverage/tembo-pages_tembo-core?server=https%3A%2F%2Fsonarcloud.io&style=flat-square)\n![Sonar Tests](https://img.shields.io/sonar/tests/tembo-pages_tembo-core?compact_message&failed_label=failed&passed_label=passed&server=https%3A%2F%2Fsonarcloud.io&skipped_label=skipped&style=flat-square)\n![Sonar Tech Debt](https://img.shields.io/sonar/tech_debt/tembo-pages_tembo-core?server=https%3A%2F%2Fsonarcloud.io&style=flat-square)\n\n## config.yml\n\n```yaml\n# time tokens: https://strftime.org\ntembo:\n base_path: ~/tembo\n # template_path: ~/tembo/templates\n scopes:\n - name: scratchpad\n example: tembo new scratchpad\n path: "scratchpad/{d:%B_%Y}"\n filename: "{d:%B_%W}"\n extension: md\n template_filename: scratchpad.md.tpl\n - name: wtodo\n example: tembo new wtodo | directory is month_year, filename is month_week-of-year\n path: "wtodo/{d:%B_%Y}"\n filename: "week_{d:%W}"\n extension: todo\n template_filename: weekly.todo.tpl\n - name: meeting\n example: tembo new meeting $meeting_title\n path: "meetings/{d:%B_%y}"\n filename: "{d:%a_%d_%m_%y}-{input0}"\n extension: md\n template_filename: meeting.md.tpl\n - name: knowledge\n example: tembo new knowledge $project $filename\n path: "knowledge/{input0}"\n filename: "{input1}"\n extension: md\n template_filename: knowledge.md.tpl\n logging:\n level: INFO\n path: ~/tembo/.logs\n```\n\n## templates\n\n###\xa0knowledge\n\n```\n---\ncreated: {d:%d-%m-%Y}\n---\n\n# {input0} - {input1}.md\n```\n\n### meeting\n\n```\n---\ncreated: {d:%d-%m-%Y}\n---\n\n# {d:%A %d %B %Y} - {input0}\n\n## People\n\nHead:\n\nAttendees:\n\n## Actions\n\n\n## Notes\n\n```\n\n### scratchpad\n\n```\n---\ncreated: {d:%d-%m-%Y}\n---\n\n# Scratchpad - Week {d:%W} - {d:%B-%y}\n```\n\n### wtodo\n\n```\n---\ncreated: {d:%d-%m-%Y}\n---\n\nWeekly TODO | Week {d:%W} {d:%B}-{d:%Y}\n\nWork:\n\nDocumentation:\n```\n', + 'author': 'dtomlinson', + 'author_email': 'dtomlinson@panaetius.co.uk', + 'maintainer': None, + 'maintainer_email': None, + 'url': 'https://tembo-pages.github.io/tembo-core/', + 'packages': packages, + 'package_data': package_data, + 'install_requires': install_requires, + 'entry_points': entry_points, + 'python_requires': '>=3.8,<4.0', +} + + +setup(**setup_kwargs) diff --git a/sonar-project.properties b/sonar-project.properties new file mode 100644 index 0000000..e6d61ed --- /dev/null +++ b/sonar-project.properties @@ -0,0 +1,9 @@ +sonar.organization=tembo-pages +sonar.projectKey=tembo-pages_tembo-core + +sonar.sources=tembo +sonar.tests=tests + +sonar.python.version=3 +sonar.python.coverage.reportPaths=coverage.xml +sonar.python.xunit.reportPath=pytest.xml diff --git a/tembo/__init__.py b/tembo/__init__.py new file mode 100644 index 0000000..c2d3f48 --- /dev/null +++ b/tembo/__init__.py @@ -0,0 +1,10 @@ +""" +Tembo package. + +A simple folder organiser for your work notes. +""" + +# flake8: noqa + +from . import exceptions +from .journal.pages import PageCreatorOptions, ScopedPageCreator diff --git a/tembo/__main__.py b/tembo/__main__.py new file mode 100644 index 0000000..34480e9 --- /dev/null +++ b/tembo/__main__.py @@ -0,0 +1,12 @@ +""" +Entrypoint module. + +Used when using `python -m tembo` to invoke the CLI. +""" + +import sys + +from tembo.cli.cli import main + +if __name__ == "__main__": + sys.exit(main()) diff --git a/tembo/_version.py b/tembo/_version.py new file mode 100644 index 0000000..7c2d128 --- /dev/null +++ b/tembo/_version.py @@ -0,0 +1,3 @@ +"""Module containing the version of tembo.""" + +__version__ = "0.0.8" diff --git a/tembo/cli/__init__.py b/tembo/cli/__init__.py new file mode 100644 index 0000000..f05174b --- /dev/null +++ b/tembo/cli/__init__.py @@ -0,0 +1,31 @@ +"""Subpackage that contains the CLI application.""" + +import os +from typing import Any + +import panaetius +from panaetius.exceptions import LoggingDirectoryDoesNotExistException + +if (config_path := os.environ.get("TEMBO_CONFIG")) is not None: + CONFIG: Any = panaetius.Config("tembo", config_path, skip_header_init=True) +else: + CONFIG = panaetius.Config("tembo", "~/tembo/.config", skip_header_init=True) + + +panaetius.set_config(CONFIG, "base_path", "~/tembo") +panaetius.set_config(CONFIG, "template_path", "~/tembo/.templates") +panaetius.set_config(CONFIG, "scopes", {}) +panaetius.set_config(CONFIG, "logging.level", "DEBUG") +panaetius.set_config(CONFIG, "logging.path") + +try: + logger = panaetius.set_logger( + CONFIG, panaetius.SimpleLogger(logging_level=CONFIG.logging_level) + ) +except LoggingDirectoryDoesNotExistException: + _LOGGING_PATH = CONFIG.logging_path + CONFIG.logging_path = "" + logger = panaetius.set_logger( + CONFIG, panaetius.SimpleLogger(logging_level=CONFIG.logging_level) + ) + logger.warning("Logging directory %s does not exist", _LOGGING_PATH) diff --git a/tembo/cli/cli.py b/tembo/cli/cli.py new file mode 100644 index 0000000..52946a0 --- /dev/null +++ b/tembo/cli/cli.py @@ -0,0 +1,210 @@ +"""Submodule which contains the CLI implementation using Click.""" + +from __future__ import annotations + +import pathlib +from typing import Collection + +import click + +import tembo.cli +from tembo import exceptions +from tembo._version import __version__ +from tembo.journal import pages +from tembo.utils import Success + +CONTEXT_SETTINGS = dict(help_option_names=["-h", "--help"]) + + +@click.group(context_settings=CONTEXT_SETTINGS, options_metavar="") +@click.version_option( + __version__, + "-v", + "--version", + prog_name="Tembo", + message=f"Tembo v{__version__} 🐘", +) +def main(): + """Tembo - an organiser for work notes.""" + + +@click.command(options_metavar="", name="list") +def list_all(): + """List all scopes defined in the config.yml.""" + _all_scopes = [user_scope["name"] for user_scope in tembo.cli.CONFIG.scopes] + _all_scopes_joined = "', '".join(_all_scopes) + cli_message(f"{len(_all_scopes)} names found in config.yml: '{_all_scopes_joined}'") + raise SystemExit(0) + + +@click.command(options_metavar="") +@click.argument("scope", metavar="") +@click.argument( + "inputs", + nargs=-1, + metavar="", +) +@click.option( + "--dry-run", + is_flag=True, + default=False, + help="Show the full path of the page to be created without actually saving the page to disk " + "and exit.", +) +@click.option( + "--example", + is_flag=True, + default=False, + help="Show the example command in the config.yml if it exists and exit.", +) +def new(scope: str, inputs: Collection[str], dry_run: bool, example: bool): # noqa + """ + Create a new page. + + \b + `` The name of the scope in the config.yml. + \b + `` Any input token values that are defined in the config.yml for this scope. + Accepts multiple inputs separated by a space. + + \b + Example: + `tembo new meeting my_presentation` + """ + # check that the name exists in the config.yml + try: + _new_verify_name_exists(scope) + except ( + exceptions.ScopeNotFound, + exceptions.EmptyConfigYML, + exceptions.MissingConfigYML, + ) as tembo_exception: + cli_message(tembo_exception.args[0]) + raise SystemExit(1) from tembo_exception + + # get the scope configuration from the config.yml + try: + config_scope = _new_get_config_scope(scope) + except exceptions.MandatoryKeyNotFound as mandatory_key_not_found: + cli_message(mandatory_key_not_found.args[0]) + raise SystemExit(1) from mandatory_key_not_found + + # if --example flag, return the example to the user + _new_show_example(example, config_scope) + + # if the name is in the config.yml, create the scoped page + scoped_page = _new_create_scoped_page(config_scope, inputs) + + if dry_run: + cli_message(f"{scoped_page.path} will be created") + raise SystemExit(0) + + try: + result = scoped_page.save_to_disk() + if isinstance(result, Success): + cli_message(f"Saved {result.message} to disk") + raise SystemExit(0) + except exceptions.ScopedPageAlreadyExists as scoped_page_already_exists: + cli_message(f"File {scoped_page_already_exists}") + raise SystemExit(0) from scoped_page_already_exists + + +def _new_create_scoped_page(config_scope: dict, inputs: Collection[str]) -> pages.Page: + page_creator_options = pages.PageCreatorOptions( + base_path=tembo.cli.CONFIG.base_path, + template_path=tembo.cli.CONFIG.template_path, + page_path=config_scope["path"], + filename=config_scope["filename"], + extension=config_scope["extension"], + name=config_scope["name"], + example=config_scope["example"], + user_input=inputs, + template_filename=config_scope["template_filename"], + ) + try: + return pages.ScopedPageCreator(page_creator_options).create_page() + except exceptions.BasePathDoesNotExistError as base_path_does_not_exist_error: + cli_message(base_path_does_not_exist_error.args[0]) + raise SystemExit(1) from base_path_does_not_exist_error + except exceptions.TemplateFileNotFoundError as template_file_not_found_error: + cli_message(template_file_not_found_error.args[0]) + raise SystemExit(1) from template_file_not_found_error + except exceptions.MismatchedTokenError as mismatched_token_error: + if config_scope["example"] is not None: + cli_message( + f"Your tembo config.yml/template specifies {mismatched_token_error.expected}" + + f" input tokens, you gave {mismatched_token_error.given}. " + + f'Example: {config_scope["example"]}' + ) + raise SystemExit(1) from mismatched_token_error + cli_message( + f"Your tembo config.yml/template specifies {mismatched_token_error.expected}" + + f" input tokens, you gave {mismatched_token_error.given}" + ) + + raise SystemExit(1) from mismatched_token_error + + +def _new_verify_name_exists(scope: str) -> None: + _name_found = scope in [user_scope["name"] for user_scope in tembo.cli.CONFIG.scopes] + if _name_found: + return + if len(tembo.cli.CONFIG.scopes) > 0: + # if the name is missing in the config.yml, raise error + raise exceptions.ScopeNotFound(f"Scope {scope} not found in config.yml") + # raise error if no config.yml found + if pathlib.Path(tembo.cli.CONFIG.config_path).exists(): + raise exceptions.EmptyConfigYML( + f"Config.yml found in {tembo.cli.CONFIG.config_path} is empty" + ) + raise exceptions.MissingConfigYML(f"No config.yml found in {tembo.cli.CONFIG.config_path}") + + +def _new_get_config_scope(scope: str) -> dict: + config_scope = {} + optional_keys = ["example", "template_filename"] + for option in [ + "name", + "path", + "filename", + "extension", + "example", + "template_filename", + ]: + try: + config_scope.update( + { + option: str(user_scope[option]) + for user_scope in tembo.cli.CONFIG.scopes + if user_scope["name"] == scope + } + ) + except KeyError as key_error: + if key_error.args[0] in optional_keys: + config_scope.update({key_error.args[0]: None}) + continue + raise exceptions.MandatoryKeyNotFound(f"Key {key_error} not found in config.yml") + return config_scope + + +def _new_show_example(example: bool, config_scope: dict) -> None: + if example: + if isinstance(config_scope["example"], str): + cli_message(f'Example for {config_scope["name"]}: {config_scope["example"]}') + else: + cli_message("No example in config.yml") + raise SystemExit(0) + + +def cli_message(message: str) -> None: + """ + Relay a message to the user using the CLI. + + Args: + message (str): THe message to be displayed. + """ + click.echo(f"[TEMBO] {message} 🐘") + + +main.add_command(new) +main.add_command(list_all) diff --git a/tembo/exceptions.py b/tembo/exceptions.py new file mode 100644 index 0000000..54cf2e0 --- /dev/null +++ b/tembo/exceptions.py @@ -0,0 +1,51 @@ +"""Module containing custom exceptions.""" + + +class MismatchedTokenError(Exception): + """ + Raised when the number of input tokens does not match the user config. + + Attributes: + expected (int): number of input tokens in the user config. + given (int): number of input tokens passed in. + """ + + def __init__(self, expected: int, given: int) -> None: + """ + Initialise the exception. + + Args: + expected (int): number of input tokens in the user config. + given (int): number of input tokens passed in. + """ + self.expected = expected + self.given = given + super().__init__() + + +class BasePathDoesNotExistError(Exception): + """Raised if the base path does not exist.""" + + +class TemplateFileNotFoundError(Exception): + """Raised if the template file does not exist.""" + + +class ScopedPageAlreadyExists(Exception): + """Raised if the scoped page file already exists.""" + + +class MissingConfigYML(Exception): + """Raised if the config.yml file is missing.""" + + +class EmptyConfigYML(Exception): + """Raised if the config.yml file is empty.""" + + +class ScopeNotFound(Exception): + """Raised if the scope does not exist in the config.yml.""" + + +class MandatoryKeyNotFound(Exception): + """Raised if a mandatory key is not found in the config.yml.""" diff --git a/tembo/journal/__init__.py b/tembo/journal/__init__.py new file mode 100644 index 0000000..0fd835e --- /dev/null +++ b/tembo/journal/__init__.py @@ -0,0 +1,5 @@ +"""Subpackage containing the logic to create Tembo journals & pages.""" + +# flake8: noqa + +from tembo.journal import pages diff --git a/tembo/journal/pages.py b/tembo/journal/pages.py new file mode 100644 index 0000000..73760fa --- /dev/null +++ b/tembo/journal/pages.py @@ -0,0 +1,480 @@ +"""Submodule containing the factories & page objects to create Tembo pages.""" + +from __future__ import annotations + +import pathlib +import re +from abc import ABCMeta, abstractmethod +from dataclasses import dataclass +from typing import Collection, Optional + +import jinja2 +import pendulum +from jinja2.exceptions import TemplateNotFound + +import tembo.utils +from tembo import exceptions + + +@dataclass +class PageCreatorOptions: + """ + Options [dataclass][dataclasses.dataclass] to create a Page. + + This is passed to an implemented instance of [PageCreator][tembo.journal.pages.PageCreator] + + Attributes: + base_path (str): The base path. + page_path (str): The path of the page relative to the base path. + filename (str): The filename of the page. + extension (str): The extension of the page. + name (str): The name of the scope. + user_input (Collection[str] | None, optional): User input tokens. + example (str | None, optional): User example command. + template_path (str | None, optional): The path which contains the templates. This should + be the full path and not relative to the base path. + template_filename (str | None, optional): The template filename with extension relative + to the template path. + """ + + base_path: str + page_path: str + filename: str + extension: str + name: str + user_input: Optional[Collection[str]] = None + example: Optional[str] = None + template_path: Optional[str] = None + template_filename: Optional[str] = None + + +class PageCreator: + """ + A PageCreator factory base class. + + This factory should implement methods to create [Page][tembo.journal.pages.Page] objects. + + !!! abstract + This factory is an abstract base class and should be implemented for each + [Page][tembo.journal.pages.Page] type. + + The private methods + + - `_check_base_path_exists()` + - `_convert_base_path_to_path()` + - `_load_template()` + + are not abstract and are shared between all [Page][tembo.journal.pages.Page] types. + """ + + @abstractmethod + def __init__(self, options: PageCreatorOptions) -> None: + """ + When implemented this should initialise the `PageCreator` factory. + + Args: + options (PageCreatorOptions): An instance of + [PageCreatorOptions][tembo.journal.pages.PageCreatorOptions] + + !!! abstract + This method is abstract and should be implemented for each + [Page][tembo.journal.pages.Page] type. + """ + raise NotImplementedError + + @property + @abstractmethod + def options(self) -> PageCreatorOptions: + """ + When implemented this should return the `PageCreatorOptions` on the class. + + Returns: + PageCreatorOptions: the instance of + [PageCreatorOptions][tembo.journal.pages.PageCreatorOptions] set on the class. + + !!! abstract + This method is abstract and should be implemented for each + [Page][tembo.journal.pages.Page] type. + """ + raise NotImplementedError + + @abstractmethod + def create_page(self) -> Page: + """ + When implemented this should create a `Page` object. + + Returns: + Page: an implemented instance of [Page][tembo.journal.pages.Page] such as + [ScopedPage][tembo.journal.pages.ScopedPage]. + + !!! abstract + This method is abstract and should be implemented for each + [Page][tembo.journal.pages.Page] type. + """ + raise NotImplementedError + + def _check_base_path_exists(self) -> None: + """ + Check that the base path exists. + + Raises: + exceptions.BasePathDoesNotExistError: raised if the base path does not exist. + """ + if not pathlib.Path(self.options.base_path).expanduser().exists(): + raise exceptions.BasePathDoesNotExistError( + f"Tembo base path of {self.options.base_path} does not exist." + ) + + def _convert_base_path_to_path(self) -> pathlib.Path: + """ + Convert the `base_path` from a `str` to a `pathlib.Path` object. + + Returns: + pathlib.Path: the `base_path` as a `pathlib.Path` object. + """ + path_to_file = ( + pathlib.Path(self.options.base_path).expanduser() + / pathlib.Path(self.options.page_path.replace(" ", "_")).expanduser() + / self.options.filename.replace(" ", "_") + ) + # check for existing `.` in the extension + extension = ( + self.options.extension[1:] + if self.options.extension[0] == "." + else self.options.extension + ) + # return path with a file + return path_to_file.with_suffix(f".{extension}") + + def _load_template(self) -> str: + """ + Load the template file. + + Raises: + exceptions.TemplateFileNotFoundError: raised if the template file is specified but + not found. + + Returns: + str: the contents of the template file. + """ + if self.options.template_filename is None: + return "" + if self.options.template_path is not None: + converted_template_path = pathlib.Path(self.options.template_path).expanduser() + else: + converted_template_path = ( + pathlib.Path(self.options.base_path).expanduser() / ".templates" + ) + + file_loader = jinja2.FileSystemLoader(converted_template_path) + env = jinja2.Environment(loader=file_loader, autoescape=True) + + try: + loaded_template = env.get_template(self.options.template_filename) + except TemplateNotFound as template_not_found: + _template_file = f"{converted_template_path}/{template_not_found.args[0]}" + raise exceptions.TemplateFileNotFoundError( + f"Template file {_template_file} does not exist." + ) from template_not_found + return loaded_template.render() + + +class ScopedPageCreator(PageCreator): + """ + Factory to create a scoped page. + + Attributes: + base_path (str): base path of tembo. + page_path (str): path of the page relative to the base path. + filename (str): filename relative to the page path. + extension (str): extension of file. + """ + + def __init__(self, options: PageCreatorOptions) -> None: + """ + Initialise a `ScopedPageCreator` factory. + + Args: + options (PageCreatorOptions): An instance of + [PageCreatorOptions][tembo.journal.pages.PageCreatorOptions]. + """ + self._all_input_tokens: list[str] = [] + self._options = options + + @property + def options(self) -> PageCreatorOptions: + """ + Return the `PageCreatorOptions` instance set on the factory. + + Returns: + PageCreatorOptions: + An instance of [PageCreatorOptions][tembo.journal.pages.PageCreatorOptions]. + """ + return self._options + + def create_page(self) -> Page: + """ + Create a [ScopedPage][tembo.journal.pages.ScopedPage] object. + + This method will + + - Check the `base_path` exists + - Verify the input tokens match the number defined in the `config.yml` + - Substitue the input tokens in the filepath + - Load the template contents and substitue the input tokens + + Raises: + exceptions.MismatchedTokenError: Raises + [MismatchedTokenError][tembo.exceptions.MismatchedTokenError] if the number of + input tokens does not match the number of unique input tokens defined. + exceptions.BasePathDoesNotExistError: Raises + [BasePathDoesNotExistError][tembo.exceptions.BasePathDoesNotExistError] if the + base path does not exist. + exceptions.TemplateFileNotFoundError: Raises + [TemplateFileNotFoundError][tembo.exceptions.TemplateFileNotFoundError] if the + template file is specified but not found. + + + Returns: + Page: A [ScopedPage][tembo.journal.pages.ScopedPage] object using the + `PageCreatorOptions`. + """ + try: + self._check_base_path_exists() + except exceptions.BasePathDoesNotExistError as base_path_does_not_exist_error: + raise base_path_does_not_exist_error + self._all_input_tokens = self._get_input_tokens() + try: + self._verify_input_tokens() + except exceptions.MismatchedTokenError as mismatched_token_error: + raise mismatched_token_error + + path = self._convert_base_path_to_path() + path = pathlib.Path(self._substitute_tokens(str(path))) + + try: + template_contents = self._load_template() + except exceptions.TemplateFileNotFoundError as template_not_found_error: + raise template_not_found_error + if self.options.template_filename is not None: + template_contents = self._substitute_tokens(template_contents) + + return ScopedPage(path, template_contents) + + def _get_input_tokens(self) -> list[str]: + """Get the input tokens from the path & user template.""" + path = str( + pathlib.Path( + self.options.base_path, + self.options.page_path, + self.options.filename, + ) + .expanduser() + .with_suffix(f".{self.options.extension}") + ) + template_contents = self._load_template() + # get the input tokens from both the path and the template + all_input_tokens = [] + for tokenified_string in (path, template_contents): + all_input_tokens.extend(re.findall(r"(\{input\d*\})", tokenified_string)) + return sorted(list(set(all_input_tokens))) + + def _verify_input_tokens(self) -> None: + """ + Verify the input tokens. + + The number of input tokens should match the number of unique input tokens defined in the + path and the user's template. + + Raises: + exceptions.MismatchedTokenError: Raises + [MismatchedTokenError][tembo.exceptions.MismatchedTokenError] if the number of + input tokens does not match the number of unique input tokens defined. + """ + if len(self._all_input_tokens) > 0 and self.options.user_input is None: + raise exceptions.MismatchedTokenError(expected=len(self._all_input_tokens), given=0) + if self.options.user_input is None: + return + if len(self._all_input_tokens) != len(self.options.user_input): + raise exceptions.MismatchedTokenError( + expected=len(self._all_input_tokens), + given=len(self.options.user_input), + ) + + def _substitute_tokens(self, tokenified_string: str) -> str: + """For a tokened string, substitute input, name and date tokens.""" + tokenified_string = self.__substitute_input_tokens(tokenified_string) + tokenified_string = self.__substitute_name_tokens(tokenified_string) + tokenified_string = self.__substitute_date_tokens(tokenified_string) + return tokenified_string + + def __substitute_input_tokens(self, tokenified_string: str) -> str: + """ + Substitue the input tokens in a `str` with the user input. + + Args: + tokenified_string (str): a string with input tokens. + + Returns: + str: the string with the input tokens replaced by the user input. + + Examples: + A `user_input` of `("monthly_meeting",)` with a `tokenified_string` of + `/meetings/{input0}/` results in a string of `/meetings/monthly_meeting/` + """ + if self.options.user_input is not None: + for input_value, extracted_token in zip( + self.options.user_input, self._all_input_tokens + ): + tokenified_string = tokenified_string.replace( + extracted_token, input_value.replace(" ", "_") + ) + return tokenified_string + + def __substitute_name_tokens(self, tokenified_string: str) -> str: + """Find any `{name}` tokens and substitute for the name value in a `str`.""" + name_extraction = re.findall(r"(\{name\})", tokenified_string) + for extracted_input in name_extraction: + tokenified_string = tokenified_string.replace(extracted_input, self.options.name) + return tokenified_string + + @staticmethod + def __substitute_date_tokens(tokenified_string: str) -> str: + """Find any {d:%d-%M-%Y} tokens in a `str`.""" + # extract the full token string + date_extraction_token = re.findall(r"(\{d\:[^}]*\})", tokenified_string) + for extracted_token in date_extraction_token: + # extract the inner %d-%M-%Y only + strftime_value = re.match(r"\{d\:([^\}]*)\}", extracted_token) + if strftime_value is not None: + strftime_value = strftime_value.group(1) + if isinstance(strftime_value, str): + tokenified_string = tokenified_string.replace( + extracted_token, pendulum.now().strftime(strftime_value) + ) + return tokenified_string + + +class Page(metaclass=ABCMeta): + """ + Abstract Page class. + + This interface is used to define a `Page` object. + + A `Page` represents a note/page that will be saved to disk. + + !!! abstract + This object is an abstract base class and should be implemented for each `Page` type. + """ + + @abstractmethod + def __init__(self, path: pathlib.Path, page_content: str) -> None: + """ + When implemented this should initalise a Page object. + + Args: + path (pathlib.Path): the full path of the page including the filename as a + [Path][pathlib.Path]. + page_content (str): the contents of the page. + + !!! abstract + This method is abstract and should be implemented for each `Page` type. + """ + raise NotImplementedError + + @property + @abstractmethod + def path(self) -> pathlib.Path: + """ + When implemented this should return the full path of the page including the filename. + + Returns: + pathlib.Path: the path as a [Path][pathlib.Path] object. + + !!! abstract + This property is abstract and should be implemented for each `Page` type. + """ + raise NotImplementedError + + @abstractmethod + def save_to_disk(self) -> tembo.utils.Success: + """ + When implemented this should save the page to disk. + + Returns: + tembo.utils.Success: A Tembo [Success][tembo.utils.__init__.Success] object. + + !!! abstract + This method is abstract and should be implemented for each `Page` type. + """ + raise NotImplementedError + + +class ScopedPage(Page): + """ + A page that uses substitute tokens. + + Attributes: + path (pathlib.Path): a [Path][pathlib.Path] object of the page's filepath including the + filename. + page_content (str): the content of the page from the template. + """ + + def __init__(self, path: pathlib.Path, page_content: str) -> None: + """ + Initalise a scoped page object. + + Args: + path (pathlib.Path): a [Path][pathlib.Path] object of the page's filepath including + the filename. + page_content (str): the content of the page from the template. + """ + self._path = path + self.page_content = page_content + + def __str__(self) -> str: + """ + Return a `str` representation of a `ScopedPage`. + + Examples: + ``` + >>> str(ScopedPage(Path("/home/bob/tembo/meetings/my_meeting_0.md"), "")) + ScopedPage("/home/bob/tembo/meetings/my_meeting_0.md") + ``` + + Returns: + str: The `ScopedPage` as a `str`. + """ + return f'ScopedPage("{self.path}")' + + @property + def path(self) -> pathlib.Path: + """ + Return the full path of the page. + + Returns: + pathlib.path: The full path of the page as a [Path][pathlib.Path] object. + """ + return self._path + + def save_to_disk(self) -> tembo.utils.Success: + """ + Save the scoped page to disk and write the `page_content`. + + Raises: + exceptions.ScopedPageAlreadyExists: If the page already exists a + [ScopedPageAlreadyExists][tembo.exceptions.ScopedPageAlreadyExists] exception + is raised. + + Returns: + tembo.utils.Success: A [Success][tembo.utils.__init__.Success] with the path of the + ScopedPage as the message. + """ + # create the parent directories + scoped_page_file = pathlib.Path(self.path) + scoped_page_file.parents[0].mkdir(parents=True, exist_ok=True) + if scoped_page_file.exists(): + raise exceptions.ScopedPageAlreadyExists(f"{self.path} already exists") + with scoped_page_file.open("w", encoding="utf-8") as scoped_page: + scoped_page.write(self.page_content) + return tembo.utils.Success(str(self.path)) diff --git a/tembo/utils/__init__.py b/tembo/utils/__init__.py new file mode 100644 index 0000000..d4a75bb --- /dev/null +++ b/tembo/utils/__init__.py @@ -0,0 +1,18 @@ +"""Subpackage containing utility objects.""" + +from dataclasses import dataclass + + +@dataclass +class Success: + """ + A Tembo success object. + + This is returned from [Page][tembo.journal.pages.ScopedPage] methods such as + [save_to_disk()][tembo.journal.pages.ScopedPage.save_to_disk] + + Attributes: + message (str): A success message. + """ + + message: str diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_cli/__init__.py b/tests/test_cli/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_cli/data/config/empty/config.yml b/tests/test_cli/data/config/empty/config.yml new file mode 100644 index 0000000..5f28270 --- /dev/null +++ b/tests/test_cli/data/config/empty/config.yml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/tests/test_cli/data/config/missing_keys/config.yml b/tests/test_cli/data/config/missing_keys/config.yml new file mode 100644 index 0000000..6f6a2f8 --- /dev/null +++ b/tests/test_cli/data/config/missing_keys/config.yml @@ -0,0 +1,5 @@ +tembo: + scopes: + - name: some_scope + path: "some_scope" + extension: md diff --git a/tests/test_cli/data/config/missing_template/config.yml b/tests/test_cli/data/config/missing_template/config.yml new file mode 100644 index 0000000..abb09f7 --- /dev/null +++ b/tests/test_cli/data/config/missing_template/config.yml @@ -0,0 +1,8 @@ +tembo: + scopes: + - name: some_scope + example: tembo new some_scope + path: some_scope + filename: "{name}" + extension: md + template_filename: some_nonexistent_template.md.tpl diff --git a/tests/test_cli/data/config/optional_keys/config.yml b/tests/test_cli/data/config/optional_keys/config.yml new file mode 100644 index 0000000..2af3099 --- /dev/null +++ b/tests/test_cli/data/config/optional_keys/config.yml @@ -0,0 +1,6 @@ +tembo: + scopes: + - name: some_scope + path: "some_scope" + filename: "{name}" + extension: md diff --git a/tests/test_cli/data/config/success/config.yml b/tests/test_cli/data/config/success/config.yml new file mode 100644 index 0000000..6db5753 --- /dev/null +++ b/tests/test_cli/data/config/success/config.yml @@ -0,0 +1,16 @@ +tembo: + scopes: + - name: some_scope + example: tembo new some_scope + path: "some_scope" + filename: "{name}" + extension: md + - name: some_scope_no_example + path: "some_scope" + filename: "{name}" + extension: md + - name: another_some_scope + example: tembo new another_some_scope + path: "another_some_scope" + filename: "{name}" + extension: md diff --git a/tests/test_cli/data/some_scope/some_scope.md b/tests/test_cli/data/some_scope/some_scope.md new file mode 100644 index 0000000..ce7e948 --- /dev/null +++ b/tests/test_cli/data/some_scope/some_scope.md @@ -0,0 +1 @@ +already exists diff --git a/tests/test_cli/test_cli.py b/tests/test_cli/test_cli.py new file mode 100644 index 0000000..00fe9f0 --- /dev/null +++ b/tests/test_cli/test_cli.py @@ -0,0 +1,303 @@ +import importlib +import os +import pathlib + +import pytest + +import tembo.cli +from tembo.cli.cli import new, list_all + + +def test_new_dry_run(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "success") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + scope = "some_scope" + dry_run = "--dry-run" + + # act + with pytest.raises(SystemExit) as system_exit: + new([scope, dry_run]) + + # assert + assert system_exit.value.code == 0 + assert ( + capsys.readouterr().out + == f"[TEMBO] {tmpdir}/some_scope/some_scope.md will be created 🐘\n" + ) + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_new_success(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "success") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + scoped_page_file = pathlib.Path(tmpdir / "some_scope" / "some_scope").with_suffix( + ".md" + ) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_scope"]) + + # assert + assert scoped_page_file.exists() + assert system_exit.value.code == 0 + assert capsys.readouterr().out == f"[TEMBO] Saved {scoped_page_file} to disk 🐘\n" + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_new_success_already_exists(shared_datadir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "success") + os.environ["TEMBO_BASE_PATH"] = str(shared_datadir) + importlib.reload(tembo.cli) + scoped_page_file = pathlib.Path( + shared_datadir / "some_scope" / "some_scope" + ).with_suffix(".md") + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_scope"]) + + # assert + assert scoped_page_file.exists() + assert system_exit.value.code == 0 + assert ( + capsys.readouterr().out == f"[TEMBO] File {scoped_page_file} already exists 🐘\n" + ) + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_new_scope_not_found(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "success") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + scoped_page_file = pathlib.Path(tmpdir / "some_scope" / "some_scope").with_suffix( + ".md" + ) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_nonexistent_scope"]) + + # assert + assert not scoped_page_file.exists() + assert system_exit.value.code == 1 + assert ( + capsys.readouterr().out + == "[TEMBO] Scope some_nonexistent_scope not found in config.yml 🐘\n" + ) + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_new_empty_config(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "empty") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_nonexistent_scope"]) + + # assert + assert system_exit.value.code == 1 + assert ( + capsys.readouterr().out + == f"[TEMBO] Config.yml found in {shared_datadir}/config/empty is empty 🐘\n" + ) + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_new_missing_config(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "missing") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_nonexistent_scope"]) + + # assert + assert system_exit.value.code == 1 + assert ( + capsys.readouterr().out + == f"[TEMBO] No config.yml found in {shared_datadir}/config/missing 🐘\n" + ) + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_new_missing_mandatory_key(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "missing_keys") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_scope"]) + + # assert + assert system_exit.value.code == 1 + assert ( + capsys.readouterr().out == "[TEMBO] Key 'filename' not found in config.yml 🐘\n" + ) + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +@pytest.mark.parametrize( + "path,message", + [ + ("success", "[TEMBO] Example for some_scope: tembo new some_scope 🐘\n"), + ("optional_keys", "[TEMBO] No example in config.yml 🐘\n"), + ], +) +def test_new_show_example(path, message, shared_datadir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / path) + importlib.reload(tembo.cli) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_scope", "--example"]) + + # assert + assert system_exit.value.code == 0 + assert capsys.readouterr().out == message + + # cleanup + del os.environ["TEMBO_CONFIG"] + + +def test_new_base_path_does_not_exist(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "success") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir / "nonexistent" / "path") + importlib.reload(tembo.cli) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_scope"]) + + # assert + assert system_exit.value.code == 1 + assert ( + capsys.readouterr().out + == f"[TEMBO] Tembo base path of {tmpdir}/nonexistent/path does not exist. 🐘\n" + ) + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_new_template_file_does_not_exist(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "missing_template") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + os.environ["TEMBO_TEMPLATE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_scope"]) + + # assert + assert ( + capsys.readouterr().out + == f"[TEMBO] Template file {tmpdir}/some_nonexistent_template.md.tpl does not exist. 🐘\n" + ) + assert system_exit.value.code == 1 + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_TEMPLATE_PATH"] + + +def test_new_mismatched_tokens_with_example(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "success") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_scope", "input0", "input1"]) + + # assert + assert system_exit.value.code == 1 + assert capsys.readouterr().out == "[TEMBO] Your tembo config.yml/template specifies 0 input tokens, you gave 2. Example: tembo new some_scope 🐘\n" + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_new_mismatched_tokens_without_example(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "success") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + + # act + with pytest.raises(SystemExit) as system_exit: + new(["some_scope_no_example", "input0", "input1"]) + + # assert + assert system_exit.value.code == 1 + assert capsys.readouterr().out == "[TEMBO] Your tembo config.yml/template specifies 0 input tokens, you gave 2 🐘\n" + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] + + +def test_list_all_success(shared_datadir, tmpdir, capsys): + # arrange + os.environ["TEMBO_CONFIG"] = str(shared_datadir / "config" / "success") + os.environ["TEMBO_BASE_PATH"] = str(tmpdir) + importlib.reload(tembo.cli) + scoped_page_file = pathlib.Path(tmpdir / "some_scope" / "some_scope").with_suffix( + ".md" + ) + + # act + with pytest.raises(SystemExit) as system_exit: + list_all([]) + + # assert + assert system_exit.value.code == 0 + assert ( + capsys.readouterr().out + == "[TEMBO] 3 names found in config.yml: 'some_scope', 'some_scope_no_example', 'another_some_scope' 🐘\n" + ) + + # cleanup + del os.environ["TEMBO_CONFIG"] + del os.environ["TEMBO_BASE_PATH"] diff --git a/tests/test_journal/test_pages.py b/tests/test_journal/test_pages.py new file mode 100644 index 0000000..399c6c8 --- /dev/null +++ b/tests/test_journal/test_pages.py @@ -0,0 +1,388 @@ +from datetime import date +import pathlib + +import pytest + +from tembo import PageCreatorOptions, ScopedPageCreator +from tembo import exceptions +from tembo.utils import Success + + +DATE_TODAY = date.today().strftime("%d-%m-%Y") + + +def test_create_page_base_path_does_not_exist(tmpdir): + # arrange + base_path = str(tmpdir / "nonexistent" / "path") + options = PageCreatorOptions( + base_path=base_path, + page_path="", + filename="", + extension="", + name="", + user_input=None, + example=None, + template_filename=None, + template_path=None, + ) + + # act + with pytest.raises( + exceptions.BasePathDoesNotExistError + ) as base_path_does_not_exist_error: + scoped_page = ScopedPageCreator(options).create_page() + + # assert + assert ( + str(base_path_does_not_exist_error.value) + == f"Tembo base path of {base_path} does not exist." + ) + + +@pytest.mark.parametrize("template_path", [(None), ("/nonexistent/path")]) +def test_create_page_template_file_does_not_exist(template_path, tmpdir): + # arrange + options = PageCreatorOptions( + base_path=str(tmpdir), + page_path="some_path", + filename="some_filename", + extension="some_extension", + name="some_name", + user_input=None, + example=None, + template_filename="template.md.tpl", + template_path=template_path, + ) + + # act + with pytest.raises( + exceptions.TemplateFileNotFoundError + ) as template_file_not_found_error: + scoped_page = ScopedPageCreator(options).create_page() + + # assert + if template_path is None: + assert str(template_file_not_found_error.value) == ( + f"Template file {options.base_path}/.templates/{options.template_filename} does not exist." + ) + else: + assert str(template_file_not_found_error.value) == ( + f"Template file {template_path}/{options.template_filename} does not exist." + ) + + +def test_create_page_already_exists(datadir): + # arrange + options = PageCreatorOptions( + base_path=str(datadir), + page_path="does_exist", + filename="some_note", + extension="md", + name="some_name", + user_input=None, + example=None, + template_filename=None, + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) / options.page_path / options.filename + ).with_suffix(f".{options.extension}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + with pytest.raises(exceptions.ScopedPageAlreadyExists) as page_already_exists: + result = scoped_page.save_to_disk() + + # assert + assert scoped_page_file.exists() + assert str(page_already_exists.value) == f"{scoped_page_file} already exists" + with scoped_page_file.open("r", encoding="utf-8") as scoped_page_contents: + assert scoped_page_contents.readlines() == ["this file already exists\n"] + + +def test_create_page_without_template(tmpdir): + # arrange + options = PageCreatorOptions( + base_path=str(tmpdir), + page_path="some_path", + filename="some_filename", + extension="some_extension", + name="some_name", + user_input=None, + example=None, + template_filename=None, + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) / options.page_path / options.filename + ).with_suffix(f".{options.extension}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + result = scoped_page.save_to_disk() + + # assert + assert scoped_page_file.exists() + assert isinstance(result, Success) + assert result.message == str(scoped_page_file) + with scoped_page_file.open("r", encoding="utf-8") as scoped_page_contents: + assert scoped_page_contents.readlines() == [] + + +def test_create_page_with_template(datadir, caplog): + # arrange + options = PageCreatorOptions( + base_path=str(datadir), + page_path="some_path", + filename="some_note", + extension="md", + name="some_name", + user_input=None, + example=None, + template_filename="some_template_no_tokens.md.tpl", + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) / options.page_path / options.filename + ).with_suffix(f".{options.extension}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + result = scoped_page.save_to_disk() + + # assert + assert scoped_page_file.exists() + assert isinstance(result, Success) + assert result.message == str(scoped_page_file) + with scoped_page_file.open("r", encoding="utf-8") as scoped_page_contents: + assert scoped_page_contents.readlines() == [ + "scoped page file\n", + "\n", + "no tokens", + ] + + +@pytest.mark.parametrize( + "user_input,template_filename,page_contents", + [ + (None, "some_template_date_tokens.md.tpl", f"some date token: {DATE_TODAY}"), + ( + ("first_input", "second_input"), + "some_template_input_tokens.md.tpl", + "some input tokens second_input first_input", + ), + (None, "some_template_name_tokens.md.tpl", "some name token some_name"), + ], +) +def test_create_tokened_page_tokens_in_template( + datadir, caplog, user_input, template_filename, page_contents +): + # arrange + options = PageCreatorOptions( + base_path=str(datadir), + page_path="some_path", + filename="some_note", + extension="md", + name="some_name", + user_input=user_input, + example=None, + template_filename=template_filename, + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) / options.page_path / options.filename + ).with_suffix(f".{options.extension}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + result = scoped_page.save_to_disk() + + # assert + assert scoped_page_file.exists() + assert isinstance(result, Success) + assert result.message == str(scoped_page_file) + + with scoped_page_file.open("r", encoding="utf-8") as scoped_page_contents: + assert scoped_page_contents.readline() == page_contents + + +@pytest.mark.parametrize( + "user_input,filename,tokened_filename", + [ + (None, "date_token_{d:%d-%m-%Y}", f"date_token_{DATE_TODAY}"), + (None, "name_token_{name}", "name_token_some_name"), + ( + ("first_input", "second input"), + "input_token_{input1}_{input0}", + "input_token_second_input_first_input", + ), + ], +) +def test_create_tokened_page_tokens_in_filename( + datadir, caplog, user_input, filename, tokened_filename +): + # arrange + options = PageCreatorOptions( + base_path=str(datadir), + page_path="some_path", + filename=filename, + extension="md", + name="some_name", + user_input=user_input, + example=None, + template_filename=None, + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) / options.page_path / tokened_filename + ).with_suffix(f".{options.extension}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + result = scoped_page.save_to_disk() + + # assert + assert scoped_page_file.exists() + assert isinstance(result, Success) + assert result.message == str(scoped_page_file) + + +def test_create_tokened_page_input_tokens_preserve_order(datadir, caplog): + # arrange + tokened_filename = "input_token_fourth_input_first_input" + options = PageCreatorOptions( + base_path=str(datadir), + page_path="some_path", + filename="input_token_{input3}_{input0}", + extension="md", + name="some_name", + user_input=("first_input", "second_input", "third_input", "fourth_input"), + example=None, + template_filename="some_template_input_tokens_preserve_order.md.tpl", + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) / options.page_path / tokened_filename + ).with_suffix(f".{options.extension}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + result = scoped_page.save_to_disk() + + # assert + assert scoped_page_file.exists() + assert isinstance(result, Success) + assert result.message == str(scoped_page_file) + with scoped_page_file.open(mode="r", encoding="utf-8") as scoped_page_contents: + assert scoped_page_contents.readline() == "third_input second_input" + + +@pytest.mark.parametrize( + "user_input,expected,given", + [ + (None, 3, 0), + (("first_input", "second_input"), 3, 2), + (("first_input", "second_input", "third_input", "fourth_input"), 3, 4), + ], +) +def test_create_page_mismatched_tokens(tmpdir, user_input, expected, given): + # arrange + options = PageCreatorOptions( + base_path=str(tmpdir), + page_path="some_path", + filename="input_token_{input0}_{input1}_{input2}", + extension="md", + name="some_name", + user_input=user_input, + example=None, + template_filename=None, + template_path=None, + ) + + # act + with pytest.raises(exceptions.MismatchedTokenError) as mismatched_token_error: + scoped_page = ScopedPageCreator(options).create_page() + + # assert + assert mismatched_token_error.value.expected == expected + assert mismatched_token_error.value.given == given + + +def test_create_page_spaces_in_path(tmpdir, caplog): + # arrange + options = PageCreatorOptions( + base_path=str(tmpdir), + page_path="some path with a space", + filename="some filename with a space", + extension="md", + name="some_name", + user_input=None, + example=None, + template_filename=None, + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) + / options.page_path.replace(" ", "_") + / options.filename.replace(" ", "_") + ).with_suffix(f".{options.extension}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + result = scoped_page.save_to_disk() + + # assert + assert scoped_page_file.exists() + assert isinstance(result, Success) + assert result.message == str(scoped_page_file) + + +def test_create_page_dot_in_extension(tmpdir, caplog): + # arrange + options = PageCreatorOptions( + base_path=str(tmpdir), + page_path="some_path", + filename="some_filename", + extension=".md", + name="some_name", + user_input=None, + example=None, + template_filename=None, + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) / options.page_path / options.filename + ).with_suffix(f".{options.extension[1:]}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + result = scoped_page.save_to_disk() + + # assert + assert scoped_page_file.exists() + assert isinstance(result, Success) + assert result.message == str(scoped_page_file) + + +def test_create_page_str_representation(tmpdir): + # arrange + options = PageCreatorOptions( + base_path=str(tmpdir), + page_path="some_path", + filename="some_filename", + extension="md", + name="some_name", + user_input=None, + example=None, + template_filename=None, + template_path=None, + ) + scoped_page_file = ( + pathlib.Path(options.base_path) / options.page_path / options.filename + ).with_suffix(f".{options.extension}") + + # act + scoped_page = ScopedPageCreator(options).create_page() + + # assert + assert str(scoped_page) == f"ScopedPage(\"{scoped_page_file}\")" diff --git a/tests/test_journal/test_pages/.templates/some_template_date_tokens.md.tpl b/tests/test_journal/test_pages/.templates/some_template_date_tokens.md.tpl new file mode 100644 index 0000000..da47289 --- /dev/null +++ b/tests/test_journal/test_pages/.templates/some_template_date_tokens.md.tpl @@ -0,0 +1 @@ +some date token: {d:%d-%m-%Y} diff --git a/tests/test_journal/test_pages/.templates/some_template_input_tokens.md.tpl b/tests/test_journal/test_pages/.templates/some_template_input_tokens.md.tpl new file mode 100644 index 0000000..18bcc20 --- /dev/null +++ b/tests/test_journal/test_pages/.templates/some_template_input_tokens.md.tpl @@ -0,0 +1 @@ +some input tokens {input1} {input0} diff --git a/tests/test_journal/test_pages/.templates/some_template_input_tokens_preserve_order.md.tpl b/tests/test_journal/test_pages/.templates/some_template_input_tokens_preserve_order.md.tpl new file mode 100644 index 0000000..7d43d68 --- /dev/null +++ b/tests/test_journal/test_pages/.templates/some_template_input_tokens_preserve_order.md.tpl @@ -0,0 +1 @@ +{input2} {input1} diff --git a/tests/test_journal/test_pages/.templates/some_template_name_tokens.md.tpl b/tests/test_journal/test_pages/.templates/some_template_name_tokens.md.tpl new file mode 100644 index 0000000..77ecade --- /dev/null +++ b/tests/test_journal/test_pages/.templates/some_template_name_tokens.md.tpl @@ -0,0 +1 @@ +some name token {name} diff --git a/tests/test_journal/test_pages/.templates/some_template_no_tokens.md.tpl b/tests/test_journal/test_pages/.templates/some_template_no_tokens.md.tpl new file mode 100644 index 0000000..6a2f5e1 --- /dev/null +++ b/tests/test_journal/test_pages/.templates/some_template_no_tokens.md.tpl @@ -0,0 +1,3 @@ +scoped page file + +no tokens diff --git a/tests/test_journal/test_pages/does_exist/some_note.md b/tests/test_journal/test_pages/does_exist/some_note.md new file mode 100644 index 0000000..cc0459b --- /dev/null +++ b/tests/test_journal/test_pages/does_exist/some_note.md @@ -0,0 +1 @@ +this file already exists

h+x6vYBa>E_xuOwu@YTXw1}X0p8? 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%0AtB9Vxz~nXvd)%$Q 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