Spaces:
Runtime error
Runtime error
Commit
·
1768d92
0
Parent(s):
initial commit
Browse files- .flake8 +12 -0
- .github/dependabot.yml +14 -0
- .github/release.yml +11 -0
- .github/workflows/merge-dependabot.yml +16 -0
- .github/workflows/test.yml +62 -0
- .gitignore +129 -0
- .vscode/extensions.json +8 -0
- .vscode/settings.json +12 -0
- LICENSE +21 -0
- Makefile +53 -0
- README.md +1 -0
- frontend/.eslintrc.cjs +31 -0
- frontend/.gitignore +24 -0
- frontend/README.md +47 -0
- frontend/build.js +30 -0
- frontend/package-lock.json +0 -0
- frontend/package.json +28 -0
- frontend/public/vite.svg +1 -0
- frontend/src/App.svelte +14 -0
- frontend/src/app.css +80 -0
- frontend/src/assets/svelte.svg +1 -0
- frontend/src/main.ts +8 -0
- frontend/src/vite-env.d.ts +2 -0
- frontend/svelte.config.js +7 -0
- frontend/tsconfig.json +20 -0
- frontend/tsconfig.node.json +9 -0
- frontend/vite.config.ts +18 -0
- poetry.lock +704 -0
- poetry.toml +2 -0
- pyproject.toml +30 -0
- zeno-evals-hub/__init__.py +0 -0
- zeno-evals-hub/frontend/index.html +28 -0
- zeno-evals-hub/runner.py +34 -0
.flake8
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[flake8]
|
| 2 |
+
extend-ignore = E203
|
| 3 |
+
max-line-length = 88
|
| 4 |
+
exclude =
|
| 5 |
+
# No need to traverse our git directory
|
| 6 |
+
.git,
|
| 7 |
+
# There's no value in checking cache directories
|
| 8 |
+
__pycache__,
|
| 9 |
+
# This contains our built documentation
|
| 10 |
+
build,
|
| 11 |
+
# This contains builds of flake8 that we don't want to check
|
| 12 |
+
dist,
|
.github/dependabot.yml
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version: 2
|
| 2 |
+
updates:
|
| 3 |
+
- package-ecosystem: "github-actions"
|
| 4 |
+
directory: "/"
|
| 5 |
+
schedule:
|
| 6 |
+
interval: "monthly"
|
| 7 |
+
- package-ecosystem: "pip"
|
| 8 |
+
directory: "/"
|
| 9 |
+
schedule:
|
| 10 |
+
interval: "weekly"
|
| 11 |
+
- package-ecosystem: "npm"
|
| 12 |
+
directory: "/frontend/"
|
| 13 |
+
schedule:
|
| 14 |
+
interval: "weekly"
|
.github/release.yml
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
changelog:
|
| 2 |
+
categories:
|
| 3 |
+
- title: 🏕 Features
|
| 4 |
+
labels:
|
| 5 |
+
- "*"
|
| 6 |
+
exclude:
|
| 7 |
+
labels:
|
| 8 |
+
- dependencies
|
| 9 |
+
- title: 👒 Dependencies
|
| 10 |
+
labels:
|
| 11 |
+
- dependencies
|
.github/workflows/merge-dependabot.yml
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
name: Auto-merge Dependabot PRs
|
| 2 |
+
on:
|
| 3 |
+
schedule:
|
| 4 |
+
- cron: "0 * * * *"
|
| 5 |
+
jobs:
|
| 6 |
+
auto_merge:
|
| 7 |
+
name: Auto-merge Dependabot PRs
|
| 8 |
+
|
| 9 |
+
runs-on: ubuntu-latest
|
| 10 |
+
|
| 11 |
+
steps:
|
| 12 |
+
- uses: akheron/dependabot-cron-action@v1
|
| 13 |
+
with:
|
| 14 |
+
token: ${{ secrets.GITHUB_TOKEN }}
|
| 15 |
+
auto-merge: "minor"
|
| 16 |
+
merge-method: "squash"
|
.github/workflows/test.yml
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
name: tests
|
| 2 |
+
|
| 3 |
+
on:
|
| 4 |
+
push:
|
| 5 |
+
branches:
|
| 6 |
+
- main
|
| 7 |
+
pull_request:
|
| 8 |
+
|
| 9 |
+
jobs:
|
| 10 |
+
test:
|
| 11 |
+
runs-on: ubuntu-latest
|
| 12 |
+
|
| 13 |
+
steps:
|
| 14 |
+
- uses: actions/checkout@v3
|
| 15 |
+
- uses: actions/setup-node@v3
|
| 16 |
+
- uses: actions/setup-python@v4
|
| 17 |
+
with:
|
| 18 |
+
python-version: 3.9
|
| 19 |
+
|
| 20 |
+
- name: Install Poetry
|
| 21 |
+
uses: snok/install-poetry@v1.3.3
|
| 22 |
+
with:
|
| 23 |
+
virtualenvs-in-project: true
|
| 24 |
+
virtualenvs-path: ~/.virtualenvs
|
| 25 |
+
|
| 26 |
+
- name: Cache Poetry virtualenv
|
| 27 |
+
uses: actions/cache@v3.3.1
|
| 28 |
+
id: cache-poetry
|
| 29 |
+
with:
|
| 30 |
+
path: ~/.virtualenvs
|
| 31 |
+
key: poetry-${{ hashFiles('**/poetry.lock') }}
|
| 32 |
+
restore-keys: |
|
| 33 |
+
poetry-${{ hashFiles('**/poetry.lock') }}
|
| 34 |
+
- name: Install Poetry Dependencies
|
| 35 |
+
if: steps.cache-poetry.outputs.cache-hit != 'true'
|
| 36 |
+
run: poetry install --no-interaction --no-root
|
| 37 |
+
|
| 38 |
+
- name: Cache NPM packages
|
| 39 |
+
uses: actions/cache@v3.3.1
|
| 40 |
+
id: cache-npm
|
| 41 |
+
with:
|
| 42 |
+
path: ~/frontend/node_modules
|
| 43 |
+
key: npm-${{ hashFiles('~/frontend/**/package.lock') }}
|
| 44 |
+
restore-keys: |
|
| 45 |
+
npm-${{ hashFiles('~/frontend/**/package.lock') }}
|
| 46 |
+
|
| 47 |
+
- name: Install NPM packages
|
| 48 |
+
if: steps.cache-npm.outputs.cache-hit != 'true'
|
| 49 |
+
run: |
|
| 50 |
+
cd frontend/
|
| 51 |
+
npm i
|
| 52 |
+
|
| 53 |
+
- name: Build frontend
|
| 54 |
+
run: |
|
| 55 |
+
cd frontend/
|
| 56 |
+
npm run build
|
| 57 |
+
|
| 58 |
+
- name: Lint
|
| 59 |
+
run: make lint
|
| 60 |
+
|
| 61 |
+
- name: Check types
|
| 62 |
+
run: make typecheck
|
.gitignore
ADDED
|
@@ -0,0 +1,129 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Byte-compiled / optimized / DLL files
|
| 2 |
+
__pycache__/
|
| 3 |
+
*.py[cod]
|
| 4 |
+
*$py.class
|
| 5 |
+
|
| 6 |
+
# C extensions
|
| 7 |
+
*.so
|
| 8 |
+
|
| 9 |
+
# Distribution / packaging
|
| 10 |
+
.Python
|
| 11 |
+
build/
|
| 12 |
+
develop-eggs/
|
| 13 |
+
dist/
|
| 14 |
+
downloads/
|
| 15 |
+
eggs/
|
| 16 |
+
.eggs/
|
| 17 |
+
lib/
|
| 18 |
+
lib64/
|
| 19 |
+
parts/
|
| 20 |
+
sdist/
|
| 21 |
+
var/
|
| 22 |
+
wheels/
|
| 23 |
+
pip-wheel-metadata/
|
| 24 |
+
share/python-wheels/
|
| 25 |
+
*.egg-info/
|
| 26 |
+
.installed.cfg
|
| 27 |
+
*.egg
|
| 28 |
+
MANIFEST
|
| 29 |
+
|
| 30 |
+
# PyInstaller
|
| 31 |
+
# Usually these files are written by a python script from a template
|
| 32 |
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
| 33 |
+
*.manifest
|
| 34 |
+
*.spec
|
| 35 |
+
|
| 36 |
+
# Installer logs
|
| 37 |
+
pip-log.txt
|
| 38 |
+
pip-delete-this-directory.txt
|
| 39 |
+
|
| 40 |
+
# Unit test / coverage reports
|
| 41 |
+
htmlcov/
|
| 42 |
+
.tox/
|
| 43 |
+
.nox/
|
| 44 |
+
.coverage
|
| 45 |
+
.coverage.*
|
| 46 |
+
.cache
|
| 47 |
+
nosetests.xml
|
| 48 |
+
coverage.xml
|
| 49 |
+
*.cover
|
| 50 |
+
*.py,cover
|
| 51 |
+
.hypothesis/
|
| 52 |
+
.pytest_cache/
|
| 53 |
+
|
| 54 |
+
# Translations
|
| 55 |
+
*.mo
|
| 56 |
+
*.pot
|
| 57 |
+
|
| 58 |
+
# Django stuff:
|
| 59 |
+
*.log
|
| 60 |
+
local_settings.py
|
| 61 |
+
db.sqlite3
|
| 62 |
+
db.sqlite3-journal
|
| 63 |
+
|
| 64 |
+
# Flask stuff:
|
| 65 |
+
instance/
|
| 66 |
+
.webassets-cache
|
| 67 |
+
|
| 68 |
+
# Scrapy stuff:
|
| 69 |
+
.scrapy
|
| 70 |
+
|
| 71 |
+
# Sphinx documentation
|
| 72 |
+
docs/_build/
|
| 73 |
+
|
| 74 |
+
# PyBuilder
|
| 75 |
+
target/
|
| 76 |
+
|
| 77 |
+
# Jupyter Notebook
|
| 78 |
+
.ipynb_checkpoints
|
| 79 |
+
|
| 80 |
+
# IPython
|
| 81 |
+
profile_default/
|
| 82 |
+
ipython_config.py
|
| 83 |
+
|
| 84 |
+
# pyenv
|
| 85 |
+
.python-version
|
| 86 |
+
|
| 87 |
+
# pipenv
|
| 88 |
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
| 89 |
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
| 90 |
+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
| 91 |
+
# install all needed dependencies.
|
| 92 |
+
#Pipfile.lock
|
| 93 |
+
|
| 94 |
+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
|
| 95 |
+
__pypackages__/
|
| 96 |
+
|
| 97 |
+
# Celery stuff
|
| 98 |
+
celerybeat-schedule
|
| 99 |
+
celerybeat.pid
|
| 100 |
+
|
| 101 |
+
# SageMath parsed files
|
| 102 |
+
*.sage.py
|
| 103 |
+
|
| 104 |
+
# Environments
|
| 105 |
+
.env
|
| 106 |
+
.venv
|
| 107 |
+
env/
|
| 108 |
+
venv/
|
| 109 |
+
ENV/
|
| 110 |
+
env.bak/
|
| 111 |
+
venv.bak/
|
| 112 |
+
|
| 113 |
+
# Spyder project settings
|
| 114 |
+
.spyderproject
|
| 115 |
+
.spyproject
|
| 116 |
+
|
| 117 |
+
# Rope project settings
|
| 118 |
+
.ropeproject
|
| 119 |
+
|
| 120 |
+
# mkdocs documentation
|
| 121 |
+
/site
|
| 122 |
+
|
| 123 |
+
# mypy
|
| 124 |
+
.mypy_cache/
|
| 125 |
+
.dmypy.json
|
| 126 |
+
dmypy.json
|
| 127 |
+
|
| 128 |
+
# Pyre type checker
|
| 129 |
+
.pyre/
|
.vscode/extensions.json
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"recommendations": [
|
| 3 |
+
"svelte.svelte-vscode",
|
| 4 |
+
"ms-python.vscode-pylance",
|
| 5 |
+
"ms-python.python",
|
| 6 |
+
"njpwerner.autodocstring"
|
| 7 |
+
]
|
| 8 |
+
}
|
.vscode/settings.json
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"python.defaultInterpreterPath": ".venv/bin/python",
|
| 3 |
+
"python.formatting.provider": "black",
|
| 4 |
+
"python.linting.flake8Enabled": true,
|
| 5 |
+
"autoDocstring.docstringFormat": "google",
|
| 6 |
+
"editor.wordWrapColumn": 88,
|
| 7 |
+
"eslint.validate": ["javascript", "javascriptreact", "svelte"],
|
| 8 |
+
"python.testing.pytestEnabled": true,
|
| 9 |
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
| 10 |
+
"python.analysis.typeCheckingMode": "basic",
|
| 11 |
+
"editor.formatOnSave": true
|
| 12 |
+
}
|
LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) 2023 Zeno
|
| 4 |
+
|
| 5 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 6 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 7 |
+
in the Software without restriction, including without limitation the rights
|
| 8 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 9 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 10 |
+
furnished to do so, subject to the following conditions:
|
| 11 |
+
|
| 12 |
+
The above copyright notice and this permission notice shall be included in all
|
| 13 |
+
copies or substantial portions of the Software.
|
| 14 |
+
|
| 15 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 16 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 17 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 18 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 19 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 20 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 21 |
+
SOFTWARE.
|
Makefile
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
all: lint typecheck clean
|
| 2 |
+
|
| 3 |
+
.PHONY: install
|
| 4 |
+
install:
|
| 5 |
+
@echo "==> 📦 Installing"
|
| 6 |
+
@cd frontend && npm i && npm run build
|
| 7 |
+
@poetry install
|
| 8 |
+
|
| 9 |
+
.PHONY: lint
|
| 10 |
+
lint:
|
| 11 |
+
@echo "==> 👕 Linting"
|
| 12 |
+
@poetry check
|
| 13 |
+
@poetry run black zeno-evals-hub/
|
| 14 |
+
@poetry run usort format zeno-evals-hub/
|
| 15 |
+
@poetry run flake8 zeno-evals-hub --statistics
|
| 16 |
+
@cd frontend && npm run lint
|
| 17 |
+
|
| 18 |
+
.PHONY: typecheck
|
| 19 |
+
typecheck:
|
| 20 |
+
@echo "==> ✅ Type checks"
|
| 21 |
+
@poetry run mypy -p zeno-evals-hub
|
| 22 |
+
@poetry run pyright zeno-evals-hub
|
| 23 |
+
@cd frontend && npm run check
|
| 24 |
+
|
| 25 |
+
.PHONY: build
|
| 26 |
+
build:
|
| 27 |
+
@echo "==> 👷♀️ Build"
|
| 28 |
+
@cd frontend && npm run build
|
| 29 |
+
@cd frontend && node build.js
|
| 30 |
+
@mv zeno-evals-hub/frontend/index.html zeno-evals-hub/frontend/index_og.html
|
| 31 |
+
@mv zeno-evals-hub/frontend/index_tmp.html zeno-evals-hub/frontend/index.html
|
| 32 |
+
@poetry build -v
|
| 33 |
+
@rm zeno-evals-hub/frontend/index.html
|
| 34 |
+
@mv zeno-evals-hub/frontend/index_og.html zeno-evals-hub/frontend/index.html
|
| 35 |
+
|
| 36 |
+
.PHONY: clean
|
| 37 |
+
clean:
|
| 38 |
+
@rm -rf dist
|
| 39 |
+
@rm -rf ./.zeno-evals-hub_cache
|
| 40 |
+
@find . -type d -name '.mypy_cache' -exec rm -rf {} +
|
| 41 |
+
@find . -type d -name '__pycache__' -exec rm -rf {} +
|
| 42 |
+
@find . -type d -name '*pytest_cache*' -exec rm -rf {} +
|
| 43 |
+
@find . -type f -name "*.py[co]" -exec rm -rf {} +
|
| 44 |
+
@find . -type d -name '*.ipynb_checkpoints' -exec rm -r {} +
|
| 45 |
+
|
| 46 |
+
.PHONY: publish
|
| 47 |
+
publish:
|
| 48 |
+
@echo "==> 🚀 Publishing"
|
| 49 |
+
@git commit -am "chore: bump version to $(shell poetry version -s)"
|
| 50 |
+
@git tag "v$(shell poetry version -s)"
|
| 51 |
+
@make build
|
| 52 |
+
@poetry publish
|
| 53 |
+
@git push && git push --tags
|
README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
# Dashboard for exploring OpenAI Evals results
|
frontend/.eslintrc.cjs
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
module.exports = {
|
| 2 |
+
parser: "@typescript-eslint/parser",
|
| 3 |
+
plugins: ["svelte3", "@typescript-eslint"],
|
| 4 |
+
env: {
|
| 5 |
+
es6: true,
|
| 6 |
+
browser: true,
|
| 7 |
+
},
|
| 8 |
+
overrides: [
|
| 9 |
+
{
|
| 10 |
+
files: ["*.svelte"],
|
| 11 |
+
processor: "svelte3/svelte3",
|
| 12 |
+
extends: ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
|
| 13 |
+
rules: {
|
| 14 |
+
"no-undef": "off",
|
| 15 |
+
},
|
| 16 |
+
},
|
| 17 |
+
{
|
| 18 |
+
files: ["*.ts", "*.json", "*.tsx"],
|
| 19 |
+
extends: ["plugin:@typescript-eslint/recommended"],
|
| 20 |
+
},
|
| 21 |
+
],
|
| 22 |
+
rules: {
|
| 23 |
+
curly: "error",
|
| 24 |
+
"no-var": "error",
|
| 25 |
+
eqeqeq: "error",
|
| 26 |
+
},
|
| 27 |
+
settings: {
|
| 28 |
+
"svelte3/typescript": () => require("typescript"),
|
| 29 |
+
},
|
| 30 |
+
ignorePatterns: ["node_modules"],
|
| 31 |
+
};
|
frontend/.gitignore
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Logs
|
| 2 |
+
logs
|
| 3 |
+
*.log
|
| 4 |
+
npm-debug.log*
|
| 5 |
+
yarn-debug.log*
|
| 6 |
+
yarn-error.log*
|
| 7 |
+
pnpm-debug.log*
|
| 8 |
+
lerna-debug.log*
|
| 9 |
+
|
| 10 |
+
node_modules
|
| 11 |
+
dist
|
| 12 |
+
dist-ssr
|
| 13 |
+
*.local
|
| 14 |
+
|
| 15 |
+
# Editor directories and files
|
| 16 |
+
.vscode/*
|
| 17 |
+
!.vscode/extensions.json
|
| 18 |
+
.idea
|
| 19 |
+
.DS_Store
|
| 20 |
+
*.suo
|
| 21 |
+
*.ntvs*
|
| 22 |
+
*.njsproj
|
| 23 |
+
*.sln
|
| 24 |
+
*.sw?
|
frontend/README.md
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Svelte + TS + Vite
|
| 2 |
+
|
| 3 |
+
This template should help get you started developing with Svelte and TypeScript in Vite.
|
| 4 |
+
|
| 5 |
+
## Recommended IDE Setup
|
| 6 |
+
|
| 7 |
+
[VS Code](https://code.visualstudio.com/) + [Svelte](https://marketplace.visualstudio.com/items?itemName=svelte.svelte-vscode).
|
| 8 |
+
|
| 9 |
+
## Need an official Svelte framework?
|
| 10 |
+
|
| 11 |
+
Check out [SvelteKit](https://github.com/sveltejs/kit#readme), which is also powered by Vite. Deploy anywhere with its serverless-first approach and adapt to various platforms, with out of the box support for TypeScript, SCSS, and Less, and easily-added support for mdsvex, GraphQL, PostCSS, Tailwind CSS, and more.
|
| 12 |
+
|
| 13 |
+
## Technical considerations
|
| 14 |
+
|
| 15 |
+
**Why use this over SvelteKit?**
|
| 16 |
+
|
| 17 |
+
- It brings its own routing solution which might not be preferable for some users.
|
| 18 |
+
- It is first and foremost a framework that just happens to use Vite under the hood, not a Vite app.
|
| 19 |
+
|
| 20 |
+
This template contains as little as possible to get started with Vite + TypeScript + Svelte, while taking into account the developer experience with regards to HMR and intellisense. It demonstrates capabilities on par with the other `create-vite` templates and is a good starting point for beginners dipping their toes into a Vite + Svelte project.
|
| 21 |
+
|
| 22 |
+
Should you later need the extended capabilities and extensibility provided by SvelteKit, the template has been structured similarly to SvelteKit so that it is easy to migrate.
|
| 23 |
+
|
| 24 |
+
**Why `global.d.ts` instead of `compilerOptions.types` inside `jsconfig.json` or `tsconfig.json`?**
|
| 25 |
+
|
| 26 |
+
Setting `compilerOptions.types` shuts out all other types not explicitly listed in the configuration. Using triple-slash references keeps the default TypeScript setting of accepting type information from the entire workspace, while also adding `svelte` and `vite/client` type information.
|
| 27 |
+
|
| 28 |
+
**Why include `.vscode/extensions.json`?**
|
| 29 |
+
|
| 30 |
+
Other templates indirectly recommend extensions via the README, but this file allows VS Code to prompt the user to install the recommended extension upon opening the project.
|
| 31 |
+
|
| 32 |
+
**Why enable `allowJs` in the TS template?**
|
| 33 |
+
|
| 34 |
+
While `allowJs: false` would indeed prevent the use of `.js` files in the project, it does not prevent the use of JavaScript syntax in `.svelte` files. In addition, it would force `checkJs: false`, bringing the worst of both worlds: not being able to guarantee the entire codebase is TypeScript, and also having worse typechecking for the existing JavaScript. In addition, there are valid use cases in which a mixed codebase may be relevant.
|
| 35 |
+
|
| 36 |
+
**Why is HMR not preserving my local component state?**
|
| 37 |
+
|
| 38 |
+
HMR state preservation comes with a number of gotchas! It has been disabled by default in both `svelte-hmr` and `@sveltejs/vite-plugin-svelte` due to its often surprising behavior. You can read the details [here](https://github.com/rixo/svelte-hmr#svelte-hmr).
|
| 39 |
+
|
| 40 |
+
If you have state that's important to retain within a component, consider creating an external store which would not be replaced by HMR.
|
| 41 |
+
|
| 42 |
+
```ts
|
| 43 |
+
// store.ts
|
| 44 |
+
// An extremely simple external store
|
| 45 |
+
import { writable } from 'svelte/store'
|
| 46 |
+
export default writable(0)
|
| 47 |
+
```
|
frontend/build.js
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import { parse } from "node-html-parser";
|
| 2 |
+
import fs from "fs";
|
| 3 |
+
|
| 4 |
+
// Change the livereload index file to the static built svelte files for publishing.
|
| 5 |
+
fs.readFile("../zeno/frontend/index.html", "utf8", (err, data) => {
|
| 6 |
+
const index = parse(data);
|
| 7 |
+
const body = index.querySelector("body");
|
| 8 |
+
const header = index.querySelector("head");
|
| 9 |
+
|
| 10 |
+
let bodyTags = `<div id="app"></div>`;
|
| 11 |
+
let headerTags = ``;
|
| 12 |
+
|
| 13 |
+
fs.readFile(
|
| 14 |
+
"../zeno/frontend/build/manifest.json",
|
| 15 |
+
"utf8",
|
| 16 |
+
(err, manifest) => {
|
| 17 |
+
manifest = JSON.parse(manifest);
|
| 18 |
+
Object.values(manifest).forEach((file) => {
|
| 19 |
+
if (file.file.endsWith(".js")) {
|
| 20 |
+
bodyTags += `<script type="module" src="./build/${file.file}"></script>`;
|
| 21 |
+
} else if (file.file.endsWith(".css")) {
|
| 22 |
+
headerTags += `<link rel="stylesheet" href="./build/${file.file}">`;
|
| 23 |
+
}
|
| 24 |
+
});
|
| 25 |
+
body.innerHTML = bodyTags;
|
| 26 |
+
header.innerHTML = header.innerHTML + headerTags;
|
| 27 |
+
fs.writeFileSync("../zeno/frontend/index_tmp.html", index.toString());
|
| 28 |
+
}
|
| 29 |
+
);
|
| 30 |
+
});
|
frontend/package-lock.json
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
frontend/package.json
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "zeno-evals-hub",
|
| 3 |
+
"private": true,
|
| 4 |
+
"version": "0.0.0",
|
| 5 |
+
"type": "module",
|
| 6 |
+
"scripts": {
|
| 7 |
+
"dev": "vite",
|
| 8 |
+
"build": "vite build",
|
| 9 |
+
"smui-theme": "smui-theme compile public/smui.css -i src/theme",
|
| 10 |
+
"check": "svelte-check --tsconfig ./tsconfig.json",
|
| 11 |
+
"format": "npx prettier -w src",
|
| 12 |
+
"lint": "npx eslint src --max-warnings=0 && npx prettier -c src",
|
| 13 |
+
"test": "npx jest tests",
|
| 14 |
+
"generate-api": "openapi --input http://localhost:8000/api/openapi.json --output ./src/zeno-evals-hubservice --client fetch; npx prettier -w ./src/zeno-evals-hubservice"
|
| 15 |
+
},
|
| 16 |
+
"devDependencies": {
|
| 17 |
+
"@sveltejs/vite-plugin-svelte": "^2.0.3",
|
| 18 |
+
"@tsconfig/svelte": "^3.0.0",
|
| 19 |
+
"@typescript-eslint/eslint-plugin": "^5.58.0",
|
| 20 |
+
"eslint-plugin-svelte3": "^4.0.0",
|
| 21 |
+
"openapi-typescript-codegen": "^0.24.0",
|
| 22 |
+
"svelte": "^3.55.1",
|
| 23 |
+
"svelte-check": "^2.10.3",
|
| 24 |
+
"tslib": "^2.5.0",
|
| 25 |
+
"typescript": "^4.9.3",
|
| 26 |
+
"vite": "^4.2.0"
|
| 27 |
+
}
|
| 28 |
+
}
|
frontend/public/vite.svg
ADDED
|
|
frontend/src/App.svelte
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<script lang="ts">
|
| 2 |
+
</script>
|
| 3 |
+
|
| 4 |
+
<main>
|
| 5 |
+
<h1>Vite + Svelte</h1>
|
| 6 |
+
|
| 7 |
+
<p class="read-the-docs">Click on the Vite and Svelte logos to learn more</p>
|
| 8 |
+
</main>
|
| 9 |
+
|
| 10 |
+
<style>
|
| 11 |
+
.read-the-docs {
|
| 12 |
+
color: #888;
|
| 13 |
+
}
|
| 14 |
+
</style>
|
frontend/src/app.css
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
:root {
|
| 2 |
+
font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;
|
| 3 |
+
line-height: 1.5;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
|
| 6 |
+
color-scheme: light dark;
|
| 7 |
+
color: rgba(255, 255, 255, 0.87);
|
| 8 |
+
background-color: #242424;
|
| 9 |
+
|
| 10 |
+
font-synthesis: none;
|
| 11 |
+
text-rendering: optimizeLegibility;
|
| 12 |
+
-webkit-font-smoothing: antialiased;
|
| 13 |
+
-moz-osx-font-smoothing: grayscale;
|
| 14 |
+
-webkit-text-size-adjust: 100%;
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
+
a {
|
| 18 |
+
font-weight: 500;
|
| 19 |
+
color: #646cff;
|
| 20 |
+
text-decoration: inherit;
|
| 21 |
+
}
|
| 22 |
+
a:hover {
|
| 23 |
+
color: #535bf2;
|
| 24 |
+
}
|
| 25 |
+
|
| 26 |
+
body {
|
| 27 |
+
margin: 0;
|
| 28 |
+
display: flex;
|
| 29 |
+
place-items: center;
|
| 30 |
+
min-width: 320px;
|
| 31 |
+
min-height: 100vh;
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
h1 {
|
| 35 |
+
font-size: 3.2em;
|
| 36 |
+
line-height: 1.1;
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
.card {
|
| 40 |
+
padding: 2em;
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
#app {
|
| 44 |
+
max-width: 1280px;
|
| 45 |
+
margin: 0 auto;
|
| 46 |
+
padding: 2rem;
|
| 47 |
+
text-align: center;
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
button {
|
| 51 |
+
border-radius: 8px;
|
| 52 |
+
border: 1px solid transparent;
|
| 53 |
+
padding: 0.6em 1.2em;
|
| 54 |
+
font-size: 1em;
|
| 55 |
+
font-weight: 500;
|
| 56 |
+
font-family: inherit;
|
| 57 |
+
background-color: #1a1a1a;
|
| 58 |
+
cursor: pointer;
|
| 59 |
+
transition: border-color 0.25s;
|
| 60 |
+
}
|
| 61 |
+
button:hover {
|
| 62 |
+
border-color: #646cff;
|
| 63 |
+
}
|
| 64 |
+
button:focus,
|
| 65 |
+
button:focus-visible {
|
| 66 |
+
outline: 4px auto -webkit-focus-ring-color;
|
| 67 |
+
}
|
| 68 |
+
|
| 69 |
+
@media (prefers-color-scheme: light) {
|
| 70 |
+
:root {
|
| 71 |
+
color: #213547;
|
| 72 |
+
background-color: #ffffff;
|
| 73 |
+
}
|
| 74 |
+
a:hover {
|
| 75 |
+
color: #747bff;
|
| 76 |
+
}
|
| 77 |
+
button {
|
| 78 |
+
background-color: #f9f9f9;
|
| 79 |
+
}
|
| 80 |
+
}
|
frontend/src/assets/svelte.svg
ADDED
|
|
frontend/src/main.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import "./app.css";
|
| 2 |
+
import App from "./App.svelte";
|
| 3 |
+
|
| 4 |
+
const app = new App({
|
| 5 |
+
target: document.getElementById("app"),
|
| 6 |
+
});
|
| 7 |
+
|
| 8 |
+
export default app;
|
frontend/src/vite-env.d.ts
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/// <reference types="svelte" />
|
| 2 |
+
/// <reference types="vite/client" />
|
frontend/svelte.config.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'
|
| 2 |
+
|
| 3 |
+
export default {
|
| 4 |
+
// Consult https://svelte.dev/docs#compile-time-svelte-preprocess
|
| 5 |
+
// for more information about preprocessors
|
| 6 |
+
preprocess: vitePreprocess(),
|
| 7 |
+
}
|
frontend/tsconfig.json
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"extends": "@tsconfig/svelte/tsconfig.json",
|
| 3 |
+
"compilerOptions": {
|
| 4 |
+
"target": "ESNext",
|
| 5 |
+
"useDefineForClassFields": true,
|
| 6 |
+
"module": "ESNext",
|
| 7 |
+
"resolveJsonModule": true,
|
| 8 |
+
/**
|
| 9 |
+
* Typecheck JS in `.svelte` and `.js` files by default.
|
| 10 |
+
* Disable checkJs if you'd like to use dynamic types in JS.
|
| 11 |
+
* Note that setting allowJs false does not prevent the use
|
| 12 |
+
* of JS in `.svelte` files.
|
| 13 |
+
*/
|
| 14 |
+
"allowJs": true,
|
| 15 |
+
"checkJs": true,
|
| 16 |
+
"isolatedModules": true
|
| 17 |
+
},
|
| 18 |
+
"include": ["src/**/*.d.ts", "src/**/*.ts", "src/**/*.js", "src/**/*.svelte"],
|
| 19 |
+
"references": [{ "path": "./tsconfig.node.json" }]
|
| 20 |
+
}
|
frontend/tsconfig.node.json
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"compilerOptions": {
|
| 3 |
+
"composite": true,
|
| 4 |
+
"module": "esnext",
|
| 5 |
+
"target": "esnext",
|
| 6 |
+
"moduleResolution": "node"
|
| 7 |
+
},
|
| 8 |
+
"include": ["vite.config.ts"]
|
| 9 |
+
}
|
frontend/vite.config.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import { defineConfig } from "vite";
|
| 2 |
+
import { svelte } from "@sveltejs/vite-plugin-svelte";
|
| 3 |
+
|
| 4 |
+
// https://vitejs.dev/config/
|
| 5 |
+
export default defineConfig({
|
| 6 |
+
plugins: [svelte()],
|
| 7 |
+
build: {
|
| 8 |
+
outDir: "../zeno-evals-hub/frontend/build",
|
| 9 |
+
manifest: true,
|
| 10 |
+
target: "esnext",
|
| 11 |
+
emptyOutDir: true,
|
| 12 |
+
rollupOptions: {
|
| 13 |
+
input: {
|
| 14 |
+
main: "src/main.ts",
|
| 15 |
+
},
|
| 16 |
+
},
|
| 17 |
+
},
|
| 18 |
+
});
|
poetry.lock
ADDED
|
@@ -0,0 +1,704 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# This file is automatically @generated by Poetry and should not be changed by hand.
|
| 2 |
+
|
| 3 |
+
[[package]]
|
| 4 |
+
name = "anyio"
|
| 5 |
+
version = "3.6.2"
|
| 6 |
+
description = "High level compatibility layer for multiple asynchronous event loop implementations"
|
| 7 |
+
category = "main"
|
| 8 |
+
optional = false
|
| 9 |
+
python-versions = ">=3.6.2"
|
| 10 |
+
files = [
|
| 11 |
+
{file = "anyio-3.6.2-py3-none-any.whl", hash = "sha256:fbbe32bd270d2a2ef3ed1c5d45041250284e31fc0a4df4a5a6071842051a51e3"},
|
| 12 |
+
{file = "anyio-3.6.2.tar.gz", hash = "sha256:25ea0d673ae30af41a0c442f81cf3b38c7e79fdc7b60335a4c14e05eb0947421"},
|
| 13 |
+
]
|
| 14 |
+
|
| 15 |
+
[package.dependencies]
|
| 16 |
+
idna = ">=2.8"
|
| 17 |
+
sniffio = ">=1.1"
|
| 18 |
+
|
| 19 |
+
[package.extras]
|
| 20 |
+
doc = ["packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"]
|
| 21 |
+
test = ["contextlib2", "coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "mock (>=4)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (<0.15)", "uvloop (>=0.15)"]
|
| 22 |
+
trio = ["trio (>=0.16,<0.22)"]
|
| 23 |
+
|
| 24 |
+
[[package]]
|
| 25 |
+
name = "attrs"
|
| 26 |
+
version = "23.1.0"
|
| 27 |
+
description = "Classes Without Boilerplate"
|
| 28 |
+
category = "dev"
|
| 29 |
+
optional = false
|
| 30 |
+
python-versions = ">=3.7"
|
| 31 |
+
files = [
|
| 32 |
+
{file = "attrs-23.1.0-py3-none-any.whl", hash = "sha256:1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04"},
|
| 33 |
+
{file = "attrs-23.1.0.tar.gz", hash = "sha256:6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015"},
|
| 34 |
+
]
|
| 35 |
+
|
| 36 |
+
[package.extras]
|
| 37 |
+
cov = ["attrs[tests]", "coverage[toml] (>=5.3)"]
|
| 38 |
+
dev = ["attrs[docs,tests]", "pre-commit"]
|
| 39 |
+
docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"]
|
| 40 |
+
tests = ["attrs[tests-no-zope]", "zope-interface"]
|
| 41 |
+
tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"]
|
| 42 |
+
|
| 43 |
+
[[package]]
|
| 44 |
+
name = "black"
|
| 45 |
+
version = "23.3.0"
|
| 46 |
+
description = "The uncompromising code formatter."
|
| 47 |
+
category = "dev"
|
| 48 |
+
optional = false
|
| 49 |
+
python-versions = ">=3.7"
|
| 50 |
+
files = [
|
| 51 |
+
{file = "black-23.3.0-cp310-cp310-macosx_10_16_arm64.whl", hash = "sha256:0945e13506be58bf7db93ee5853243eb368ace1c08a24c65ce108986eac65915"},
|
| 52 |
+
{file = "black-23.3.0-cp310-cp310-macosx_10_16_universal2.whl", hash = "sha256:67de8d0c209eb5b330cce2469503de11bca4085880d62f1628bd9972cc3366b9"},
|
| 53 |
+
{file = "black-23.3.0-cp310-cp310-macosx_10_16_x86_64.whl", hash = "sha256:7c3eb7cea23904399866c55826b31c1f55bbcd3890ce22ff70466b907b6775c2"},
|
| 54 |
+
{file = "black-23.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:32daa9783106c28815d05b724238e30718f34155653d4d6e125dc7daec8e260c"},
|
| 55 |
+
{file = "black-23.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:35d1381d7a22cc5b2be2f72c7dfdae4072a3336060635718cc7e1ede24221d6c"},
|
| 56 |
+
{file = "black-23.3.0-cp311-cp311-macosx_10_16_arm64.whl", hash = "sha256:a8a968125d0a6a404842fa1bf0b349a568634f856aa08ffaff40ae0dfa52e7c6"},
|
| 57 |
+
{file = "black-23.3.0-cp311-cp311-macosx_10_16_universal2.whl", hash = "sha256:c7ab5790333c448903c4b721b59c0d80b11fe5e9803d8703e84dcb8da56fec1b"},
|
| 58 |
+
{file = "black-23.3.0-cp311-cp311-macosx_10_16_x86_64.whl", hash = "sha256:a6f6886c9869d4daae2d1715ce34a19bbc4b95006d20ed785ca00fa03cba312d"},
|
| 59 |
+
{file = "black-23.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f3c333ea1dd6771b2d3777482429864f8e258899f6ff05826c3a4fcc5ce3f70"},
|
| 60 |
+
{file = "black-23.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:11c410f71b876f961d1de77b9699ad19f939094c3a677323f43d7a29855fe326"},
|
| 61 |
+
{file = "black-23.3.0-cp37-cp37m-macosx_10_16_x86_64.whl", hash = "sha256:1d06691f1eb8de91cd1b322f21e3bfc9efe0c7ca1f0e1eb1db44ea367dff656b"},
|
| 62 |
+
{file = "black-23.3.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50cb33cac881766a5cd9913e10ff75b1e8eb71babf4c7104f2e9c52da1fb7de2"},
|
| 63 |
+
{file = "black-23.3.0-cp37-cp37m-win_amd64.whl", hash = "sha256:e114420bf26b90d4b9daa597351337762b63039752bdf72bf361364c1aa05925"},
|
| 64 |
+
{file = "black-23.3.0-cp38-cp38-macosx_10_16_arm64.whl", hash = "sha256:48f9d345675bb7fbc3dd85821b12487e1b9a75242028adad0333ce36ed2a6d27"},
|
| 65 |
+
{file = "black-23.3.0-cp38-cp38-macosx_10_16_universal2.whl", hash = "sha256:714290490c18fb0126baa0fca0a54ee795f7502b44177e1ce7624ba1c00f2331"},
|
| 66 |
+
{file = "black-23.3.0-cp38-cp38-macosx_10_16_x86_64.whl", hash = "sha256:064101748afa12ad2291c2b91c960be28b817c0c7eaa35bec09cc63aa56493c5"},
|
| 67 |
+
{file = "black-23.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:562bd3a70495facf56814293149e51aa1be9931567474993c7942ff7d3533961"},
|
| 68 |
+
{file = "black-23.3.0-cp38-cp38-win_amd64.whl", hash = "sha256:e198cf27888ad6f4ff331ca1c48ffc038848ea9f031a3b40ba36aced7e22f2c8"},
|
| 69 |
+
{file = "black-23.3.0-cp39-cp39-macosx_10_16_arm64.whl", hash = "sha256:3238f2aacf827d18d26db07524e44741233ae09a584273aa059066d644ca7b30"},
|
| 70 |
+
{file = "black-23.3.0-cp39-cp39-macosx_10_16_universal2.whl", hash = "sha256:f0bd2f4a58d6666500542b26354978218a9babcdc972722f4bf90779524515f3"},
|
| 71 |
+
{file = "black-23.3.0-cp39-cp39-macosx_10_16_x86_64.whl", hash = "sha256:92c543f6854c28a3c7f39f4d9b7694f9a6eb9d3c5e2ece488c327b6e7ea9b266"},
|
| 72 |
+
{file = "black-23.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a150542a204124ed00683f0db1f5cf1c2aaaa9cc3495b7a3b5976fb136090ab"},
|
| 73 |
+
{file = "black-23.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:6b39abdfb402002b8a7d030ccc85cf5afff64ee90fa4c5aebc531e3ad0175ddb"},
|
| 74 |
+
{file = "black-23.3.0-py3-none-any.whl", hash = "sha256:ec751418022185b0c1bb7d7736e6933d40bbb14c14a0abcf9123d1b159f98dd4"},
|
| 75 |
+
{file = "black-23.3.0.tar.gz", hash = "sha256:1c7b8d606e728a41ea1ccbd7264677e494e87cf630e399262ced92d4a8dac940"},
|
| 76 |
+
]
|
| 77 |
+
|
| 78 |
+
[package.dependencies]
|
| 79 |
+
click = ">=8.0.0"
|
| 80 |
+
mypy-extensions = ">=0.4.3"
|
| 81 |
+
packaging = ">=22.0"
|
| 82 |
+
pathspec = ">=0.9.0"
|
| 83 |
+
platformdirs = ">=2"
|
| 84 |
+
tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""}
|
| 85 |
+
typing-extensions = {version = ">=3.10.0.0", markers = "python_version < \"3.10\""}
|
| 86 |
+
|
| 87 |
+
[package.extras]
|
| 88 |
+
colorama = ["colorama (>=0.4.3)"]
|
| 89 |
+
d = ["aiohttp (>=3.7.4)"]
|
| 90 |
+
jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"]
|
| 91 |
+
uvloop = ["uvloop (>=0.15.2)"]
|
| 92 |
+
|
| 93 |
+
[[package]]
|
| 94 |
+
name = "click"
|
| 95 |
+
version = "8.1.3"
|
| 96 |
+
description = "Composable command line interface toolkit"
|
| 97 |
+
category = "main"
|
| 98 |
+
optional = false
|
| 99 |
+
python-versions = ">=3.7"
|
| 100 |
+
files = [
|
| 101 |
+
{file = "click-8.1.3-py3-none-any.whl", hash = "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48"},
|
| 102 |
+
{file = "click-8.1.3.tar.gz", hash = "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"},
|
| 103 |
+
]
|
| 104 |
+
|
| 105 |
+
[package.dependencies]
|
| 106 |
+
colorama = {version = "*", markers = "platform_system == \"Windows\""}
|
| 107 |
+
|
| 108 |
+
[[package]]
|
| 109 |
+
name = "colorama"
|
| 110 |
+
version = "0.4.6"
|
| 111 |
+
description = "Cross-platform colored terminal text."
|
| 112 |
+
category = "main"
|
| 113 |
+
optional = false
|
| 114 |
+
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"
|
| 115 |
+
files = [
|
| 116 |
+
{file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"},
|
| 117 |
+
{file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"},
|
| 118 |
+
]
|
| 119 |
+
|
| 120 |
+
[[package]]
|
| 121 |
+
name = "fastapi"
|
| 122 |
+
version = "0.95.1"
|
| 123 |
+
description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production"
|
| 124 |
+
category = "main"
|
| 125 |
+
optional = false
|
| 126 |
+
python-versions = ">=3.7"
|
| 127 |
+
files = [
|
| 128 |
+
{file = "fastapi-0.95.1-py3-none-any.whl", hash = "sha256:a870d443e5405982e1667dfe372663abf10754f246866056336d7f01c21dab07"},
|
| 129 |
+
{file = "fastapi-0.95.1.tar.gz", hash = "sha256:9569f0a381f8a457ec479d90fa01005cfddaae07546eb1f3fa035bc4797ae7d5"},
|
| 130 |
+
]
|
| 131 |
+
|
| 132 |
+
[package.dependencies]
|
| 133 |
+
pydantic = ">=1.6.2,<1.7 || >1.7,<1.7.1 || >1.7.1,<1.7.2 || >1.7.2,<1.7.3 || >1.7.3,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0"
|
| 134 |
+
starlette = ">=0.26.1,<0.27.0"
|
| 135 |
+
|
| 136 |
+
[package.extras]
|
| 137 |
+
all = ["email-validator (>=1.1.1)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "python-multipart (>=0.0.5)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"]
|
| 138 |
+
dev = ["pre-commit (>=2.17.0,<3.0.0)", "ruff (==0.0.138)", "uvicorn[standard] (>=0.12.0,<0.21.0)"]
|
| 139 |
+
doc = ["mdx-include (>=1.4.1,<2.0.0)", "mkdocs (>=1.1.2,<2.0.0)", "mkdocs-markdownextradata-plugin (>=0.1.7,<0.3.0)", "mkdocs-material (>=8.1.4,<9.0.0)", "pyyaml (>=5.3.1,<7.0.0)", "typer-cli (>=0.0.13,<0.0.14)", "typer[all] (>=0.6.1,<0.8.0)"]
|
| 140 |
+
test = ["anyio[trio] (>=3.2.1,<4.0.0)", "black (==23.1.0)", "coverage[toml] (>=6.5.0,<8.0)", "databases[sqlite] (>=0.3.2,<0.7.0)", "email-validator (>=1.1.1,<2.0.0)", "flask (>=1.1.2,<3.0.0)", "httpx (>=0.23.0,<0.24.0)", "isort (>=5.0.6,<6.0.0)", "mypy (==0.982)", "orjson (>=3.2.1,<4.0.0)", "passlib[bcrypt] (>=1.7.2,<2.0.0)", "peewee (>=3.13.3,<4.0.0)", "pytest (>=7.1.3,<8.0.0)", "python-jose[cryptography] (>=3.3.0,<4.0.0)", "python-multipart (>=0.0.5,<0.0.7)", "pyyaml (>=5.3.1,<7.0.0)", "ruff (==0.0.138)", "sqlalchemy (>=1.3.18,<1.4.43)", "types-orjson (==3.6.2)", "types-ujson (==5.7.0.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0,<6.0.0)"]
|
| 141 |
+
|
| 142 |
+
[[package]]
|
| 143 |
+
name = "flake8"
|
| 144 |
+
version = "6.0.0"
|
| 145 |
+
description = "the modular source code checker: pep8 pyflakes and co"
|
| 146 |
+
category = "dev"
|
| 147 |
+
optional = false
|
| 148 |
+
python-versions = ">=3.8.1"
|
| 149 |
+
files = [
|
| 150 |
+
{file = "flake8-6.0.0-py2.py3-none-any.whl", hash = "sha256:3833794e27ff64ea4e9cf5d410082a8b97ff1a06c16aa3d2027339cd0f1195c7"},
|
| 151 |
+
{file = "flake8-6.0.0.tar.gz", hash = "sha256:c61007e76655af75e6785a931f452915b371dc48f56efd765247c8fe68f2b181"},
|
| 152 |
+
]
|
| 153 |
+
|
| 154 |
+
[package.dependencies]
|
| 155 |
+
mccabe = ">=0.7.0,<0.8.0"
|
| 156 |
+
pycodestyle = ">=2.10.0,<2.11.0"
|
| 157 |
+
pyflakes = ">=3.0.0,<3.1.0"
|
| 158 |
+
|
| 159 |
+
[[package]]
|
| 160 |
+
name = "h11"
|
| 161 |
+
version = "0.14.0"
|
| 162 |
+
description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
|
| 163 |
+
category = "main"
|
| 164 |
+
optional = false
|
| 165 |
+
python-versions = ">=3.7"
|
| 166 |
+
files = [
|
| 167 |
+
{file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"},
|
| 168 |
+
{file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"},
|
| 169 |
+
]
|
| 170 |
+
|
| 171 |
+
[[package]]
|
| 172 |
+
name = "idna"
|
| 173 |
+
version = "3.4"
|
| 174 |
+
description = "Internationalized Domain Names in Applications (IDNA)"
|
| 175 |
+
category = "main"
|
| 176 |
+
optional = false
|
| 177 |
+
python-versions = ">=3.5"
|
| 178 |
+
files = [
|
| 179 |
+
{file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"},
|
| 180 |
+
{file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"},
|
| 181 |
+
]
|
| 182 |
+
|
| 183 |
+
[[package]]
|
| 184 |
+
name = "libcst"
|
| 185 |
+
version = "0.4.9"
|
| 186 |
+
description = "A concrete syntax tree with AST-like properties for Python 3.5, 3.6, 3.7, 3.8, 3.9, and 3.10 programs."
|
| 187 |
+
category = "dev"
|
| 188 |
+
optional = false
|
| 189 |
+
python-versions = ">=3.7"
|
| 190 |
+
files = [
|
| 191 |
+
{file = "libcst-0.4.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4f9e42085c403e22201e5c41e707ef73e4ea910ad9fc67983ceee2368097f54e"},
|
| 192 |
+
{file = "libcst-0.4.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1266530bf840cc40633a04feb578bb4cac1aa3aea058cc3729e24eab09a8e996"},
|
| 193 |
+
{file = "libcst-0.4.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9679177391ccb9b0cdde3185c22bf366cb672457c4b7f4031fcb3b5e739fbd6"},
|
| 194 |
+
{file = "libcst-0.4.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d67bc87e0d8db9434f2ea063734938a320f541f4c6da1074001e372f840f385d"},
|
| 195 |
+
{file = "libcst-0.4.9-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e316da5a126f2a9e1d7680f95f907b575f082a35e2f8bd5620c59b2aaaebfe0a"},
|
| 196 |
+
{file = "libcst-0.4.9-cp310-cp310-win_amd64.whl", hash = "sha256:7415569ab998a85b0fc9af3a204611ea7fadb2d719a12532c448f8fc98f5aca4"},
|
| 197 |
+
{file = "libcst-0.4.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:15ded11ff7f4572f91635e02b519ae959f782689fdb4445bbebb7a3cc5c71d75"},
|
| 198 |
+
{file = "libcst-0.4.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5b266867b712a120fad93983de432ddb2ccb062eb5fd2bea748c9a94cb200c36"},
|
| 199 |
+
{file = "libcst-0.4.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:045b3b0b06413cdae6e9751b5f417f789ffa410f2cb2815e3e0e0ea6bef10ec0"},
|
| 200 |
+
{file = "libcst-0.4.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e799add8fba4976628b9c1a6768d73178bf898f0ed1bd1322930c2d3db9063ba"},
|
| 201 |
+
{file = "libcst-0.4.9-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:10479371d04ee8dc978c889c1774bbf6a83df88fa055fcb0159a606f6679c565"},
|
| 202 |
+
{file = "libcst-0.4.9-cp311-cp311-win_amd64.whl", hash = "sha256:7a98286cbbfa90a42d376900c875161ad02a5a2a6b7c94c0f7afd9075e329ce4"},
|
| 203 |
+
{file = "libcst-0.4.9-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:400166fc4efb9aa06ce44498d443aa78519082695b1894202dd73cd507d2d712"},
|
| 204 |
+
{file = "libcst-0.4.9-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:46123863fba35cc84f7b54dd68826419cabfd9504d8a101c7fe3313ea03776f9"},
|
| 205 |
+
{file = "libcst-0.4.9-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:27be8db54c0e5fe440021a771a38b81a7dbc23cd630eb8b0e9828b7717f9b702"},
|
| 206 |
+
{file = "libcst-0.4.9-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:132bec627b064bd567e7e4cd6c89524d02842151eb0d8f5f3f7ffd2579ec1b09"},
|
| 207 |
+
{file = "libcst-0.4.9-cp37-cp37m-win_amd64.whl", hash = "sha256:596860090aeed3ee6ad1e59c35c6c4110a57e4e896abf51b91cae003ec720a11"},
|
| 208 |
+
{file = "libcst-0.4.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f4487608258109f774300466d4ca97353df29ae6ac23d1502e13e5509423c9d5"},
|
| 209 |
+
{file = "libcst-0.4.9-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:aa53993e9a2853efb3ed3605da39f2e7125df6430f613eb67ef886c1ce4f94b5"},
|
| 210 |
+
{file = "libcst-0.4.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f6ce794483d4c605ef0f5b199a49fb6996f9586ca938b7bfef213bd13858d7ab"},
|
| 211 |
+
{file = "libcst-0.4.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:786e562b54bbcd17a060d1244deeef466b7ee07fe544074c252c4a169e38f1ee"},
|
| 212 |
+
{file = "libcst-0.4.9-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:794250d2359edd518fb698e5d21c38a5bdfc5e4a75d0407b4c19818271ce6742"},
|
| 213 |
+
{file = "libcst-0.4.9-cp38-cp38-win_amd64.whl", hash = "sha256:76491f67431318c3145442e97dddcead7075b074c59eac51be7cc9e3fffec6ee"},
|
| 214 |
+
{file = "libcst-0.4.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3cf48d7aec6dc54b02aec0b1bb413c5bb3b02d852fd6facf1f05c7213e61a176"},
|
| 215 |
+
{file = "libcst-0.4.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9b3348c6b7711a5235b133bd8e11d22e903c388db42485b8ceb5f2aa0fae9b9f"},
|
| 216 |
+
{file = "libcst-0.4.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7e33b66762efaa014c38819efae5d8f726dd823e32d5d691035484411d2a2a69"},
|
| 217 |
+
{file = "libcst-0.4.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1350d375d3fb9b20a6cf10c09b2964baca9be753a033dde7c1aced49d8e58387"},
|
| 218 |
+
{file = "libcst-0.4.9-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3822056dc13326082362db35b3f649e0f4a97e36ddb4e487441da8e0fb9db7b3"},
|
| 219 |
+
{file = "libcst-0.4.9-cp39-cp39-win_amd64.whl", hash = "sha256:183636141b839aa35b639e100883813744523bc7c12528906621121731b28443"},
|
| 220 |
+
{file = "libcst-0.4.9.tar.gz", hash = "sha256:01786c403348f76f274dbaf3888ae237ffb73e6ed6973e65eba5c1fc389861dd"},
|
| 221 |
+
]
|
| 222 |
+
|
| 223 |
+
[package.dependencies]
|
| 224 |
+
pyyaml = ">=5.2"
|
| 225 |
+
typing-extensions = ">=3.7.4.2"
|
| 226 |
+
typing-inspect = ">=0.4.0"
|
| 227 |
+
|
| 228 |
+
[package.extras]
|
| 229 |
+
dev = ["Sphinx (>=5.1.1)", "black (==22.10.0)", "coverage (>=4.5.4)", "fixit (==0.1.1)", "flake8 (>=3.7.8,<5)", "hypothesis (>=4.36.0)", "hypothesmith (>=0.0.4)", "jinja2 (==3.1.2)", "jupyter (>=1.0.0)", "maturin (>=0.8.3,<0.14)", "nbsphinx (>=0.4.2)", "prompt-toolkit (>=2.0.9)", "pyre-check (==0.9.9)", "setuptools-rust (>=1.5.2)", "setuptools-scm (>=6.0.1)", "slotscheck (>=0.7.1)", "sphinx-rtd-theme (>=0.4.3)", "ufmt (==2.0.1)", "usort (==1.0.5)"]
|
| 230 |
+
|
| 231 |
+
[[package]]
|
| 232 |
+
name = "mccabe"
|
| 233 |
+
version = "0.7.0"
|
| 234 |
+
description = "McCabe checker, plugin for flake8"
|
| 235 |
+
category = "dev"
|
| 236 |
+
optional = false
|
| 237 |
+
python-versions = ">=3.6"
|
| 238 |
+
files = [
|
| 239 |
+
{file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"},
|
| 240 |
+
{file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"},
|
| 241 |
+
]
|
| 242 |
+
|
| 243 |
+
[[package]]
|
| 244 |
+
name = "moreorless"
|
| 245 |
+
version = "0.4.0"
|
| 246 |
+
description = "Python diff wrapper"
|
| 247 |
+
category = "dev"
|
| 248 |
+
optional = false
|
| 249 |
+
python-versions = ">=3.6"
|
| 250 |
+
files = [
|
| 251 |
+
{file = "moreorless-0.4.0-py2.py3-none-any.whl", hash = "sha256:17f1fbef60fd21c84ee085a929fe3acefcaddca30df5dd09c024e9939a9e6a00"},
|
| 252 |
+
{file = "moreorless-0.4.0.tar.gz", hash = "sha256:85e19972c1a0b3a49f8543914f57bd83f6e1b10df144d5b97b8c5e9744d9c08c"},
|
| 253 |
+
]
|
| 254 |
+
|
| 255 |
+
[package.dependencies]
|
| 256 |
+
click = "*"
|
| 257 |
+
|
| 258 |
+
[[package]]
|
| 259 |
+
name = "mypy"
|
| 260 |
+
version = "1.2.0"
|
| 261 |
+
description = "Optional static typing for Python"
|
| 262 |
+
category = "dev"
|
| 263 |
+
optional = false
|
| 264 |
+
python-versions = ">=3.7"
|
| 265 |
+
files = [
|
| 266 |
+
{file = "mypy-1.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:701189408b460a2ff42b984e6bd45c3f41f0ac9f5f58b8873bbedc511900086d"},
|
| 267 |
+
{file = "mypy-1.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fe91be1c51c90e2afe6827601ca14353bbf3953f343c2129fa1e247d55fd95ba"},
|
| 268 |
+
{file = "mypy-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d26b513225ffd3eacece727f4387bdce6469192ef029ca9dd469940158bc89e"},
|
| 269 |
+
{file = "mypy-1.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3a2d219775a120581a0ae8ca392b31f238d452729adbcb6892fa89688cb8306a"},
|
| 270 |
+
{file = "mypy-1.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:2e93a8a553e0394b26c4ca683923b85a69f7ccdc0139e6acd1354cc884fe0128"},
|
| 271 |
+
{file = "mypy-1.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3efde4af6f2d3ccf58ae825495dbb8d74abd6d176ee686ce2ab19bd025273f41"},
|
| 272 |
+
{file = "mypy-1.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:695c45cea7e8abb6f088a34a6034b1d273122e5530aeebb9c09626cea6dca4cb"},
|
| 273 |
+
{file = "mypy-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d0e9464a0af6715852267bf29c9553e4555b61f5904a4fc538547a4d67617937"},
|
| 274 |
+
{file = "mypy-1.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8293a216e902ac12779eb7a08f2bc39ec6c878d7c6025aa59464e0c4c16f7eb9"},
|
| 275 |
+
{file = "mypy-1.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:f46af8d162f3d470d8ffc997aaf7a269996d205f9d746124a179d3abe05ac602"},
|
| 276 |
+
{file = "mypy-1.2.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:031fc69c9a7e12bcc5660b74122ed84b3f1c505e762cc4296884096c6d8ee140"},
|
| 277 |
+
{file = "mypy-1.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:390bc685ec209ada4e9d35068ac6988c60160b2b703072d2850457b62499e336"},
|
| 278 |
+
{file = "mypy-1.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:4b41412df69ec06ab141808d12e0bf2823717b1c363bd77b4c0820feaa37249e"},
|
| 279 |
+
{file = "mypy-1.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:4e4a682b3f2489d218751981639cffc4e281d548f9d517addfd5a2917ac78119"},
|
| 280 |
+
{file = "mypy-1.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a197ad3a774f8e74f21e428f0de7f60ad26a8d23437b69638aac2764d1e06a6a"},
|
| 281 |
+
{file = "mypy-1.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c9a084bce1061e55cdc0493a2ad890375af359c766b8ac311ac8120d3a472950"},
|
| 282 |
+
{file = "mypy-1.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eaeaa0888b7f3ccb7bcd40b50497ca30923dba14f385bde4af78fac713d6d6f6"},
|
| 283 |
+
{file = "mypy-1.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bea55fc25b96c53affab852ad94bf111a3083bc1d8b0c76a61dd101d8a388cf5"},
|
| 284 |
+
{file = "mypy-1.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:4c8d8c6b80aa4a1689f2a179d31d86ae1367ea4a12855cc13aa3ba24bb36b2d8"},
|
| 285 |
+
{file = "mypy-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:70894c5345bea98321a2fe84df35f43ee7bb0feec117a71420c60459fc3e1eed"},
|
| 286 |
+
{file = "mypy-1.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4a99fe1768925e4a139aace8f3fb66db3576ee1c30b9c0f70f744ead7e329c9f"},
|
| 287 |
+
{file = "mypy-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:023fe9e618182ca6317ae89833ba422c411469156b690fde6a315ad10695a521"},
|
| 288 |
+
{file = "mypy-1.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4d19f1a239d59f10fdc31263d48b7937c585810288376671eaf75380b074f238"},
|
| 289 |
+
{file = "mypy-1.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:2de7babe398cb7a85ac7f1fd5c42f396c215ab3eff731b4d761d68d0f6a80f48"},
|
| 290 |
+
{file = "mypy-1.2.0-py3-none-any.whl", hash = "sha256:d8e9187bfcd5ffedbe87403195e1fc340189a68463903c39e2b63307c9fa0394"},
|
| 291 |
+
{file = "mypy-1.2.0.tar.gz", hash = "sha256:f70a40410d774ae23fcb4afbbeca652905a04de7948eaf0b1789c8d1426b72d1"},
|
| 292 |
+
]
|
| 293 |
+
|
| 294 |
+
[package.dependencies]
|
| 295 |
+
mypy-extensions = ">=1.0.0"
|
| 296 |
+
tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""}
|
| 297 |
+
typing-extensions = ">=3.10"
|
| 298 |
+
|
| 299 |
+
[package.extras]
|
| 300 |
+
dmypy = ["psutil (>=4.0)"]
|
| 301 |
+
install-types = ["pip"]
|
| 302 |
+
python2 = ["typed-ast (>=1.4.0,<2)"]
|
| 303 |
+
reports = ["lxml"]
|
| 304 |
+
|
| 305 |
+
[[package]]
|
| 306 |
+
name = "mypy-extensions"
|
| 307 |
+
version = "1.0.0"
|
| 308 |
+
description = "Type system extensions for programs checked with the mypy type checker."
|
| 309 |
+
category = "dev"
|
| 310 |
+
optional = false
|
| 311 |
+
python-versions = ">=3.5"
|
| 312 |
+
files = [
|
| 313 |
+
{file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"},
|
| 314 |
+
{file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"},
|
| 315 |
+
]
|
| 316 |
+
|
| 317 |
+
[[package]]
|
| 318 |
+
name = "nodeenv"
|
| 319 |
+
version = "1.7.0"
|
| 320 |
+
description = "Node.js virtual environment builder"
|
| 321 |
+
category = "dev"
|
| 322 |
+
optional = false
|
| 323 |
+
python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*"
|
| 324 |
+
files = [
|
| 325 |
+
{file = "nodeenv-1.7.0-py2.py3-none-any.whl", hash = "sha256:27083a7b96a25f2f5e1d8cb4b6317ee8aeda3bdd121394e5ac54e498028a042e"},
|
| 326 |
+
{file = "nodeenv-1.7.0.tar.gz", hash = "sha256:e0e7f7dfb85fc5394c6fe1e8fa98131a2473e04311a45afb6508f7cf1836fa2b"},
|
| 327 |
+
]
|
| 328 |
+
|
| 329 |
+
[package.dependencies]
|
| 330 |
+
setuptools = "*"
|
| 331 |
+
|
| 332 |
+
[[package]]
|
| 333 |
+
name = "packaging"
|
| 334 |
+
version = "23.1"
|
| 335 |
+
description = "Core utilities for Python packages"
|
| 336 |
+
category = "dev"
|
| 337 |
+
optional = false
|
| 338 |
+
python-versions = ">=3.7"
|
| 339 |
+
files = [
|
| 340 |
+
{file = "packaging-23.1-py3-none-any.whl", hash = "sha256:994793af429502c4ea2ebf6bf664629d07c1a9fe974af92966e4b8d2df7edc61"},
|
| 341 |
+
{file = "packaging-23.1.tar.gz", hash = "sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"},
|
| 342 |
+
]
|
| 343 |
+
|
| 344 |
+
[[package]]
|
| 345 |
+
name = "pathspec"
|
| 346 |
+
version = "0.11.1"
|
| 347 |
+
description = "Utility library for gitignore style pattern matching of file paths."
|
| 348 |
+
category = "dev"
|
| 349 |
+
optional = false
|
| 350 |
+
python-versions = ">=3.7"
|
| 351 |
+
files = [
|
| 352 |
+
{file = "pathspec-0.11.1-py3-none-any.whl", hash = "sha256:d8af70af76652554bd134c22b3e8a1cc46ed7d91edcdd721ef1a0c51a84a5293"},
|
| 353 |
+
{file = "pathspec-0.11.1.tar.gz", hash = "sha256:2798de800fa92780e33acca925945e9a19a133b715067cf165b8866c15a31687"},
|
| 354 |
+
]
|
| 355 |
+
|
| 356 |
+
[[package]]
|
| 357 |
+
name = "platformdirs"
|
| 358 |
+
version = "3.2.0"
|
| 359 |
+
description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
|
| 360 |
+
category = "dev"
|
| 361 |
+
optional = false
|
| 362 |
+
python-versions = ">=3.7"
|
| 363 |
+
files = [
|
| 364 |
+
{file = "platformdirs-3.2.0-py3-none-any.whl", hash = "sha256:ebe11c0d7a805086e99506aa331612429a72ca7cd52a1f0d277dc4adc20cb10e"},
|
| 365 |
+
{file = "platformdirs-3.2.0.tar.gz", hash = "sha256:d5b638ca397f25f979350ff789db335903d7ea010ab28903f57b27e1b16c2b08"},
|
| 366 |
+
]
|
| 367 |
+
|
| 368 |
+
[package.extras]
|
| 369 |
+
docs = ["furo (>=2022.12.7)", "proselint (>=0.13)", "sphinx (>=6.1.3)", "sphinx-autodoc-typehints (>=1.22,!=1.23.4)"]
|
| 370 |
+
test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.2.2)", "pytest-cov (>=4)", "pytest-mock (>=3.10)"]
|
| 371 |
+
|
| 372 |
+
[[package]]
|
| 373 |
+
name = "prettier"
|
| 374 |
+
version = "0.0.7"
|
| 375 |
+
description = "Properly pprint of nested objects"
|
| 376 |
+
category = "dev"
|
| 377 |
+
optional = false
|
| 378 |
+
python-versions = "*"
|
| 379 |
+
files = [
|
| 380 |
+
{file = "prettier-0.0.7-py3-none-any.whl", hash = "sha256:20e76791de41cafe481328dd49552303f29ca192151cee1b120c26f66cae9bfc"},
|
| 381 |
+
{file = "prettier-0.0.7.tar.gz", hash = "sha256:6c34b8cd09fd9c8956c05d6395ea3f575e0122dce494ba57685c07065abed427"},
|
| 382 |
+
]
|
| 383 |
+
|
| 384 |
+
[[package]]
|
| 385 |
+
name = "pycodestyle"
|
| 386 |
+
version = "2.10.0"
|
| 387 |
+
description = "Python style guide checker"
|
| 388 |
+
category = "dev"
|
| 389 |
+
optional = false
|
| 390 |
+
python-versions = ">=3.6"
|
| 391 |
+
files = [
|
| 392 |
+
{file = "pycodestyle-2.10.0-py2.py3-none-any.whl", hash = "sha256:8a4eaf0d0495c7395bdab3589ac2db602797d76207242c17d470186815706610"},
|
| 393 |
+
{file = "pycodestyle-2.10.0.tar.gz", hash = "sha256:347187bdb476329d98f695c213d7295a846d1152ff4fe9bacb8a9590b8ee7053"},
|
| 394 |
+
]
|
| 395 |
+
|
| 396 |
+
[[package]]
|
| 397 |
+
name = "pydantic"
|
| 398 |
+
version = "1.10.7"
|
| 399 |
+
description = "Data validation and settings management using python type hints"
|
| 400 |
+
category = "main"
|
| 401 |
+
optional = false
|
| 402 |
+
python-versions = ">=3.7"
|
| 403 |
+
files = [
|
| 404 |
+
{file = "pydantic-1.10.7-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e79e999e539872e903767c417c897e729e015872040e56b96e67968c3b918b2d"},
|
| 405 |
+
{file = "pydantic-1.10.7-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:01aea3a42c13f2602b7ecbbea484a98169fb568ebd9e247593ea05f01b884b2e"},
|
| 406 |
+
{file = "pydantic-1.10.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:516f1ed9bc2406a0467dd777afc636c7091d71f214d5e413d64fef45174cfc7a"},
|
| 407 |
+
{file = "pydantic-1.10.7-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae150a63564929c675d7f2303008d88426a0add46efd76c3fc797cd71cb1b46f"},
|
| 408 |
+
{file = "pydantic-1.10.7-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ecbbc51391248116c0a055899e6c3e7ffbb11fb5e2a4cd6f2d0b93272118a209"},
|
| 409 |
+
{file = "pydantic-1.10.7-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f4a2b50e2b03d5776e7f21af73e2070e1b5c0d0df255a827e7c632962f8315af"},
|
| 410 |
+
{file = "pydantic-1.10.7-cp310-cp310-win_amd64.whl", hash = "sha256:a7cd2251439988b413cb0a985c4ed82b6c6aac382dbaff53ae03c4b23a70e80a"},
|
| 411 |
+
{file = "pydantic-1.10.7-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:68792151e174a4aa9e9fc1b4e653e65a354a2fa0fed169f7b3d09902ad2cb6f1"},
|
| 412 |
+
{file = "pydantic-1.10.7-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:dfe2507b8ef209da71b6fb5f4e597b50c5a34b78d7e857c4f8f3115effaef5fe"},
|
| 413 |
+
{file = "pydantic-1.10.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10a86d8c8db68086f1e30a530f7d5f83eb0685e632e411dbbcf2d5c0150e8dcd"},
|
| 414 |
+
{file = "pydantic-1.10.7-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d75ae19d2a3dbb146b6f324031c24f8a3f52ff5d6a9f22f0683694b3afcb16fb"},
|
| 415 |
+
{file = "pydantic-1.10.7-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:464855a7ff7f2cc2cf537ecc421291b9132aa9c79aef44e917ad711b4a93163b"},
|
| 416 |
+
{file = "pydantic-1.10.7-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:193924c563fae6ddcb71d3f06fa153866423ac1b793a47936656e806b64e24ca"},
|
| 417 |
+
{file = "pydantic-1.10.7-cp311-cp311-win_amd64.whl", hash = "sha256:b4a849d10f211389502059c33332e91327bc154acc1845f375a99eca3afa802d"},
|
| 418 |
+
{file = "pydantic-1.10.7-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:cc1dde4e50a5fc1336ee0581c1612215bc64ed6d28d2c7c6f25d2fe3e7c3e918"},
|
| 419 |
+
{file = "pydantic-1.10.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e0cfe895a504c060e5d36b287ee696e2fdad02d89e0d895f83037245218a87fe"},
|
| 420 |
+
{file = "pydantic-1.10.7-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:670bb4683ad1e48b0ecb06f0cfe2178dcf74ff27921cdf1606e527d2617a81ee"},
|
| 421 |
+
{file = "pydantic-1.10.7-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:950ce33857841f9a337ce07ddf46bc84e1c4946d2a3bba18f8280297157a3fd1"},
|
| 422 |
+
{file = "pydantic-1.10.7-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c15582f9055fbc1bfe50266a19771bbbef33dd28c45e78afbe1996fd70966c2a"},
|
| 423 |
+
{file = "pydantic-1.10.7-cp37-cp37m-win_amd64.whl", hash = "sha256:82dffb306dd20bd5268fd6379bc4bfe75242a9c2b79fec58e1041fbbdb1f7914"},
|
| 424 |
+
{file = "pydantic-1.10.7-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:8c7f51861d73e8b9ddcb9916ae7ac39fb52761d9ea0df41128e81e2ba42886cd"},
|
| 425 |
+
{file = "pydantic-1.10.7-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6434b49c0b03a51021ade5c4daa7d70c98f7a79e95b551201fff682fc1661245"},
|
| 426 |
+
{file = "pydantic-1.10.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64d34ab766fa056df49013bb6e79921a0265204c071984e75a09cbceacbbdd5d"},
|
| 427 |
+
{file = "pydantic-1.10.7-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:701daea9ffe9d26f97b52f1d157e0d4121644f0fcf80b443248434958fd03dc3"},
|
| 428 |
+
{file = "pydantic-1.10.7-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:cf135c46099ff3f919d2150a948ce94b9ce545598ef2c6c7bf55dca98a304b52"},
|
| 429 |
+
{file = "pydantic-1.10.7-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b0f85904f73161817b80781cc150f8b906d521fa11e3cdabae19a581c3606209"},
|
| 430 |
+
{file = "pydantic-1.10.7-cp38-cp38-win_amd64.whl", hash = "sha256:9f6f0fd68d73257ad6685419478c5aece46432f4bdd8d32c7345f1986496171e"},
|
| 431 |
+
{file = "pydantic-1.10.7-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c230c0d8a322276d6e7b88c3f7ce885f9ed16e0910354510e0bae84d54991143"},
|
| 432 |
+
{file = "pydantic-1.10.7-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:976cae77ba6a49d80f461fd8bba183ff7ba79f44aa5cfa82f1346b5626542f8e"},
|
| 433 |
+
{file = "pydantic-1.10.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7d45fc99d64af9aaf7e308054a0067fdcd87ffe974f2442312372dfa66e1001d"},
|
| 434 |
+
{file = "pydantic-1.10.7-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d2a5ebb48958754d386195fe9e9c5106f11275867051bf017a8059410e9abf1f"},
|
| 435 |
+
{file = "pydantic-1.10.7-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:abfb7d4a7cd5cc4e1d1887c43503a7c5dd608eadf8bc615413fc498d3e4645cd"},
|
| 436 |
+
{file = "pydantic-1.10.7-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:80b1fab4deb08a8292d15e43a6edccdffa5377a36a4597bb545b93e79c5ff0a5"},
|
| 437 |
+
{file = "pydantic-1.10.7-cp39-cp39-win_amd64.whl", hash = "sha256:d71e69699498b020ea198468e2480a2f1e7433e32a3a99760058c6520e2bea7e"},
|
| 438 |
+
{file = "pydantic-1.10.7-py3-none-any.whl", hash = "sha256:0cd181f1d0b1d00e2b705f1bf1ac7799a2d938cce3376b8007df62b29be3c2c6"},
|
| 439 |
+
{file = "pydantic-1.10.7.tar.gz", hash = "sha256:cfc83c0678b6ba51b0532bea66860617c4cd4251ecf76e9846fa5a9f3454e97e"},
|
| 440 |
+
]
|
| 441 |
+
|
| 442 |
+
[package.dependencies]
|
| 443 |
+
typing-extensions = ">=4.2.0"
|
| 444 |
+
|
| 445 |
+
[package.extras]
|
| 446 |
+
dotenv = ["python-dotenv (>=0.10.4)"]
|
| 447 |
+
email = ["email-validator (>=1.0.3)"]
|
| 448 |
+
|
| 449 |
+
[[package]]
|
| 450 |
+
name = "pyflakes"
|
| 451 |
+
version = "3.0.1"
|
| 452 |
+
description = "passive checker of Python programs"
|
| 453 |
+
category = "dev"
|
| 454 |
+
optional = false
|
| 455 |
+
python-versions = ">=3.6"
|
| 456 |
+
files = [
|
| 457 |
+
{file = "pyflakes-3.0.1-py2.py3-none-any.whl", hash = "sha256:ec55bf7fe21fff7f1ad2f7da62363d749e2a470500eab1b555334b67aa1ef8cf"},
|
| 458 |
+
{file = "pyflakes-3.0.1.tar.gz", hash = "sha256:ec8b276a6b60bd80defed25add7e439881c19e64850afd9b346283d4165fd0fd"},
|
| 459 |
+
]
|
| 460 |
+
|
| 461 |
+
[[package]]
|
| 462 |
+
name = "pyright"
|
| 463 |
+
version = "1.1.303"
|
| 464 |
+
description = "Command line wrapper for pyright"
|
| 465 |
+
category = "dev"
|
| 466 |
+
optional = false
|
| 467 |
+
python-versions = ">=3.7"
|
| 468 |
+
files = [
|
| 469 |
+
{file = "pyright-1.1.303-py3-none-any.whl", hash = "sha256:8fe3d122d7e965e2df2cef64e1ceb98cff8200f458e7892d92a4c21ee85689c7"},
|
| 470 |
+
{file = "pyright-1.1.303.tar.gz", hash = "sha256:7daa516424555681e8974b21a95c108c5def791bf5381522b1410026d4da62c1"},
|
| 471 |
+
]
|
| 472 |
+
|
| 473 |
+
[package.dependencies]
|
| 474 |
+
nodeenv = ">=1.6.0"
|
| 475 |
+
|
| 476 |
+
[package.extras]
|
| 477 |
+
all = ["twine (>=3.4.1)"]
|
| 478 |
+
dev = ["twine (>=3.4.1)"]
|
| 479 |
+
|
| 480 |
+
[[package]]
|
| 481 |
+
name = "pyyaml"
|
| 482 |
+
version = "6.0"
|
| 483 |
+
description = "YAML parser and emitter for Python"
|
| 484 |
+
category = "dev"
|
| 485 |
+
optional = false
|
| 486 |
+
python-versions = ">=3.6"
|
| 487 |
+
files = [
|
| 488 |
+
{file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"},
|
| 489 |
+
{file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"},
|
| 490 |
+
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"},
|
| 491 |
+
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"},
|
| 492 |
+
{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"},
|
| 493 |
+
{file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"},
|
| 494 |
+
{file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"},
|
| 495 |
+
{file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"},
|
| 496 |
+
{file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"},
|
| 497 |
+
{file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"},
|
| 498 |
+
{file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"},
|
| 499 |
+
{file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"},
|
| 500 |
+
{file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"},
|
| 501 |
+
{file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"},
|
| 502 |
+
{file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"},
|
| 503 |
+
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"},
|
| 504 |
+
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"},
|
| 505 |
+
{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"},
|
| 506 |
+
{file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"},
|
| 507 |
+
{file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"},
|
| 508 |
+
{file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"},
|
| 509 |
+
{file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"},
|
| 510 |
+
{file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"},
|
| 511 |
+
{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"},
|
| 512 |
+
{file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"},
|
| 513 |
+
{file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"},
|
| 514 |
+
{file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"},
|
| 515 |
+
{file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"},
|
| 516 |
+
{file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"},
|
| 517 |
+
{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"},
|
| 518 |
+
{file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"},
|
| 519 |
+
{file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"},
|
| 520 |
+
{file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"},
|
| 521 |
+
{file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"},
|
| 522 |
+
{file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"},
|
| 523 |
+
{file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"},
|
| 524 |
+
{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"},
|
| 525 |
+
{file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"},
|
| 526 |
+
{file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"},
|
| 527 |
+
{file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"},
|
| 528 |
+
]
|
| 529 |
+
|
| 530 |
+
[[package]]
|
| 531 |
+
name = "setuptools"
|
| 532 |
+
version = "67.6.1"
|
| 533 |
+
description = "Easily download, build, install, upgrade, and uninstall Python packages"
|
| 534 |
+
category = "dev"
|
| 535 |
+
optional = false
|
| 536 |
+
python-versions = ">=3.7"
|
| 537 |
+
files = [
|
| 538 |
+
{file = "setuptools-67.6.1-py3-none-any.whl", hash = "sha256:e728ca814a823bf7bf60162daf9db95b93d532948c4c0bea762ce62f60189078"},
|
| 539 |
+
{file = "setuptools-67.6.1.tar.gz", hash = "sha256:257de92a9d50a60b8e22abfcbb771571fde0dbf3ec234463212027a4eeecbe9a"},
|
| 540 |
+
]
|
| 541 |
+
|
| 542 |
+
[package.extras]
|
| 543 |
+
docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (==0.8.3)", "sphinx-reredirects", "sphinxcontrib-towncrier"]
|
| 544 |
+
testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8 (<5)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pip-run (>=8.8)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"]
|
| 545 |
+
testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"]
|
| 546 |
+
|
| 547 |
+
[[package]]
|
| 548 |
+
name = "sniffio"
|
| 549 |
+
version = "1.3.0"
|
| 550 |
+
description = "Sniff out which async library your code is running under"
|
| 551 |
+
category = "main"
|
| 552 |
+
optional = false
|
| 553 |
+
python-versions = ">=3.7"
|
| 554 |
+
files = [
|
| 555 |
+
{file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"},
|
| 556 |
+
{file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"},
|
| 557 |
+
]
|
| 558 |
+
|
| 559 |
+
[[package]]
|
| 560 |
+
name = "starlette"
|
| 561 |
+
version = "0.26.1"
|
| 562 |
+
description = "The little ASGI library that shines."
|
| 563 |
+
category = "main"
|
| 564 |
+
optional = false
|
| 565 |
+
python-versions = ">=3.7"
|
| 566 |
+
files = [
|
| 567 |
+
{file = "starlette-0.26.1-py3-none-any.whl", hash = "sha256:e87fce5d7cbdde34b76f0ac69013fd9d190d581d80681493016666e6f96c6d5e"},
|
| 568 |
+
{file = "starlette-0.26.1.tar.gz", hash = "sha256:41da799057ea8620e4667a3e69a5b1923ebd32b1819c8fa75634bbe8d8bea9bd"},
|
| 569 |
+
]
|
| 570 |
+
|
| 571 |
+
[package.dependencies]
|
| 572 |
+
anyio = ">=3.4.0,<5"
|
| 573 |
+
typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""}
|
| 574 |
+
|
| 575 |
+
[package.extras]
|
| 576 |
+
full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart", "pyyaml"]
|
| 577 |
+
|
| 578 |
+
[[package]]
|
| 579 |
+
name = "stdlibs"
|
| 580 |
+
version = "2022.10.9"
|
| 581 |
+
description = "List of packages in the stdlib"
|
| 582 |
+
category = "dev"
|
| 583 |
+
optional = false
|
| 584 |
+
python-versions = ">=3.7"
|
| 585 |
+
files = [
|
| 586 |
+
{file = "stdlibs-2022.10.9-py3-none-any.whl", hash = "sha256:0deede419c34f9d57cddaff35939af6e186be6b3293c1f022eb0647709fb5b78"},
|
| 587 |
+
{file = "stdlibs-2022.10.9.tar.gz", hash = "sha256:72a3e4a7fbb40b0e766197e3381c2aabb4ca0442633e0bd99ffeec3908c9fdd8"},
|
| 588 |
+
]
|
| 589 |
+
|
| 590 |
+
[[package]]
|
| 591 |
+
name = "toml"
|
| 592 |
+
version = "0.10.2"
|
| 593 |
+
description = "Python Library for Tom's Obvious, Minimal Language"
|
| 594 |
+
category = "dev"
|
| 595 |
+
optional = false
|
| 596 |
+
python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
|
| 597 |
+
files = [
|
| 598 |
+
{file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"},
|
| 599 |
+
{file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"},
|
| 600 |
+
]
|
| 601 |
+
|
| 602 |
+
[[package]]
|
| 603 |
+
name = "tomli"
|
| 604 |
+
version = "2.0.1"
|
| 605 |
+
description = "A lil' TOML parser"
|
| 606 |
+
category = "dev"
|
| 607 |
+
optional = false
|
| 608 |
+
python-versions = ">=3.7"
|
| 609 |
+
files = [
|
| 610 |
+
{file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"},
|
| 611 |
+
{file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"},
|
| 612 |
+
]
|
| 613 |
+
|
| 614 |
+
[[package]]
|
| 615 |
+
name = "trailrunner"
|
| 616 |
+
version = "1.4.0"
|
| 617 |
+
description = "Run things on paths"
|
| 618 |
+
category = "dev"
|
| 619 |
+
optional = false
|
| 620 |
+
python-versions = ">=3.7"
|
| 621 |
+
files = [
|
| 622 |
+
{file = "trailrunner-1.4.0-py3-none-any.whl", hash = "sha256:a286d39f2723f28d167347f41cf8f232832648709366e722f55cf5545772a48e"},
|
| 623 |
+
{file = "trailrunner-1.4.0.tar.gz", hash = "sha256:3fe61e259e6b2e5192f321c265985b7a0dc18497ced62b2da244f08104978398"},
|
| 624 |
+
]
|
| 625 |
+
|
| 626 |
+
[package.dependencies]
|
| 627 |
+
pathspec = ">=0.8.1"
|
| 628 |
+
|
| 629 |
+
[package.extras]
|
| 630 |
+
dev = ["attribution (==1.6.2)", "black (==22.3.0)", "click (==8.1.3)", "coverage (==6.5)", "flake8 (==4.0.1)", "flake8-bugbear (==23.2.13)", "flit (==3.7.1)", "mypy (==1.1.1)", "rich (==13.3.2)", "ufmt (==2.0.1)", "usort (==1.0.5)"]
|
| 631 |
+
docs = ["sphinx (==6.1.3)", "sphinx-mdinclude (==0.5.3)"]
|
| 632 |
+
|
| 633 |
+
[[package]]
|
| 634 |
+
name = "typing-extensions"
|
| 635 |
+
version = "4.5.0"
|
| 636 |
+
description = "Backported and Experimental Type Hints for Python 3.7+"
|
| 637 |
+
category = "main"
|
| 638 |
+
optional = false
|
| 639 |
+
python-versions = ">=3.7"
|
| 640 |
+
files = [
|
| 641 |
+
{file = "typing_extensions-4.5.0-py3-none-any.whl", hash = "sha256:fb33085c39dd998ac16d1431ebc293a8b3eedd00fd4a32de0ff79002c19511b4"},
|
| 642 |
+
{file = "typing_extensions-4.5.0.tar.gz", hash = "sha256:5cb5f4a79139d699607b3ef622a1dedafa84e115ab0024e0d9c044a9479ca7cb"},
|
| 643 |
+
]
|
| 644 |
+
|
| 645 |
+
[[package]]
|
| 646 |
+
name = "typing-inspect"
|
| 647 |
+
version = "0.8.0"
|
| 648 |
+
description = "Runtime inspection utilities for typing module."
|
| 649 |
+
category = "dev"
|
| 650 |
+
optional = false
|
| 651 |
+
python-versions = "*"
|
| 652 |
+
files = [
|
| 653 |
+
{file = "typing_inspect-0.8.0-py3-none-any.whl", hash = "sha256:5fbf9c1e65d4fa01e701fe12a5bca6c6e08a4ffd5bc60bfac028253a447c5188"},
|
| 654 |
+
{file = "typing_inspect-0.8.0.tar.gz", hash = "sha256:8b1ff0c400943b6145df8119c41c244ca8207f1f10c9c057aeed1560e4806e3d"},
|
| 655 |
+
]
|
| 656 |
+
|
| 657 |
+
[package.dependencies]
|
| 658 |
+
mypy-extensions = ">=0.3.0"
|
| 659 |
+
typing-extensions = ">=3.7.4"
|
| 660 |
+
|
| 661 |
+
[[package]]
|
| 662 |
+
name = "usort"
|
| 663 |
+
version = "1.0.6"
|
| 664 |
+
description = "A small, safe import sorter"
|
| 665 |
+
category = "dev"
|
| 666 |
+
optional = false
|
| 667 |
+
python-versions = ">=3.6"
|
| 668 |
+
files = [
|
| 669 |
+
{file = "usort-1.0.6-py3-none-any.whl", hash = "sha256:81c69a4a6a750824834b18019a2e325ea38d7ae944cca4d98f15e62a27ca1f27"},
|
| 670 |
+
{file = "usort-1.0.6.tar.gz", hash = "sha256:b30a212f196d8f7b624e8c70ff0b11a6de4b1e1f21cc4fa75adf1689367e807a"},
|
| 671 |
+
]
|
| 672 |
+
|
| 673 |
+
[package.dependencies]
|
| 674 |
+
attrs = ">=21.2.0"
|
| 675 |
+
click = ">=7.0.0"
|
| 676 |
+
LibCST = ">=0.3.7"
|
| 677 |
+
moreorless = ">=0.3.0"
|
| 678 |
+
stdlibs = ">=2021.4.1"
|
| 679 |
+
toml = ">=0.10.0"
|
| 680 |
+
trailrunner = ">=1.0"
|
| 681 |
+
|
| 682 |
+
[[package]]
|
| 683 |
+
name = "uvicorn"
|
| 684 |
+
version = "0.21.1"
|
| 685 |
+
description = "The lightning-fast ASGI server."
|
| 686 |
+
category = "main"
|
| 687 |
+
optional = false
|
| 688 |
+
python-versions = ">=3.7"
|
| 689 |
+
files = [
|
| 690 |
+
{file = "uvicorn-0.21.1-py3-none-any.whl", hash = "sha256:e47cac98a6da10cd41e6fd036d472c6f58ede6c5dbee3dbee3ef7a100ed97742"},
|
| 691 |
+
{file = "uvicorn-0.21.1.tar.gz", hash = "sha256:0fac9cb342ba099e0d582966005f3fdba5b0290579fed4a6266dc702ca7bb032"},
|
| 692 |
+
]
|
| 693 |
+
|
| 694 |
+
[package.dependencies]
|
| 695 |
+
click = ">=7.0"
|
| 696 |
+
h11 = ">=0.8"
|
| 697 |
+
|
| 698 |
+
[package.extras]
|
| 699 |
+
standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"]
|
| 700 |
+
|
| 701 |
+
[metadata]
|
| 702 |
+
lock-version = "2.0"
|
| 703 |
+
python-versions = "^3.8.1"
|
| 704 |
+
content-hash = "3c75504cab4f87ed6dabe316e8c9698605b4cc250adcc472b721a0b54715921b"
|
poetry.toml
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[virtualenvs]
|
| 2 |
+
in-project = true
|
pyproject.toml
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
[tool.poetry]
|
| 2 |
+
name = "zeno-evals-hub"
|
| 3 |
+
version = "0.1.0"
|
| 4 |
+
description = ""
|
| 5 |
+
authors = ["Alex Cabrera <alex.cabrera@gmail.com>"]
|
| 6 |
+
readme = "README.md"
|
| 7 |
+
|
| 8 |
+
[tool.poetry.dependencies]
|
| 9 |
+
python = "^3.8.1"
|
| 10 |
+
fastapi = "^0.95.0"
|
| 11 |
+
uvicorn = "^0.21.1"
|
| 12 |
+
|
| 13 |
+
[tool.poetry.dev-dependencies]
|
| 14 |
+
black = "^23.3.0"
|
| 15 |
+
usort = "^1.0.6"
|
| 16 |
+
flake8 = "^6.0.0"
|
| 17 |
+
mypy = "^1.2.0"
|
| 18 |
+
pyright = "^1.1.302"
|
| 19 |
+
prettier = "^0.0.7"
|
| 20 |
+
|
| 21 |
+
[build-system]
|
| 22 |
+
requires = ["poetry-core"]
|
| 23 |
+
build-backend = "poetry.core.masonry.api"
|
| 24 |
+
|
| 25 |
+
[tool.poetry.scripts]
|
| 26 |
+
zeno-evals-hub = "zeno-evals-hub.runner:command_line"
|
| 27 |
+
|
| 28 |
+
[tool.pyright]
|
| 29 |
+
include = ["zeno-evals-hub"]
|
| 30 |
+
useLibraryCodeForTypes = true
|
zeno-evals-hub/__init__.py
ADDED
|
File without changes
|
zeno-evals-hub/frontend/index.html
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="en">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8" />
|
| 5 |
+
<link rel="icon" type="image/svg+xml" href="./build/vite.svg" />
|
| 6 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
| 7 |
+
<title>Vite + Svelte + TS</title>
|
| 8 |
+
<!-- Material Icons -->
|
| 9 |
+
<link
|
| 10 |
+
rel="stylesheet"
|
| 11 |
+
href="https://fonts.googleapis.com/icon?family=Material+Icons"
|
| 12 |
+
/>
|
| 13 |
+
<!-- Roboto -->
|
| 14 |
+
<link
|
| 15 |
+
rel="stylesheet"
|
| 16 |
+
href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700"
|
| 17 |
+
/>
|
| 18 |
+
<!-- Roboto Mono -->
|
| 19 |
+
<link
|
| 20 |
+
rel="stylesheet"
|
| 21 |
+
href="https://fonts.googleapis.com/css?family=Roboto+Mono"
|
| 22 |
+
/>
|
| 23 |
+
</head>
|
| 24 |
+
<body>
|
| 25 |
+
<div id="app"></div>
|
| 26 |
+
<script type="module" src="http://localhost:5173/src/main.ts"></script>
|
| 27 |
+
</body>
|
| 28 |
+
</html>
|
zeno-evals-hub/runner.py
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
|
| 3 |
+
import uvicorn
|
| 4 |
+
from fastapi import FastAPI
|
| 5 |
+
from fastapi.staticfiles import StaticFiles
|
| 6 |
+
|
| 7 |
+
# from zeno import get_server, zeno
|
| 8 |
+
|
| 9 |
+
# create zeno object
|
| 10 |
+
# create second zeno object
|
| 11 |
+
|
| 12 |
+
# create fastapi for both zeno objects
|
| 13 |
+
|
| 14 |
+
# serve
|
| 15 |
+
|
| 16 |
+
# get_server()
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
def command_line():
|
| 20 |
+
app = FastAPI(title="Frontend API")
|
| 21 |
+
api_app = FastAPI(title="Backend API")
|
| 22 |
+
|
| 23 |
+
app.mount("/api", api_app)
|
| 24 |
+
app.mount(
|
| 25 |
+
"/",
|
| 26 |
+
StaticFiles(
|
| 27 |
+
directory=os.path.dirname(os.path.realpath(__file__)) + "/frontend",
|
| 28 |
+
html=True,
|
| 29 |
+
),
|
| 30 |
+
name="base",
|
| 31 |
+
)
|
| 32 |
+
|
| 33 |
+
print("Running server")
|
| 34 |
+
uvicorn.run(app)
|