Improve code reference scan with indirect flag references
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 45/100
Hướng nghiên cứu
Xác định phần quét tham chiếu mã Python và đọc triển khai hiện tại dựa trên regex của nó; issue không nêu đường dẫn tệp hoặc đường dẫn test nào. Xem tài liệu ast của Python và theo dõi cách các tham chiếu flag trực tiếp được báo cáo. Được xem là hoàn tất khi các lời gọi gián tiếp như is__premium_support__enabled được tìm thấy ở mọi lần sử dụng, trong khi các tham chiếu trực tiếp vẫn được bao quát.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
While some regex'ing was all it took for a successful PoC, there are valid ways of referencing feature flags we still don't cover.
For example (thanks @khvn26 for pointing out), https://github.com/Flagsmith/flagsmith/pull/6970 introduces a function that will make flag references indirect:
def is__premium_support__enabled(organisation):
return client.is_flag_enabled("premium_support") # This is found in the scan.
def the_actual_business_function():
if is__premium_support__enabled(org): # This is a more important reference, but isn't found.
...
def another_function():
if is__premium_support__enabled(org): # Multiple uses of the flag stay hidden!
...
Acceptance criteria
- The code references scan covers for indirection such as the above.
Might be a good idea to look into ast.
- Ngôn ngữ chính
- Python
- Star
- 0
- Fork
- 1
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
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.
Issue khác của Flagsmith/ci
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 70/100
-
Add e2e testsĐang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
solana-foundation/pay-kit#341 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
nasa/python_cmr#123 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
EleutherAI/lm-evaluation-harness#4243 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: dashboard bug perceived difficulty: 3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Nitjsefnie-Harness-Commons/daedalus#1179 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
cusp-ai-oss/tojax#17 ·