Sitefinity 4.1 Released!
Here is the change log:
New Features
Lists Module
Sharing Content
Pages & Content
Newsletter Module (Beta)
Note: Newsletters module is still in Beta and its use on production sites is not recommended.
Users
Backend Language Packs
Data base support for:
Other
Caching
Upgraded Telerik productivity tools
ORM
Fixes and Improvements
! Important Fixes (Upgrade is recommended)
Pages
Images, Videos, Documents and Files
Content & Classifications
Widgets
Other
Breaking Changes
Templates
LayoutTemplatePath should be used on the place of LayoutTemplateName in custom controls templates. (Blog Post)
ORM Mapping
The change in ORM mapping affects all custom modules using OpenAccess for data access. For instructions on upgrade, refer to this blog post:
Additional information on OA Fluent Mapping API:
Users
Generic Content
This module is obsolete and will no longer be supported.
(We recommend transferring them to the Lists Module)
Generic Content Items which before the upgrade were not in published status (i.e. draft, scheduled, unpublished, or draft newer than published) need to be resaved in order to become visible in Content Blocks Widget. For a list of all items, see a log file: "~\App_Data\Sitefinity\Logs\ Generic Content items that should be saved manually.log"
Upgrade Instructionshow do i upgrade from 4.0 to 4.1?
Hi Roberto Modica,
Please take a look at the documentation here:
or the following blog post:Something changed to break a LINQ query I had...
var notices = App.WorkWith().ContentItems().Publihed().Where(ci => ((IList<
Guid
>)ci.GetValue("Tags")).Contains(taxId)).Get();
Hi ZK,
Can you try the query as bellow:
var notices = App.WorkWith().ContentItems().Publihed().Where(ci => ci.GetValue<IList>(
"Tags"
).Contains(.Contains(taxId))).Get();
Hello,
Great news on the release. I was wondering if you could provide any more news on the newsletter module. The release notes say that the module is currently in beta and should not be used in production. Will there be any further development on it in the coming quarter? I did not see any mention of it in the roadmap. Thanks!
Hi Radoslav,
Your code throws lots of red up (perhaps the "(.Contains"?
Changing to:
var notices = App.WorkWith().ContentItems().Publihed().Where(ci => ci.GetValue<IList>("Tags").Contains(taxId)).Get();
Roberto,
My 4.0 project wasn't listed in the manager, so I followed the blog post's suggestion of moving my projects.xml file over to the new project manager's install folder, and the upgrade worked great.
The upgrade completed but now my licence key is corrupted??? and it will not let me in, i just get the license registration page :(????
Hello,
@Roberto you have to update your license for the new version. Sitefinity licenses are per version and with each upgrade you have to update it. Go to your Client.NET account of Sitefinity.com and download the new license key.
@ZK, please try the bellow code, works fine on my end:
var notices = App.WorkWith()
.ContentItems()
.Publihed()
.Where(ci => ci.GetValue<
TrackedList
<Guid>>("Tags").Contains(taxId)).Get();
That got it. Thanks Radoslav, and good job to the Telerik team.
Roberto,
You should download a new 4.1 key from the Your Account area. I had to deal with this as well.
Hi,
1- I had a problem when updating the DB so I had to delete my newsletter from the DB (5 or 6 tables) to fix that.
After updating all the references to Telerik.Sitefinity and
telerik.OpenAccess I did Build the solution then tried to go to
administration. It asked me to specify the new License and then for the
login.
It crashed right after with the following message :
Could not find the specified key "ModuleName" or class id "ListsResources".
Description: An unhandled exception occurred during
the execution of the current web request. Please review the stack trace
for more information about the error and where it originated in the
code.
Exception Details: System.ArgumentException: Could not find the specified key "ModuleName" or class id "ListsResources".
Source Error:
An unhandled exception was generated during the execution of the current
web request. Information regarding the origin and location of the
exception can be identified using the exception stack trace below.
Stack Trace:
[ArgumentException: Could not find the specified key "ModuleName" or class id "ListsResources".]
Telerik.Sitefinity.Localization.Resource.GetString(ResourceDataProvider provider, String classId, String key, CultureInfo culture, Boolean falback, Boolean throws) +626
Telerik.Sitefinity.Localization.Res.Get(String classId, String key, CultureInfo culture, Boolean fallback, Boolean throws) +265
Telerik.Sitefinity.Localization.Res.Get(String classId, String key, CultureInfo culture) +58
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.TryGetResourceValue(Object component, String& value, CultureInfo culture) +380
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.GetValue(Object component, CultureInfo culture, Boolean throwException, CultureInfo[] defaultCultures) +72
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.GetValue(Object component, CultureInfo culture, Boolean throwException) +163
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.GetAvailableLanguages(Object component, Boolean alwaysReturnDefault, CultureInfo defaultLanguage) +375
Telerik.Sitefinity.Model.Localization.LocalizationHelper.GetAvailableLanguagesForObject(ILocalizable obj) +247
Telerik.Sitefinity.Web.PageSiteNode..ctor(SiteMapBase provider, PageNode pageNode) +1094
Telerik.Sitefinity.Web.SiteMapBase.GetChildNodes(SiteMapNode node, Boolean ifAccessible) +625
Telerik.Sitefinity.Web.PageSiteNode..ctor(SiteMapBase provider, PageNode pageNode) +3131
Telerik.Sitefinity.Web.SiteMapBase.GetChildNodes(SiteMapNode node, Boolean ifAccessible) +625
Telerik.Sitefinity.Web.PageSiteNode..ctor(SiteMapBase provider, PageNode pageNode) +3131
Telerik.Sitefinity.Web.SiteMapBase.GetChildNodes(SiteMapNode node, Boolean ifAccessible) +625
Telerik.Sitefinity.Web.SiteMapBase.FindSegment(SiteMapNode parent, Int32 segmentIndex, IList`1 segments, String segment, PageManager pageManager, SiteMapNode& node, Boolean& exactLanguageVersionFound, Boolean checkAllLanguages) +144
Telerik.Sitefinity.Web.SiteMapBase.FindSiteMapNode(String rawUrl, Boolean ifAccessible, Boolean fallbackToOtherLanguageVersion, Boolean& isExactMatch) +1714
Telerik.Sitefinity.Web.SiteMapBase.FindSiteMapNode(String rawUrl, Boolean ifAccessible) +33
System.Web.SiteMapProvider.FindSiteMapNode(HttpContext context) +64
System.Web.SiteMapProvider.get_CurrentNode() +69
Telerik.Sitefinity.Web.UI.Backend.MainMenu.OnLoad(EventArgs e) +296
System.Web.UI.Control.LoadRecursive() +95
System.Web.UI.Control.LoadRecursive() +190
System.Web.UI.Control.LoadRecursive() +190
System.Web.UI.Control.LoadRecursive() +190
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2760
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1
I guess it is something with the new feature (List).
I went to ToolboxesConfig.config and commented the line below :
<
add
enabled
=
"True"
type
=
"Telerik.Sitefinity.Modules.Lists.Web.UI.ListView,
Telerik.Sitefinity, Version=4.1.1339.0, Culture=neutral,
PublicKeyToken=b28c218413bdf563"
title
=
"ListItemsViewTitle"
description
=
"ListItemsViewDescription"
resourceClassId
=
"ListsResources"
cssClass
=
"sfListitemsIcn"
layoutTemplate
=
""
moduleName
=
"Lists"
visibilityMode
=
"None"
name
=
"ListItemsView"
/>
Is there not a release of the SDK for 4.1?
I don't think so... The developer documentation is outdated....
Major changes to the whole system and no updated developer documentation????
I believe the 4.1 SDK is planned for next week.
Regarding upgrade issues, be sure to check out the Important considerations before upgrading to 4.1 blog post.
Regarding documentation, be specific about issues you find. We've done a ton of work related to documentation with this release, but there is always more to be done. In order to improve, it's important for us to tie these reactions to specifics. What is it in documentation that is proving unhelpful? URLs and examples are treasured.
Thanks everyone,
Gabe Sumner
Telerik | Sitefinity CMS
@JP it seems that the Lists module did not get properly installed because your upgrade crashed the first time. Can you go to ~/App_Data/Sitefinity/Configuration/SystemConfig.config and on the entry for the lists module delete the version attribute and restart your website. This will make Sitefinity re-install the lists module.
@Preetham & @John you can find a list of some of the new topics in the Sitefinity documentation here: What's new in Sitefinity documentation. All new functionality is covered in the users, administration and designers guides.
Gabe/Radoslav,
Did you guys checkout Analytics Module... I think it's broken... I've attached images in my previous posts as well as my twitter stream with the tag #Sitefinity....
Can you tell me if it's just my computer or the bug in the Analytics Module was introduced with this version...
I have been playing with Sitefinity since this morning and I am really impressed with the functionality... except with Analytics Module
Did you try the suggestion from the GA1.JPG file? Try discarding the configuration files and setting the module again.
Yes, I tried everything... Tried different browser... Un-Installed and Re-Installed and Nothing works...
Can you confirm that it's working well on your computer... It was working fine in the previous release but not in the latest release...
@ Radoslav
I did as you advised me
now I get this error :
Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
Description: An unhandled exception occurred during
the execution of the current web request. Please review the stack trace
for more information about the error and where it originated in the
code.
Exception Details: System.Reflection.ReflectionTypeLoadException:
Unable to load one or more of the requested types. Retrieve the
LoaderExceptions property for more information.
Source Error:
An unhandled exception was generated during the execution of the current
web request. Information regarding the origin and location of the
exception can be identified using the exception stack trace below.
Stack Trace:
[ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.]
DynamicModule.ns.Wrapped_OpenAccessMetaDataProvider_6bc5b10b4e024b76bf2f02e18cd79b4f.Initialize(String providerName, NameValueCollection config, Type managerType) +405
Telerik.Sitefinity.Data.ManagerBase`1.InstantiateProvider(IDataProviderSettings providerSettings, Type providerType, ExceptionPolicyName policy, ManagerBase`1 manager) +2211
Telerik.Sitefinity.Data.ManagerBase`1.InstantiateProvider(IDataProviderSettings providerSettings, ExceptionPolicyName policy, ManagerBase`1 manager) +74
Telerik.Sitefinity.Data.ManagerBase`1.SetProvider(String providerName, String transactionName) +214
[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck) +0
System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache) +117
System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean skipCheckThis, Boolean fillCache) +247
System.Activator.CreateInstance() +88
Telerik.Sitefinity.Data.ManagerBase`1.GetManager(String providerName, String transactionName) +115
Telerik.Sitefinity.Services.SystemManager.Initialize() +142
Telerik.Sitefinity.Abstractions.Bootstrapper.RegisterRoutes(RouteCollection routes) +243
Telerik.Sitefinity.Abstractions.Bootstrapper.Bootstrap() +338
Telerik.Sitefinity.Web.SitefinityHttpModule.Init(HttpApplication context) +30
System.Web.HttpApplication.InitModulesCommon() +192
System.Web.HttpApplication.InitInternal(HttpContext context, HttpApplicationState state, MethodInfo[] handlers) +1504
System.Web.HttpApplicationFactory.GetNormalApplicationInstance(HttpContext context) +348
System.Web.HttpApplicationFactory.GetApplicationInstance(HttpContext context) +200
System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +286
Congratulations Team,
It was a hard slog but you got there in the end, I haven't delved too much into the release yet but so far so good, first upgrade no issues to report.
Well not rest for the wicked on you get with Sitefinity Q2/4.2 (crack)... :)
@Gabe, you have got to be kidding me? We have developed several modules and now we can't upgrade to 4.1 to solve our issues becuase the SDK is not available yet and no documentation! Will the joke that is Sitefinity 4 never end?
@Jean Completely agree, I think a change of cms's will be on the cards
Hi,
I have a little question on installation package, It is normal that it contains only the Project Manager and documentation ?
Regards,
Nicolas VIGNE
@JP Did you manually upgrade the site? If yes, did you merge all new files or the bin folder only? This post proposes a solution on your issue.
@ Jean, please take a look at this post. The post has been release 11 days before launching Sitefinity 4.1. This would normally give people enough time to prepare for the upgrade. We have also posted links on all social networks we have presence on. Also, please note that we were contacted by customers about this before the release and we helped them with the code they needed to change. As I have mentioned previously in this thread all new functionality is covered by documentation and this documentation can be found both on-line and in the installer package. Releasing the SDK one week after Sitefinity should not really slow you down in converting your modules.
So you can follow the 4.0 documentation to create new modules, using the 4.0 SDK
Hi Shannon,
Yes, the whole approach is the same, except for the mapping of persistent classes which is covered in the blog post I have linked in the previous response.
@All, I am locking this thread as we are getting off topic and it is hard to address all of your issues here. Please use the ticketing system or forum threads if you have problems/questions regarding the release.
Kind regards,
Radoslav Georgiev
the Telerik team