Just been trying to upgrade Merchello from 2.2.1 to 2.3.0 on an Umbraco 7.5.3 system. I've tried this both from the online package and from a local package, and I get the following:
2016-11-07 15:38:25,380 [P597604/D3/T9] ERROR umbraco.cms.businesslogic.packager.Installer - Error importing file \\sambab\sites\beesfordevelopment.org\public_html\App_Data\540c4c0a-8707-4741-a01f-5fb14657aefd.umb
System.IO.IOException: The directory is not empty.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.Directory.DeleteHelper(String fullPath, String userPath, Boolean recursive, Boolean throwOnTopLevelDirectoryNotFound)
at System.IO.Directory.Delete(String fullPath, String userPath, Boolean recursive, Boolean checkHost)
at umbraco.cms.businesslogic.packager.Installer.UnPack(String zipName, Boolean deleteFile)
at umbraco.cms.businesslogic.packager.Installer.Import(String inputFile, Boolean deleteFile)
I should add that I can see the .umb file appearing in the AppData/packages folder, and a folder with the same name appearing in the AppData folder into which the files from the zip are uncompressed, then the error gets thrown.
If I delete both the .umb file and the package specific folder in App_Data, recycle the Application Pool and try again it comes up with the same error.
The .umb file appears with 744 permissions, the folder has 755, the unzipped files in the folder have 744.
I'm upgrading a live site from Merchello 2.2.1 to 2.3.0. In the packages section of the back office I'm selecting to install Merchello 2.3.0 (I've tried both from the online package and a zip file downloaded). It starts to install, but after a few seconds comes up with a brief error message saying that it failed and to check the log file - the log file has what I've posted.
So you're suggesting I do a new install of Umbraco, then install Merchello 2.3.0 directly? I can do, but what will that tell me? I'm not getting as far as installing any of 2.3.0 ...
You can't use the package manager to upgrade the Merchello package. Basically we don't want any of the package actions (and certain bits for the first time install).
I try to describe that in my release notes in upgrade instructions - but you're not alone in attempting to upgrade in this fashion so something I need to look at clarifying.
We are working to make it possible via NuGet (but that is a ways out due to the way we have to boot strap at this point).
A warning when trying to install the package over an existing one might be worth considering - I know there's an error message already, but one that doesn't involve bothering you to ask what it means ...
So I need to do a manual copy of the dlls and specific Merchello directories ... I'll try that.
It's already in there, as per our previous discussions.
My store is based on FastTrack, but I have customised the templates to fit with my project. I think the problem might be a FastTrack dll compatibility. but if I replace the 2.1.0 FastTrack dlls with the 2.3.0 ones then the site breaks. I've also added the new config folder to the FastTrack folder, and edited the template aliases to point to my templates, but that doesn't work either.
Do I need to install the 2.3.0 FastTrack and then re-customise all the templates?
Are there any guidelines you can give me so that I don't lose any of the data in the system?
I've spent today rebuilding my store based on FastTrack 2.3.0, which is now working, mostly. The remaining problem I have is a JavaScript error:
Uncaught Error: No module: merchello.plugins(…)
which shows up in the back office and makes it impossible for me to enter PayPal configuration information, probably amongst other things, but that's what I've spotted so far.
I suspect this is something simple, but I'm not sure what.
in merchello.module.js. chart.js seems to refer to a module initialised in line 35 of angular-chart.js, so my assumption is that angular-chart.js isn't being loaded for some reason. The file is in the right place, and is listed with the correct path in the Merchello package.manifest as far as I can see.
Any ideas on what could be causing this? It's got to be a really basic configuration file problem, but I can't find it, and I'm a bit reluctant to replace entire folders full of files without knowing what they do or whether they hold some critical customisation which I need - that's probably how this came about in the first place.
Are you in debug mode (web.config). Simon just fixed a conflict between the use of minimized files where client dependency was causing a double minification. http://issues.merchello.com/youtrack/issue/M-1205
OK, managed to get it going again and then tried again to set the debug flag in web.config (I assume we are talking about this line in the we.config file:
Actually it has made a difference - the various .js files are now loading, so I'm not getting the dependency problem in quite the same way, but it still can't load merchello.plugins.
Stupid question: I can find three references to 'merchello.plugins' in the site code (not the GitHub source, I guess I'll be looking at that next):
In each case this is declaring an angular module. Should there not be a merchello.plugins.js file somewhere, or is that too simplistic an understanding of how this works?
I'm not sure yet, as it's taking forever to load, but I think the problem may have been that the lazyload js files were loading in the wrong order - the MerchelloProviders js files were loading into the backoffice head above the Merchello ones, which I guess might cause dependency problems.
At the moment I've done a hack to check this, moving the MerchelloProviders js files into the package manifest for Merchello to make sure they load in the right order.
Unfortunately this is taking a very long time to load, which I suspect is a hosting issue rather than anything to do with Umbraco or Merchello.
Does any of this sound plausible? If so, why would the package manifest files process in the wrong order?
The providers has to load after Merchello - so that part makes sense, but I've never seen that not happening as long as the folders are in alpha order (which is why it is named Merchello.Providers).
I have been looking at moving the providers back into the Merchello app_plugins folder. They were separated when we started moving plugin providers into the core where we were uncertain whether or not people would view that as a good move (so we wanted to make them very easy to remove). However, the consensus seems to be that having the providers in the core is a good thing.
The hack does seem to have fixed the problem. It does seem odd that it was loading in the wrong order, but it was doing so consistently. I haven't renamed any folders or anything like that.
My hosting does seem to be having some overall performance problems, I think related to the other sites on the same server (my client wouldn't stump up for a VPS, so it is a shared solution). Does the lazyload process queue multiple things in a way that could result in them loading out of sequence?
Only Merchello (and FastTrack), so nothing that should cause the system undue stress.
I think there's a more serious underlying problem with my set up / hosting / somthing - I've jsut identified another back office problem, not Merchello retlated - the back office falls over when I try to sort nodes. I'll investigate a bit and then post a general Umbraco request if I don't get anywhere.
Installing Merchello 2.3.0 Package
Hi,
Just been trying to upgrade Merchello from 2.2.1 to 2.3.0 on an Umbraco 7.5.3 system. I've tried this both from the online package and from a local package, and I get the following:
Any suggestions?
Cheers,
Crac
I should add that I can see the .umb file appearing in the AppData/packages folder, and a folder with the same name appearing in the AppData folder into which the files from the zip are uncompressed, then the error gets thrown.
If I delete both the .umb file and the package specific folder in App_Data, recycle the Application Pool and try again it comes up with the same error.
The .umb file appears with 744 permissions, the folder has 755, the unzipped files in the folder have 744.
Cheers,
Crac
Hey Crac,
Can you do a quick install into a new site and then compare the files in the bin and app_plugin directory.
What steps are you using to perform the upgrade ... not quite following you here =)
Hi Rusty,
Thanks for responding.
I'm upgrading a live site from Merchello 2.2.1 to 2.3.0. In the packages section of the back office I'm selecting to install Merchello 2.3.0 (I've tried both from the online package and a zip file downloaded). It starts to install, but after a few seconds comes up with a brief error message saying that it failed and to check the log file - the log file has what I've posted.
So you're suggesting I do a new install of Umbraco, then install Merchello 2.3.0 directly? I can do, but what will that tell me? I'm not getting as far as installing any of 2.3.0 ...
Cheers,
Crac
Hey Crac,
You can't use the package manager to upgrade the Merchello package. Basically we don't want any of the package actions (and certain bits for the first time install).
I try to describe that in my release notes in upgrade instructions - but you're not alone in attempting to upgrade in this fashion so something I need to look at clarifying.
We are working to make it possible via NuGet (but that is a ways out due to the way we have to boot strap at this point).
Ah, I had missed that.
A warning when trying to install the package over an existing one might be worth considering - I know there's an error message already, but one that doesn't involve bothering you to ask what it means ...
So I need to do a manual copy of the dlls and specific Merchello directories ... I'll try that.
Cheers,
Crac
Now my website is dead ...
Might be back now, and showing Merchello version 2.3.0 in the back office.
It's a bit of a rollercoaster ride ...
Cheers,
Crac
Oh no, there's more ...
Set the merchelloConfigurationStatus value back to what you had before you started your upgrade.
This was discussed in another thread ... That method was moved to an extension method - so add
using Merchello.Web
to views where needed.OK, I've got it working up to the checkout stage. But now I have this:
Add
using Merchello.Web
- theTypedProductContent
method was moved to an extension method.It's already in there, as per our previous discussions.
My store is based on FastTrack, but I have customised the templates to fit with my project. I think the problem might be a FastTrack dll compatibility. but if I replace the 2.1.0 FastTrack dlls with the 2.3.0 ones then the site breaks. I've also added the new config folder to the FastTrack folder, and edited the template aliases to point to my templates, but that doesn't work either.
Do I need to install the 2.3.0 FastTrack and then re-customise all the templates?
Are there any guidelines you can give me so that I don't lose any of the data in the system?
Feeling a bit stumped ...
Cheers,
Crac
Hi,
I've spent today rebuilding my store based on FastTrack 2.3.0, which is now working, mostly. The remaining problem I have is a JavaScript error:
which shows up in the back office and makes it impossible for me to enter PayPal configuration information, probably amongst other things, but that's what I've spotted so far.
I suspect this is something simple, but I'm not sure what.
Cheers,
Crac
I've done some more searching through code to see if I can work out what's going on.
In the back office the error:
Uncaught Error: No module: merchello.plugins()
appears in the browser console and appears to be a problem with the line:
in merchello.module.js. chart.js seems to refer to a module initialised in line 35 of angular-chart.js, so my assumption is that angular-chart.js isn't being loaded for some reason. The file is in the right place, and is listed with the correct path in the Merchello package.manifest as far as I can see.
Any ideas on what could be causing this? It's got to be a really basic configuration file problem, but I can't find it, and I'm a bit reluctant to replace entire folders full of files without knowing what they do or whether they hold some critical customisation which I need - that's probably how this came about in the first place.
Suggestions appreciated ...
Cheers,
Crac
Hey Crac,
Are you in debug mode (web.config). Simon just fixed a conflict between the use of minimized files where client dependency was causing a double minification. http://issues.merchello.com/youtrack/issue/M-1205
OK, I've set it into debug mode and now the site won't start. I'm getting this error:
Failed to enter the lock within timeout.
I'll try a couple of things and see if I can get it to run ...
Cheers,
Crac
OK, managed to get it going again and then tried again to set the debug flag in web.config (I assume we are talking about this line in the we.config file:
?)
It doesn't seem to have made any difference. I'll restart the Application Pool again and see if it makes any difference.
Cheers,
Crac
Actually it has made a difference - the various .js files are now loading, so I'm not getting the dependency problem in quite the same way, but it still can't load merchello.plugins.
Stupid question: I can find three references to 'merchello.plugins' in the site code (not the GitHub source, I guess I'll be looking at that next):
App_Plugins\Merchello\js\merchello.module.js - lines 9 & 18
App_Plugins\MerchelloProviders\js\merchello.providers.module.js - line 14
In each case this is declaring an angular module. Should there not be a merchello.plugins.js file somewhere, or is that too simplistic an understanding of how this works?
Cheers,
Crac
I'm not sure yet, as it's taking forever to load, but I think the problem may have been that the lazyload js files were loading in the wrong order - the MerchelloProviders js files were loading into the backoffice head above the Merchello ones, which I guess might cause dependency problems.
At the moment I've done a hack to check this, moving the MerchelloProviders js files into the package manifest for Merchello to make sure they load in the right order.
Unfortunately this is taking a very long time to load, which I suspect is a hosting issue rather than anything to do with Umbraco or Merchello.
Does any of this sound plausible? If so, why would the package manifest files process in the wrong order?
Cheers,
Crac
The providers has to load after Merchello - so that part makes sense, but I've never seen that not happening as long as the folders are in alpha order (which is why it is named Merchello.Providers).
I have been looking at moving the providers back into the Merchello app_plugins folder. They were separated when we started moving plugin providers into the core where we were uncertain whether or not people would view that as a good move (so we wanted to make them very easy to remove). However, the consensus seems to be that having the providers in the core is a good thing.
The hack does seem to have fixed the problem. It does seem odd that it was loading in the wrong order, but it was doing so consistently. I haven't renamed any folders or anything like that.
My hosting does seem to be having some overall performance problems, I think related to the other sites on the same server (my client wouldn't stump up for a VPS, so it is a shared solution). Does the lazyload process queue multiple things in a way that could result in them loading out of sequence?
Cheers,
Crac
Sorry Crac,
I honestly have not looked very closely at the way Umbraco is lazy loading the package files. How many packages do you have in the solution?
Hi,
Only Merchello (and FastTrack), so nothing that should cause the system undue stress.
I think there's a more serious underlying problem with my set up / hosting / somthing - I've jsut identified another back office problem, not Merchello retlated - the back office falls over when I try to sort nodes. I'll investigate a bit and then post a general Umbraco request if I don't get anywhere.
Thanks for all your help.
Cheers,
Crac
is working on a reply...