Docs: socket.htons() and friends raise ValueError for negative input since 3.14
メンテナーはふだん 1 日以内に返信
評価
- 難易度
- 1/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 78/100
- issue の種類
- ドキュメント
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- python
調査の方向性
Doc/library/socket.rstを読み、htons()、ntohs()、htonl()、ntohl()のドキュメントを確認してください。説明されている例外の変更を、提示された例またはテストと照合して確認し、その後、4つすべての関数について、または3.14の移植に関する注記に、3.14での動作を記述してください。ドキュメントで、負の入力に対するValueErrorと大きすぎる値に対するOverflowErrorが区別されていれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Documentation
Doc/library/socket.rst, htons() (and ntohs()):
.. versionchanged:: 3.10
Raises OverflowError if x does not fit in a 16-bit unsigned integer.
Since 3.14 a negative argument raises ValueError ("Cannot convert negative
int"); only too-large values still raise OverflowError. htonl()/ntohl() behave the same way:
import socket
for f in (socket.htons, socket.ntohs, socket.htonl, socket.ntohl):
for v in (-1, 1 << 40):
try:
f(v)
except Exception as e:
print(f.__name__, v, type(e).__name__)
| Version | -1 |
1 << 40 |
|---|---|---|
| 3.13 | OverflowError | OverflowError |
| 3.14 / 3.15 | ValueError | OverflowError |
This probably came with gh-132987 (__index__() support in the socket module).
It may be intended, but it is not documented, and except OverflowError
code written against the 3.10 note no longer catches negative input.
Suggested fix: add a versionchanged:: 3.14 note to all four functions, or
mention it in What's New in 3.14 (Porting).
Linked PRs
- gh-159047
- 主要言語
- Python
- スター
- 77.6k
- フォーク
- 37.6k
- 平均マージ
- 1日 16時間
- マージ済み PR(30日)
- 612
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
python/cpython のほかの issue
-
Docs: problem with page "msvcrt — Useful routines from the MS VC runtime"対応中かも @jikekei が 3 日前に担当しました。 オープンdocs
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
python/cpython#159072 · コメント 6 件 ·
メンテナーはふだん 1 日以内に返信
-
Document unpacking in generator expressions (PEP 798)対応中かも @Marwan-verse が今日担当しました。 オープンdocs
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
python/cpython#159061 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
`http.client.HTTPSConnection._tunnel` raises `AttributeError: 'NoneType' object has no attribute 'encode'` when header value is `None`再び着手できるかも このイシューのプルリクエストはマージされずにクローズされました。 オープン3.14 3.15 3.16 stdlib type-bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
python/cpython#159044 · コメント 17 件 ·
メンテナーはふだん 1 日以内に返信
-
A minor problem with the section "6.10.2. Membership test operations" from the language reference.オープンdocs pending
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
python/cpython#159034 · コメント 5 件 ·
メンテナーはふだん 1 日以内に返信
-
stdlib topic-profiling type-bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
bug difficulty:2 good first issue help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
MakazhanAlpamys/Soup#1865 ·
メンテナーはふだん 1 日以内に返信
-
area: agents area: docs good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
openapi/gknowledge#23 ·
-
useless-suppression reported for deprecated-* messages that should be exempt対応中かも @adityasinha-ghub が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
pylint-dev/pylint#11656 ·
メンテナーはふだん 1 日以内に返信
-
area:provisioning effort:S priority:P2 provider:local-libvirt risk:daytime-only status:in-progress type:bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
randomparity/kdive#3203 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
get() for StrEnum対応中かも @FeJo5952 が今日担当しました。 オープンgood first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
collective/icalendar#1921 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信