diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index f80c5f6..1adfd14 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -10,6 +10,7 @@ permissions: jobs: publish: runs-on: ubuntu-latest + environment: pypi steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 diff --git a/README.md b/README.md index 5ee94d9..18250f7 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,34 @@ -# pydoh +# savdoh DNS-over-HTTPS резолвер для питона. ноль зависимостей — весь HTTPS через стандартный `http.client`+`ssl`. провайдер/DPI видит только твой HTTPS к cloudflare, а не голые DNS-запросы. ```mermaid sequenceDiagram - App->>pydoh: resolve("example.com") - pydoh->>Cloudflare: DNS-запрос внутри HTTPS POST - Cloudflare-->>pydoh: ответ внутри HTTPS - pydoh-->>App: ["93.184.216.34"] + App->>savdoh: resolve("example.com") + savdoh->>Cloudflare: DNS-запрос внутри HTTPS POST + Cloudflare-->>savdoh: ответ внутри HTTPS + savdoh-->>App: ["93.184.216.34"] ``` ## установка ``` -pip install pydoh +pip install savdoh ``` ## юзать ```python -import pydoh +import savdoh -ips = pydoh.resolve("example.com") +ips = savdoh.resolve("example.com") ``` или подменить резолвинг вообще везде в питоне одной строкой — `requests`, `aiohttp`, что угодно на сокетах будет резолвить через DoH: ```python -import pydoh -pydoh.patch_socket() +import savdoh +savdoh.patch_socket() ``` ## фичи diff --git a/pyproject.toml b/pyproject.toml index b04bf13..e413347 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ requires = ["hatchling"] build-backend = "hatchling.build" [project] -name = "pydoh" +name = "savdoh" version = "0.1.0" description = "zero-dependency DNS over HTTPS resolver for Python, with an optional socket.getaddrinfo patch" readme = "README.md" @@ -23,11 +23,11 @@ classifiers = [ ] [project.urls] -Homepage = "https://github.com/ImSavsis/pydoh" -Issues = "https://github.com/ImSavsis/pydoh/issues" +Homepage = "https://github.com/ImSavsis/savdoh" +Issues = "https://github.com/ImSavsis/savdoh/issues" [project.optional-dependencies] dev = ["pytest", "build", "twine"] [tool.hatch.build.targets.wheel] -packages = ["src/pydoh"] +packages = ["src/savdoh"] diff --git a/src/pydoh/__init__.py b/src/savdoh/__init__.py similarity index 100% rename from src/pydoh/__init__.py rename to src/savdoh/__init__.py diff --git a/src/pydoh/cache.py b/src/savdoh/cache.py similarity index 100% rename from src/pydoh/cache.py rename to src/savdoh/cache.py diff --git a/src/pydoh/patch.py b/src/savdoh/patch.py similarity index 100% rename from src/pydoh/patch.py rename to src/savdoh/patch.py diff --git a/src/pydoh/providers.py b/src/savdoh/providers.py similarity index 100% rename from src/pydoh/providers.py rename to src/savdoh/providers.py diff --git a/src/pydoh/py.typed b/src/savdoh/py.typed similarity index 100% rename from src/pydoh/py.typed rename to src/savdoh/py.typed diff --git a/src/pydoh/resolver.py b/src/savdoh/resolver.py similarity index 100% rename from src/pydoh/resolver.py rename to src/savdoh/resolver.py diff --git a/src/pydoh/wire.py b/src/savdoh/wire.py similarity index 100% rename from src/pydoh/wire.py rename to src/savdoh/wire.py diff --git a/tests/test_cache.py b/tests/test_cache.py index 7eae268..c86a68b 100644 --- a/tests/test_cache.py +++ b/tests/test_cache.py @@ -1,6 +1,6 @@ import time -from pydoh.cache import TTLCache +from savdoh.cache import TTLCache def test_cache_hit(): diff --git a/tests/test_live.py b/tests/test_live.py index 685a207..1228aca 100644 --- a/tests/test_live.py +++ b/tests/test_live.py @@ -1,4 +1,4 @@ -from pydoh import resolve +from savdoh import resolve def test_live_resolve_example_com(): diff --git a/tests/test_patch.py b/tests/test_patch.py index 09210d0..0cbbdac 100644 --- a/tests/test_patch.py +++ b/tests/test_patch.py @@ -1,6 +1,6 @@ import socket -from pydoh.patch import patch_socket, unpatch_socket +from savdoh.patch import patch_socket, unpatch_socket def test_patch_and_unpatch_restores_original(): diff --git a/tests/test_resolver.py b/tests/test_resolver.py index fd4e44f..5d7ce84 100644 --- a/tests/test_resolver.py +++ b/tests/test_resolver.py @@ -1,7 +1,7 @@ import struct -import pydoh.resolver as resolver_module -from pydoh.resolver import ResolveError, resolve +import savdoh.resolver as resolver_module +from savdoh.resolver import ResolveError, resolve def _make_response(query_id, ip): diff --git a/tests/test_wire.py b/tests/test_wire.py index 26ce3c0..78a57e1 100644 --- a/tests/test_wire.py +++ b/tests/test_wire.py @@ -1,6 +1,6 @@ import struct -from pydoh.wire import build_query, parse_response +from savdoh.wire import build_query, parse_response def test_build_query_shape():