Xcart Getting error when apply upgrade pack - upgrade

I am getting error Fatal error: Call to undefined function func_version_compare() in D:\Xampp5\htdocs\xcart\prepare.php on line 528
when apply upgrade pack from admin 4.1.8 to 4.1.12

The best option for you might be this.
Make a DB backup
Download x-cart-4.1.8gold.tgz or x-cart-4.1.8pro.tgz from the ticket https://bt.x-cart.com/view.php?id=50230#attachments
Install x-cart-4.1.8gold.tgz or x-cart-4.1.8pro.tgz according to your current X-Cart edition
3.1. Retrieve the value of the variable $blowfish_key from the file /config.php of your existing X-Cart installation and temporarily save it somewhere on your local computer.
You will be asked to provide the Blowfish key later on to allow X-Cart to decrypt the data in the existing database.
3.2. Install a fresh copy of X-Cart 4.1.8 in a new (empty) folder using the existing database's credentials
3.2. IMPORTANT: At the step 'Preparing to Install X-Cart Database' of the installation wizard, select the check box 'Update config.php only' and enter the Blowfish key for the upgraded database
Upgrade the just installed X-Cart 4.1.8 to X-Cart 4.1.12 in the usual way.
As result, you will upgrade your database to 4.1.12 version.

Make a backup of the XCART_DIR/prepare.php file somewhere.
Download prepare.php file from the ticket
https://bt.x-cart.com/view.php?id=50230#attachments to a temp folder.
Unpack the upgrade 4.1.8-4.1.12 pack to X-Cart folder
Copy the file to XCART_DIR folder.
Apply the upgrade pack from the
admin area.
P.S.
Try the other solution below.

Related

Moodle - Using "Old code" when I am actually using the newest version

I have had too many problems with my ubuntu moodle server, so now tried to do a factory resetting of my server and install everything anew. Even though I checked out with the newest git repo available, I am still getting the following error message:
https://imgur.com/a/raAd7VB
The branch I checked out with was 'origin/MOODLE_400_STABLE'.
Thanks in advance.
Check the value for version in your database
SELECT value
FROM mdl_config
WHERE name = 'version'
Then search for the value in the releases, this will tell you which version the database is using
https://docs.moodle.org/dev/Releases
You might need to do a git pull for the latest version of Moodle 4

TYPO3 Upgrade Psr Problem vom 10.x to 11.5.8,

I tried to upgrade from 10.x to 11.5.8 and nothing was working anymore. If I try to open the url I recieve the following error message:
Fatal error: Declaration of TYPO3\CMS\Extbase\Mvc\Controller\AbstractController::processRequest(TYPO3\CMS\Extbase\Mvc\RequestInterface $request, TYPO3\CMS\Extbase\Mvc\ResponseInterface $response) must be compatible with TYPO3\CMS\Extbase\Mvc\Controller\ControllerInterface::processRequest(TYPO3\CMS\Extbase\Mvc\RequestInterface $request): Psr\Http\Message\ResponseInterface in C:\inetpub\wwwroot\typo3\sysext\extbase\Classes\Mvc\Controller\AbstractController.php on line 243
So the next step was to disable all my extensions.
If I try to open the backend, I recieve the same message as above.
The next step was to use the Install Tool, which was working. But if I try to use some functions like "Upgrade Wizard", "Analyze Database Structure", "
Remove Temporary Assets", ....
But the sys_log and the log files under typo3temp are empty!
And also the firefox degugger is not showing any information.
PHP 7.4.15, no composer installation and chaches all deleted!
What should I do next?
The first error message says that there are Extbase extensions which are not compatible with v11. See https://docs.typo3.org/c/typo3/cms-core/main/en-us/Changelog/11.0/Breaking-92502-MakeExtbaseHandlePSR7ResponsesOnly.html
For the second error I'd recommend to look into the dev console of your browser. There you might see more information about the error when there is nothing in the logs. (Maybe there is an error when writing log?)
The mentioned file "AbstractController.php" exists only in version 10 and was removed afterwards.
So TYPO3 is using some old files, probably from the file-cache.
You wrote that you use an installation without composer-setup. Those installations have the file-cache saved in typo3temp/var/cache. This folder can be deleted completely and will be rebuilt automatically.
Afterwards TYPO3 version 11 should run and the error-message should never be shown again.
Due to my experiences with updating TYPO3 to a new mayor release, i did the following steps.
Renamed fileadmin dir
Deleted all TYPO3 dirs
Installed the new version of TYPO3
Start TYPO3 from scratch with an new database (use the ID and passwort from the final database, use the right sitename)
Rename the fileadmin dir back to fileadmin
Go into LocalConfiguration.php and switch under DB to the original database
(Maybe) enable 'debug' => true, for BE and FE and set 'displayErrors' => 1, under SYS
Try to start the BE, if failed go to the Install tool.
Start Upgrade Wizard under Upgrade
In the Install tool start the Analyze Database Structure, but be carefull. that you dont't delete any database of your extensions, which not installed yet!
Now the BE should work now and you can upgrade your extensions!
Good Look.

What's the best way to upgrade from umbraco 7.6 to 7.15.1 (including db upgrade)

I am trying to upgrade the site from v 7.6 to v. 7.15.1.
I have done the upgrade on localhost which included updating the db.
Now I transferred my files from localhost o the test site and on there I am getting an error in log:
ERROR Umbraco.Core.UmbracoApplicationBase - An unhandled exception occurred
System.Data.SqlClient.SqlException (0x80131904): Invalid object name 'umbracoUserLogin'.
and I can't login to the backoffice.
It seems to be looking for umbracoUserLogin on test while it doesn't exist yet because on test the db is not updated yet.
How to update the db on test in this case while the files have already been updated on localhost and transferred to test site?
I have done 2 umbraco upgrades recently; one is from 7.5.7 to 7.13.1 and the recent one is from 7.13.1 to 7.15.1.
During my upgrade; I have seen this problem and fix in this issue can help you for your problem(and I didn't see this problem again after doing the upgrade again, but this time checking all the auto changing files and accepting them one at a time-see details below for this) but coming back to your question; "What's the best way to upgrade from umbraco 7.6 to 7.15.1(including db upgrade)"; here are the steps that you should follow;
Create a backup for your project and your umbraco db before you start. If you are using Git, then things will be super easy for this.
Open up Nuget Package Manager for your Umbraco project and do the package upgrade using the Nuget Package Manger window or the consol. Search for UmbracoCms version 7.15.1 for your case.
Once you start doing the upgrade, you will see some popup windows that will ask you to approve some auto file changes(including some config files changes). As you don't want to lose some of your pre-upgrade settings, don't accept them all or discard them all, check all of them one by one, and as a general rule; if you don't have any custom changes for those files, then simply approve the change, otherwise, check your changes and make sure you don't loose anything and discard some of these file changes as a result.
Once you're done with your UmbracoCms upgrade(which will automatically do some dependency package upgrades), build your project, make sure all is looking good then go to your local project's umbraco back-office url, this will trigger the rest of the umbraco upgrade process and simply complete the upgrade steps by following the screens- at this point your umbraco db changes will be done automatically and it is possible that you might have some issues with some old corrupt cached files, if this happens, then simply delete App_Data/TEMP files and App_Data umbraco.config file and try again. If you see some other problems during the installation, check the logs(browser developer tools can be handy to understand the problems in this case), and fix them one at a time. It is possible that you don'T need some of your old web.config settings and they might cause some issues, simply comment out those lines and see if this will fix some of the issues.
Once you are done with you local upgrade, deploy your code to your testing environment, and go to the umbraco url of your test environment and follow the screens to complete the installation for your testing environment. If you see any problems, please check my notes for step 4 above.
Do your umbraco upgrade for other testing environments(QA, UAT, Training etc) and complete your umbraco upgrade tests. Once the tests are done, then you are ready to go live. After the live deployment, you will have to complete the umbraco upgrade one last time, but this time for the live system.
Always get your back-ups for each environment before you do the upgrade, so you will be ready to rollback your changes if things go wrong(which might happen as you're doing a big umbraco upgrade).
Final note; there are some good articles for this, please take a look to understand the process better. Good luck!

How to unlock TYPO's Install Tool (/typo3/install.php)?

After adding an empty text file called 'ENABLE_INSTALL_TOOL" in the 'typo3conf' folder the Install Tool is still locked when I visit hostname/typo3/install.php.
Some background information: I just uploaded all TYPO3 files to a remote host and am trying to get it to display the TYPO3 website. When I logged into the backend I got the following error:
1533822084 TYPO3\CMS\Core\Crypto\PasswordHashing\InvalidPasswordHashException
Configured default hash method
TYPO3\CMS\Core\Crypto\PasswordHashing\Argon2iPasswordHash is not available. If the instance has just been upgraded, please log in to
the standalone install tool at typo3/install.php to fix this. Follow
the wiki link for more details.
This error referred to this wiki page: https://wiki.typo3.org/Exception/CMS/1533822084
Here it is suggested to:
Call the standalone install tool and log in once. This should detect that argon2i is not available and will configure a different default hash mechanism. A backend login should be possible afterwards.
Which is what I am stuck on since the Install Tool is locked.
When you visit for the first time the address https://yoursite.com/typo3/install.php you should see the following screen:
As you wrote, you have to add a file ENABLE_INSTALL_TOOL (without extension) in the folder /typo3conf/ of your TYPO3 installation; the file can be empty.
After you have done that and refreshed the same page, you should see:
If you have not changed it (which is recommended) , the password should be the same password as the one of the first administrator user you have created during the installation.
If you have changed it and don't remember it, follow the on screen instructions.
Please refer to the official installation guide:
https://docs.typo3.org/m/typo3/guide-installation/master/en-us/QuickInstall/GetAndUnpack/Index.html
You need SSH access to your remote server. FTP or SFTP is not enough because the symlinks are not uploaded.
You need to transfer a zip- or tar.gz-file to the server and unpack it there. Never unpack them on your machine and transfer the files to the server.
I had same issue in Typo3 10 in CentOS 8
The argon2 password hash algorithm only in PHP >= 7.4, not in previous versions in CentOS 8.
In 7.2 / 7.3, argon2 is part of the "standard" extension and is disabled in RH build as libargon2 is not available in RHEL / CentOS
So if you can upgrade to PHP 7.4 it would work.
Alternative method when in PHP 7.3
in LocalConfiguration.php set
'installToolPassword' => '$2y$12$kB0JLQcbADywtxtxjoBoUOrCSk0RHhh/zuKDbFrtAYlr8fUlZ/1Em',
'passwordHashing' => [
'className' => 'TYPO3\\CMS\\Core\\Crypto\\PasswordHashing\\BcryptPasswordHash',
Open install tool ursite/typo3/install.php
password is 'password' (installToolPassword hash value above)
Now create an new admin and use that to login to backend and reset the passwords of other admins

Create upgrade setup using installshield 2010 primier

I want to create an upgrade setup. I have an old setup with for example version 1.0.1.43 and my new setup will has version of 1.0.1.45
I have created a new basic MSI project in installshield. I set version to 1.0.1.45 I copied both product code and upgrade code of old setup into upgrade setup. I also added all of new files in setup that should be replaced with files of old setup. I selected all files and then right clicked on them and in properties checked always overwrite option. then in Media section I added a major upgrade with upgrade code of my old setup. then I build the setup.
when I run this setup it shows me that you have installed this application do you want to upgrade it or not? then I choose yes to upgrade. after installing this setup I figured it out that in add/or remove programs version of my application has changed to 1.0.1.45, that means it has been upgraded. but when I check files I see that none of new files has been replaced with new one.
Where am I wrong that this setup ignore all of my new files to replace? I want this setup find old path of old setup and after removing all files, add new files to that path?
thanks
As you are saying, you have created new MSI installer for upgrade. So in this case the component ID of components in which your files are present, got change. So you need to set values of Component ID with the component IDs of your installer 1.0.1.45. Or you need to create different components with the same target path.
Also you can validate your upgrade build 1.0.1.46 with the main build 1.0.1.45 with following steps.
Build Menu -> Validate -> Upgrade Validation Wizard
Then give path of your main installer (msi/exe) and your upgrade installer (msi/exe). And check what differences both builds are having.