bazel-contrib / bazel-contrib/rules_python

Add a new python comment annotation that adds targets to `data`

Đang mở
#1,865 4 bình luận 0 reaction 0 người được giao Xem trên GitHub
gazelle help wanted type: feature request
Ngôn ngữ chính
Starlark
Star
688
Fork
721
Merge trung bình
15 giờ 7 phút
Pull request đã merge (30 ngày)
76

Mô tả

# 🚀 feature request

### Relevant Rules

+ gazelle

### Description

This is the same as #1862, but for the `data` attribute on generated targets.

### Describe the solution you'd like

```python
# foo/bar/baz_test.py
import pathlib

# gazelle:include_data //foo/bar:test_data
TEST_DATA_DIR = pathlib.Path(__file__).parent / "test_data"

def test_main():
assert TEST_DATA_DIR.exists()
```

Running Gazelle generates:

```starlark
py_test(
name = "baz_test",
srcs = ["baz_test.py"],
data = ["//foo/bar:test_data"],
)
```

Note that Gazelle does _**not**_ generate the `test_data` target - it's still on the user to do that themselves.

### Describe alternatives you've considered

The current method is to manually add `data` attributes.

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

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

Hướng nghiên cứu

Bắt đầu bằng cách đọc issue liên quan #1862 và phần triển khai Gazelle cho các chú thích hiện có trong comment Python. Theo dõi cách các chú thích ảnh hưởng đến các target được tạo, sau đó thêm xử lý tương ứng cho `# gazelle:include_data` để thuộc tính `data` chứa label được yêu cầu mà không tạo target. Công việc hoàn tất khi ví dụ tạo ra output `py_test` được hiển thị và hành vi hiện có vẫn được giữ nguyên.

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
build-system, tooling
Loại issue
Tính năng
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
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
35/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.