PHPackages                             gilbertsoft/typo3-core-patches - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. gilbertsoft/typo3-core-patches

ActiveComposer-plugin[Utility &amp; Helpers](/categories/utility)

gilbertsoft/typo3-core-patches
==============================

Easily manage TYPO3 Core patches with Composer.

0.4.0(3y ago)1457.1k↓58.6%5MITPHPPHP ^7.4.1 || ^8.0

Since Jan 12Pushed 3y agoCompare

[ Source](https://github.com/GsTYPO3/core-patches)[ Packagist](https://packagist.org/packages/gilbertsoft/typo3-core-patches)[ Docs](https://github.com/GsTYPO3/core-patches)[ Fund](https://www.paypal.me/SGilli)[ GitHub Sponsors](https://github.com/gilbertsoft)[ RSS](/packages/gilbertsoft-typo3-core-patches/feed)WikiDiscussions main Synced 2d ago

READMEChangelog (9)Dependencies (5)Versions (10)Used By (0)

TYPO3 Core Patches
==================

[](#typo3-core-patches)

[![Packagist Version](https://camo.githubusercontent.com/18aa995c6ff51432da59306c232fc7f61b5b844baa653c957d1285bfa89ffaf2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f67696c62657274736f66742f7479706f332d636f72652d706174636865733f696e636c7564655f70726572656c6561736573)](https://packagist.org/packages/gilbertsoft/typo3-core-patches)[![Packagist PHP Version Support](https://camo.githubusercontent.com/88ac25e7f727657e7afedc713898f886b305e87c8e1e23db36100533a4919ca1/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f67696c62657274736f66742f7479706f332d636f72652d70617463686573)](https://packagist.org/packages/gilbertsoft/typo3-core-patches)[![Packagist Dependency Version](https://camo.githubusercontent.com/a489983f7656b9c920afddfcc222989126cffeace1fda04a2f8908ad8a61033d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646570656e64656e63792d762f67696c62657274736f66742f7479706f332d636f72652d706174636865732f6377656167616e732f636f6d706f7365722d70617463686573)](https://packagist.org/packages/gilbertsoft/typo3-core-patches)[![Packagist Downloads](https://camo.githubusercontent.com/f13eb5f3b841805eb15b8671a350301f5c78a9cf57e2ed616e44ac8fc2754c74/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f67696c62657274736f66742f7479706f332d636f72652d70617463686573)](https://packagist.org/packages/gilbertsoft/typo3-core-patches)[![GitHub issues](https://camo.githubusercontent.com/74fe006d6288af33e274e18e4ee5750425c0e27433f8955050926937028fde35/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f47735459504f332f636f72652d70617463686573)](https://github.com/GsTYPO3/core-patches/issues)[![GitHub forks](https://camo.githubusercontent.com/7e94b1844ded788ce976cf3f24da43cb0a7aefece566c97d17ef8ddbd92099d7/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f47735459504f332f636f72652d70617463686573)](https://github.com/GsTYPO3/core-patches/network)[![GitHub stars](https://camo.githubusercontent.com/ffe8802659fb654f443870436c9fa78f68f9d88572c0416f3737c9154cb1dd2f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f47735459504f332f636f72652d70617463686573)](https://github.com/GsTYPO3/core-patches/stargazers)[![GitHub license](https://camo.githubusercontent.com/942709acfa0de480a85a562abd161ad15938a4921ef67b67a02b669828f24156/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f47735459504f332f636f72652d70617463686573)](https://github.com/GsTYPO3/core-patches/blob/main/LICENSE)[![GitHub build](https://camo.githubusercontent.com/a88a750f3719f6b494274e4f38258ed10bc3e0ec4119b27df2301f18b65cc73b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f47735459504f332f636f72652d706174636865732f636f6e74696e756f75732d696e746567726174696f6e2e796d6c3f6272616e63683d6d61696e)](https://github.com/GsTYPO3/core-patches/actions/workflows/continuous-integration.yml)[![Coveralls](https://camo.githubusercontent.com/5867046e7bb76503a07ec59fbd819d2a85f2d524cbbee5c71fa8b2a00a317110/68747470733a2f2f696d672e736869656c64732e696f2f636f766572616c6c732f6769746875622f47735459504f332f636f72652d70617463686573)](https://coveralls.io/github/GsTYPO3/core-patches)[![Contributor Covenant](https://camo.githubusercontent.com/4ae39ae593b602cf0ae07972b61c73728b77ec8e2cf40f579a2441948208036b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f436f6e7472696275746f72253230436f76656e616e742d322e312d3462616161612e737667)](https://github.com/GsTYPO3/core-patches/blob/main/CODE_OF_CONDUCT.md)

This package let you easily manage TYPO3 Core patches with Composer based on [cweagans/composer-patches](https://github.com/cweagans/composer-patches#readme)which is a dependency of this package and requires to be installed as non-dev dependency for production usage.

**Table of contents**:

- [Installation](#installation)
    - [Prerelease](#prerelease)
- [Usage](#usage)
    - [Adding a change](#adding-a-change)
    - [Updating a change](#updating-a-change)
    - [Removing a change](#removing-a-change)
    - [Supported change ID formats](#supported-change-id-formats)
- [Configuration](#configuration)
    - [Branch verification](#branch-verification)
    - [Outdated patch detection](#outdated-patch-detection)
    - [CI detection](#ci-detection)
- [Feedback / Bug reports / Contribution](#feedback--bug-reports--contribution)
- [License](#license)

Installation
------------

[](#installation)

This package requires Composer 2.0 or higher.

Require this package as normal dependency:

```
composer require gilbertsoft/typo3-core-patches
```

If the package is installed as dev requirement, the patches won't get applied using the install option `--no-dev` as long as you don't require `cweagans/composer-patches` as normal dependency.

For Composer 2.2 and later, plug-ins must be explicitly allowed using the following command:

```
composer config --no-plugins allow-plugins.gilbertsoft/typo3-core-patches true
composer config --no-plugins allow-plugins.gilbertsoft/cweagans/composer-patches true
```

### Prerelease

[](#prerelease)

To install a prerelease, run the following command using one of the stability flags `dev`, `alpha`, `beta` or `RC`:

```
composer require gilbertsoft/typo3-core-patches:@
```

E.g. this would allow Composer to install beta, RC and stable releases:

```
composer require gilbertsoft/typo3-core-patches:@beta
```

Usage
-----

[](#usage)

### Adding a change

[](#adding-a-change)

Lookup the change ID at  or and provide it as argument or multiple arguments for multiple changes at once:

```
composer typo3:patch:apply 12345
composer typo3:patch:apply 12345 23456 34567
```

This plugin will then properly create patch files for the change and save it to the patch directory which defaults to `patches`. The patch directory can be changed by the option `--patch-dir` or with the shortcut `-p`:

```
composer typo3:patch:apply --patch-dir:path/to/folder 12345
composer typo3:patch:apply -ppath/to/folder 12345
```

By default changes in tests are exluded. If you also like to include these changes, provide the option `--tests` or the shortcut `-t`. This will result in installing the sources instead of the dist packages for the affected packages.

```
composer typo3:patch:apply --tests 12345
composer typo3:patch:apply -t 12345
```

### Updating a change

[](#updating-a-change)

To update the applied patches to the last patch sets from Gerrit just run the following command, which will update all patches:

```
composer typo3:patch:update
```

It is also possible to just update some single patches by providing the change ID as argument or multiple arguments for multiple changes to update at once:

```
composer typo3:patch:update 12345
composer typo3:patch:update 12345 23456 34567
```

### Removing a change

[](#removing-a-change)

Provide the change ID to remove as argument or multiple arguments for multiple changes to remove at once:

```
composer typo3:patch:remove 12345
composer typo3:patch:remove 12345 23456 34567
```

### Supported change ID formats

[](#supported-change-id-formats)

This plugin supports various change-id formats, as described in .

Additionally, you can also specify the full URL for the change, as shown in the next example:

```
composer typo3:patch:apply https://review.typo3.org/c/Packages/TYPO3.CMS/+/12345
```

Configuration
-------------

[](#configuration)

### Branch verification

[](#branch-verification)

The plugin compares the current installed core version with the target branch of the patch to install and if different, asks for confirmation to anyway try to apply the patch to the different version.

To disabled the branch check for this project, run:

```
composer config extra.gilbertsoft/typo3-core-patches.ignore-branch true
```

### Outdated patch detection

[](#outdated-patch-detection)

When running `composer update` or `composer install`, the plugin detects changes that already exist in the version being installed and suggests removing the related patches. If you run Composer with the `--no-interaction` option, the patches are always preserved. This can be changed by the config `force-tidy-patches` see bellow.

Errors may occur if you use the source-dist of packages, which can be solved by adding the `config.discard-changes` configuration option to your `composer.json`, see . Run e.g. `composer config discard-changes true` to add the configuration to your `composer.json`.

If a CI environment is detected, the detection of merged changes is skipped by default. To change this behavior and enable the detection again, run:

```
composer config extra.gilbertsoft/typo3-core-patches.force-tidy-patches true
```

To disable the detection of merged changes completely, run:

```
composer config extra.gilbertsoft/typo3-core-patches.disable-tidy-patches true
```

### CI detection

[](#ci-detection)

The plugin tries to detect CI environments and changes its default behavior while running in a CI pipeline. It's possible to override the detection by setting an environment variable:

- Set `GS_CI=1` to force CI mode
- Set `GS_CI=0` to disable CI mode

Feedback / Bug reports / Contribution
-------------------------------------

[](#feedback--bug-reports--contribution)

Bug reports, feature requests, pull requests, and any other kind of feedback are welcome in the [GitHub repository](https://github.com/GsTYPO3/core-patches).

For support questions or other discussions please use the [GitHub Discussions](https://github.com/GsTYPO3/core-patches/discussions)or join the dedicated [TYPO3 Slack channel](https://typo3.slack.com/archives/C03GY4LEVPU).

License
-------

[](#license)

This package is licensed under the [MIT License](https://github.com/GsTYPO3/core-patches/blob/main/LICENSE).

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity39

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 95.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~66 days

Recently: every ~112 days

Total

9

Last Release

1103d ago

PHP version history (2 changes)0.1.0PHP ^7.2.5 || ^8.0

0.1.1PHP ^7.4.1 || ^8.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/25326036?v=4)[Gilbertsoft](/maintainers/gilbertsoft)[@gilbertsoft](https://github.com/gilbertsoft)

---

Top Contributors

[![gilbertsoft](https://avatars.githubusercontent.com/u/25326036?v=4)](https://github.com/gilbertsoft "gilbertsoft (69 commits)")[![eliashaeussler](https://avatars.githubusercontent.com/u/16313625?v=4)](https://github.com/eliashaeussler "eliashaeussler (1 commits)")[![jpmschuler](https://avatars.githubusercontent.com/u/12411176?v=4)](https://github.com/jpmschuler "jpmschuler (1 commits)")[![simonschaufi](https://avatars.githubusercontent.com/u/941794?v=4)](https://github.com/simonschaufi "simonschaufi (1 commits)")

---

Tags

composercomposer-pluginpatchpatch-managementpatchespatchingtypo3corecmstypo3patch

### Embed Badge

![Health badge](/badges/gilbertsoft-typo3-core-patches/health.svg)

```
[![Health](https://phpackages.com/badges/gilbertsoft-typo3-core-patches/health.svg)](https://phpackages.com/packages/gilbertsoft-typo3-core-patches)
```

###  Alternatives

[typo3/cms-composer-installers

TYPO3 CMS Installers

6114.7M69](/packages/typo3-cms-composer-installers)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751291.4k43](/packages/civicrm-civicrm-core)[drupal/core-composer-scaffold

A flexible Composer project scaffold builder.

5445.2M564](/packages/drupal-core-composer-scaffold)[drupal/core-project-message

Adds a message after Composer installation.

2124.7M203](/packages/drupal-core-project-message)[friendsoftypo3/visual-editor

TYPO3 CMS Visual Editor - Brings a modern WYSIWYG editing experience to TYPO3 CMS.

576.1k2](/packages/friendsoftypo3-visual-editor)[altis/core

Core module for Altis

19228.0k3](/packages/altis-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
