PHPackages                             jvelletti/jve-upgradewizard - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Templating &amp; Views](/categories/templating)
4. /
5. jvelletti/jve-upgradewizard

ActiveTypo3-cms-extension[Templating &amp; Views](/categories/templating)

jvelletti/jve-upgradewizard
===========================

Update helper for lts12 Fixes the ways Typoscript and TSconfig included files have been added in database.

13.4.3(3mo ago)0275[1 issues](https://github.com/velletti/jve_upgradewizard/issues)mitPHP

Since Sep 17Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/velletti/jve_upgradewizard)[ Packagist](https://packagist.org/packages/jvelletti/jve-upgradewizard)[ RSS](/packages/jvelletti-jve-upgradewizard/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (1)Versions (26)Used By (0)

what does extension do
======================

[](#what-does-extension-do)

========================

Version 13.4.2 | 21.1.2026

Tested with TYPO3 LTS 13.4.24 under PHP 8.4
Tested with TYPO3 LTS 12.4.34 under PHP 8.3
Tested with TYPO3 LTS 12.4.6 under PHP 8.1
Tested with TYPO3 LTS 11.4.31 under PHP 7.4 \\ (use older version of extension!)

works on following database tables / fields: \\

**sys\_template** -&gt; config and constants
**pages** -&gt; TSconfig
**fe\_users** -&gt; TSconfig
**fe\_groups** -&gt; TSconfig
**be\_users** -&gt; TSconfig
**be\_groups** -&gt; TSconfig **backend\_layout** -&gt; config
**tx\_gridemelements\_backend\_layout** -&gt; config \\

You have more Database tables with TSconfig ? feel free to add an issue or a pull request.

comes with 2 additional commands:
---------------------------------

[](#comes-with-2-additional-commands)

### RepairPrimaryKey Command

[](#repairprimarykey-command)

As TYPO now automatically adds a primary key to all mm tables on uid\_local and uid\_foreign,
But it may exists rows by accident with duplicate entries. but this stops upgrade Process
This command deletes rows with duplicate entries in a given database Table . \\

### UpdateFiles Command

[](#updatefiles-command)

Fixes filenames and there Content on a local DEV mashine in a given folder renames if needed extenion of file from

```
'ts', 'txt', 'text' , 't3' , 't3s' , 'tscript'

```

to 'typoscript' or 'tsconfig'

Important NOTICE
----------------

[](#important-notice)

1. you should have a database copy!
2. you should be aware in case of many pages or fe\_users, it may be slow
3. run this wizard on production system only if you have tested it locally
4. you should have experience to cun typo3 console command
5. you should work with any vcs like git
6. make a copy of your template folder for easier testing
7. replace -vv against -vvv to get more verbose output in follwing commands
8. maybe this is needed ./vendor/bin/typo3 cache:flush

    ./vendor/bin/typo3 upgrade:run jveUpgradewizard\_upgradeTemplates -vv

    ./vendor/bin/typo3 jvelletti:updatefiles --path=/test -vv

Fixes file ending .ts .txt and .text etc to .typoscript in database with warning
--------------------------------------------------------------------------------

[](#fixes-file-ending-ts-txt-and-text-etc-to-typoscript-in-database-with-warning)

```
CONST UNWANTED_EXTENSIONS = ['ts', 'txt', 'text' , 't3' , 't3s' , 'tscript'  ] ;

@import 'EXT:jve_template/Configuration/TypoScript/TSConfig/TSConfig.ts'
@import 'EXT:jve_template/Configuration/TypoScript/TSConfig/TSConfig.txt'
@import 'EXT:jve_template/Configuration/TypoScript/TSConfig/TSConfig.text'

```

Fixes wrong "EXT:" or missing "EXT: syntax
------------------------------------------

[](#fixes--wrong-ext-or-missing-ext-syntax)

not required, but helps to make extension to fiddle result easier

```
@import "FILE:EXT:jve_template/Configuration/TypoScript/TSConfig/TSConfig.typoscript"
@import "/typo3conf/ext/jve_template/Configuration/TypoScript/TSConfig/TSConfig.typoscript"

```

Fixes INCLUDE\_TYPOSCRIPT src=
------------------------------

[](#fixes--include_typoscript-src)

```

```

Changes double quote " char to single quote '
---------------------------------------------

[](#changes-double-quote--char-to-single-quote-)

not required, but helps to make extension to fiddle result easier

```
 @import "EXT:jve_template/Configuration/TypoScript/TSConfig/TSConfig.typoscript"

```

Result in all cases:
--------------------

[](#result-in-all-cases)

```
@import 'EXT:jve_template/Configuration/TypoScript/TSConfig/TSConfig.typoscript'

```

fixes also lines starting with # but keep coment status intakt.

Warns if file in fileadmin and not in any EXT Folder:
-----------------------------------------------------

[](#warns-if-file-in-fileadmin-and-not-in-any-ext-folder)

```
 @import "/fileadmin/template/TSConfig/TSConfig.typoscript"

```

Fixes files In a given template Folder on a local test systems
--------------------------------------------------------------

[](#fixes-files-in-a-given-template-folder-on-a-local-test-systems)

```
./vendor/bin/typo3 jvelletti:updatefiles  -vv

```

enter path to your Template folder f.e. :

```
/vendor/jvelletti/jve-upgradewizard/Configuration/TypoScript/

```

this extension comes along with some test files there. check the content to see some common error / outdated syntax \\

you are asked to confirm changes with "yes"

you can also start the script with a given path: but sill will have to enter "yes"

(argument --force to skip confirmation is planned after sevaral tests that it is working correctly)

```
./vendor/bin/typo3 jvelletti:updatefiles --path=/vendor/jvelletti/jve-upgradewizard/Configuration/TypoScript/  -vv

```

the Console command searches for all files with definied Endings :

```
CONST UNWANTED_EXTENSIONS = ['ts', 'txt', 'text' , 't3' , 't3s' , 'tscript'  ] ;

```

Renames these files if needed to ".typoscript" and fixes the content of this tiles in same way like database entries
lines without "@import" and "INCLUDE\_TYPOSCRIPT" are unchanged \\

Fixes since version 12.4.18 also typocript lines :

```
page.includeJSFooter.main = /typo3conf/ext/ ... main.js
page.includeCss.application = /typo3conf/ext/ ... application.css
shortcutIcon = /typo3conf/ext/ .. icon.ico
logo = /typo3conf/ext/ .. logo.png ( .gif /  .jpg )

```

Restrictions
------------

[](#restrictions)

1. does not fix entries in folder "/fileadmin" like @import "/fileadmin/tscript.ts"
2. does not fix CSS/javascript files itself, if background images or font path is loading from public folder of extension

Best pratices
=============

[](#best-pratices)

as maybe 3 steps are needed: **renaming** the files in filesystem and changing the name of imported file in **database**,
and finally a Clear TYPO§ Cache, the website will not be available for some time.
If you need to avoid this and have no other option, try the following steps

1. create a Feature branch for the migration f.e.: "migration-feature"
2. create a copy of the template file Folder outside of the doc root f.e. "backup-migration"
3. run updateData command on template Files:

    ./vendor/bin/typo3 jvelletti:updatefiles --path=/vendor/your-vendor/your-template-ext/Configuration/TypoScript/ -vv
4. filenames with old extensions will be renamed by the script command
5. push this to "migration-feature" Branch
6. create a 'final-feature' branch from result.
7. run Upgradewizard manuall via cli on local dev mashine to update local your database entries and do needed tests

    ./vendor/bin/typo3 upgrade:run jveUpgradewizard\_upgradeTemplates -vv

    on success:
8. switch back to "migration-feature" Branch
9. copy OLD files (with wrong file extensions or old IMPORT\_TYPOSCRIPT syntaxt) from "backup-migration"
10. push this to "migration-feature" Branch (so BOTH file versions exist: the WANTED New ones and OLD used via database)
11. pull this to the webserver
12. run Upgradewizard manuall via cli

    ./vendor/bin/typo3 upgrade:run jveUpgradewizard\_upgradeTemplates -vv
13. As in step 10 you have both versions of files, it is not import if upgrade takes time.
14. As with step 11 your database now shuld only use New renamed files you can cleanup.
15. to remove the OLD template files, switch to 'final-feature' branch

repair translation files in any otzher extension folder
-------------------------------------------------------

[](#repair-translation-files-in-any-otzher-extension-folder)

this will add approved="yes" to all xlf files in a given Resource folder

```
./vendor/bin/typo3 jvelletti:approvexlf --path=/vendor/jve/jv-events -vv

```

Internal reminder for the extension maintainer:
-----------------------------------------------

[](#internal-reminder-for-the-extension-maintainer)

To Update this extension in TER:
change version Number to "x.y.z" in Documentation\\ in Settings.cfg and Index.rst
create Tag "x.y.z"
git push --tags

create new zip file:
cd vendor/jvelletti/jve-upgradewizard
git archive -o "jve\_upgradewizard\_x.y.z.zip" HEAD

f.e.:
git archive -o "jve\_upgradewizard\_12.4.33.zip" HEAD

Upload ZIP File to
git push

setup packagist Webhook:

api Token from Profile:

check:

[https://packagist.org/packages/jvelletti/jve\_upgradewizard](https://packagist.org/packages/jvelletti/jve_upgradewizard)
[https://extensions.typo3.org/extension/jve\_upgradewizard/](https://extensions.typo3.org/extension/jve_upgradewizard/)

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance78

Regular maintenance activity

Popularity13

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~36 days

Recently: every ~45 days

Total

25

Last Release

117d ago

Major Versions

12.4.33 → 13.4.02025-07-24

### Community

Maintainers

![](https://www.gravatar.com/avatar/59e5dc94c0b20e44ad7515599058d158fedbf1554b9edd67486a87dfabe6686c?d=identicon)[jvelletti](/maintainers/jvelletti)

---

Top Contributors

[![velletti](https://avatars.githubusercontent.com/u/912094?v=4)](https://github.com/velletti "velletti (43 commits)")

---

Tags

templateupgradetypo3TypoScriptLTS12

### Embed Badge

![Health badge](/badges/jvelletti-jve-upgradewizard/health.svg)

```
[![Health](https://phpackages.com/badges/jvelletti-jve-upgradewizard/health.svg)](https://phpackages.com/packages/jvelletti-jve-upgradewizard)
```

###  Alternatives

[sitegeist/fluid-components

Encapsulated frontend components with Fluid's ViewHelper syntax

55339.1k3](/packages/sitegeist-fluid-components)[sitegeist/fluid-styleguide

Living styleguide for Fluid Components

16227.4k1](/packages/sitegeist-fluid-styleguide)[helhum/typoscript-rendering

Can render a TypoScript path by URL, especially useful for Ajax dispatching

68653.7k12](/packages/helhum-typoscript-rendering)[templavoilaplus/templavoilaplus

Building kit for custom pages and content elements with individual fields, containers and backend layouts. Supporting drag'n'drop and multiple references.

2637.6k13](/packages/templavoilaplus-templavoilaplus)[dirkpersky/typo3-rte-ckeditor-fontawesome

Adds the Fontawesome add-on to the CKEditor in TYPO3.

16147.9k](/packages/dirkpersky-typo3-rte-ckeditor-fontawesome)[t3brightside/microtemplate

TYPO3 CMS template – sectioned one pager with light box like sub pages

171.4k1](/packages/t3brightside-microtemplate)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
