Alat yang dapat digunakan untuk memverifikasi bc bc antara dua versi perpustakaan PHP.
gitcomposer.json untuk mendefinisikan dependensinya"autoload" di composer.jsongit untuk ditanggung. Anda dapat mengimplementasikan logika Anda sendiri untuk mengekstrak sumber dan dependensi dari suatu proyek. composer require --dev roave/backward-compatibility-check Anda juga dapat menggunakan Docker untuk menjalankan roave-backward-compatibility-check :
docker run --rm -v ` pwd ` :/app nyholm/roave-bc-check Penggunaan yang dimaksudkan khas adalah untuk hanya menambahkan roave-backward-compatibility-check ke build CI Anda:
vendor/bin/roave-backward-compatibility-check Ini akan secara otomatis mendeteksi versi minor terakhir yang ditandai, dan membandingkan API dengan HEAD saat ini. Jika ada istirahat BC yang ditemukan, alat ini mengembalikan status bukan nol, yang pada sebagian besar sistem CI akan menyebabkan build gagal.
Catatan: Mendeteksi versi dasar hanya berfungsi jika Anda memiliki tag Git dalam format xyz yang sesuai dengan SEMVER, seperti 1.2.3 .
Catatan: Karena alat ini bergantung pada tag, Anda perlu memastikan tag diambil sebagai bagian dari pipa CI Anda. Misalnya dalam tindakan GitHub, perhatikan penggunaan fetch-depth: 0 :
jobs :
roave-backwards-compatibility-check :
name : Roave Backwards Compatibility Check
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
with :
fetch-depth : 0
- name : " Install PHP "
uses : shivammathur/setup-php@v2
with :
php-version : " 8.0 "
- name : " Install dependencies "
run : " composer install "
- name : " Check for BC breaks "
run : " vendor/bin/roave-backward-compatibility-check " Tobias Nyholm juga menawarkan aksi GitHub sederhana yang dapat Anda gunakan dalam pipa GitHub Anda. Kami merekomendasikan ini untuk kebanyakan kasus karena mudah diatur:
.github/workflows/main.yml :
on : [push]
name : Test
jobs :
roave-backwards-compatibility-check :
name : Roave Backwards Compatibility Check
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
with :
fetch-depth : 0
- name : " Check for BC breaks "
uses : docker://nyholm/roave-bc-check-gaUntuk menghasilkan dokumentasi tambahan untuk Changelogs:
vendor/bin/roave-backward-compatibility-check --format=markdown > results.md Saat berjalan dalam tindakan GitHub, didukung untuk menggunakan format output --format=github-actions :
vendor/bin/roave-backward-compatibility-check --format=github-actionsJika Anda membutuhkan panduan lebih lanjut:
vendor/bin/roave-backward-compatibility-check --helpSaat ini tidak ada opsi konfigurasi yang tersedia.