TLSSession.set_cookie/get_cookies/clear_cookies crashed with AttributeError on both backends (they reached into self.session.cookie_jar, which curl_cffi and noble_tls sessions don't have); both backends now route the mutable cookie api through their own requests-style session.cookies store. Noble.raw_request now requests is_byte_response=True and decodes the resulting base64 data-URI body, since noble_tls's default text response silently corrupts any binary payload (image/zip/pdf) via lossy UTF-8 decoding on the Go side. CurlCffi/Noble.create_session no longer bake session-default headers into the underlying client; baking caused clear_headers()/get_headers() to lie about what's actually still on the wire (a credential-leak divergence from the aiohttp base, which never bakes). Headers flow through aioweb's per-request merge only, matching the base's documented contract. Noble.create_session now applies the same max(1, ceil()) timeout coercion raw_request already had (extracted into a shared _noble_timeout_seconds helper) — without it, a sub-second/float session-default timeout made every request fail Go-side JSON unmarshal. README corrected: dropped the 'every aioweb feature behaves identically' overclaim re: cookies, documented the binary-body handling and the no-header-baking rationale, bumped install pins to v0.1.4. Signed-off-by: disqualifier <dev@disqualifier.me>
24 lines
643 B
TOML
24 lines
643 B
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "aioweb_tls"
|
|
version = "0.1.4"
|
|
description = "TLS-fingerprinting backends (curl_cffi / noble_tls) for aioweb via one injectable TLSSession, config-free, installable."
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"aioweb @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb.git@v0.1.5",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
curl = ["curl_cffi>=0.15"]
|
|
noble = ["noble-tls>=0.1.5"]
|
|
all = ["curl_cffi>=0.15", "noble-tls>=0.1.5"]
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/aioweb_tls"]
|
|
|
|
[tool.hatch.metadata]
|
|
allow-direct-references = true
|