Skip to content

🆎 Tool to compare two revisions of a class API to check for BC breaks

License

Notifications You must be signed in to change notification settings

BitOne/BackwardCompatibilityCheck

This branch is 1220 commits behind Roave/BackwardCompatibilityCheck:8.14.x.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

11c0e27 · Dec 17, 2019
Sep 18, 2019
Jul 17, 2019
Jul 17, 2019
Aug 21, 2018
Dec 17, 2019
Apr 29, 2018
Aug 23, 2019
Jun 29, 2018
Sep 30, 2019
Dec 1, 2019
Dec 1, 2019
Aug 23, 2018
Aug 22, 2018
Dec 15, 2019
May 28, 2018
Sep 18, 2019

Repository files navigation

Roave Backward Compatibility Check

Build Status Scrutinizer Code Quality Latest Stable Version License

A tool that can be used to verify BC breaks between two versions of a PHP library.

Pre-requisites/assumptions

  • Your project uses git
  • Your project uses composer.json to define its dependencies

Installation

composer require --dev roave/backward-compatibility-check

Install with Docker

You can also use Docker to run roave-backward-compatibility-check:

docker run --rm -v `pwd`:/app nyholm/roave-bc-check

Usage

Adding to a continuous integration pipeline

The typical intended usage is to just add roave-backward-compatibility-check to your CI build:

vendor/bin/roave-backward-compatibility-check

This will automatically detect the last minor version tagged, and compare the API against the current HEAD. If any BC breaks are found, the tool returns a non-zero status, which on most CI systems will cause the build to fail.

NOTE: detecting the base version only works if you have git tags in the SemVer-compliant x.y.z format, such as 1.2.3.

Github action

You can use it as a Github Action like this:

.github/main.workflow

on: [push]
name: Test
jobs:
    roave_bc_check:
        name: Roave BC Check
        runs-on: ubuntu-latest
        steps:
            - uses: actions/checkout@master
            - name: Roave BC Check
              uses: docker://nyholm/roave-bc-check-ga

Running manually

To generate additional documentation for changelogs:

vendor/bin/roave-backward-compatibility-check --format=markdown > results.md

Documentation

If you need further guidance:

vendor/bin/roave-backward-compatibility-check --help

Configuration

There are currently no configuration options available.

About

🆎 Tool to compare two revisions of a class API to check for BC breaks

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 99.9%
  • Shell 0.1%