mirror of
https://github.com/daijro/camoufox.git
synced 2026-09-08 16:01:00 +00:00
Raises the browser floor to beta.30 because 0.5.6 permits Playwright >= 1.61, which sends viewport isMobile/screenSize in Browser.setDefaultViewport. Only beta.30's Protocol.js schema accepts those; on beta.29 every new_context() fails with "Protocol error (Browser.setDefaultViewport)". Measured: 1.60 works on both builds, 1.61 and 1.62 fail on beta.29 and pass on beta.30. The floor means pythonlib 0.5.6 cannot run until the beta.30 release assets are published -- it must not reach PyPI first. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
61 lines
1.5 KiB
TOML
61 lines
1.5 KiB
TOML
[build-system]
|
|
requires = ["poetry-core>=1.0.0"]
|
|
build-backend = "poetry.core.masonry.api"
|
|
|
|
[tool.poetry]
|
|
name = "camoufox"
|
|
version = "0.5.6"
|
|
description = "Wrapper around Playwright to help launch Camoufox"
|
|
authors = ["daijro <daijro.dev@gmail.com>"]
|
|
license = "MIT"
|
|
repository = "https://github.com/daijro/camoufox"
|
|
homepage = "https://camoufox.com/python"
|
|
readme = "README.md"
|
|
keywords = [
|
|
"client",
|
|
"fingerprint",
|
|
"browser",
|
|
"scraping",
|
|
"injector",
|
|
"firefox",
|
|
"playwright",
|
|
]
|
|
classifiers = [
|
|
"Topic :: Internet :: WWW/HTTP",
|
|
"Topic :: Internet :: WWW/HTTP :: Browsers",
|
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
]
|
|
|
|
[tool.poetry.dependencies]
|
|
python = "^3.10"
|
|
rich-click = "*"
|
|
rich = "*"
|
|
requests = "*"
|
|
orjson = "*"
|
|
browserforge = "^1.2.4"
|
|
# Keep a ceiling. 1.61 added Juggler params the protocol schema had to learn
|
|
# (viewport isMobile/screenSize, webp screenshots, webSocketFrame timestamps)
|
|
# and every Playwright minor is free to change Juggler again, while
|
|
# camoufox.server imports playwright._impl._driver -- a private API with no
|
|
# compat guarantee. Bump deliberately, with a run of `make tests`.
|
|
playwright = "<1.63"
|
|
pyyaml = "*"
|
|
platformdirs = "*"
|
|
numpy = "*"
|
|
ua_parser = "*"
|
|
typing_extensions = "*"
|
|
screeninfo = "*"
|
|
lxml = "*"
|
|
language-tags = "*"
|
|
pysocks = "*"
|
|
inquirer = "*"
|
|
geoip2 = {version = "*", optional = true}
|
|
PySide6 = {version = "*", optional = true}
|
|
|
|
[tool.poetry.extras]
|
|
geoip = ["geoip2"]
|
|
gui = ["PySide6"]
|
|
|
|
[tool.poetry.scripts]
|
|
camoufox = "camoufox.__main__:cli"
|