Second Meeting for TYPO3 6.2 LTS Release
After the well received Kick-Off for the TYPO3 CMS 6.2 LTS development phase, the second week was focused on getting in touch with people, projects and activities.
Second 6.2 Release Team Meeting - May, 24th 2013¶
Since I wasn't available on Thursday - our regular meeting time slot - we decided to meet on Friday at 14:00.
- Oliver Hader (Team Leader)
- Benni Mack (Release Manager 6.1, Co-Team Leader)
- Xavier Perseguers (Release Manager 4.6)
- Christian Kuhn (Q&A, Coder, Co-Release Manager 6.0)
- Ernesto Baschny (Release Manager 4.5 + 6.2)
Later also Steffen Ritter (Release Manager 4.7) joined in the US morning. He's currently in San Francisco and will attend to the T3CON-NA together with Benni - representing our TYPO3 CMS team. Benni will host a talk around FAL (file abstraction layer) and Steffen will introduce the audience to the current Roadmap and Vision concerning the future of TYPO3 CMS.
Done this week¶
We went through what was done during the last week to get an overview of where we currently stand.
I went through the Usability Team Issue Tracker and updated the Target Versions there (adding TYPO3 6.2 LTS). This is the issue tracker we use to get approvals and ideas from our usability experts for improving the TYPO3 Backend and we can expect some activity here for 6.2!
On request of Steffen Müller - the leader of the Logging Project I moved his Forge subproject from the "Incubator" to "TYPO3 6.2". I will give you more details on the Logging plan in a separate article.
Created the Smooth Migration Subproject. Steffen Ritter will lead this effort which will mainly consist on creating documentation, checklists, but maybe also migration and compatibility "scripts", "extensions", etc.
"Long lost souls" reporting to duty¶
The first real activity was getting in touch with groups, teams and enthusiasts. I wanted to make use of the "6.2 LTS momentum" to reach out for old school contributors - some of which we haven't seen in a while. We could notice an increased enthusiasm around the development of TYPO3 CMS:
- Jeff Segars: He has been working on a new company for a while and hasn't had much time to work on the TYPO3 Core lately - thus many new contributors might not even know him yet. He is still working with TYPO3 CMS but also on TYPO3 Flow projects. He told me he will try to get some time to work on the 6.2 development in the next time. Remembering how important his help was back at the development of 4.5 (i.e. he finished the Live Search, worked on a lot of usability improvements and was our English "native speaker" expert) I consider him to be a great asset to our current team.
- WMDB: Peter Kühn and Mathias Schreiber reached out offering their help in the 6.2 development phase. Peter and Rupi Germann will be able to dedicate some development time - which we gladly appreciate. They are very interested in the DAM > FAL/Media Migration and in particular it's scalability and performance. We know Rupi from the old times helping out on the performance front, so I expect him to also to work on this area in general. He will probably also be helpful making sure tt_news is fully compatible. Thanks for the help, WMDB!
- Stefan Galinski and Susanne Moog have been a bit absent from active contribution, but both are still around and will try to arrange some time to work on a patch or review from time to time. We appreciate it and we know you both do an excellent and reliable job - despite the time constraints.
- I also had a meeting with Ben van't Ende: He's our Community Manager working on connecting the teams and keeping an "eagle eye" over what's happening in the TYPO3 community. He is very motivated now to help in the 6.2 LTS effort and will help me with communicating about it.
The new server "tools.typo3.org" is getting ready and will in future host tools like:
Refer to this forge project where the server is being set up and will be further maintained.
Work in Progress¶
Christian Kuhn is currently working deeply in the Install Tool. This tool is one of the most important module where the first time user and the upgrader gets in touch with the new TYPO3 6.2.
Christian's plan is to make the Install Tool more robust, having a better architecture, more independence from other components of the core, never crash (i.e. no "Fatal errors") and have a much better usability.
Christian met with Felix Kopp (our usability expert) to discuss several areas of the Install Tool. One important part was how to handle the "Packages" (currently "introduction" and "government") in future. This architecture hasn't changed since its introduction with TYPO3 4.4. The vision would be that these packages are self-contained inside extensions and the Install Tool being able to detect these, auto-install them and include them in the "Step-Installer" (that's how the "1-2-3" Installer is internally called).
First progress of Christian's work is already getting shape at his personal fork TYPO3-CMS-Catharsis. He has managed to split up the huge "Installer" Class into multiple classes, got rid of some old and obsolete code (i.e. the "phpinfo" page...). He also managed to get the Install Tool being rendered through Fluid templates (without further dependencies) so structuring the templates got a lot more fun.
Next steps will be:
- Finish this initial groundwork to make it ready to merge in the official repository so that work can continue in parallel on other areas (i.e. Steffen Ritter mentioned being interested in the Upgrade Wizards). He plans to have this ready in one or two weeks.
- Work on the usability of the Install Tool: Christian asked us if we know "where you set the password of the install tool"?. We tried with "Basic Configuration". But it is in the "About" screen. How usable is that? I remembered also the usability of the "Create Admin User" - which is located in the "Database Analyser". Ugly, isn't it? This needed to be reworked for ages, now is the time!
- Work on packages handling - Introduction and Government package
- Work on a "Silent Updater" method so that the user gets redirected from bootstrap to the install tool in case something is "wrong" or "missing" in his installation.
- Continue on the "Package Management" project together with Tom Maroschik (later Composer integration).
Google Summer of Code¶
As it seem, we have currently four proposals in Google Summer of Code (GSoC).
Olly noted that there is a project proposed on the topic TYPO3 Updater. Christian will take a look at it as it relates to the Install Tool.
Another interesting project is the TYPO3 Shell Proposal which still needs a mentor.
Read more about the TYPO3 participation in the Google Summer of Code 2013
We have a meeting scheduled with the Usability and Design Team in Frankfurt at dkd. There is currently a doodle surveying about the best day. As it seems, it will probably take place at May, 14th. We invited Robert Zierhofer from the Design Team (which is responsible for the TYPO3 web pages, banners, marketing widgets etc) to help out on the TYPO3 Backend design front. Despite the current lack of time from our UX guys (Jens and Lars) we plan to make some substantial improvements in the TYPO3 Backend for 6.2. Felix Kopp and Benni have some good visions about the general Roadmap. I'll write more details about it probably after our meeting.
Benni told us he will be flying to Hamburg in some weeks to meet with Christian Kuhn in order to discuss generic UX widgets for the Backend to provide a more consistent look & feel and ease extension and core developers work (backend "best practices").
On June 11th and 12th the Workspaces Code Sprint will take place at dkd in Frankfurt. Olly noted that unfortunately no Extbase Team member will be able to join. Anja doesn't seem to have time on these days.
Next event where many Active Contributors will be present is the TYPO3camp in Stuttgart from June 7th until 9th.
TER Extensions migration¶
Xavier told us about the TER cleanup project getting in the next phase. Read details about the current step in this news. This movement is very well in line with our 6.2 Release Plan, as we require many extension authors to test their extensions with latest TYPO3 versions in order to make sure they still work in 6.1 (and thus also in the future 6.2!). The timing of this project is perfect.
We also came to the conclusion that we actively will need to reach out more to the extension authors in order to help them with the migration task. First we need to identify the "most common" extensions which need to work on latest TYPO3 CMS (i.e. powermail, templavoila, and at least all those which are included in the introduction and government packages). To get a better overview of potential extensions we will get in touch with common TYPO3 hosters in order to generate some statistics. Ernesto will try to contact Jochen Weiland and maybe someone from Domainfactory or Mittwald about this topic.
Forge "Target Versions"¶
I explained the proposal already send to the mailing list which is about removing the patchlevel releases from the "Target Versions" in the Forge Tracker and making the workflow easier for everybody.
The plan was approved and we will take these steps:
- Remove all patchlevel releases from the TYPO3 CMS project. I will try it out to avoid generating tons of notification mails. If required, I will contact the server team to do it somehow directly in the database.
- Provide some JSON / REST interface to fetch the merged to core information on an individual issue basis (as soon as this tool is working on tools.typo3.org).
- Provide / Create a Redmine plugin in order to simply display this information directly on an Issue (above the "Revisions" for example). This would provide the important (and automatically generated) information in the Issue Tracker: In which releases of TYPO3 this issue was solved, if there are Reviews pending, if we have pending backports. I will try to contact some Redmine expert or try it out myself.
Deprecation Strategy in 6.2 LTS¶
I argued that we need to make sure the "4.5" to "6.2" migration is not getting too difficult because of a too aggressive deprecation strategy. I recalled that in 4.5 we simply skipped the "delete deprecated methods" and postponed it to 4.6. This provided a very smooth migration from 3.8 ... 4.4 to 4.5 without substantial breaks in extensions or integrations.
One important issue is now the removal of all "stub files" in t3lib and typo3 which were deprecated in 6.0. I brought into discussion if we ought to bring them back in order to avoid several problems people might have with it. Christian is strictly against it. There are several solutions already:
- By using the autoloader which we have since TYPO3 4.3 there is no need to "require" any individual file
- References to EXT:cms/filename.php in callUserFunc and similar might require some analysis and maybe some fallback solution (see for example #48371 in Grid elements)
The core directory structure is now much cleaner and fun to walk through. At the end we will be able to get rid of t3lib completely. So we decided not to bring back the stub-files but keep an eye on potential problems - probably we'll get more details once we start mass-testing important extensions. I've documented this task in #48534 so that we don't forget to do it.
Olly also mentioned the planned "Compat Extension" which might be place to detect these kind of annoyances before hand.
Another issue I collected during this week was #48396. We decided to keep this kind of compatibility layer.
In general, I asked everybody to be thoughtful and attentive when it comes to removing deprecated methods. We have deprecated lots of things in 6.0 but it came out just some months ago. Simply removing them now just "because we can" is not wise considering the plan of providing a smooth migration from old installations and extensions. Let's not frustrate them too much in the tedious job of getting the installations up to date.
On this matter we decided that it would we good to bring back the "int_to_ver" method, as this seem to be the top "Fatal error" when upgrading to "master" lately and it's difficult to get a fallback solution for it (removed in #44763).
GIT / Working mode and Submodules¶
I asked the team how "bigger projects" should work before the phase of sending review requests to the Core. Christian suggested to use github.com as a platform of forking from the official mirror https://github.com/TYPO3/TYPO3v4-Core. This is also how Christian works on his Catharsis fork.
Next week we won't meet due to me being away for some days (from Thursday to Sunday). So next meeting is on June, 6th.
Keep up the good work and have a great time! Thanks for reading and your interest!