python / python/cpython

Source-less python distributions + PEP3147

Đang mở
#95,827 9 bình luận 2 reaction 0 người được giao Xem trên GitHub

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

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

Mô tả

PEP 3147 (https://peps.pythondiscord.com/pep-3147/) makes mention of "continue to support source-less distributions" by using legacy pyc file placements when no py file is adjacent. Blurb here: https://peps.pythondiscord.com/pep-3147/#case-4-legacy-pyc-files-and-source-less-imports

What is not clear is if the term "legacy" applies to just the pyc file placement or if it applies to both the pyc file placement and source-less distributions.

Are source-less distributions first-class citizens in terms of support? They're often used for embedded environments (Buildroot, for example, generates a source-less distribution) so it would make sense that they are supported.

If source-less distributions are first-class citizens and should continue to be supported, is there documentation about what that implies for consumers of a distribution? Some things that we've seen are:

  • Packages trying to symlink to .py files vs building a wrapper script that imports a module to execute code
  • Modules making assumptions that a .py file which may-or-may-not exist can be executed directly

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 bằng cách đọc PEP 3147, đặc biệt là phần về các tệp pyc legacy và việc import không có mã nguồn, sau đó xem lại các ví dụ từ Buildroot và các hành vi đóng gói được mô tả trong issue. Làm rõ liệu các bản phân phối không có mã nguồn có được hỗ trợ đầy đủ hay không và ghi lại các tác động đối với bên sử dụng, bao gồm cả symlink đến các tệp .py và các wrapper script.

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ó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/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.