[BUGFIX] Fix corrupted JavaScript assets loaded by website users
[BUGFIX] Fix corrupted JavaScript assets loaded by website users
Website users loaded corrupted JavaScript assets for files generated by
EXT:vhs when EXT:vhs was in the middle of re-writing the contents of the
requested asset file. This happens because EXT:core
`GeneralUtility::writeFile()` isn't implemented in an atomic style
causing observers (such as visiting website users) to read incomplete
asset file contents. Incomplete JavaScript files likely cause syntax
errors when interpreted by the user's user-agent rendering front end
sites unable to reach JavaScript-based interactivity.
Fix the issue by (non-atomically) writing into a temporary file and
replacing the destination asset file with a single atomic `rename()`
operation instead. This ensures that observers of the destination asset
file either see the complete old contents or the complete new contents
but never any intermediate state of the asset content.
See: https://man7.org/linux/man-pages/man2/rename.2.html
See: https://github.com/TYPO3/typo3/blob/v10.4.37/typo3/sysext/core/Classes/Utility/GeneralUtility.php#L1835-L1861
adamkoppede
2024-12-04
[TASK] Set beta stability
[TASK] Set beta stability
NamelessCoder
2024-11-11
Merge branch 'master' into development
Merge branch 'master' into development
NamelessCoder
2024-11-11
[TASK] Create change log for 7.0.7
[TASK] Create change log for 7.0.7
NamelessCoder
2024-11-11
NamelessCoder
2024-11-11
Merge branch 'development'
Merge branch 'development'
NamelessCoder
2024-11-11
[BUGFIX] Guard against undefined doktype
[BUGFIX] Guard against undefined doktype
NamelessCoder
2024-11-11
[BUGFIX] Skip invalid pages when building menus
[BUGFIX] Skip invalid pages when building menus
NamelessCoder
2024-11-11
[TASK] Demand specific version of phpstan
[TASK] Demand specific version of phpstan
Done with breaking changes in bugfix releases!
NamelessCoder
2024-11-11
[TASK] Schedule a nightly build
[TASK] Schedule a nightly build
NamelessCoder
2024-09-23
[TASK] Regenerate ViewHelper documentation
[TASK] Regenerate ViewHelper documentation
NamelessCoder
2024-09-05
[TASK] Update XSD schema
[TASK] Update XSD schema
NamelessCoder
2024-09-05
[DOC] Update VH docs for v:content.get and v:resource.record (#1912)
[DOC] Update VH docs for v:content.get and v:resource.record (#1912)
cweiske
2024-09-05
[TASK] Fix reported phpstan issues
[TASK] Fix reported phpstan issues
NamelessCoder
2024-09-05
[TASK] Switch TYPO3 dev constraint from "master" to "main" branch
[TASK] Switch TYPO3 dev constraint from "master" to "main" branch
The master branch was renamed to main
christophlehmann
2024-09-02
[TASK] Declare PHP 8.3 compatibility for extension manager metadata
[TASK] Declare PHP 8.3 compatibility for extension manager metadata
NamelessCoder
2024-08-20
Merge branch 'master' into development
Merge branch 'master' into development
NamelessCoder
2024-08-08
[TASK] Set beta stability
[TASK] Set beta stability
NamelessCoder
2024-08-08
[TASK] Create change log for 7.0.6
[TASK] Create change log for 7.0.6
NamelessCoder
2024-08-08
NamelessCoder
2024-08-08