Views: | 13087 |
Number of votes: | 5 |
Average rating: |
Today we are making the first maintenance update to EPiServer 7 available on nuget.episerver.com. This update is fully supported and we recommend that you apply it to ongoing projects based on EPiServer 7.
Historically bug fixes have been delivered as "hotfixes" via EPiServer Developer Support. Going forward, maintenance updates will be published on our developer NuGet feed making it easier to integrate the platform update in development projects. Apart from changing the delivery method, we are also changing the way assemblies are versioned.
Previously we shipped updates with the same assembly version as the original release, but with an updated assembly file version. This was done so that the previously installed (GAC:ed) assemblies could be overridden. From now on, we are updating the revision field of the assembly version, which effectively detaches the site from the GAC. The main reason for this change is to allow per site deployment of patches, which has previously been an issue.
One day per week we have a developer "bug bash" where we concentrate on fixing bugs. Our highest priority is to work on issues reported by customers and partner developers (via developer support). When a bug has been fixed, it gets validated by our test team to make sure the fix works and that it does not introduce other issues.
We regularly review fixed bugs to select those suitable for inclusion in a patch release. We then merge the selected changes to our release branch, where we build the patch. The patch is sent for smoke testing of impact areas, and to verify that deployment works.
The patch is available as a set of packages on Nuget feed on nuget.episerver.com. Refer to the installation instructions for information on how to install the patches to your sites.
The bugs listed below are included in this patch.
ID | Title | Area |
91860 | Renaming license file to machine name doesn't work | \CMS |
91325 | Runtime compiler error CS0272 when using the PageStoreService | \CMS |
92742 | When saving and publishing an existing page with code some properties previously published values are reset | \CMS |
92942 | Connect for SharePoint license validation in the ContentChannel doesn't support the new license model | \CMS |
91159 | QuickNavigator raises NullReferenceException when viewing page without serverside-header | \CMS |
91601 | Blocks are not synchronized with model if you only change namespace and keep the same class name | \CMS\Core |
91645 | Property values of existing page can't be updated over ContentChannelService | \CMS\Core |
91676 | UrlResolver.Route is not working properly | \CMS\Core |
90742 | CMS SearchInitialization do not remove all events on uninitialize | \CMS\Core |
90960 | GetObjectData in XhtmlString is not virtual which prevent mocking on the method | \CMS\Core |
90969 | EPiServer.DataAbstraction.ContentType fetches localized group names from beneath the <pagetypes> element | \CMS\Core\API |
91053 | EPiServer.Url is not Serializable | \CMS\Core\API |
91052 | Shared block cannot be rendered when it is deployed as module/add-on on MVC site | \CMS\Core\MVC |
91049 | EventArgs to ContentRoute.CreatingVirtualPath should contain RouteValues | \CMS\Core\Routing |
90760 | New draft version is created when cancel schedule for publish on page/block | \CMS\SparrowHawk |
91020 | No legacy gadgets are available on the dashboard \CMS\SparrowHawk | \CMS\SparrowHawk |
92063 | Show wrong buttons on Access Right dialog | \CMS\SparrowHawk |
93633 | Blocks in ContentAreas are removed from the content area when the block is changed in code | \CMS\Typed Data |
91301 | Property's tab in a strong typed page typed auto change to "Content" after adding any page provider | \CMS\Typed Data |
91029 | Help Url should be configurable based on legacy edit mode | \CMS\UI |
90994 | Bad translation for display name in Swedish | \CMS\UI\Admin Mode |
90948 | Missing text on Plug in manager | \CMS\UI\Admin Mode |
91541 | User Profile VG criteria doesn't work with commerce user | \CMS\Visitor Group |
91293 | Unable to save visitor group with custom criteria | \CMS\Visitor Group\Criteria |
90987 | DDS: Cache handling in DDS is inefficient when it tries to clear all items. | \Framework\DDS |
89814 | DDS linq GroupBy generates invalid sql statements | \Framework\DDS |
91241 | Wrong list is removed when clicking remove button in the EPiMail UI | |
91242 | EPiMail Community Search source is unnecessarily fetching the whole recipient list to get the count |
Shouldn't the package do web.config transforms?
Currently you have to manually edit the assembly redirects in web.config because they all point to version 7.0.586.1, not 7.0.586.4 (for Core)
Actually NuGet XML transformations support only adding new stuff to config file, but not editing existing configuration. Using Powershell to parse and update XML is a bit overkill as for me.
Great to see the first release via the new delivery model. The Nuget approach certainly gives a much better way of working and supplying fixes directly to developers.
Adhering to the XDT web.config transformations has just been added to Nuget as it was a big missing piece IMO
http://blogs.msdn.com/b/webdev/archive/2013/01/10/xdt-web-config-transform-engine-released-on-nuget.aspx
A tool where you could apply transformations manually on multiple selectable Web.config files (as for different environments for a project) would be awesome. Maybe there is something out there?
Another way of doing the web.config (and any other config) updates could be to distribute the update in an .epimodule file. The deployment center can then be used to install the module. The epimodule process can update any config files using the built in EPiServer config transformations.
Also, the NuGet approach is great for developers but I'm sure website administrators would welcome a simple way of applying a patches via an epimodule or through the "add on" dashboard.
Apologies if i'm going off topic and misreading what a "Maintenance" update is, you guys might already have something planned for updates being applied to sites by non devs.
I cannot upgrade EPiServer.Cmo to 7.0.518.4 as it requires EPiServer.LiveMonitor > 7.0.1267.219 which is not available on NuGet or EPiServer 7 download page.
The installation instructions states that you need to remove the configuration transforms but I added the configuration changes to the transform instead.
http://dhvik.blogspot.se/2013/02/keeping-configuration-transforms-after.html
Updates to some of the comments:
The CMO issue should be fixed now as the LiveMonitor has been published to the feed. Regarding the bindingRedirects, in the next patch release we will handle binding redirects automatically for you by updating the root web.config file. If you want to keep the nifty config transforms I recommend you follow Dan's example.
To patch midway through development of a new website - or not?