Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Cms Composer Installers Laravel Package

typo3/cms-composer-installers

Composer plugin for TYPO3 CMS projects that installs the TYPO3 core and extensions into a working directory structure. Configure via composer.json extra settings like required extension-key for extensions and web-dir for the public document root.

View on GitHub
Deep Wiki
Context7
v5.0.2

This release contains a couple of bugfixes related to newer PHP versions.

v5.0.1

This release contains a couple of bugfixes related to newer PHP versions.

v4.0.0-RC2

This release contains a couple of bugfixes related to newer PHP versions

v3.1.4

This release contains a couple of bugfixes related to newer PHP versions

v5.0.0

This release is identical to 4.0.0-RC1 and done to make it possible for TYPO3 12LTS to depend on it, without forcing TYPO3 11LTS users to use it.

v3.1.3

This release contains a couple of bugfixes related to newer PHP versions

v4.0.0-RC1

Features

  • All extensions are now installed in the vendor folder. This means all extension files will not be accessible by the web server any more. Public resources from extensions must be in the Resources/Public folder, which will automatically be published by TYPO3 using symlinks. See "breaking changes" for more implications on that change.

Breaking changes

All extensions are now installed in the vendor folder.

While this is a great feature, it also comes with some implications that need to be considered:

  1. All files from extensions, that require to be accessed by the web server directly MUST reside inside the Resources/Public folder.
  2. The public resource URL can not be derived any more from the absolute path to the file by stripping off some path part, but only by passing the absolute path to \TYPO3\CMS\Core\Utility\PathUtility::getAbsoluteWebPath Example:
use TYPO3\CMS\Core\Utility\PathUtility;
use TYPO3\CMS\Core\Utility\GeneralUtility;

PathUtility::getAbsoluteWebPath(GeneralUtility::getFileAbsFileName('EXT:ext_key/Resources/Public/Icons/Extension.svg'));
  1. Every TYPO3 extension (Composer package of type typo3-cms-extension) must define its extension key explicitly in composer.json
  2. It is not possible any more to change app-dir or root-dir within the root composer.json Only web-dir can still be changed, but it needs to be a sub directory of the composer.json directory

General remarks

It is planned to release a stable version 4.0.0 in a few weeks and new projects with TYPO3 11.5 will then install this version of composer installers. If the extension you require in your project have hard coded paths that reference e.g. typo3conf/ext/ directly, you can still pin this package to version ^3.1 within your root composer.json

v3.1.2

Allow composer/installers 2.0 and higher

v1.5.10

Fixes an bug with installers when using composer.typo3.org as repository

v3.1.0
v1.5.6

Mark as compatible with all bugfix versions of PHP 7.4

v2.2.4

Mark as compatible with all bugfix versions of PHP 7.4

v2.2.3

Mark as compatible with PHP 7.4

v2.2.2

Fix replace section parsing in ExtensionKeyResolver

v1.5.4

Fix replace section parsing in ExtensionKeyResolver

v1.4.7

Fix replace section parsing in ExtensionKeyResolver

v1.5.5

Mark as compatible with PHP 7.4

v1.5.3

Mark as compatible with PHP 7.3

1.4.2

Changes since 1.4.1:

  • Avoid fatal error when upgrading from 1.3.x

Full list of changes since 1.4.1

1.4.1

Changes since 1.4.0:

  • Improve deprecation message for cms-package-dir

Full list of changes since 1.4.0

1.4.0

Changes since 1.4.0 RC4:

  • Improve deprecation message for cms-package-dir

Full list of changes since 1.4.0 RC4

1.4.0-rc4

Changes since 1.4.0 RC3:

  • Harden t3x extraction
  • Add experimental root-dir

Full list of changes since 1.4.0 RC3

1.4.0-rc3

Changes since 1.4.0 RC2:

  • Fixed a bug in path calculations

Full list of changes since 1.4.0 RC2

1.4.0-rc2

Changes since 1.4.0 RC1:

  • Changed extra -> typo3/cms -> extensionKey to extra -> typo3/cms -> extension-key

Full list of changes since 1.4.0 RC1

1.4.0-rc1

Changes since 1.3.0:

  • Deprecated config options extensions-in-vendor-dir, prepare-web-dir and setting web-dir to . (since . is still default, not setting web-dir also issues a deprecation warning)
  • Raise minimum required PHP version to 7.0
  • Expose essential paths that are only know at composer build time as environment variables
  • Respect extra -> typo3/cms -> extensionKey in package composer.json to explicitly set the extension key for an extension
  • Added API that packages (especially typo3/cms) can easily hook into composer build time
  • Bugfixes

Full list of changes since 1.3.x

1.3.0-rc2

Changes since 1.3.0 RC1:

  • Replaced extension-dir and imply-extension-key with extensions-in-vendor-dir (see README) to reduce complexity
  • Moved to PSR-4 autoloading standard
  • Bugfixes

You can view the full list of changes compared to 1.2.x and compared to 1.3.0 RC1

1.3.0-rc1

Changes:

  • Using PSR-2 now
  • Added documentation in README file
  • Added several new options (prepare-web-dir, extension-dir, imply-extension-key) (see README)
  • TYPO3 core and extensions can now configure binaries to be installed by composer
1.1.0
  • The composer installer has been largely rewritten to use current composer plugin API
  • TAR Downloading of the TYPO3 CMS Core has been implemented
  • Extension Installation has been implemented
1.0.0
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport