From 95c948bbdceaf2cff096b5e0a622d9e3b31f5b3f Mon Sep 17 00:00:00 2001 From: Marcus Schwemer Date: Wed, 16 Oct 2024 12:30:07 +0200 Subject: [PATCH] [DOCS] Explain development model Due to in2codes EAP program, it is necessary to explain the current development model. --- Documentation/DevelopmentModel.md | 56 +++++++++++++++++++++++++++++++ Documentation/Readme.md | 3 +- Readme.md | 20 +++++------ 3 files changed, 67 insertions(+), 12 deletions(-) create mode 100644 Documentation/DevelopmentModel.md diff --git a/Documentation/DevelopmentModel.md b/Documentation/DevelopmentModel.md new file mode 100644 index 000000000..caa46a384 --- /dev/null +++ b/Documentation/DevelopmentModel.md @@ -0,0 +1,56 @@ +# EAP, development and branching model + +## Early Access Program (EAP) + +The base for this development model is the **E**arly **A**ccess **P**rogram (EAP). The EAP provides a private, early +access to a version of Powermail, which is compatible with the youngest TYPO3 LTS version. The reason for an EAP program +is, that EXT:powermail and related extensions are considered feature complete and we need at least a partial +re-financing of the development efforts. + +The code, developed while the EAP period, will become public nine months after the TYPO3 LTS was released. If you want +to learn more about in2codes EAP program or have questions, please head over to +[in2code EAP](https://www.in2code.de/en/agency/typo3-extensions/early-access-program/) or ask in the +[#ext-powermail channel on TYPO3 slack](https://typo3.slack.com/archives/C06P2DQG2). + + +## Which versions get which updates? + +| TYPO3 - compatibility | Support/Development | Example (TYPO3 version) | Branch name | +|-------------------------------------------|-------------------------------------------------------------------------------|-----------------------------|----------------------| +| upcoming TYPO3 LTS | Security, Bugfixes, Features, Breaking changes | v14 | master | +| current TYPO3 LTS | Security, Bugfixes, Features, Breaking changes (until powermail release 13.0) | v13 (released October 2025) | master | +| old TYPO3 LTS (before EAP becomes public) | Security, Bugfixes, Features | v12 (until July 2025) | typo3_v12 | +| old TYPO3 LTS (after EAP becomes public) | Security, Bugfixes | v12 (after July 2025) | typo3_v12 | +| TYPO3 ELTS | Security, Bugfixes (paid) | v11, v10, v09 | typo3_v11, typo3_v10 | + +## Branching Model + +The development for the youngest (or upcoming) TYPO3 LTS compatible version happens in branch `master`. Each older +version has its own compatibility branch. The branch name has nothing to do with the powermail version. + +When the development for a recently published or upcoming TYPO3 LTS version starts a new branch for "LTS - 1" is +created. For example, when the development for TYPO3 v13 compatibility starts, a new branch `typo3-v12` is created. +At this moment this will be the default branch for the *public* repository "for the time being". The base of all open +pull requests (against `master`) will be changed to the new branch by the maintainer. + +Development takes place in branches `docs`, `feature` and `bugfix`. Before merging they must meet following conditions: + +- necessary tests are added to the test suite +- documentation is updated +- branch is rebased onto the default branch +- all tests are green: unit, acceptance, phpstan, codestyle + +If everything is fine, the branch is merged as fast forward. This ensures a nice history and makes it possible to have +pretty releases at github with all solved issues and attributions to contributors. + +The development for public code takes place in the public repo. The private repository acts a mirror of these branches. + +The development for the upcoming compatibility release happens in branch `master` of the private repository. Branch +`master` is blocked for everyone (even the maintainer) in the public repo until the EAP development becomes public +(TYPO3 LTS release + 9 months). + +When the EAP phase is over, the code of branch `master` will be pushed as is to the public repo (including tags) and +also available via packagist and the TYPO3 TER. + + + diff --git a/Documentation/Readme.md b/Documentation/Readme.md index 3febe3ec2..e345cfb41 100644 --- a/Documentation/Readme.md +++ b/Documentation/Readme.md @@ -38,7 +38,7 @@ Some basic points: (funnel, browser, language, country, etc...) - For Developers: Powermail is a very flexible extension, which also - could be extended by your code or extension (hooks, eventdispatchers, + could be extended by your code or extension (hooks, events, own Finishers, own DataProcessors, own Spam-Prevention-Methods, own Validators, TypoScript cObjects and userFuncs, debugoutput, etc...). @@ -87,6 +87,7 @@ See the reporting about the delivered mails (Form or Marketing Data Analyses are ## Documentation overview * [Introduction](/Documentation/Readme.md) +* [Development Model](/Documentation/DevelopmentModel.md) * [Documentation for editors](/Documentation/ForEditors/Readme.md) * [Documentation for administrators](/Documentation/ForAdministrators/Readme.md) * [Documentation for developers](/Documentation/ForDevelopers/Readme.md) diff --git a/Readme.md b/Readme.md index 950d4dcc9..df25f8cf9 100644 --- a/Readme.md +++ b/Readme.md @@ -1,11 +1,12 @@ # TYPO3 Extension powermail -Powermail is a well-known, editor-friendly, powerful -and easy to use mailform extension for TYPO3 with a lots of features -(spam prevention, marketing information, optin, ajax submit, diagram analysis, etc...) +Powermail is a well-known, editor-friendly, powerful and easy to use mailform extension for TYPO3 with a lots of +features (spam prevention, marketing information, optin, ajax submit, diagram analysis, etc...) > :warning: **TYPO3 13 compatibility**\ -> See [EAP page (DE)](https://www.in2code.de/agentur/typo3-extensions/early-access-programm/) or [EAP page (EN)](https://www.in2code.de/en/agency/typo3-extensions/early-access-program/) for more information how to get access to a TYPO3 13 version +> See [EAP page (DE)](https://www.in2code.de/agentur/typo3-extensions/early-access-programm/) or +> [EAP page (EN)](https://www.in2code.de/en/agency/typo3-extensions/early-access-program/) for more information how +> to get access to a TYPO3 13 version ## :warning: Deprecations, planned breaking changes for V13 and features @@ -35,6 +36,7 @@ throughout the last years and want to make available to the broader public, for ## 1. Documentation overview * [Introduction](/Documentation/Readme.md) +* [Development Model](/Documentation/DevelopmentModel.md) * [Documentation for editors](/Documentation/ForEditors/Readme.md) * [Documentation for administrators](/Documentation/ForAdministrators/Readme.md) * [Documentation for developers](/Documentation/ForDevelopers/Readme.md) @@ -58,18 +60,14 @@ Quick guide: | Powermail | TYPO3 | PHP | Support/Development | |-------------|-----------|-----------|------------------------------------------------| +| 13.x | 13.x | 8.3 - 8.x | Features, Bugfixes, Security Updates | | 12.x | 12.x | 8.1 - 8.2 | Features, Bugfixes, Security Updates | | 11.x | 12.x | 8.1 - 8.2 | Support dropped | -| 10.x | 11.x | 7.4 - 8.1 | Bugfixes, Security Updates | +| 10.x | 11.x | 7.4 - 8.1 | Security Updates (paid backports are possible) | | 9.x | 11.x | 7.4 | Support dropped | | 8.x | 10.x | 7.2 - 7.4 | Security Updates (paid backports are possible) | -| 7.x | 8.7 - 9.x | 7.0 - 7.4 | Security Updates (paid backports are possible) | +| 7.x | 8.7 - 9.x | 7.0 - 7.4 | Support dropped | | 6.x | 8.7 - 9.x | 7.0 - 7.x | Support dropped | -| 5.x | 8.7 - 9.x | 7.0 - 7.x | Support dropped | -| 4.x | 7.6 - 8.7 | 5.5 - 7.2 | Security Updates (paid backports are possible) | -| 3.x | 7.6 - 8.7 | 5.5 - 7.2 | Support dropped | -| 2.18 - 2.25 | 6.2 - 7.6 | 5.5 - 7.0 | Support dropped | -| 2.2 - 2.17 | 6.2 - 7.6 | 5.3 - 7.0 | Support dropped | Do you need free support? There is a kind TYPO3 community that could help you. You can ask questions at https://stackoverflow.com and tag your question with `TYPO3` and `Powermail`.