2.2.3 to 2.2.4 upgrade problems

I have a pretty basic installation on 2.2.3 and tried upgrading to 2.2.4 today. A few issues:


  1. The upgrade finds 21 files that “have local modification”. All of them belong to my custom skin (“skins/…”) which is odd because I have only changed 2 files. How does the upgrade script figure out what files changed? Does it keep snapshots somewhere? I manually compared a few files between “/var/skins_repository/

  2. I proceeded with the upgrade and it was successful. After I opened the storefront, the layout is broken. Also, even though the upgrade apparently happened, my CS-Cart control panel still says “A new version of CS-Cart is available! Please update now.”



    Any advice will be appreciated.

To answer some of my own questions:



The layout was broken because my custom CSS file was overwritten, I'll have to investigate why as it was within the third-party skin folder and shouldn't have been touched by the upgrade.



The notice that there are still upgrades available just needed to be closed, then didn't reappear. When I go to the Upgrade Center, it shows “No upgrades currently available”, so that's good.



One question still remains: how did the upgrade process decide that 21 files in my custom skin were modified? What does it compare to and how does it decide when a file has been modified?

Creating a new skin directory does nothing but give you a new name. It is still upgraded if matching filenames are found within it.



You need to use hooks if you want your changes (new skin or standard skin) to be as upgrade independent as possible.



I believe the issue regarding conflicts has something to do with their upgrade generation process. One should be able to upgrade to version 2, then update to version 3 without any conflicts between 2 and 3 if not files were modified by the user. But that does not seem to be the case.

While in the Upgrade center, select “Installed upgrades” then select “Changes” next to each file to view the actual changes made.

[quote name=‘tbirnseth’ timestamp=‘1321913545’ post=‘126465’]

Creating a new skin directory does nothing but give you a new name. It is still upgraded if matching filenames are found within it.[/quote]



That makes sense, thanks. I thought I was going crazy :) Indeed, the same 21 files that were reported during the upgrade were actually modified by the upgrade script.


[quote name=‘The Tool’ timestamp=‘1321913932’ post=‘126466’]

While in the Upgrade center, select “Installed upgrades” then select “Changes” next to each file to view the actual changes made.

[/quote]



There are quite a few changes. I am not sure whether to let them be or revert them to their pre-upgrade state. What’s the general consensus about letting CS-Cart modify third-party skin files? The only obviously broken thing had to do with one of the CSS files and I fixed it by restoring it from backup.



I’m leaning towards restoring all skins files and waiting for the skin developer to release an update, if that ever happens.

Either restore all or do not restore at all. You will apparently need to get the developer to update but this time, tell him/her to utilize “my changes” to avoid future issues.

[quote name='The Tool' timestamp='1321915903' post='126469']

Either restore all or do not restore at all. You will apparently need to get the developer to update but this time, tell him/her to utilize “my changes” to avoid future issues.

[/quote]



Thanks a lot, I had no idea about my changes. Just migrated a few things to it and it works great.

Here is a little tidbit directly from CS-Cart about a store that they designed:


[quote]Generally during the design integration a number of standard files from all over the store are modified. These files can be overwritten by the standard files after the upgrade. In order to fix this, all the changes should to be reapplied from scratch. Practically this means that the whole design integration process should be performed again. Therefore our client ususally do not upgrade their store after the design integration.[/quote]



If you don't use the hooks, this is what can happen. Hopefully it helps explain a little bit. Especially pay attention to the last line.



With hooks, you can usually do the upgrades with only having to do minimal fixes afterwards.



Thanks,



Brandon