From f4be2c9ff43e09aa5ba82af31e1c0be103d0d43e Mon Sep 17 00:00:00 2001 From: jpk Date: Sat, 13 May 2023 13:31:49 +0200 Subject: [PATCH] [WIP] Start implementing functionality --- blatted/cli/__init__.py | 17 +++++++++++++++++ blatted/tools/__init__.py | 0 blatted/tools/ble/__init__.py | 0 blatted/tools/ble/scanner.py | 4 ++++ poetry.lock | 34 +++++++++++++++++++++++++--------- pyproject.toml | 4 +++- 6 files changed, 49 insertions(+), 10 deletions(-) create mode 100644 blatted/cli/__init__.py create mode 100644 blatted/tools/__init__.py create mode 100644 blatted/tools/ble/__init__.py create mode 100644 blatted/tools/ble/scanner.py diff --git a/blatted/cli/__init__.py b/blatted/cli/__init__.py new file mode 100644 index 0000000..c88c842 --- /dev/null +++ b/blatted/cli/__init__.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python3 + +import click + + + +@click.command() +def scan(): + pass + + +@click.group() +def main(): + pass + + +main.add_command(scan) diff --git a/blatted/tools/__init__.py b/blatted/tools/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/blatted/tools/ble/__init__.py b/blatted/tools/ble/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/blatted/tools/ble/scanner.py b/blatted/tools/ble/scanner.py new file mode 100644 index 0000000..57d47f5 --- /dev/null +++ b/blatted/tools/ble/scanner.py @@ -0,0 +1,4 @@ +from bleak import BleakScanner + +def scanner(): + print("scanner called") diff --git a/poetry.lock b/poetry.lock index c4cb278..36d5239 100644 --- a/poetry.lock +++ b/poetry.lock @@ -18,6 +18,18 @@ six = "*" [package.extras] test = ["astroid", "pytest"] +[[package]] +name = "async-timeout" +version = "4.0.2" +description = "Timeout context manager for asyncio programs" +category = "main" +optional = false +python-versions = ">=3.6" +files = [ + {file = "async-timeout-4.0.2.tar.gz", hash = "sha256:2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15"}, + {file = "async_timeout-4.0.2-py3-none-any.whl", hash = "sha256:8ca1e4fcf50d07413d66d1a5e416e42cfdf5851c981d679a09851a6853383b3c"}, +] + [[package]] name = "bleak" version = "0.20.2" @@ -31,6 +43,7 @@ files = [ ] [package.dependencies] +async-timeout = {version = ">=3.0.0,<5", markers = "python_version < \"3.11\""} bleak-winrt = {version = ">=1.2.0,<2.0.0", markers = "platform_system == \"Windows\""} dbus-fast = {version = ">=1.83.0,<2.0.0", markers = "platform_system == \"Linux\""} pyobjc-core = {version = ">=9.0.1,<10.0.0", markers = "platform_system == \"Darwin\""} @@ -135,6 +148,9 @@ files = [ {file = "dbus_fast-1.86.0.tar.gz", hash = "sha256:ca376a360f1bc2c3d59e9edfb5e4de5be389cca37e8c92f4539176ddf755341e"}, ] +[package.dependencies] +async-timeout = {version = ">=3.0.0", markers = "python_version < \"3.11\""} + [[package]] name = "distlib" version = "0.3.6" @@ -261,14 +277,14 @@ files = [ [[package]] name = "nodeenv" -version = "1.7.0" +version = "1.8.0" description = "Node.js virtual environment builder" category = "dev" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" files = [ - {file = "nodeenv-1.7.0-py2.py3-none-any.whl", hash = "sha256:27083a7b96a25f2f5e1d8cb4b6317ee8aeda3bdd121394e5ac54e498028a042e"}, - {file = "nodeenv-1.7.0.tar.gz", hash = "sha256:e0e7f7dfb85fc5394c6fe1e8fa98131a2473e04311a45afb6508f7cf1836fa2b"}, + {file = "nodeenv-1.8.0-py2.py3-none-any.whl", hash = "sha256:df865724bb3c3adc86b3876fa209771517b0cfe596beff01a92700e0e8be4cec"}, + {file = "nodeenv-1.8.0.tar.gz", hash = "sha256:d51e0c37e64fbf47d017feac3145cdbb58836d7eee8c6f6d3b6880c5456227d2"}, ] [package.dependencies] @@ -276,18 +292,18 @@ setuptools = "*" [[package]] name = "platformdirs" -version = "3.5.0" +version = "3.5.1" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." category = "dev" optional = false python-versions = ">=3.7" files = [ - {file = "platformdirs-3.5.0-py3-none-any.whl", hash = "sha256:47692bc24c1958e8b0f13dd727307cff1db103fca36399f457da8e05f222fdc4"}, - {file = "platformdirs-3.5.0.tar.gz", hash = "sha256:7954a68d0ba23558d753f73437c55f89027cf8f5108c19844d4b82e5af396335"}, + {file = "platformdirs-3.5.1-py3-none-any.whl", hash = "sha256:e2378146f1964972c03c085bb5662ae80b2b8c06226c54b2ff4aa9483e8a13a5"}, + {file = "platformdirs-3.5.1.tar.gz", hash = "sha256:412dae91f52a6f84830f39a8078cecd0e866cb72294a5c66808e74d5e88d251f"}, ] [package.extras] -docs = ["furo (>=2023.3.27)", "proselint (>=0.13)", "sphinx (>=6.1.3)", "sphinx-autodoc-typehints (>=1.23,!=1.23.4)"] +docs = ["furo (>=2023.3.27)", "proselint (>=0.13)", "sphinx (>=6.2.1)", "sphinx-autodoc-typehints (>=1.23,!=1.23.4)"] test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.3.1)", "pytest-cov (>=4)", "pytest-mock (>=3.10)"] [[package]] @@ -520,5 +536,5 @@ test = ["covdefaults (>=2.3)", "coverage (>=7.2.3)", "coverage-enable-subprocess [metadata] lock-version = "2.0" -python-versions = "^3.11" -content-hash = "007d9cfbfda94e650c36484f03badcf756b9bb710eacda7ad1c8aa7c868575cc" +python-versions = "^3.10" +content-hash = "1a257f20c24d028b39114e970d7e3156f4cac3daeae8e443f1381b168c7eeca5" diff --git a/pyproject.toml b/pyproject.toml index afcdc4a..4cce4bb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,11 +6,13 @@ authors = ["jpk "] readme = "README.md" [tool.poetry.dependencies] -python = "^3.11" +python = "^3.10" bleak = "^0.20.2" click = "^8.1.3" rich = "^13.3.5" +[tool.poetry.scripts] +blatted = "blatted.cli:main" [tool.poetry.group.dev.dependencies] pre-commit = "^3.3.1"