enthought / enthought/distarray
Meta-issue / design principle: minimize implicit arguments, global arguments, and singletons
- Ngôn ngữ chính
- Python
- Star
- 5
- Fork
- 1
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
To facilitate reasoning and remove sources of hangs and bugs, we need to remove all global state and singletons. This means we should refactor the `@local` and `@vectorize` decorators as well, since these need to implicitly access an IPython.parallel `Client`.
We can revisit relaxing this in the future, but for now, this is the standing policy.
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Bắt đầu bằng cách xác định các decorator @local và @vectorize, đồng thời theo dõi cách chúng ngầm truy cập một IPython.parallel Client. Xem xét trạng thái toàn cục và việc sử dụng singleton có liên quan, sau đó lập danh sách các caller bị ảnh hưởng trước khi chọn một thiết kế. Công việc được xem là hoàn tất khi các decorator và mã liên quan không còn phụ thuộc vào các đối số ngầm, trạng thái toàn cục hoặc singleton mà không gây ra tình trạng treo hay bug.
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
- distributed-systems
- Loại issue
- Tái cấu trúc
- Độ 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
- 15/100