ChangeLog
Version 4.1.0
Features:
- β¨
textdb:andtextdb textdb:fall back along the site language's fallback chain, then the default language, before they render the key (#194)translate - β¨ The backend import and
nr_name the XLIFF units they leave out or shorten (#193)textdb: import
Fixes:
- π Lookups made by the backend module follow the
createextension setting (#172)If Missing - π A hidden TextDB entry is not rendered in the frontend (#206)
- π An import writes a file in one database transaction and rolls back the whole file on any error, on every supported database (#189, #211, #215)
- π A unit marked unused imports under its own placeholder (#191)
- π The backend upload reads files with
Xliffand shows an error for a malformed file; multi-line values survive export and re-import (#186)Loader - π The module, the export and the imports use the languages of the site that holds the storage page (#188)
- π The translation list and the default-language export contain default-language records only (#187)
- π A malformed
translaterequest shows an error, and the dialog saves only the record it was opened for and its translations (#182)Record - π Saving from the list view shows the save messages, on every TYPO3 14.3 release, and a double-click opens a translation row once (#185, #202)
- π The filter reset clears the stored filter (#181)
- π An export that matches no record shows an error instead of HTTP 500 and leaves no working directory behind (#180)
Changes:
Version 4.0.2
Fixes:
- π Every action of the backend module checks the backend user's table rights and page permissions before it reads or writes TextDB records, and the write actions also check excluded fields, allowed languages and the live workspace; the list and the export show non-admins only the records of the configured storage page, and a record opened by its uid is checked against the permissions of the page it is stored on. See Backend Module Configuration for the permissions each action needs (#170)
- π The import view shows its error list again instead of failing (#170)
Version 4.0.1
Fixes:
- π
<nrtextdb:resolves translation domain keys such astranslate> nr_through LocalizationUtility when TextDB holds no value, instead of rendering the raw key (#161)textdb. messages: some. label - π The Netresearch group icon and the record icons draw their glyph in the backend text colour and stay legible in the light and the dark scheme; the backend module views use core markup with accessible names and headings (#157)
- π The group and module icons are registered against the right SVG files again (#148)
- π Saving translations in the backend module rejects malformed input and unconfigured languages instead of crashing or persisting an unreachable record (#129)
- π The backend module works for users without a stored module config, and the export no longer runs unfiltered when no filter is selected (#130)
- π
nr_imports only the requested extension (#119)textdb: import <extension>
Version 4.0.0
Breaking Changes:
- β οΈ TYPO3 14.3 minimum requirement, support for TYPO3 13 dropped
- β οΈ The default-language XLIFF export no longer emits a
target-attribute, so the file is recognised as a source-only templatelanguage
Features:
- β¨ TYPO3 14.3 LTS compatibility
- β¨ PHP 8.2, 8.3, 8.4, 8.5 support
Fixes:
- π Saving a translation in the backend module updates the existing record instead of inserting a duplicate, skips empty values and reports a persistence error as a flash message (#100)
Version 3.0.3
Released: 2024-11-27
Changes:
- Use
$_in ext_emconf.php and sanitize TER commentEXTKEY - Documentation improvements with GitHub integration for docs.typo3.org
- Changed license to Creative Commons BY 4.0 for documentation
- Fixed guides.xml schemaLocation and added theme attribute
Version 3.0.1
Released: 2024-11-07
Changes:
- Documentation improvements
- Minor bug fixes
- Updated GitHub Actions CI
Version 3.0.0
Released: 2024-11-07
Breaking Changes:
- β οΈ PHP 8.2 minimum requirement
- β οΈ TYPO3 13.4 minimum requirement
- β οΈ Removed support for TYPO3 12 and earlier
Features:
- β¨ TYPO3 13.4 LTS compatibility
- β¨ PHP 8.2, 8.3, 8.4 support
- β¨ Modern dependency injection patterns
- β¨ Updated to PHPUnit 10+
- β¨ Symfony Console 7.0 support
- β¨ Improved DDEV development environment
Improvements:
- π§ Modernized codebase architecture
- π§ Enhanced code quality tooling
- π§ Updated testing framework
- π§ Improved CI/CD pipeline
- π§ Better error handling and logging
Migration Guide:
See Upgrade Instructions in the Installation section.
Version 2.x
TYPO3 12 LTS Support
Version 2.x series supports TYPO3 12 LTS.
For details, see the 2.x branch.
Version 1.x
Legacy Versions
Version 1.x series supports TYPO3 10-11.
Note: No longer maintained. Upgrade to 3.x recommended.
Detailed Change History
For complete commit history and detailed changes:
Release Notes
3.0.x Series
Focus: TYPO3 13 LTS support and modernization
Key Improvements:
- Modern PHP 8.2+ features
- Enhanced type safety with strict types
- Improved dependency injection
- Better test coverage
- Updated quality tooling (PHPStan, Rector, Fractor)
- DDEV-based development workflow
Deprecations:
None in 3.0.x series.
Removed Features:
- TYPO3 12 and earlier support
- PHP 8.1 and earlier support
2.0.x Series
Focus: TYPO3 12 LTS support
Key Features:
- TYPO3 12 LTS compatibility
- PHP 8.1+ support
- Modern Extbase patterns
- Backend module improvements
1.0.x Series
Focus: Initial release and TYPO3 10-11 support
Key Features:
- Translation database management
- Import/Export functionality
- Backend module
- ViewHelper integration
Upgrade Path
From 2.x to 3.x
Prerequisites:
- PHP 8.2 or higher installed
- TYPO3 13.4 or higher
Steps:
- Backup your database and translations
-
Update composer.json:
composer require netresearch/nr-textdb:^3.0Copied! -
Update database schema:
vendor/bin/typo3 database:updateschemaCopied! -
Clear all caches:
vendor/bin/typo3 cache:flushCopied! - Test functionality thoroughly
Breaking Changes:
- PHP 8.2 minimum (check your PHP version)
- TYPO3 13.4 minimum (upgrade TYPO3 first if needed)
- Some internal APIs may have changed (check custom code)
From 1.x to 3.x
Not Directly Supported
Upgrade path: 1. Upgrade to 2.x first 2. Test thoroughly 3. Then upgrade to 3.x
Security Updates
Version 3.0.1
- No security issues
Version 3.0.0
- Updated dependencies to address known vulnerabilities
- Enhanced input validation
- Improved file upload security
Note
Always keep your TYPO3 installation and extensions up to date to benefit from the latest security fixes.
Backwards Compatibility
3.0.x Series
BC Breaks:
- PHP 8.2 minimum
- TYPO3 13.4 minimum
API Stability:
Public APIs (ViewHelpers, Services) maintain backwards compatibility within the 3.x series.
Database Schema:
Database schema is compatible between 2.x and 3.x (with updates).
Contributing
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Add/update tests
- Ensure CI passes
- Submit pull request
Development Setup:
# Clone repository
git clone https://github.com/netresearch/t3x-nr-textdb.git
cd t3x-nr-textdb
# Install dependencies
composer install
# Start DDEV
ddev start
ddev install-v14
# Run quality checks
composer ci:test
Code Standards:
- PSR-12 code style
- PHPStan level 7+
- 100% test coverage for new features
- Rector/Fractor compliance
Acknowledgments
Thanks to all contributors who have helped improve this extension!
Major Contributors:
- Thomas SchΓΆne
- Axel Seemann
- Tobias Hein
- Rico Sonntag
Community:
Thanks to the TYPO3 community for feedback and bug reports.
Netresearch DTT GmbH:
For continued development and maintenance support.
License
This extension is licensed under GPL-3.0-or-later.
See LICENSE file for details.