This is to avoid a potentially un-wanted side-effect of having
an enumeration returned in a different order when executed
in parallel.
--HG--
branch : 1.x
The bug was lower in the stack, in ContentDefinitionWriter. So besides Import/Export, the Experimental
module was also susceptible to the same. There may still be some loose end related to FieldSettings in
general, doesn't seem to be a well explored area.
--HG--
branch : 1.x
Fix workitem #17872: Null shape added to Zone causes NotImplementedException being thrown (return to change listing).
Added handling of null shapes. If shape that gets passed to Add method is null - it is simply ignored.
--HG--
branch : contributions
Added the BlogPart to the shape model of RecentBlogPostsPart just the same way
as being done in BlogArchivesPartDriver.
This enables the use of Html.ItemDisplayLink((IContent)Model.Blog) inside
overwritten shapes which want to show a link to the entire blog.
--HG--
branch : contributions
We need a new service, IParallelCacheContext, which allows
tracking the current cache context across threads and tasks
running in the thread pool.
--HG--
branch : 1.x
Extension harvesting is a mix of independent operations requiring
file i/o and cpu usage, so they are good candidate for
parellelization.
Also make module harvesting in ~/Core a separate folder instance.
--HG--
branch : 1.x
Use composition over inheritance. This will be useful later to
improve performance of module/theme manifest harvesting.
--HG--
branch : 1.x
rename : src/Orchard/Environment/Extensions/Folders/ExtensionFolders.cs => src/Orchard/Environment/Extensions/Folders/ExtensionHarvester.cs
Before recompiling a dynamic module (.csproj), the BuildManager
verifies that the file hash (returned from the VPP) has changed
from the previous compilation. Instead of returning of the file
hash of the .csproj file and all its virtual dependencies (source
files and references), use the file hash value stored in the file
managed by IExtensionDependenciesManager.
This improves startup time by 10+ seconds on file i/o bound machines.
--HG--
branch : 1.x
to compute the file hash to store into the ExtensionDependencies
file. This allows skipping doing additional file I/O on dynamic
modules when they are activated.
--HG--
branch : 1.x
Loaders should only know about dependencies, not about modification
dates. This will help centralizing and abstracting away (for
performance reason) the algorithm used to pick the correct
module to activate (according to last modification dates).
--HG--
branch : 1.x
Monitoring virtual dependency files for modules takes requires a lot
of file I/O, and can be a significant bottleneck on heavily loaded
disk sub-system (5-10 secs). Making this process asynchronous during
startup decreases startup time by almost that amount of time.
--HG--
branch : 1.x
Splitting OwnerEditor and DateEditor settings apart. Breaking off any knowledge
in the CommonPart of the OwnerEditor and DateEditor.
Changed the settings to appear as TypePart definition instead of Type.
Based the ViewModel on Shape instead of EditorTemplates.
The goal of these changes is to illustrate how a 3rd party module would
accomplish the same kind of ContentPart extension w/out changing core code.
--HG--
branch : 1.x
rename : src/Orchard.Web/Core/Common/Drivers/DateEditorPartDriver.cs => src/Orchard.Web/Core/Common/DateEditor/DateEditorDriver.cs
rename : src/Orchard.Web/Core/Common/Handlers/DateEditorPartHandler.cs => src/Orchard.Web/Core/Common/DateEditor/DateEditorHandler.cs
rename : src/Orchard.Web/Core/Common/Settings/CommonEditorsSettings.cs => src/Orchard.Web/Core/Common/DateEditor/DateEditorSettings.cs
rename : src/Orchard.Web/Core/Common/Drivers/OwnerEditorPartDriver.cs => src/Orchard.Web/Core/Common/OwnerEditor/OwnerEditorDriver.cs
rename : src/Orchard.Web/Core/Common/Settings/CommonEditorsSettings.cs => src/Orchard.Web/Core/Common/OwnerEditor/OwnerEditorSettings.cs
rename : src/Orchard.Web/Core/Common/ViewModels/OwnerEditorViewModel.cs => src/Orchard.Web/Core/Common/OwnerEditor/OwnerEditorViewModel.cs
rename : src/Orchard.Web/Core/Common/Views/DefinitionTemplates/CommonEditorsSettings.cshtml => src/Orchard.Web/Core/Common/Views/DefinitionTemplates/DateEditorSettings.cshtml
rename : src/Orchard.Web/Core/Common/Views/DefinitionTemplates/CommonEditorsSettings.cshtml => src/Orchard.Web/Core/Common/Views/DefinitionTemplates/OwnerEditorSettings.cshtml
rename : src/Orchard.Web/Core/Common/Views/EditorTemplates/Parts.Common.CreatedUtc.cshtml => src/Orchard.Web/Core/Common/Views/Parts.Common.Date.Edit.cshtml
extra : transplant_source : %D1%21c%ACa%F0%0FO%A1%9A%88YS%1Bk9.%CB%04%08
Components are registered in dependency/priority order and
this is also the order events and hooks should fire. The default
order of Autofac is opposite what we need for enumerable services.
The behavior of resolving a single TService is unchanged - the
last-registered of TService is the only returned.
--HG--
branch : 1.x
extra : transplant_source : %87%22%FC%84%A1%0FP%3C%20w%B4%1EQ%CC%90%20%97%C1%EC%BF