ComposerCheckUpdates
Update your dependencies in composer.json to their latest version.
ComposerCheckUpdates, inspired by NPM’s npm-check-updates.
It will read your composer.json, and check for the latest release of each
dependency, and update your composer.json to match it.
Whilst this package does strip out semver tags when writing to your
composer.json, you will most likely be using this package in the CI, thus
updating dependencies as soon as a new version is released, thus rendering
semver useless in this scenario, although, whilst semver is a guideline, not
everyone adheres to it. It is my opinion that it is best to use a specific
version and only that version of a dependency, which was one of the leading
decisions to stripping semver tags, alongside the logic needed to account for it
didn’t outweight the points I just mentioned.
Table of Contents
Quick Start
You will need to have deno installed: https://deno.land/manual@v1.13.2/getting_started/installation
$ deno run --allow-read=composer.json --allow-write=composer.json --allow-net=github.com https://deno.land/x/composer_check_updates@v2.0.0/check.ts
$ composer install # refresh composer.lockThis was mainly built so it can be a step in a workflow, to automatically bump your dependencies:
name: bumper
on:
schedule:
- cron: '0 0 * * 0' # every Saturday at midnight
jobs:
update-dep:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: denoland/setup-deno@v1
with:
deno-version: 'vx.x.x'
- name: Update Dependencies
run: |
deno run --allow-read=composer.json --allow-write=composer.json --allow-net=github.com https://deno.land/x/composer_check_updates@v2.0.0/check.ts
composer install # refresh composer.lock
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.CI_USER_PAT }}
commit-message: "chore: Update dependencies"
title: "chore: Update dependencies"
labels: |
chore
body: This was auto-generated by GitHub Actions.
branch: update-dependenciesLicense
By contributing your code, you agree to license your contribution under the MIT License.