The TYPO3 community, contributors, and the release team prepared a new snapshot of the current development of TYPO3 CMS 6.2: beta7. This is the final beta release!
What happened since beta6?
MySQLi for DBAL (#50752): Our DBAL API now natively uses the MySQLi PHP API instead of the deprecated MySQL library
Redirect to distributions after first login (#56321): Now the last step of the "Step Installer" will provide an automatic redirect to the backend after which the Extension Manager will auto-start the Distribution Management module (after loading the list of extensions). This should guide the administrator into kick starting their installation with some pre-configured distribution, instead of leaving them with an empty Page Tree and a non working Frontend.
Extbase: Uses prepared statements in generic persistence (#55360): Extbase is now able to use native TYPO3_DB prepared statements. This can speed your applications if used wisely. To complete this feature, we will try to include #27372 during the next few days, providing native MySQL prepared statement support in the Core.
Third party library updates
Updated ADOdb to 5.18 (#56761)
Updated requirejs to 2.1.11 (#56913)
Optimized permission checking and fixing in the Install Tool (#52668). This should solve the issues when installing TYPO3 and getting stuck in Step 2 when permissions on the existing directory structure get broken. The new defaults are more relaxed (2775/664) and the Folder Structure checks in the Install Tool are more consistent.
Thanks to the meticulous work of Cynthia Mattingly, we have had plenty of textual enhancements in the Install Tool (#56754).
"Toggle All" button in All Configuration was restyled (#55469)
Changed notification level for missing opcode cache (#55392). This avoids this circumstance to be mailed over and over again, in case you are monitoring the System Reports via a scheduler task.
Introduce failsafe view in install tool (#55352). This kicks in in case your PHP opcode cache is stripping away doc comments which are required for the Fluid templating engine to work.
Fixed a Fatal error in database connect install step (#56605)
DatabaseConnection must be initialized (#56763)
Inconsistent visual appearance in the System Environment view (due to phpinfo's CSS) (#55116)
Install Tool did not save Extbase object cache configuration (#55556)
Makes text in All Configuration selectable (#56350)
Upgrade Wizard: Missing argument in ReferenceIntegrity updater (#56737)
Upgrade Wizard with DBAL: Fixed "Could not parse where clause" (#56390)
Fixed no caching behavior of bootstrap (#56583)
Big: Improve performance of Bootstrap/PackageManager (#56934, #56310, #56331, #56341, #56538). This implements some optimizations, basically reducing the total footprint of this central infrastructure (amount of classes, memory, CPU)
Added a global composer.json for the TYPO3 CMS project (#55770)
Fixed: Only valid package names will be processed (#56532).
PackageManager initialize() signature is now again compatible with the upstream Flow interface (#56660)
A link to extension manual is displayed in the extension manager, once it is downloaded in the documentation module (#56880). This uses a new Signal in the Extension Manager, which allows manipulating the available actions (#56869)
Fixed: Extension upload as zip on Windows systems ignored directories (#53346, #53740)
Administration / Configuration
Added "ts" to the textfile_ext (#48812)
Included PHP warnings as exceptional errors (#56683)
Fixed misleading naming for the Language update CommandController (#54128). Task is now called "language:update" instead of the strange "update:update". Adapt your cronjob in case you are using this name since alpha2!
Administrators: Removed checkbox "Include Access List" when editing be_groups (#56893). This is already in a separate tab for some time now, there is no use in this checkbox anymore.
Finally fixed in sys_action: Allows user update without requiring a password change (#25700). Simply leave the password field empty if you do not want to change it.
Backend / UX / Styling
Use new table styles for Function "Create multiple pages" (#56870)
Removed ExtJS normalization in order for normalize.css to apply (#56418)
Added missing icons for main backend modules in ACL list (#56809)
Fixed: Missing icons for some core db tables (#56808)
Fixed alignment for button "copy default content elements" (#56636)
Language labels missing in Localization Overview (#56767, #56762)
Fixed: .t3-table & .dblist-table (#56926)
Fixed: Layout of the category tree was broken (#56752)
File Abstraction Layer
Adapt ShowPic popup to use FAL (#56723, #56825)
Allow Storages outside the webroot (#36420)
API: Create new processor registry (#56775)
When accessing a file inside a processing-folder, returns a ProcessedFile instead of File, to avoid the processed files being indexed as regular files (#54234).
FAL readonly: Directory copying results in BE exception (#56494)
Fix Content-Disposition header sent by dumpFileContents (#56923)
PublicURL calculation for storage 0 was wrong (#56927)
Outside storages can never be marked as public (#56730)
Remove wrong storage->isPublic() check in localFolderTree (#56183)
ResourceStorage::SIGNAL_PreFileAdd should be triggered earlier (#56394)
Documentation: Fixed wrong note about ResourceFactory being "internal" (#56731). Since 6.2 it is public API.
Cleanup: Removed baseUri from the Storage (#56783)
Cleanup: Remove references to $GLOBALS['FILEMOUNTS'] (#55547)
Download link for absolute file path (#56659)
SQL Index on sys_file_processedfile is too large (#56786)
Usability: Added an info icon for inline fileReference elements (#56804), so that editors can quickly jump to the info on the file being referenced in an IRRE element.
Usability: Fix thumbnail display for IRRE records (#56274)
Usability: Wrong file icon in info popup (#56251)
Usability: Allow search for FAL related DB records (#56410)
userPermissions => recursiveDeleteFolder was not working (#56527)
TCA title of table sys_file_metadata is now "File Metadata" (#56890)
Importer / Exporter
Make Import/Export work with Package Manager (#56670)
Add FAL support for import in sys extension impexp (#55528, #55532, #55906)
Export binary data from sys_file records (#55431)
Fix xml2array values for attributes type NULL (#55082)
A long standing bug in language menus: now cHash parameter is added if necessary (#33833).
Improved Locker: Code cleanup and fixing semaphore locking (#40420). It is now possible to reuse a semaphore. This change is better described in this Blueprint: wiki.typo3.org/Blueprints/SemaphoreLocking. Configure TYPO3 to use semaphore locking in case your PHP environment allows it (i.e. Unix / Linux based servers).
Frontend Performance: The cookie should only be deleted (with Set-Cookie) if it was set before (#56733)
Micro optimization: PHP-functionality instead of GeneralUtility::deHSCentities (#50449)
Add cache to IconUtility::getSpriteIcon() (#56110)
inline BEUserAuth::getCookieName (#56316)
Remove checks for extensions which are always loaded (#56858)
Remove locking around log files (#56833). This should greatly increase the speed of deprecation logging and sysLog writing.
The backend_layout added now can only be registered through the new CSRF protected way (#56625).
browse_links.php is now also a wizard (#56470). This is part of the CSRF security workpackage.
Deprecated usage of $GLOBALS['typo3CacheManager'] (#56597)
Remove wrong deprecation comment in EXT:form (#56842) and EXT:impexp (#56829)
Remove unused function BackendUtility::updatePagesTSconfig() (#53471)
Big cleanup in the ClassLoader class (#56797)
Move modAccess and language include in EXT:filelist (#56827)
Refactored init() function of the ElementBrowser (#55983)
We improved our unit and functional tests in all areas. It now uses less memory, is way faster and cleaner. The goals of the Blueprint wiki.typo3.org/Blueprints/StandaloneUnitTests are almost reached, but work on it will go on further.
Along with that, many functional tests were added in order to fulfill some of the Workpackages: IRRE / Workspaces (#56708, #56805, #56374, #56707), Extbase persistence (#55661, #55786), Importer / Exporter (#56287, #56241). We now ship almost 600 functional tests and 6500 unit tests.
Downloading and Upgrading
If you have tried some earlier snapshot of the 6.2 development branch (i.e. some alpha or beta) here are some tips when upgrading to this latest beta:
Download 6.2 beta7 from the Download Page.
Uncompress into your old Document Root.
Switch the typo3_src symlink to the new package
Use the Install Tool:
"Important Actions" and delete the whole cache content (make sure this deletes the whole typo3temp/Caches/* files and also the content of Extbase Reflection Caches - do it manually if not working otherwise!)
"Upgrade Wizards": Walk through all Upgrade Wizards
Additional note in beta6 and beta7: The composer names of the system extensions were changed to be standards compliant (#53753). This means that your PackageStates.php needs to be reconstructed in case you tried a previous beta. After clearing typo3temp/Cache, make sure you deactivate and activate some extension in the extension manager in order to have the PackageStates file rewritten.
Keep in mind that the exact same steps are required when upgrading from a previous version of TYPO3. Note that you might need to upgrade the extensions to the latest state before upgrading the Core!
Note: If you see something like: "Warning: Invalid argument supplied for foreach() in PackageManager.php", it's a sign that you need to clear all system caches before proceeding. Use the Install Tool, "Important Actions" to do this, or simply remove typo3temp/Caches directory.
If you try out the beta and find some bug or issue with it, don't hesitate to report back to us. Our issue tracking system is Forge. To fill in a report, you must register as an user on typo3.org first. Then Login on Forge. Take a look at other reports as those linked in this release notes. Make sure to do a search first to see if there is already a report of the issue you have, before reporting the issue again. Do that by adding a filter "Subject" to the issue tracking filtering system or by using the "Search:" field on the top corner. If you are reporting some new issue, make sure you fill in all required fields:
A speaking and concise subject briefly describing the problem (a phrase like "I just found a bug in TYPO3!" is not descriptive enough!)
TYPO3 Version: specify the release of TYPO3 where the problem occurs: "6.2" in case you are trying this beta.
Category: Try to find a matching category, it helps us filter the issue. In case of doubt which category to use, just leave it blank.
In the text part of the issue, try to describe exactly what the problem is. A part with "How to reproduce" helps the developers understanding when the bug appears exactly.
You might want to join IRC on Freenode, channel #typo3-cms and get our attention on your bug or if you have questions if what you found is indeed a bug or some misconfiguration.
Now we are heading straight to the last week of fine tuning our features. We still have a list of pending Issues for final 6.2.0 release we could tackle until the release candidate which should be released by the end of the next working week (Thursday).
Let's get it on!