Notes and Experiences Upgrading Umbraco 4.0.x to 4.6.1 and 4.7.0
This is a series of notes and what I could cobble together from various Umbraco upgrade articles and sources. I also found a few issues that weren't documented by anyone that gave me some grief. I'll likely add any 4.7 specific items as well when I get a chance to test this process with that version.
I've found that you may want to upgrade from 4.0.x to 4.5.2 then to 4.7 because the upgrade install script didn't seem to run in the 4.6.1 upgrade I performed. Basically, the database wasn't updated properly when I went straight to 4.6.1.
My Notes:
From http://our.umbraco.org/wiki/install-and-setup/upgrading-an-umbraco-installation
- Backup DB and Files of existing site
- Create new web site and db for "upgrade" site
- Manually merge web.config for new 4.0 changes to upgrade site (use Beyond Compare)
- Manually merge /config files
- Remove /bin from xlstExtensions.config
- Remove /bin/ from restExtensions.config
- Copy Merge these from the 4.6.1 base install on codeplex or 4.7 base codeto the new site
- I have found it better to copy using beyond compare so my packages don't disappear and any UI.xml or locale changes don't get lost. But if you prefer, copy away!
- /app_data
- /app_browsers
- /app_code
- /bin
- /data
- /install
- /umbraco
- /umbraco_client
- default.aspx
- Republish the content
- From the Content section/folder in Umbraco
- Or: http://our.umbraco.org/wiki/reference/api-cheatsheet/publishing-and-republishing
Other upgrade notes:
- Verify your /umbraco/config/create/UI.xml still has your custom items in it. It may have been over-written by the copy above.
http://our.umbraco.org/wiki/about/roadmap/umbraco-45/upgrading-to-umbraco-45
- Delete App_global.asax.dll
- Verify "UseLegacyXmlSchema" element in umbracoSettings.config is set properly (false if no XSLT conversion has been done)
- Go to http://www.yourupgradesite.com/install/
- Go through the upgrade install script
http://www.littlewebempire.com/blog/2010/10/29/update-umbraco-from-4021-to-452
- You may need to add the Media Recycle bin to the UmbracoAppTree and UmbracoNode tables in the DB
- Verify the \App_Data\TEMP\ClientDependency folder has stuff in it. Delete anything in the folder and reload the website
Package Upgrades / Changes
- Copy old /data/packages/ folder contents to /App_Data/Packages/
Then you need to test that your packages work and are compatible with this latest version. Here is a place to start: http://our.umbraco.org/wiki/reference/packaging/umbraco-45-compatibility/umbraco-45-package-testing
Articles that may be helpful for package issue:
Umbraco 4.7 Additions:
- There are quite a few dlls to remove to keep your XSLT working. This forum article was VERY helpful in identifying the specific URLs to remove: XSLT macros not getting rendered after upgrading to 4.7 RC
- Remove:
- Iron*.dll (all dlls in your /bin directory starting with "Iron", like IronPython.dll and IronRuby.dll)
- Microsoft.Scripting*.dll
- Microsoft.Dynamic.dll
- umbraco.macroEngines.legacy.dll
- RazorEngine.Core.dll
- RazorEngine.Templates.dll
- VistaDB*.dll
- I'll add more if they are mentioned...
- From comments:
- umbraco.standardFormhandlers.dll
- Remove:
That's it so far. Please feel free to add anything you needed to do. I'll edit as I find further issues.
UPDATE: If you need help upgrading to 4.11 or beyond take a look at this post: Upgrade Your Umbraco Site...