As this component is not necessary in our setup yet.
It is also easy to setup, so no need for us to showcase this.
Also this adds some extra complexity to our setup due to:
https://github.com/paratestphp/paratest/issues/890 which was the trigger
to remove the component.
Resolves: #1647
* [FEATURE] One command to fix them all
Fixes#1386
* Add help text for the `fix` command
* Include `composer normalize` in the `fix` command
* Document the new `fix` Composer script in the manual
---------
Co-authored-by: Oliver Klee <typo3-coding@oliverklee.de>
The project doesn't have a `composer.lock`. That's why one should use
`composer update` instead of `composer lock`.
This can be done by using the existing `-s composer` and appending
`update.
Furthermore, the command itself was not documented or used anyway.
Relates: #1412
`composer install` does not make sense as we do not have a
`composer.lock`. One should use `composer update` instead.
This is reflected by updating the script names.
Relates: #1412
The PHPUnit configuration option `controlGarbageCollector` was
introduced for PHPUnit 10 and 11 only and hence is not available
for version 9 yet (the version we're using). So we cannot use
this configuration option yet.
This reverts commit 7dea2ddc0b.
As ts is usually understood as TypeScript instead of TypoScript.
TYPO3 itself also changed its file extension from `.ts` to `.typoscript`.
We reflect that by adopting the script name.
Resolves: #1385
This change modifies the `Build/Script/runTests.sh`
command dispatcher to allow passing composer options
to the `composer install` subcommand, for example
Build/Scripts/runTests.sh -s composerInstall \
-- --prefer-source
Note that this is already possible using the generic
`-s composer` dispatcher but would resolve some user
confusion.
This aligns our implementation of runTests.sh with TYPO3 core,
see: https://review.typo3.org/c/Packages/TYPO3.CMS/+/84870Resolves: #1346
This is disabled by default and enabled with this change.
This has the following effect:
- Deactivate automatic garbage collection using gc_disable() before the
first test is run
- Trigger garbage collection using gc_collect_cycles() before the first
test is run
- Trigger garbage collection using gc_collect_cycles() after each n-th
test
- Trigger garbage collection after using gc_collect_cycles() after the
last test was run
- Activate automatic garbage collection using gc_enable() after the last
test was run
Resolves: #1328
The new php based rendering container has been added
recently to render the documentation. The image come
with a internal uid/gid switch to mitigate permission
issues with docker due to a missimplementation, which
podman not suffers by proper using the kernal namespacing.
This change ensures to create a folder before hand with
the correct permissions to mitigate this for docker. On
top of that, the external user set is added for the direct
invokiation and also the interactive switch to avoid failure
in CI context usages.
To avoid permission issues with previously created folder,
a `chown` command is added to ensure correct permission on
that folder.
Resolves: #1283
Extended core-testing image has been used to
support extended `find` options not provided
by the busybox implementation.
After streamlining used `find` command usages
towards a stripped down version with #1209 it
is now possible to use the TYPO3 core-testing
images directly.
This change modifes `Build/Scripts/runTests.sh`
to use `typo3/core-testing-*` images now.
Resolves: #1275
Related: #1209
This change now uses a bash trap to ensure proper container
cleanup after some signals happend. The internal `waitFor()`
is modified to emit a signal to cleanup containers if the
waiting process does not process correctly and stop the
script execution.
Additionally, `--pull-never` as CI_PARAMS is no longer derived
from the `$CI` variable and must now be handed over from the
calling process.
Further, the max retry value in `waitFor()` is increased to 20
to mitigate the slowed down startup of MySQL 8.0 container.
Resolves: #1280
In the PHP world there are only one driver for SQLite and
Postgres available. `runTests.sh` disallows to specify a
driver for SQLite or Postgres and therefore setting the
variable would make that check more complex.
This change modifies the driver information for SQLite and
Postgres to use hardcoded driver output to keep the cross
check for specifing a driver for these database vendors.
Resolves: #1278
Command for rendering:
./Build/Scripts/runTests.sh -s docsGenerate
or just:
composer docs:generate
The reference to the TYPO3 Documentation Rendering Guide was adjusted as the Quickstart page does not exist anymore.
Additionally, the genindex isn't supported anymore. It is planned to consider the `index` directive in the global search on docs.typo3.org.
Resolves: #1189
First iteration of the `Build/Scripts/runTests.sh` supporting
`docker` and `podman` introduced a switch for direct usage in
local environments while keeping `docker` as strong default.
This change removes the hardcoded default for local and ci runs
and introduces a detection of available binaries, prefering the
`podman` over `docker` if both are installed on the host and no
specific binary selected using `-b <container-bin>`.
If no specific binary is provided, the detection chain is now:
* podman
* docker
Default binary variables are removed due to beeing obsolete now.
Resolves: #1148
The `Build/Scripts/runTests.sh` has been streamlined recently
towards the `docker-compose less` approach of the TYPO3 core.
That means, that the `runTest.sh` has been heavily modified,
and multiple changes in the core variant has been implemented.
One of these changes included streamlining the Database Version
handling for the different vendors and combining multiple options
into the `-i` option and using a generic version variable instead
of vendor specific ones. Sadly, it has been missed to align the
version output on the end to the generic variable name.
This change modifies the dbms version output at the end of the
functional test execution to use the correct generic version
variable and thus fixing the missing version information in the
output. The switch has been simplified in the same step.
Resolves: #1272
The TYPO3 core `runTests.sh` contains the `-u` option to
update the images and remove dangling images. Providing
an image name and a `--filter` option is not supported
by podmand and has not been discovered yet in the TYPO3
core implementation yet - and adopted with the recently
sync of this repository implementation to the TYPO3 one.
Both supported docker binaries `docker` and `podman`
supportes filtering images using the `reference` filter
option. Therefore, this change modifies the dangling
image remove command to use double filter options.
To verify that double filtering can be used, following
command can be executed if already some images have
been downloaded:
```shell
podman images \
--filter "reference=ghcr.io/sbuerk/demo-core-testing-*"
--filter "dangling=false" --format "{{.ID}}"
docker images \
--filter "reference=ghcr.io/sbuerk/demo-core-testing-*"
--filter "dangling=false" --format "{{.ID}}"
```
**Note:** `dangling=false` is used here instead of
`dangling=true` like in `runTests.sh`
Resolves: #1088