Jaki jest właściwy proces dodawania łat do rdzenia Drupala?
Powiedzmy, że znajduję błąd w rdzeniu Drupala, napraw go i utwórz łatkę . Jak to przesłać?
Jeśli błąd występuje w Drupal 7, czy muszę go również naprawić w Drupal 8 i przesłać dwie łatki? Czy dotyczy to również błędów / ulepszeń dokumentacji?
Czy wszystkie łatki wymagają również testu jednostkowego?
community-official-site
version-control
mpdonadio
źródło
źródło
Odpowiedzi:
Jeśli błąd występuje w opracowywanej wersji (w tym przypadku Drupal 8) i poprzedniej wersji (Drupal 7), wówczas błąd powinien być najpierw naprawiony w aktualnie opracowanej wersji, a następnie w poprzednich wersjach.
Jeśli błąd nie występuje w najnowszej opracowanej wersji, na przykład dlatego, że błąd dotyczy funkcji, która została usunięta lub została już zmieniona, należy dostarczyć poprawkę do wersji przed aktualnie opracowaną.
Następujący przepływ pracy to:
Możesz tworzyć łatki dla dwóch wersji Drupal jednocześnie, ale ponieważ łatka dla najnowszej wersji Drupal może wymagać zmian, lepiej jest pracować nad łatką dla aktualnie opracowanej wersji, niż pracować na dwóch różnych łatkach, które wymagają zmienić się.
Zobacz także: Zasady dotyczące backportu .
Tak. Również w tym przypadku, jeśli aktualnie opracowana wersja usunęła funkcję / metodę, do której odnosi się dokumentacja, należy dostarczyć łatkę dla poprzedniej wersji.
Jeśli poprawka dotyczy dokumentacji, nie wymaga testów. Bot testowy działający na http://qa.drupal.org sprawdza kod Drupala po zastosowaniu łatki; jeśli łatka wprowadza błędy składniowe (na przykład ponieważ komentarz jest zamykany przed potrzebą), bot testowy zgłosi błąd dotyczący poprawki przed uruchomieniem testów.
Jeśli łatka dotyczy nowej funkcji, wymagane są testy.
Jeśli łatka ma naprawić błąd, wówczas mogą być wymagane testy od opiekunów, jeśli nie ma jeszcze testu sprawdzającego określoną funkcję. Test jest ogólnie niezbędny, aby uniknąć ponownego wprowadzenia tego samego błędu przy zmianie tego samego kodu w przyszłości. Jeśli błąd jest jedynie zmienną, która została zainicjowana, ale nigdy nie jest używana z funkcji / metody, istnieje prawdopodobieństwo, że testy nie są wymagane.
źródło
Każda strona projektu na drupal.org ma zakładkę „Kontrola wersji” u góry. Daje nie tylko świetny przegląd wszystkich opcji repozytorium kodu dla konkretnego projektu, wszystkie przykłady poleceń git są również dostosowane do projektu. Możesz nawet interaktywnie zmienić go na określoną wersję.
Rdzeń Drupala znajduje się na stronie http://drupal.org/project/drupal/git-instructions
Następnie, po utworzeniu łatki, wystarczy po prostu dołączyć plik łatki do problemu, który wyjaśnia, co robi łatka.
Dwie ważne rzeczy, na które należy zwrócić uwagę, to upewnić się, że łatka kończy się na „.patch” i ustawić status na „Wymaga przeglądu”. Dzięki temu testbot to zauważy i automatycznie uruchomi test.
Nowym kodom zawsze muszą towarzyszyć testy .
Pamiętaj, że można to wyłączyć za pomocą projektów, a niektóre tak. W przypadku rdzenia Drupal jest on włączony, więc wszystkie łatki zostaną przetestowane.
Możesz znaleźć więcej na http://drupal.org/contribute/development .
źródło