mirror of
https://github.com/PR0M3TH3AN/SeedPass.git
synced 2025-09-08 15:28:44 +00:00
chore: add poetry and CI tests
This commit is contained in:
38
.github/workflows/tests.yml
vendored
Normal file
38
.github/workflows/tests.yml
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
name: Tests
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: ["**"]
|
||||
pull_request:
|
||||
branches: ["**"]
|
||||
|
||||
jobs:
|
||||
test:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest, windows-latest]
|
||||
python-version: ["3.10", "3.11", "3.12"]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
- name: Install Poetry
|
||||
run: pipx install poetry
|
||||
- name: Install dependencies
|
||||
run: poetry install
|
||||
- name: Check formatting
|
||||
run: poetry run black --check .
|
||||
- name: Run security audit
|
||||
run: poetry run pip-audit
|
||||
- name: Run tests with coverage
|
||||
run: |
|
||||
poetry run coverage run -m pytest
|
||||
poetry run coverage xml
|
||||
- name: Upload coverage report
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: coverage-${{ matrix.os }}-py${{ matrix.python-version }}
|
||||
path: coverage.xml
|
||||
|
3042
poetry.lock
generated
Normal file
3042
poetry.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,12 +1,47 @@
|
||||
[project]
|
||||
[tool.poetry]
|
||||
name = "seedpass"
|
||||
version = "0.1.0"
|
||||
description = "Deterministic password manager with a BeeWare GUI"
|
||||
authors = []
|
||||
|
||||
[build-system]
|
||||
requires = ["setuptools>=61", "wheel"]
|
||||
build-backend = "setuptools.build_meta"
|
||||
[tool.poetry.dependencies]
|
||||
python = ">=3.10,<3.13"
|
||||
toga-core = ">=0.5.2"
|
||||
colorama = ">=0.4.6"
|
||||
termcolor = ">=1.1.0"
|
||||
cryptography = ">=40.0.2"
|
||||
bip-utils = ">=2.5.0"
|
||||
bech32 = "1.2.0"
|
||||
coincurve = ">=18.0.0"
|
||||
mnemonic = "*"
|
||||
aiohttp = ">=3.12.15"
|
||||
bcrypt = "*"
|
||||
portalocker = ">=2.8"
|
||||
nostr-sdk = ">=0.43"
|
||||
websocket-client = "1.7.0"
|
||||
websockets = ">=15.0.0"
|
||||
tomli = "*"
|
||||
pgpy = "0.6.0"
|
||||
pyotp = ">=2.8.0"
|
||||
pyperclip = "*"
|
||||
qrcode = ">=8.2"
|
||||
typer = ">=0.12.3"
|
||||
fastapi = ">=0.116.0"
|
||||
uvicorn = ">=0.35.0"
|
||||
httpx = ">=0.28.1"
|
||||
requests = ">=2.32"
|
||||
python-multipart = ">=0.0.20"
|
||||
orjson = "*"
|
||||
argon2-cffi = "*"
|
||||
|
||||
[project.scripts]
|
||||
[tool.poetry.group.dev.dependencies]
|
||||
pytest = "^8.2"
|
||||
coverage = "^7.5"
|
||||
black = "^24.3"
|
||||
pip-audit = "^2.7"
|
||||
pytest-xdist = "^3.5"
|
||||
|
||||
[tool.poetry.scripts]
|
||||
seedpass = "seedpass.cli:app"
|
||||
seedpass-gui = "seedpass_gui.app:main"
|
||||
|
||||
@@ -49,3 +84,8 @@ requires = [
|
||||
"argon2-cffi",
|
||||
]
|
||||
icon = "logo/png/SeedPass-Logo-24.png"
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core"]
|
||||
build-backend = "poetry.core.masonry.api"
|
||||
|
||||
|
Reference in New Issue
Block a user