- a token provider (or static token) returning bytes crashed token.encode() in the XOAUTH2 path. coerce to str at the source (_resolve_token via _as_str) so both the .encode() and SASL-fallback entrypoints get a str. - client.search() did int(x) on every SEARCH token unguarded; a malformed/non- numeric token aborted the whole search. skip non-numeric tokens (log at debug) instead of crashing. verified by execution: bytes static + async-provider tokens authenticate without crashing (both xoauth2 and SASL-fallback paths); guarded search skips garbage. Signed-off-by: disqualifier <dev@disqualifier.me>
20 lines
434 B
TOML
20 lines
434 B
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "aiomail"
|
|
version = "0.1.1"
|
|
description = "async IMAP one-time-code retrieval with password/OAuth2 auth and dynamic matching"
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
"aioimaplib>=1.0",
|
|
"beautifulsoup4>=4.11",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
oauth = ["aiohttp>=3.9"]
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/aiomail"]
|