python / python/cpython

Document pathlib with_segments duck typing for path object arguments

Đang mở
#153,390 1 bình luận 1 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

docs
Ngôn ngữ chính
Python
Star
77.2k
Fork
35.9k
Chỉ số merge pull request
Chỉ số pull request đang chờ

Mô tả

Some pathlib methods use the presence of a with_segments attribute to decide whether an argument is already a path object.

This behavior was changed in gh-128520 / GH-130199 for Python 3.14. The main pathlib reference documents PurePath.with_segments(), but it does not currently mention that methods such as PurePath.match() and Path.rename() use with_segments as this duck-typed marker.

This can surprise authors of path-like or path-adjacent classes that define with_segments without implementing os.PathLike. The docs should describe the current behavior so subclass and third-party path authors have a clear contract to work from.

Linked PRs
  • gh-153394

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu trong tài liệu tham chiếu chính của pathlib, tại tài liệu về PurePath.with_segments(), và xem lại các tham chiếu đến PurePath.match() và Path.rename(). Ghi lại rằng sự hiện diện của with_segments được sử dụng làm dấu hiệu nhận diện đối tượng đường dẫn theo kiểu duck typing, bao gồm hàm ý đối với các lớp giống đường dẫn và các lớp liên quan đến đường dẫn; xác nhận rằng tài liệu được kết xuất giải thích hành vi hiện tại của Python 3.14.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python
Lĩnh vực
documentation
Loại issue
Tài liệu
Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
30/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.