Report From “QA Best Practices Usable by Community” (August 2021)

Categories: Development, Community Created by Daniel Siepmann
Photo: Mimi Thian / Unsplash.com
Thanks to all of the community members who voted for our budget. This report will provide an overview of the outcome for the first half of this year.

The whole outcome, and current process, is available in Gitlab and at Github.

This report will only cover the biggest topics, not every single change.

Update to XLIFF Version 1.2

We wanted to lint all XLIFF files. TYPO3 was still stuck on v1.0, which was never officially released. Therefore, no official schema existed and linting was not possible. The team contributed to TYPO3 itself as well as docs.typo3.org to update TYPO3 to 1.2 to allow linting, while staying compatible with TYPO3 core.

You can find more insights here:

Provide Ready-to-Use DDEV Environment

A new ready-to-use ddev environment is provided within the EXT:tea. The most important commands are mentioned within the README file.

We believe ddev is a standard tool for many people within the TYPO3 community. That’s why we added it as default to make it easier to set up the extension and to execute scripts like tests. Other developers can check the integration to use the same setup for their extensions. That should ease contribution, as already shown by the TYPO3 core and the typo3.org team.

GitHub Actions

All GitHub Actions are ready to use for our community. All Actions are available at GitHub organization TYPO3-Continuous-Integration.

The following Actions are now available:

  • YAML linting
  • JSON linting
  • XLIFF Linting
  • TypoScript linting
  • PHPStan
  • Copy and Paste detector
  • PHP CodeSniffer
  • PHP CS Fixer

These have been updated to the latest Ubuntu LTS to remain compatible for the near future.

The required Docker images are now hosted at gitlab.typo3.org, so as not to create another dependency on foreign services.

Documentation Rendered at docs.typo3.org

The documentation of EXT:tea is now rendered at docs.typo3.org.

Switch to PHIVE

PHIVE is used alongside Composer in order to avoid dependency hell, and also to be able to use tools that require a PHP version higher than the lowest allowed version for this extension (7.2).

It is like Composer, but more modern and useful for development tools.

Foreign Contributions

We contributed to TYPO3 by updating to XLIFF 1.2, see above.

We also contributed a bug report to martin-helmich/typo3-typoscript-lint which was resolved and is now released.

Thanks to the Team

Let us all say thanks to the Association and community for sponsoring the work. And also thanks to the people who actually did the work, who were: Łukasz Uznański and Oliver Klee. Also thanks to everyone involved by providing further ideas and feedback like Tymoteusz Motylewski.

In total we spent €2,573.50 of our €7,500.00 budget during the first half of the year. All the money was spent to compensate for the working time of the two people actively integrating and reviewing all the code.

Your Feedback

We hope you find the current outcome helpful. You are free to open issues on the repositories, we prefer the GitHub repository for issues. And you are free to join the slack channel #qa-best-practices.

Additional contributors for this article
  • Proofreader : Felicity Brand
  • Content Publisher : Mathias Bolt Lesniak