bringyourownideas/silverstripe-composer-update-checker

Checks if any composer packages needs to be updated.

4.1.0-rc1 2024-02-02 00:49 UTC

README

Build Status Scrutinizer Code Quality codecov SilverStripe supported module Latest Stable Version Latest Unstable Version Total Downloads License

Checks if any of your Composer dependencies needs to be updated, and tracks the available and latest versions that can be updated to.

This module only runs the actual checks and saves the information into fields on the Package DataObject. The fields are also added to the report that the SilverStripe Maintenance module provides.

The bulk of the heavy lifting here is done using the Composer PHP API, which mimics the behaviour of using Composer on the command line to install or update PHP packages.

Requirements

  • bringyourownideas/silverstripe-maintenance ^2
  • composer/composer ^2
  • silverstripe/framework ^4

Compatibility

The 1.x release line of this module is compatible with SilverStripe ^3.2, and the 2.x release line is compatible with SilverStripe ^4.0.

The 2.x release line of the module is compatible with composer v1, and this 3.x release line is compatible with composer v2

Installation

Run the following command to install this package:

composer require bringyourownideas/silverstripe-composer-update-checker ^2

vendor/bin/sake dev/build flush=1
vendor/bin/sake dev/tasks/UpdatePackageInfoTask

Note for private repositories

Please note that if your project has modules that are stored in private repositories, the server running the BuildTask will need to have the necessary permissions to access the private VCS repositories in order for the report to include update information about necessary updates to the module.

If the process looking for available updates fails (for example, due to an authentication failure against a private repository) the process will fail gracefully and allow the rest of the report generation to continue.

Users on the Common Web Platform will currently not be able to retrieve information about updates to private repositories.

Documentation

Please see the user guide section of the SilverStripe Maintenance module.

Terminology

The "Available" version will show the latest available version for a Package that can be installed, given the package's semver constraint. If the version is the same as that which is already installed, the column will be empty in the report.

The "Latest" version is the latest available version regardless of the package's semver constraint.

When tracking available and latest versions, the current, available and latest version hashes are also stored against the Package. This is to help with showing whether updates are available within a branch alias (for example: 1.x-dev).

Contributing

Please see the contributing guide.