`/a/**` is understood by `Path.full_match` as `/a` followed by multiple segments, at least one
Đang mở
Chưa có ai nhận issue này.
docs
topic-pathlib
- 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ả
Bug report
Bug description:
/a/** is understood by Path.full_match as "/a followed by multiple segments, at least one", instead of "/a followed by multiple segments, including zero".
From https://docs.python.org/3/library/pathlib.html#pathlib-pattern-language
** (entire segment) Matches any number of file or directory segments, including zero.
# one segment per **
Path('/a/b').full_match('/a/**') # True
# zero segments per **
Path('/a').full_match('/a/**') # False - expected True
# interestingly
Path('/').full_match('/**') # True
CPython versions tested on:
3.13
Operating systems tested on:
Linux
Linked PRs
- gh-151479
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.
Hướng nghiên cứu
Bắt đầu với entry point pathlib Path.full_match và so sánh hành vi của nó với ngôn ngữ mẫu được ghi chép cho . Tái hiện các ví dụ /a/ và /**, sau đó thêm coverage hồi quy cho thấy ** khớp với không phân đoạn nào; PR được liên kết gh-151479 cho biết công việc đã được tiến hành.
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
- operating-systems
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức phù hợp với người mới
- 35/100