Skip to content

Releases: zt1901/requests-rs

v0.4.10

Choose a tag to compare

@github-actions github-actions released this 21 Sep 10:59
requests-rs 0.4.10

v0.4.8

Choose a tag to compare

@github-actions github-actions released this 20 Sep 09:47
requests-rs 0.4.8

v0.4.6

Choose a tag to compare

@github-actions github-actions released this 20 Sep 08:57
requests-rs 0.4.6

requests-rs 0.4.4

Choose a tag to compare

@zt1901 zt1901 released this 18 Sep 09:35

requests-rs 0.4.4

本版本修复跨平台 API 一致性问题,使 Windows、Linux 和 macOS 下的 Python API 行为保持一致。

修复与兼容性改进

  • 支持使用 max_clients 作为连接数配置别名。
  • 新增 MutableHeaders,支持保留重复请求头及顺序,并兼容 headers.update(...)。
  • 新增独立的 ResponseCookies 响应 Cookie 快照,并补充 response.reason。
  • 支持通过 discard_cookies 丢弃当前响应写入 Session Cookie Jar,同时保留响应 Cookie 快照。
  • 支持请求级传入与 Session 配置相同的 impersonate 和 verify,并拒绝身份不一致的覆盖。
  • 表单数据支持有序二元组序列,保留重复键和输入顺序。

requests-rs 0.4.3

Choose a tag to compare

@zt1901 zt1901 released this 18 Sep 08:29

requests-rs 0.4.3

0.4.3 是面向现有 Python 爬虫和自动化项目的兼容性版本,公开发布 Windows x64、manylinux2014 x64 与 manylinux 2.34 ARM64 wheel。

主要变化

  • 补充常用 curl_cffi 迁移接口:max_clients、可变 session.headers.update()、response.cookies.get_dict()、response.reason 和请求级 discard_cookies。
  • 请求级 impersonate、verify 与 Session 配置一致时允许透传,不一致时明确失败,避免静默切换传输身份。
  • 保持 Rust/Tokio 原生异步请求、统一 Session 并发信号量、动态指纹加载、自定义 DNS 和内置 Mozilla/WebPKI 根证书能力。
  • Linux x64 wheel 使用 manylinux2014 标签,最低兼容 glibc 2.17。
  • Linux ARM64 wheel 在 GitHub 原生 ARM64 runner 构建,完成原生安装、HTTP/3、Python API、安全审计、QPACK 互操作与 Rust 全目标测试,最低兼容 glibc 2.34。

发布文件

  • requests_rs-0.4.3-cp310-abi3-win_amd64.whl
  • requests_rs-0.4.3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • requests_rs-0.4.3-cp310-abi3-manylinux_2_34_aarch64.whl

两个 wheel 均使用 CPython Stable ABI,支持 CPython 3.10 及以上版本。

安装

python -m pip install -U requests-rs==0.4.3

v0.4.2 — Firefox HTTP/3 and manylinux2014

Choose a tag to compare

@zt1901 zt1901 released this 09 Sep 03:18

0.4.2(2026-09-09)

PyPI 已发布 0.4.2;本说明用于对应 GitHub v0.4.2 发布。

  • 新捕获输出统一为完整 schema 2 envelope;保留库历史输入兼容,不自动伪造缺失模板。
  • 修复 Firefox154 HTTP/3 的 TLS group/signature/extension 支持,按原序注册 zlib/zstd/Brotli 证书解压。
  • 严格验证 delegated_credentials、record_size_limit、ECH outer 形状及原始 wire 摘要。
  • ECH GREASE 保留 AEAD 和长度,继续生成随机密文/临时密钥。
  • QUIC 参数按 RFC 缺省值核验;连接 ID 保持长度但重新生成;version_information 不再改动正式版本。
  • HTTP/3 SETTINGS 保留捕获顺序与缺省项,不添加 Firefox 未发送的字段,继续使用本地资源守卫。
  • 捕获器另修多 Initial 路由与大响应部分写入,避免完整捕获/回放错误超时。

已验证 Firefox154/Chrome148 本地真实 H3 HTTP200,以及归一化 TLS/QUIC/SETTINGS/header 顺序。
最终双平台构建与全量回归结果见本机 prepare-0.4.2 目录,不以旧版 wheel 代替新源码证据。

发布包验证

  • Windows x86_64 / Linux x86_64 各 65 项原生测试通过。
  • 隔离安装各自 release wheel:Windows 11 个包级回归任务、Linux 9 个任务通过;Linux 另行验证运行取消及独立 aioquic 互操作。
  • Chrome152 与 Firefox154 均通过独立 aioquic 动态 QPACK 互操作。
  • Windows release 包对真实捕获端重跑 Firefox154 / Chrome148,均为 H3 HTTP 200;稳定 TLS payload、QUIC 参数、SETTINGS 和请求头顺序归一化对照通过。
  • 两包 twine check 通过,隔离安装的 native 与 wheel 内文件摘要一致;14 个关键源文件与 Linux 构建副本一致。
  • 优化:opt-level=3、fat LTO、codegen-units=1、strip;未使用 target-cpu=native。
安装包 字节数 SHA256
Windows cp310-abi3 win_amd64 5068299 8ca89fccd98c56e34aa4d0b0f309b3935eb20836113b92071f5cbb304fb3104d
Linux cp310-abi3 manylinux_2_38_x86_64 4796823 d4127f852d1d48a16506b9541fb73e9bcaf953dfff82e1df8667c190c2335011

原 Ubuntu 构建包要求 glibc >= 2.38;现已补充下述 glibc >= 2.17 包。本轮未构建 macOS/ARM;不把两个已验证浏览器扩展为所有浏览器的兼容保证。PyPI 与 GitHub 使用相同的已验证安装包。

2026-09-08:固定 manylinux2014 兼容构建

  • Docker glibc 2.17 环境:65 项 native 测试、9 个包级回归任务和运行取消通过,auditwheel 确认 manylinux_2_17。
  • 同一 wheel 在独立 Ubuntu 环境通过 Chrome152 / Firefox154 aioquic H3 互操作。
  • 文件:requests_rs-0.4.2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • 大小:4448147 bytes;SHA256:34a25e4dc167530a4c003e916bd1e590804c41395ccd296ad22b1506e868431e。
  • 已补上传 PyPI 0.4.2 并核验官方文件摘要;旧 2.38 wheel 保留。
  • 可重用构建配置:scripts/manylinux2014/。

requests-rs 0.4.1

Choose a tag to compare

@zt1901 zt1901 released this 06 Sep 19:29

requests-rs 0.4.1

Includes the audited HTTP/2, HTTP/3/QPACK, timeout/cancellation, QUIC MTU and anti-amplification fixes, plus Cookie scope/expiry corrections and detailed proxy CONNECT errors (including 631).

Build

  • Windows x86_64 and Linux x86_64, CPython abi3 (Python 3.10+).
  • Rust opt-level=3, fat LTO, codegen-units=1, stripped symbols; portable CPU baseline (no target-cpu=native).
  • Linux wheel requires glibc >= 2.38. macOS/ARM not included in this release's locally verified artifacts.

Validation

  • Both platforms: 59 native tests and Python/API/proxy/HTTP3/WebSocket/cancellation/independent HTTP3 interoperability regression passed.
  • Cookie and proxy status errors tested through the installed package.
  • SHA256SUMS.txt contains artifact checksums.

Import: from requests_rs import requests.
PyPI publication is tracked separately; this GitHub release does not imply the upload to PyPI succeeded.

requests-rs 0.4.0 audit snapshot

Pre-release

Choose a tag to compare

@zt1901 zt1901 released this 06 Sep 17:08

Audited source snapshot of requests-rs 0.4.0. Package version is unchanged; these wheels include the subsequent audit fixes and are not the original v0.4.0 binaries.

Source: 8e1bb98
Validated Windows x64 and Linux x86_64; each passed 55 native tests and packaged API/proxy/HTTP3/WebSocket/cancellation/independent aioquic regression. Isolated quiche library suite: 1061 passed.
Includes dynamic QPACK receive support, MTU separation, anti-amplification accounting, lifecycle/TLS/build fixes. See AUDIT_2026-09-05.md for evidence and limitations. macOS/ARM and older glibc are not validated.

This is an audit prerelease snapshot, not a PyPI release. Verify downloads using SHA256SUMS.txt.