api_version tests fail on 5.7.0 after the custom code was reverted
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
Hướng nghiên cứu
Run uv run pytest tests/test_client.py -k api_version on v5.7.0, then compare the API-Version tests with the reverted changes in _base_client.py, _client.py, and _version.py. Check the referenced commits and Stainless configuration before deciding whether the feature should ship or the tests and generated symbol should be removed; done means the chosen direction is implemented consistently and all six tests pass or are removed.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Confirm this is a Python library issue and not an underlying Cloudflare API issue.
- This is an issue with the Python library
Describe the bug
Six tests in tests/test_client.py fail on a clean checkout of v5.7.0:
FAILED tests/test_client.py::TestCloudflare::test_api_version_env_var
FAILED tests/test_client.py::TestCloudflare::test_api_version_omitted_when_empty
FAILED tests/test_client.py::TestCloudflare::test_api_version_rejects_invalid_format
FAILED tests/test_client.py::TestAsyncCloudflare::test_api_version_env_var
FAILED tests/test_client.py::TestAsyncCloudflare::test_api_version_omitted_when_empty
FAILED tests/test_client.py::TestAsyncCloudflare::test_api_version_rejects_invalid_format
6 failed, 152 passed, 2 skipped
The tests expect api_version to fall back to CLOUDFLARE_API_VERSION, an invalid
api_version to raise ValueError, and the API-Version header to be omitted when no
version is configured. Cloudflare.__init__ does none of those. It defaults api_version
to datetime.today().strftime("%Y-%m-%d") and always sends the header, so every request
advertises a value like 2026-09-20, which does not match the <date>.<channel> form the
tests describe.
4e822eb97 ("feat: add API-Version header support") added the implementation and the tests
together. ecdba2038 ("chore: revert api_version custom code") reverted the implementation
in _base_client.py, _client.py and _version.py but left the tests, and they have
failed since.
Part of the feature is still generated: 5618be901 ("Update bundle: brapi") put
__api_version__ = "" back into _version.py after the revert, so codegen still emits the
symbol while the code that read it is gone.
Was the revert intentional? If the API-Version header is not shipping, the tests should
go too. If it is shipping, the implementation needs to come back, and presumably from the
Stainless config rather than as edits to _client.py, since direct edits are what got
reverted. I have a local branch restoring the reverted code and can open a PR either way,
but I would rather know which direction is wanted first.
To Reproduce
git clone https://github.com/cloudflare/cloudflare-python && cd cloudflare-pythongit checkout v5.7.0uv sync --all-extrasuv run pytest tests/test_client.py -k api_version
Code snippets
>>> from cloudflare import Cloudflare
>>> from cloudflare._models import FinalRequestOptions
>>> c = Cloudflare(api_token="x")
>>> c._build_request(FinalRequestOptions(method="get", url="/foo")).headers["api-version"]
'2026-09-20'
OS
Linux
Python version
Python 3.14.6
Library version
cloudflare 5.7.0
- Ngôn ngữ chính
- Python
- Star
- 509
- Fork
- 150
- Merge trung bình
- 3 giờ 15 phút
- Pull request đã merge (30 ngày)
- 1
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của cloudflare/cloudflare-python
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
cloudflare/cloudflare-python#2747 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
cloudflare/cloudflare-python#2718 · 1 bình luận ·
-
`client.pages.projects.list` returns a paginated list of `Deployment`s instead of `Project`s Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
cloudflare/cloudflare-python#2692 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
cloudflare/cloudflare-python#2679 · 4 bình luận · 5 reaction ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 25/100
cloudflare/cloudflare-python#2742 ·
Tất cả issue của cloudflare/cloudflare-python
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
use-agent-os/agent-os#3314 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
BasedHardware/omi#15662 · 1 bình luận ·
-
documentation help wanted
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
AiursoftWeb/AnduinOS-2#19 ·