concrete5 / core
Concrete core subtree split
Package info
github.com/concretecms/concretecms-core
Type:concrete5-core
pkg:composer/concrete5/core
Requires
- php: ^7.3||^8.0
- composer-runtime-api: ^2.1
- ext-curl: *
- ext-dom: *
- ext-fileinfo: *
- ext-gd: *
- ext-iconv: *
- ext-mbstring: *
- ext-pdo: *
- ext-pdo_mysql: *
- ext-simplexml: *
- ext-zip: *
- commerceguys/addressing: 1.3.0
- concrete5/oauth-user-data: ~1.0
- concretecms/dependency-patches: ^1.8.0
- concretecms/doctrine-xml: ^1.2.0
- concretecms/monolog-cascade: >=0.6
- dapphp/securimage: 3.*
- doctrine/annotations: ^1.13.2
- doctrine/common: ^3.1.2
- doctrine/dbal: ^2.13.2
- doctrine/lexer: ^1.2.3
- doctrine/migrations: ^2
- doctrine/orm: ^2.13
- doctrine/persistence: ^2.5.1|^3.4.3
- dragonmantank/cron-expression: ^3.1
- enshrined/svg-sanitize: ^0.22.0
- guzzlehttp/guzzle: ^7.8
- htmlawed/htmlawed: 1.*
- illuminate/config: ^8
- illuminate/container: ^8
- illuminate/filesystem: ^8
- imagine/imagine: ^1.1.0
- indigophp/hash-compat: ^1.1
- jbroadway/urlify: ^1.2.2-stable
- kylekatarnls/html-object: ^1.5.2
- laminas/laminas-cache: ^3.1.2
- laminas/laminas-feed: ^2.16
- laminas/laminas-i18n: ^2.13
- laravel/helpers: ^1.3
- lcobucci/jwt: 3.4.6|^4.1
- league/csv: ^9.7.1
- league/flysystem: 1.*
- league/flysystem-cached-adapter: ~1.0.3
- league/fractal: ^0.19.2
- league/oauth2-server: ^8.4.2
- league/openid-connect-claims: ^1.1.0
- league/pipeline: ^1.0
- league/tactician: 1.0.3
- league/url: ~3.3.5
- lusitanian/oauth: 0.8.*
- michelf/php-markdown: 1.*
- mlocati/concrete5-translation-library: ^1.9
- mlocati/ip-lib: ^1.17.0
- mobiledetect/mobiledetectlib: 2.*
- monolog/monolog: ^1.5.0
- nesbot/carbon: ^2.1
- ocramius/proxy-manager: ^2.0
- pagerfanta/pagerfanta: 2.7.*
- patchwork/utf8: ~1.2.3|~1.3
- phpseclib/phpseclib: ^3.0
- predis/predis: ^1.1
- primal/color: 1.0.*
- punic/punic: ^3.0.1
- sabre/vobject: ^4.3
- scssphp/scssphp: ^1.4
- ssddanbrown/htmldiff: ^1.0
- sunra/php-simple-html-dom-parser: ^1.5.2
- symfony/cache: ^v5.3.7
- symfony/class-loader: ^3.4
- symfony/console: ^5.2
- symfony/error-handler: ^5.2
- symfony/event-dispatcher: ^5.2
- symfony/http-foundation: ^5.2
- symfony/http-kernel: ^5.2
- symfony/mailer: ^5.2
- symfony/mercure: ^0.6.1
- symfony/messenger: ^5.2
- symfony/mime: ^5.4
- symfony/polyfill-uuid: ^1.20
- symfony/property-access: ^5.2
- symfony/psr-http-message-bridge: ^2.0
- symfony/routing: ^5.2
- symfony/serializer: ^5.2
- symfony/service-contracts: ^2.5
- symfony/yaml: ^5
- tedivm/stash: 0.17.*
- tubalmartin/cssmin: ^4.1
- twig/twig: 3.11.3|^3.26
- wikimedia/less.php: ^1.8.0
- zircote/swagger-php: 4.9.2
Requires (Dev)
None
Suggests
None
Provides
Conflicts
None
Replaces
None
- 10.0.x-dev
- 9.5.x-dev
- 9.5.4
- 9.5.3
- 9.5.2
- 9.5.1
- 9.5.0
- 9.5.0RC2
- 9.5.0RC1
- 9.4.x-dev
- 9.4.8
- 9.4.7
- 9.4.6
- 9.4.5
- 9.4.4
- 9.4.3
- 9.4.2
- 9.4.1
- 9.4.0
- 9.4.0RC2
- 9.4.0RC1
- 9.3.x-dev
- 9.3.9
- 9.3.8
- 9.3.7
- 9.3.6
- 9.3.5
- 9.3.4
- 9.3.3
- 9.3.2
- 9.3.1
- 9.3.0
- 9.2.x-dev
- 9.2.9
- 9.2.8
- 9.2.7
- 9.2.6
- 9.2.5
- 9.2.4
- 9.2.3
- 9.2.2
- 9.2.1
- 9.2.0
- 9.2.0RC2
- 9.1.3
- 9.1.2
- 9.1.1
- 9.1.0
- 9.0.2
- 9.0.1
- 9.0.0
- 9.0.0RC4
- 9.0.0RC3
- 9.0.0RC1
- 8.5.x-dev
- 8.5.21
- 8.5.20
- 8.5.19
- 8.5.18
- 8.5.17
- 8.5.16
- 8.5.15
- 8.5.14
- 8.5.13
- 8.5.12
- 8.5.11
- 8.5.10
- 8.5.9
- 8.5.8
- 8.5.7
- 8.5.6
- 8.5.6RC1
- 8.5.5
- 8.5.4
- 8.5.3
- 8.5.2
- 8.5.1
- 8.5.0
- 8.5.0RC2
- 8.5.0RC1
- 8.4.5
- 8.4.4
- 8.4.3
- 8.4.2
- 8.4.1
- 8.4.0
- 8.4.0RC4
- 8.4.0RC3
- 8.3.2
- 8.3.1
- 8.3.0
- 8.2.1
- 8.2.0
- 8.2.0RC2
- dev-master
This package is auto-updated.
Last update: 2026-10-01 02:24:29 UTC
README
This repository contains the concrete directory of the concretecms/concretecms repository, retaining the git history.
Its branches and tags are generated automatically: please don't push to them, and submit your pull requests to concretecms/concretecms.
The core-splitter branch
The core-splitter branch is the only one that's not generated automatically: it contains the GitHub Actions workflow that generates the other ones.
The split is performed by incremental-git-filterbranch.
How it works
- Someone pushes a branch or a tag to concretecms/concretecms.
- The
Notify splitterworkflow of that repository (.github/workflows/notify-splitter.yml) starts theSplitworkflow of this repository, by using a token. - The
Splitworkflow of this repository (.github/workflows/split.yml) processes the new commits and tags. - The
Splitworkflow pushes the result to this repository, by using the token provided by GitHub Actions.
The Split workflow can also be started manually, from the Actions tab of this repository.
The data required by the incremental runs is stored in the GitHub Actions cache. If the cache is not available, the whole source repository is processed again: it takes much longer, but the resulting commits are exactly the same.
Setup
- The
core-splitterbranch must be the default branch of this repository: GitHub only runs the workflows started by events, by the schedule, or manually if they are in the default branch. - The
Notify splitterworkflow requires an access token:- Create a new fine-grained personal access token:
- go to https://github.com/settings/personal-access-tokens/new
- Token name: for example
core_splitter - Resource owner:
concretecms(the organization must allow fine-grained personal access tokens, and an owner may have to approve the token) - Expiration: choose an expiration date, and remember to renew the token before it expires
- Repository access:
Only select repositories, and selectconcretecms/concretecms-core - Permissions:
Actions>Read and write(it's the permission required to start a workflow) - copy the generated token (
github_pat_...): it's displayed only once
- Save the token as a secret of the source repository:
- go to https://github.com/concretecms/concretecms/settings/secrets/actions
- click
New repository secret - Name:
SPLITTER_TOKEN - Secret: the generated token
- Create a new fine-grained personal access token:
Remarks
- The
Notify splitterworkflow must be present in every branch of concretecms that should start the split: GitHub runs the workflows of the branch that receives the push. - A new tag starts the split only if its commit contains the
Notify splitterworkflow. - Deleted branches and tags are handled by the
Notify splitterworkflow of the default branch of concretecms. - Only one split runs at a time. If other splits are requested in the meantime, only the most recent one waits: the other ones are cancelled by GitHub. That's not a problem, since every run processes all the new commits and tags.
- The branches and the tags to be processed are defined by the
BRANCH_WHITELISTandTAG_BLACKLISTvariables in.github/workflows/split.yml. TheNotify splitterworkflow reads them from there, so that it doesn't start the split for the other branches and tags. - The version of incremental-git-filterbranch to be used is defined by the
INCREMENTAL_FILTER_BRANCH_VERSIONvariable in.github/workflows/split.yml. - To process the whole source repository again (for example after upgrading to a version of incremental-git-filterbranch that fixes the way commits are rewritten), start the
Splitworkflow manually, checking thefrom-scratchoption. Please remark that it takes about 20 minutes. - For debugging purposes, you can download the working directory used by a run: start the
Splitworkflow manually, checking thesave-work-directoryoption. You'll find it in the artifacts of the run, for 3 days. - The
Splitworkflow also runs every Monday and Thursday at 10:30 UTC (that's late at night in Portland), to keep the cache alive (GitHub deletes the caches that haven't been used for 7 days), to process the branches and tags that didn't start it, and to optimize the data stored in the cache (it takes some minutes). GitHub disables scheduled workflows in repositories without commits for 60 days: in that case you'll receive an email, and you can enable it again from the Actions tab.