-
-
Notifications
You must be signed in to change notification settings - Fork 20
12LTS Crowdfunding Campaign
Note: This crowdfunding campaign has been canceled and been replaced by the early access program.
This extension will be compatible with TYPO3 12LTS. However, this requires quite a lot of work. This crowdfunding campaign will collect the funds for this work.
The goals are to
- have clean 12LTS compatibility
- replace the use of
AbstractPlugin
and marker-based templates with a partial rewrite with Extbase/Fluid (with an extremely high coverage of automated tests)
Extension | 12LTS-compatible release | 12LTS testing branch |
---|---|---|
phpunit | (to do) | (not available yet) |
oelib | (to do) | (not available yet) |
feuserextrafields | (to do) | (not available yet) |
onetimeaccount | (to do) | (not available yet) |
seminars | (to do) | (not available yet) |
To contribute to the campaign, please send an email with the net sum you would like to pledge (at least 100β¬), your billing address, your company name and URL (for the list of pledges) to typo3-coding AT oliverklee DOT de
.
As a campaign backer, you will get a backlink from the seminars manual, regular update emails and beta versions to test and use.
I will start work on each top-level milestone (and send the invoices for that milestone) once the corresponding milestone is finished. (And as long as a milestone is not completely financed, you will not receive an invoice for your pledge that covers the corresponding milestone.)
You can always increase you pledge, but you cannot reduce or cancel it. After milestone 1 is financed, you can also pledge for a certain milestone. I'd prefer to do the milestones in order, though. Also, pledging for a certain milestone will spread out the pledges, hence reducing the probability of more milestones getting full funding.
All prices listed in the milestones are net prices.
ππΈ Milestone 1: Fix some open bugs in the extensions, do some cleanup, create a documentation extension
Total required financing: 1400β¬
Financed: 500β¬ (35%)
- oelib: 3 bugs
- onetimeaccount: 7 bugs
- seminars: 23 bugs
- also switch TypoScript includes to always use
@import
- raise all extensions to PHPStan level 9 and the bleeding-edge rules (without fixing the additionally-found issues)
- enable the bleeding edge PHPStan rules for all extensions
- add the crowdfunding campaign announcements to various parts of the seminars, onetimeaccount and feuserextrafields extensions
- create and link an example extension that documents how to extend the feuserextrafields and onetimeaccount extensions
Total required financing: 1000β¬
- switch the seminars tests from
nimut/testing-framework
totypo3/testing-framework
- 79 unit testcases
- 44 functional testcases
- make all data providers static (in preparation for PHPUnit 9)
- feuserextrafields: 4
- oelib: 84
- onetimeaccount: 6
- seminars: 91
- stop using
setMethods()
in the tests: 7 (seminars) - convert the view helper tests to proper functional tests
Total required financing: 800β¬
- drop TYPO3 10LTS support
- drop things marked as deprecated
- phpunit: 1
- feuserextrafields: 2
- oelib: 49
- seminars: 16
- drop support for PHP 7.2 and 7.3
- move the removal of some deprecated thing one major version later (where it is not practical to update the callers yet)
- drop obsolete TYPO3 version switches and
method_exists
calls:- phpunit: 0
- feuserextrafields: 6
- oelib: 81
- onetimeaccount: 0
- seminars: 54
Total required financing: 2000β¬
- switch to the latest TYPO3 Rector version
- upgrade all extensions to PHPUnit 9
- upgrade the code use PHP 7.4 language level features
- add more native type declarations (also with callables)
- reformat the code with the TYPO3 Core CS-Fixer rules
- upgrade all extensions to
typo3/testing-framework
V7 - switch the DB fixtures from XML to CSV
- feuserextrafields: 8
- oelib: 8
- onetimeaccount: 1
- seminars: 143
Total required financing: 2400β¬
- feuserextrafields: 52 calls
- oelib: 367 calls
- onetimeaccount: 7 calls
- seminars: 367 calls
Total required financing: 1600β¬
Just get the automated tests and the code to work, but do not make it clean of fix any deprecations. Also update the TCA as needed. Go through all extension scanner warnings and fix the positive cases.
- testing TYPO3 distribution
- testing site package
- phpunit: 1 extension scanner warning, 0 files changes by Rector
- feuserextrafields: 4 extension scanner warnings, 2 files changed by Rector
- oelib: 18 extension scanner warnings, 10 files changed by Rector
- onetimeaccount: 1 extension scanner warning, 1 file changed by Rector
Total required financing: 2400β¬
Just get the automated tests and the code to work, but do not make it clean of fix any deprecations. Also update the TCA as needed. Go through all extension scanner warnings and fix the positive cases.
- ca. 200 extension scanner warnings
- 78 files changed by Rector
Total required financing: 2400β¬
This is a dependency of almost every seminars plugin and hence is the main blocker for the migration to Extbase/Fluid. It takes care of processing registrations and unregistations, calculating vacancies, and sending out emails. It has 1216 lines in the current seminars main
branch. A secondary goal of the rewrite is to avoid race conditions when multiple persons are registering in parallel.
Total required financing: 1600β¬
π Milestone 10: Extbase/Fluid rewrite: list view (with configurable columns, but without filtering, and without flexible sorting)
Total required financing: 1600β¬
Total required financing: 3200β¬
Total required financing: 600β¬
Total required financing: 1600β¬
Total required financing: 400β¬
Total required financing: 800β¬
Total required financing: 400β¬
Total required financing: 2400β¬
Total required financing: 2400β¬
π Milestone 19: Drop the marker-based templates and the AbstractPlugin
-based plugins from seminars
Total required financing: 1600β¬
The tricky part here is removing those parts one by one without breaking anything else.
- 500β¬: T3 PREMIUM
To contribute to the campaign, please send an email with the net sum you would like to pledge (at least 100β¬), your billing address, your company name and URL (for the list of pledges) to typo3-coding AT oliverklee DOT de
.