What changes to WIT are "compatible" and which are not?
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
- 50/100
- Loại issue
- Tài liệu
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- wasm
- Lĩnh vực
- documentation
Hướng nghiên cứu
Bắt đầu bằng cách xem xét các kịch bản tương thích WIT được liệt kê trong issue và hướng dẫn Protobuf “Updating a Message Type” được liên kết. Ghi lại liệu từng thay đổi trong sáu thay đổi có tương thích theo các hướng old-host/new-guest và new-host/old-guest hay không, bao gồm các điều kiện và giới hạn liên quan.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Suppose I have a WIT definition, and some old WebAssembly components built/defined using the old definition, and then I want to make a change to my interface without requiring the component to be modified or rebuilt. Or perhaps I want to do the same in the reverse direction—make a change to my WASM component that remains backward-compatible with a host using an older WIT.
What changes to the WIT could be considered "compatible", if any, and which are not?
In essence, I'm looking for guidance similar to what Protobuf offers in their Updating a Message Type documentation.
A few example questions/scenarios I can think of: are the following compatible in one or both directions (old host/new guest vs. new guest/old host)?
- Removing an argument to a function
- Adding a new optional argument to a function
- Adding a new optional field to a struct
- Removing a field from a struct
- Adding a new case to a variant
- Removing a case from a variant
- Ngôn ngữ chính
- Rust
- Star
- 137
- Fork
- 88
- Merge trung bình
- 10 giờ 38 phút
- Pull request đã merge (30 ngày)
- 2
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.
Issue khác của bytecodealliance/component-docs
-
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 72/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
[FEATURE] Add wasi-cli templates Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
bytecodealliance/component-docs#294 · 1 bình luận ·
-
Fix Python Tutorial Đang mởbug lang/python
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 55/100
bytecodealliance/component-docs#348 · 2 bình luận ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
Tất cả issue của bytecodealliance/component-docs
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
Axis areas are always keyboard-focusable (Sense::drag), even with allow_axis_zoom_drag(false) Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
bug team:backend track:services-maintenance
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
cowprotocol/services#4950 ·
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
gitbutlerapp/gitbutler#15998 · 1 bình luận ·