From 6abb7d5459f83f8aba35d3240f3faed634c0602b Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 27 Aug 2015 10:42:51 -0700 Subject: [PATCH] Revert "Fixed broken setup due to auto-enabling features." This reverts commit 8f2bd16fed1d81ea6bf98f550a7dd0d88b4aafb0. --- src/Orchard.Web/Modules/Orchard.Layouts/Module.txt | 2 +- .../ShellBuilders/CompositionStrategy.cs | 14 ++++---------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Module.txt b/src/Orchard.Web/Modules/Orchard.Layouts/Module.txt index 6e61893e6..68c565804 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Module.txt @@ -10,7 +10,7 @@ Features: Orchard.Layouts: Name: Layouts Description: Provides tools to create layouts. - Dependencies: Common, Orchard.jQuery, Orchard.Forms, Orchard.Tokens, Orchard.MediaLibrary, TinyMce, Orchard.Widgets + Dependencies: Common, Orchard.jQuery, Orchard.Forms, Orchard.Tokens, Orchard.MediaLibrary, TinyMCE, Orchard.Widgets Category: Layout Orchard.Layouts.Snippets: Name: Layout Snippets diff --git a/src/Orchard/Environment/ShellBuilders/CompositionStrategy.cs b/src/Orchard/Environment/ShellBuilders/CompositionStrategy.cs index 37e23de7e..ece182b5c 100644 --- a/src/Orchard/Environment/ShellBuilders/CompositionStrategy.cs +++ b/src/Orchard/Environment/ShellBuilders/CompositionStrategy.cs @@ -33,14 +33,9 @@ namespace Orchard.Environment.ShellBuilders { var builtinFeatureDescriptors = builtinFeatures.Select(x => x.Descriptor).ToList(); var availableFeatures = _extensionManager.AvailableFeatures().Concat(builtinFeatureDescriptors).ToDictionary(x => x.Id); var enabledFeatures = _extensionManager.EnabledFeatures(descriptor).Select(x => x.Id).ToList(); - var featuresToLoad = descriptor.Features.Select(x => x.Name).ToList(); - - // Only auto-enable features for already running shells. - if(settings.State == TenantState.Running) { - featuresToLoad = ExpandDependencies(availableFeatures, enabledFeatures).ToList(); - } - - var featureDescriptors = _extensionManager.EnabledFeatures(featuresToLoad.Select(x => new ShellFeature { Name = x})).ToList(); + var expandedFeatures = ExpandDependencies(availableFeatures, descriptor.Features.Select(x => x.Name)).ToList(); + var autoEnabledDependencyFeatures = expandedFeatures.Except(enabledFeatures).Except(builtinFeatureDescriptors.Select(x => x.Id)).ToList(); + var featureDescriptors = _extensionManager.EnabledFeatures(expandedFeatures.Select(x => new ShellFeature { Name = x})).ToList(); var features = _extensionManager.LoadFeatures(featureDescriptors); if (descriptor.Features.Any(feature => feature.Name == "Orchard.Framework")) @@ -64,9 +59,8 @@ namespace Orchard.Environment.ShellBuilders { Logger.Debug("Done composing blueprint."); - // Add any dependencies previously not enabled to the shell descriptor. - var autoEnabledDependencyFeatures = featuresToLoad.Except(enabledFeatures).Except(builtinFeatureDescriptors.Select(x => x.Id)).ToList(); if (autoEnabledDependencyFeatures.Any()) { + // Add any dependencies previously not enabled to the shell descriptor. descriptor.Features = descriptor.Features.Concat(autoEnabledDependencyFeatures.Select(x => new ShellFeature { Name = x })).ToList(); Logger.Information("Automatically enabled the following dependency features: {0}.", String.Join(", ", autoEnabledDependencyFeatures)); }