Nếu lỗi trong Drupal 7, tôi có phải sửa nó trong Drupal 8 không, và gửi hai bản vá?
Nếu lỗi có trong phiên bản đang được phát triển (trong trường hợp này là Drupal 8) và phiên bản trước (Drupal 7), thì trước tiên, lỗi này phải được sửa phiên bản hiện đang phát triển, sau đó trên phiên bản trước.
Nếu lỗi không có trong phiên bản phát triển mới nhất, ví dụ vì lỗi dành cho chức năng đã bị xóa hoặc đã bị thay đổi, thì nên cung cấp bản vá cho phiên bản trước khi phát triển.
Quy trình làm việc được tuân theo là:
- Đầu tiên, bản vá được tạo và gửi để đánh giá, cho phiên bản mới nhất, ngay cả khi vẫn đang được phát triển (chẳng hạn như trong trường hợp của Drupal 8)
- Khi bản vá đó được áp dụng cho Drupal, một bản vá áp dụng cho phiên bản trước được tạo và gửi để đánh giá
Bạn có thể tạo các bản vá cho hai phiên bản Drupal cùng một lúc, nhưng vì bản vá cho phiên bản Drupal mới nhất có thể yêu cầu thay đổi, tốt hơn là nên làm việc trên bản vá cho phiên bản hiện đang phát triển, hơn là làm việc trên hai bản vá khác nhau mà cả hai yêu cầu bị thay đổi.
Xem thêm: Chính sách Backport .
Điều này cũng áp dụng cho các lỗi / cải tiến tài liệu?
Vâng, nó làm. Cũng trong trường hợp này, nếu phiên bản hiện được phát triển đã loại bỏ chức năng / phương thức mà tài liệu đang đề cập đến, thì bản vá cần phải được cung cấp cho phiên bản trước.
Có phải tất cả các bản vá cũng yêu cầu một bài kiểm tra đơn vị?
Nếu bản vá dành cho tài liệu, nó không yêu cầu kiểm tra. Bot thử nghiệm chạy trên http://qa.drupal.org kiểm tra mã Drupal sau khi bản vá được áp dụng; nếu bản vá giới thiệu lỗi cú pháp (ví dụ vì bình luận được đóng trước khi cần), thì bot kiểm tra sẽ báo cáo lỗi về bản vá trước khi chạy thử.
Nếu bản vá dành cho một tính năng mới, thì các bài kiểm tra là bắt buộc.
Nếu bản vá là để sửa lỗi, thì các thử nghiệm có thể được yêu cầu từ các nhà bảo trì, nếu chưa có thử nghiệm kiểm tra một tính năng cụ thể. Thử nghiệm nói chung là cần thiết để tránh giới thiệu lại cùng một lỗi khi thay đổi trong cùng một mã. Nếu lỗi chỉ là một biến được khởi tạo, nhưng không bao giờ được sử dụng từ một hàm / phương thức, thì rất có thể các bài kiểm tra là không bắt buộc.