From afa39866adbb5edcddc56ccabe663a584e219c7a Mon Sep 17 00:00:00 2001 From: Brian Powell Date: Sat, 17 Dec 2016 21:12:45 -0500 Subject: [PATCH 01/28] Fix U4-9298 --- src/Umbraco.Core/Models/ContentExtensions.cs | 3 +-- .../Models/Mapping/TabsAndPropertiesResolver.cs | 11 +++++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Umbraco.Core/Models/ContentExtensions.cs b/src/Umbraco.Core/Models/ContentExtensions.cs index e91996e32a..9a90e5ac47 100644 --- a/src/Umbraco.Core/Models/ContentExtensions.cs +++ b/src/Umbraco.Core/Models/ContentExtensions.cs @@ -404,8 +404,7 @@ namespace Umbraco.Core.Models return content.Properties .Where(property => propertyGroup.PropertyTypes .Select(propertyType => propertyType.Id) - .Contains(property.PropertyTypeId)) - .OrderBy(x => x.PropertyType.SortOrder); + .Contains(property.PropertyTypeId)); } /// diff --git a/src/Umbraco.Web/Models/Mapping/TabsAndPropertiesResolver.cs b/src/Umbraco.Web/Models/Mapping/TabsAndPropertiesResolver.cs index ff4176a944..0671f59273 100644 --- a/src/Umbraco.Web/Models/Mapping/TabsAndPropertiesResolver.cs +++ b/src/Umbraco.Web/Models/Mapping/TabsAndPropertiesResolver.cs @@ -229,7 +229,7 @@ namespace Umbraco.Web.Models.Mapping var groupsGroupsByName = content.PropertyGroups.OrderBy(x => x.SortOrder).GroupBy(x => x.Name); foreach (var groupsByName in groupsGroupsByName) { - var properties = new List(); + var properties = new List(); // merge properties for groups with the same name foreach (var group in groupsByName) @@ -237,13 +237,16 @@ namespace Umbraco.Web.Models.Mapping var groupProperties = content.GetPropertiesForGroup(group) .Where(x => IgnoreProperties.Contains(x.Alias) == false); // skip ignored - properties.AddRange(Mapper.Map, IEnumerable>(groupProperties)); + properties.AddRange(groupProperties); } if (properties.Count == 0) continue; - TranslateProperties(properties); + // Sort properties so items from different compositions appear in correct order (see U4-9298). Map sorted properties. + var mappedProperties = Mapper.Map, IEnumerable>(properties.OrderBy(prop => prop.PropertyType.SortOrder)); + + TranslateProperties(mappedProperties); // add the tab // we need to pick an identifier... there is no "right" way... @@ -256,7 +259,7 @@ namespace Umbraco.Web.Models.Mapping Id = groupId, Alias = groupName, Label = _localizedTextService.UmbracoDictionaryTranslate(groupName), - Properties = properties, + Properties = mappedProperties, IsActive = false }); } From b4ca04596ce685cff88e4a68d7f99f4ec76d438a Mon Sep 17 00:00:00 2001 From: Shannon Date: Wed, 28 Dec 2016 19:21:00 +1100 Subject: [PATCH 02/28] U4-9319 Update to latest ImageProcessor v2.5.0 and ImageProcessor.Web v4.7.0 --- src/Umbraco.Core/Umbraco.Core.csproj | 6 +++--- src/Umbraco.Core/packages.config | 2 +- src/Umbraco.Web.UI/Umbraco.Web.UI.csproj | 20 ++++++++++++-------- src/Umbraco.Web.UI/packages.config | 5 +++-- 4 files changed, 19 insertions(+), 14 deletions(-) diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj index e0eb63b265..4d9b35bc98 100644 --- a/src/Umbraco.Core/Umbraco.Core.csproj +++ b/src/Umbraco.Core/Umbraco.Core.csproj @@ -21,7 +21,7 @@ full false bin\Debug\ - DEBUG;TRACE + TRACE;DEBUG prompt 4 false @@ -52,8 +52,8 @@ ..\packages\SharpZipLib.0.86.0\lib\20\ICSharpCode.SharpZipLib.dll - - ..\packages\ImageProcessor.2.4.5.0\lib\net45\ImageProcessor.dll + + ..\packages\ImageProcessor.2.5.0.0\lib\net45\ImageProcessor.dll True diff --git a/src/Umbraco.Core/packages.config b/src/Umbraco.Core/packages.config index 35d78437e7..0e394ae2c9 100644 --- a/src/Umbraco.Core/packages.config +++ b/src/Umbraco.Core/packages.config @@ -2,7 +2,7 @@ - + diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj index 6c46ff0f80..38c333528c 100644 --- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj +++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj @@ -41,9 +41,9 @@ true 44319 - - - + enabled + disabled + false ..\ true true @@ -56,7 +56,7 @@ false - DEBUG;TRACE + TRACE;DEBUG true @@ -135,12 +135,12 @@ False ..\packages\SharpZipLib.0.86.0\lib\20\ICSharpCode.SharpZipLib.dll - - ..\packages\ImageProcessor.2.4.5.0\lib\net45\ImageProcessor.dll + + ..\packages\ImageProcessor.2.5.0.0\lib\net45\ImageProcessor.dll True - - ..\packages\ImageProcessor.Web.4.6.6.0\lib\net45\ImageProcessor.Web.dll + + ..\packages\ImageProcessor.Web.4.7.0.0\lib\net45\ImageProcessor.Web.dll True @@ -168,6 +168,10 @@ True + + ..\packages\Microsoft.IO.RecyclableMemoryStream.1.2.0\lib\net45\Microsoft.IO.RecyclableMemoryStream.dll + True + ..\packages\Microsoft.Owin.3.0.1\lib\net45\Microsoft.Owin.dll True diff --git a/src/Umbraco.Web.UI/packages.config b/src/Umbraco.Web.UI/packages.config index 008e5e404c..e363460949 100644 --- a/src/Umbraco.Web.UI/packages.config +++ b/src/Umbraco.Web.UI/packages.config @@ -5,8 +5,8 @@ - - + + @@ -21,6 +21,7 @@ + From 59f39fd535dd70f153c23e086d701287d954a668 Mon Sep 17 00:00:00 2001 From: Shannon Date: Wed, 28 Dec 2016 19:48:35 +1100 Subject: [PATCH 03/28] Ensures we remove the new DLL with the install script like other files --- build/NuSpecs/tools/install.core.ps1 | 1 + 1 file changed, 1 insertion(+) diff --git a/build/NuSpecs/tools/install.core.ps1 b/build/NuSpecs/tools/install.core.ps1 index c4f213ba01..e2230e0c32 100644 --- a/build/NuSpecs/tools/install.core.ps1 +++ b/build/NuSpecs/tools/install.core.ps1 @@ -71,6 +71,7 @@ if ($project) { if(Test-Path $umbracoBinFolder\ImageProcessor.dll) { Remove-Item $umbracoBinFolder\ImageProcessor.dll -Force -Confirm:$false } if(Test-Path $umbracoBinFolder\ImageProcessor.Web.dll) { Remove-Item $umbracoBinFolder\ImageProcessor.Web.dll -Force -Confirm:$false } if(Test-Path $umbracoBinFolder\Lucene.Net.dll) { Remove-Item $umbracoBinFolder\Lucene.Net.dll -Force -Confirm:$false } + if(Test-Path $umbracoBinFolder\Microsoft.IO.RecyclableMemoryStream.dll) { Remove-Item $umbracoBinFolder\Microsoft.IO.RecyclableMemoryStream.dll -Force -Confirm:$false } if(Test-Path $umbracoBinFolder\Microsoft.AspNet.Identity.Core.dll) { Remove-Item $umbracoBinFolder\Microsoft.AspNet.Identity.Core.dll -Force -Confirm:$false } if(Test-Path $umbracoBinFolder\Microsoft.AspNet.Identity.Owin.dll) { Remove-Item $umbracoBinFolder\Microsoft.AspNet.Identity.Owin.dll -Force -Confirm:$false } if(Test-Path $umbracoBinFolder\Microsoft.CodeAnalysis.CSharp.dll) { Remove-Item $umbracoBinFolder\Microsoft.CodeAnalysis.CSharp.dll -Force -Confirm:$false } From 98430fd5734e718991b04d2d9c02f00a9a9fb156 Mon Sep 17 00:00:00 2001 From: Shannon Date: Fri, 30 Dec 2016 11:42:02 +1100 Subject: [PATCH 04/28] U4-9326 Removing a master template from a Template does not update the Template's path correctly --- .../Repositories/TemplateRepository.cs | 7 ++++- .../Repositories/TemplateRepositoryTest.cs | 29 +++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs b/src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs index fa780e1bd0..de52ce643b 100644 --- a/src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs +++ b/src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs @@ -241,7 +241,12 @@ namespace Umbraco.Core.Persistence.Repositories { entity.Path = string.Concat(parent.Path, ",", entity.Id); } - + else + { + //this means that the master template has been removed, so we need to reset the template's + //path to be at the root + entity.Path = string.Concat("-1,", entity.Id); + } } //Get TemplateDto from db to get the Primary key of the entity diff --git a/src/Umbraco.Tests/Persistence/Repositories/TemplateRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/TemplateRepositoryTest.cs index 36ae69c733..1a4a7a2338 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/TemplateRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/TemplateRepositoryTest.cs @@ -707,6 +707,35 @@ namespace Umbraco.Tests.Persistence.Repositories } } + [Test] + public void Path_Is_Set_Correctly_On_Update_With_Master_Template_Removal() + { + // Arrange + var provider = new PetaPocoUnitOfWorkProvider(Logger); + var unitOfWork = provider.GetUnitOfWork(); + using (var repository = CreateRepository(unitOfWork)) + { + var parent = new Template("parent", "parent"); + var child1 = new Template("child1", "child1"); + + child1.MasterTemplateAlias = parent.Alias; + child1.MasterTemplateId = new Lazy(() => parent.Id); + + repository.AddOrUpdate(parent); + repository.AddOrUpdate(child1); + unitOfWork.Commit(); + + //Act + child1.SetMasterTemplate(null); + repository.AddOrUpdate(child1); + unitOfWork.Commit(); + + //Assert + Assert.AreEqual(string.Format("-1,{0}", child1.Id), child1.Path); + + } + } + [TearDown] public override void TearDown() From 0832220d6131625583446f96fe3368fd4ff431ba Mon Sep 17 00:00:00 2001 From: Shannon Date: Fri, 30 Dec 2016 12:07:03 +1100 Subject: [PATCH 05/28] publicizes some APIs needed for Deploy --- src/Umbraco.Core/ObjectExtensions.cs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Umbraco.Core/ObjectExtensions.cs b/src/Umbraco.Core/ObjectExtensions.cs index 6ed424c232..fcdc2f52a6 100644 --- a/src/Umbraco.Core/ObjectExtensions.cs +++ b/src/Umbraco.Core/ObjectExtensions.cs @@ -468,19 +468,19 @@ namespace Umbraco.Core /// /// /// - internal static IDictionary ToDictionary(this T o, + public static IDictionary ToDictionary(this T o, params Expression>[] ignoreProperties) { return o.ToDictionary(ignoreProperties.Select(e => o.GetPropertyInfo(e)).Select(propInfo => propInfo.Name).ToArray()); } - /// - /// Turns object into dictionary - /// - /// - /// Properties to ignore - /// - internal static IDictionary ToDictionary(this object o, params string[] ignoreProperties) + /// + /// Turns object into dictionary + /// + /// + /// Properties to ignore + /// + public static IDictionary ToDictionary(this object o, params string[] ignoreProperties) { if (o != null) { From ee925692e5734bb29de02bf49195b640a5fd2fba Mon Sep 17 00:00:00 2001 From: Shannon Date: Fri, 30 Dec 2016 16:06:40 +1100 Subject: [PATCH 06/28] Bumps version to put on MyGet --- build/UmbracoVersion.txt | 2 +- src/SolutionInfo.cs | 2 +- src/Umbraco.Core/Configuration/UmbracoVersion.cs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build/UmbracoVersion.txt b/build/UmbracoVersion.txt index a38b20dea5..c017a7b2f8 100644 --- a/build/UmbracoVersion.txt +++ b/build/UmbracoVersion.txt @@ -1,3 +1,3 @@ # Usage: on line 2 put the release version, on line 3 put the version comment (example: beta) 7.6.0 -alpha038 \ No newline at end of file +alpha039 \ No newline at end of file diff --git a/src/SolutionInfo.cs b/src/SolutionInfo.cs index ad8b2bfa02..386986164d 100644 --- a/src/SolutionInfo.cs +++ b/src/SolutionInfo.cs @@ -12,4 +12,4 @@ using System.Resources; [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyFileVersion("7.6.0")] -[assembly: AssemblyInformationalVersion("7.6.0-alpha038")] \ No newline at end of file +[assembly: AssemblyInformationalVersion("7.6.0-alpha039")] \ No newline at end of file diff --git a/src/Umbraco.Core/Configuration/UmbracoVersion.cs b/src/Umbraco.Core/Configuration/UmbracoVersion.cs index d06672172d..8d300790f0 100644 --- a/src/Umbraco.Core/Configuration/UmbracoVersion.cs +++ b/src/Umbraco.Core/Configuration/UmbracoVersion.cs @@ -24,7 +24,7 @@ namespace Umbraco.Core.Configuration /// Gets the version comment (like beta or RC). /// /// The version comment. - public static string CurrentComment { get { return "alpha038"; } } + public static string CurrentComment { get { return "alpha039"; } } // Get the version of the umbraco.dll by looking at a class in that dll // Had to do it like this due to medium trust issues, see: http://haacked.com/archive/2010/11/04/assembly-location-and-medium-trust.aspx From 1b8c68af0219bffe6b4aa8237c25e07669c0045b Mon Sep 17 00:00:00 2001 From: Stephan Lonntorp Date: Mon, 2 Jan 2017 14:53:57 +0100 Subject: [PATCH 07/28] Fixes issue U4-9332 U4-9332 Language of DefaultCultureDictionary is cached without the current Culture identifier --- src/Umbraco.Web/Dictionary/UmbracoCultureDictionary.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Web/Dictionary/UmbracoCultureDictionary.cs b/src/Umbraco.Web/Dictionary/UmbracoCultureDictionary.cs index fdb4145160..cb53713e3c 100644 --- a/src/Umbraco.Web/Dictionary/UmbracoCultureDictionary.cs +++ b/src/Umbraco.Web/Dictionary/UmbracoCultureDictionary.cs @@ -137,7 +137,7 @@ namespace Umbraco.Web.Dictionary { //ensure it's stored/retrieved from request cache //NOTE: This is no longer necessary since these are cached at the runtime level, but we can leave it here for now. - return _requestCacheProvider.GetCacheItem(typeof (DefaultCultureDictionary).Name + "Culture", + return _requestCacheProvider.GetCacheItem(typeof (DefaultCultureDictionary).Name + "Culture" + Culture.Name, () => _localizationService.GetLanguageByIsoCode(Culture.Name)); } } From afbceca184ac0ed919d24ef3631153029deb0855 Mon Sep 17 00:00:00 2001 From: Niels Hartvig Date: Mon, 2 Jan 2017 17:29:37 +0100 Subject: [PATCH 08/28] Makes EXIF data in resized images default --- src/Umbraco.Web.UI/Umbraco.Web.UI.csproj | 3 + .../config/imageprocessor/cache.config | 10 +++ .../config/imageprocessor/processing.config | 61 +++++++++++++++++++ .../config/imageprocessor/security.config | 24 ++++++++ src/Umbraco.Web.UI/packages.config | 1 + src/Umbraco.Web.UI/web.Template.config | 13 +++- 6 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 src/Umbraco.Web.UI/config/imageprocessor/cache.config create mode 100644 src/Umbraco.Web.UI/config/imageprocessor/processing.config create mode 100644 src/Umbraco.Web.UI/config/imageprocessor/security.config diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj index 6c46ff0f80..ef27b4ef79 100644 --- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj +++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj @@ -651,6 +651,9 @@ BaseRestExtensions.config + + + log4net.config diff --git a/src/Umbraco.Web.UI/config/imageprocessor/cache.config b/src/Umbraco.Web.UI/config/imageprocessor/cache.config new file mode 100644 index 0000000000..a8fd567d6c --- /dev/null +++ b/src/Umbraco.Web.UI/config/imageprocessor/cache.config @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/src/Umbraco.Web.UI/config/imageprocessor/processing.config b/src/Umbraco.Web.UI/config/imageprocessor/processing.config new file mode 100644 index 0000000000..2ce29a542a --- /dev/null +++ b/src/Umbraco.Web.UI/config/imageprocessor/processing.config @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/Umbraco.Web.UI/config/imageprocessor/security.config b/src/Umbraco.Web.UI/config/imageprocessor/security.config new file mode 100644 index 0000000000..7bce8ee7b5 --- /dev/null +++ b/src/Umbraco.Web.UI/config/imageprocessor/security.config @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/Umbraco.Web.UI/packages.config b/src/Umbraco.Web.UI/packages.config index 008e5e404c..cc1fb8a78e 100644 --- a/src/Umbraco.Web.UI/packages.config +++ b/src/Umbraco.Web.UI/packages.config @@ -7,6 +7,7 @@ + diff --git a/src/Umbraco.Web.UI/web.Template.config b/src/Umbraco.Web.UI/web.Template.config index 09df754e74..10c64797f4 100644 --- a/src/Umbraco.Web.UI/web.Template.config +++ b/src/Umbraco.Web.UI/web.Template.config @@ -14,7 +14,13 @@
- + + +
+
+
+ + @@ -434,4 +440,9 @@ + + + + + From 4e2fb8e5dcf50c01dc9634fafa854c022b0a710a Mon Sep 17 00:00:00 2001 From: Shannon Date: Tue, 3 Jan 2017 10:36:26 +1100 Subject: [PATCH 09/28] Fixes IP nuget references and fixes up several other Nuget assembly references. --- src/SQLCE4Umbraco/SqlCE4Umbraco.csproj | 4 -- src/Umbraco.Core/Umbraco.Core.csproj | 29 +++--------- src/Umbraco.Core/packages.config | 4 +- .../Umbraco.Tests.Benchmarks.csproj | 38 ++++++--------- src/Umbraco.Tests/Umbraco.Tests.csproj | 31 ++----------- src/Umbraco.Web.UI/Umbraco.Web.UI.csproj | 3 -- src/Umbraco.Web.UI/packages.config | 2 +- src/Umbraco.Web/Umbraco.Web.csproj | 46 ++----------------- src/UmbracoExamine/UmbracoExamine.csproj | 3 -- .../umbraco.MacroEngines.csproj | 16 +------ src/umbraco.businesslogic/packages.config | 2 +- .../umbraco.businesslogic.csproj | 12 +---- src/umbraco.cms/umbraco.cms.csproj | 4 -- src/umbraco.controls/umbraco.controls.csproj | 1 - src/umbraco.datalayer/packages.config | 4 +- .../umbraco.datalayer.csproj | 5 +- .../umbraco.editorControls.csproj | 1 - 17 files changed, 38 insertions(+), 167 deletions(-) diff --git a/src/SQLCE4Umbraco/SqlCE4Umbraco.csproj b/src/SQLCE4Umbraco/SqlCE4Umbraco.csproj index 86796e1dd7..0689a7a7d4 100644 --- a/src/SQLCE4Umbraco/SqlCE4Umbraco.csproj +++ b/src/SQLCE4Umbraco/SqlCE4Umbraco.csproj @@ -49,13 +49,9 @@ ..\packages\SqlServerCE.4.0.0.1\lib\System.Data.SqlServerCe.dll - False - False ..\packages\SqlServerCE.4.0.0.1\lib\System.Data.SqlServerCe.Entity.dll - False - False diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj index 4d9b35bc98..ae6c1ba9be 100644 --- a/src/Umbraco.Core/Umbraco.Core.csproj +++ b/src/Umbraco.Core/Umbraco.Core.csproj @@ -39,67 +39,54 @@ ..\packages\AutoMapper.3.3.1\lib\net40\AutoMapper.dll - True ..\packages\AutoMapper.3.3.1\lib\net40\AutoMapper.Net4.dll - True - False ..\packages\HtmlAgilityPack.1.4.9\lib\Net45\HtmlAgilityPack.dll - + ..\packages\SharpZipLib.0.86.0\lib\20\ICSharpCode.SharpZipLib.dll ..\packages\ImageProcessor.2.5.0.0\lib\net45\ImageProcessor.dll - True - False ..\packages\log4net-mediumtrust.2.0.0\lib\log4net.dll - False ..\packages\Microsoft.AspNet.Identity.Core.2.2.1\lib\net45\Microsoft.AspNet.Identity.Core.dll - False ..\packages\Microsoft.AspNet.Identity.Owin.2.2.1\lib\net45\Microsoft.AspNet.Identity.Owin.dll - False ..\packages\Microsoft.Owin.3.0.1\lib\net45\Microsoft.Owin.dll - + ..\packages\Microsoft.Owin.Security.3.0.1\lib\net45\Microsoft.Owin.Security.dll - True - False ..\packages\Microsoft.Owin.Security.Cookies.3.0.1\lib\net45\Microsoft.Owin.Security.Cookies.dll - False ..\packages\Microsoft.Owin.Security.OAuth.3.0.1\lib\net45\Microsoft.Owin.Security.OAuth.dll - False ..\packages\MiniProfiler.2.1.0\lib\net40\MiniProfiler.dll - - False + ..\packages\MySql.Data.6.9.8\lib\net45\MySql.Data.dll ..\packages\Newtonsoft.Json.6.0.8\lib\net45\Newtonsoft.Json.dll True - + ..\packages\Owin.1.0\lib\net40\Owin.dll - + ..\packages\semver.1.1.2\lib\net45\Semver.dll @@ -107,11 +94,9 @@ - False ..\packages\SqlServerCE.4.0.0.1\lib\System.Data.SqlServerCe.dll - False ..\packages\SqlServerCE.4.0.0.1\lib\System.Data.SqlServerCe.Entity.dll @@ -1440,9 +1425,7 @@ - - Designer - + diff --git a/src/Umbraco.Core/packages.config b/src/Umbraco.Core/packages.config index 0e394ae2c9..78bf2b23b8 100644 --- a/src/Umbraco.Core/packages.config +++ b/src/Umbraco.Core/packages.config @@ -3,7 +3,7 @@ - + @@ -15,6 +15,6 @@ - + \ No newline at end of file diff --git a/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj b/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj index 697b6a10c6..9f6d4e799f 100644 --- a/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj +++ b/src/Umbraco.Tests.Benchmarks/Umbraco.Tests.Benchmarks.csproj @@ -39,31 +39,24 @@ ..\packages\BenchmarkDotNet.0.9.9\lib\net45\BenchmarkDotNet.dll - True ..\packages\BenchmarkDotNet.Core.0.9.9\lib\net45\BenchmarkDotNet.Core.dll - True ..\packages\BenchmarkDotNet.Diagnostics.Windows.0.9.9\lib\net45\BenchmarkDotNet.Diagnostics.Windows.dll - True ..\packages\BenchmarkDotNet.Toolchains.Roslyn.0.9.9\lib\net45\BenchmarkDotNet.Toolchains.Roslyn.dll - True ..\packages\Microsoft.CodeAnalysis.Common.1.3.2\lib\net45\Microsoft.CodeAnalysis.dll - True ..\packages\Microsoft.CodeAnalysis.CSharp.1.3.2\lib\net45\Microsoft.CodeAnalysis.CSharp.dll - True ..\packages\Microsoft.Diagnostics.Tracing.TraceEvent.1.0.41\lib\net40\Microsoft.Diagnostics.Tracing.TraceEvent.dll - True @@ -73,20 +66,16 @@ ..\packages\SqlServerCE.4.0.0.1\lib\System.Data.SqlServerCe.dll - True ..\packages\SqlServerCE.4.0.0.1\lib\System.Data.SqlServerCe.Entity.dll - True ..\packages\System.Reflection.Metadata.1.2.0\lib\portable-net45+win8\System.Reflection.Metadata.dll - True ..\packages\System.Threading.Tasks.Extensions.4.0.0\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll - True @@ -106,10 +95,6 @@ - - - - {31785bc3-256c-4613-b2f5-a1b0bdded8c1} @@ -120,7 +105,22 @@ Umbraco.Tests + + + + + + + if not exist "$(TargetDir)x86" md "$(TargetDir)x86" + xcopy /s /y "$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8854.1\NativeBinaries\x86\*.*" "$(TargetDir)x86" + if not exist "$(TargetDir)amd64" md "$(TargetDir)amd64" + xcopy /s /y "$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8854.1\NativeBinaries\amd64\*.*" "$(TargetDir)amd64" + + + xcopy "$(ProjectDir)"..\packages\SqlServerCE.4.0.0.1\amd64\*.* "$(TargetDir)amd64\" /Y /F /E /I /C /D +xcopy "$(ProjectDir)"..\packages\SqlServerCE.4.0.0.1\x86\*.* "$(TargetDir)x86\" /Y /F /E /I /C /D + @@ -128,14 +128,6 @@ - - - - - - xcopy "$(ProjectDir)"..\packages\SqlServerCE.4.0.0.1\amd64\*.* "$(TargetDir)amd64\" /Y /F /E /I /C /D -xcopy "$(ProjectDir)"..\packages\SqlServerCE.4.0.0.1\x86\*.* "$(TargetDir)x86\" /Y /F /E /I /C /D - - + - + @@ -24,5 +24,5 @@ More information and documentation can be found on GitHub: https://github.com/Sh - + \ No newline at end of file diff --git a/src/Umbraco.Web.UI/config/ExamineSettings.config b/src/Umbraco.Web.UI/config/ExamineSettings.config index aacf5e3732..076fb08493 100644 --- a/src/Umbraco.Web.UI/config/ExamineSettings.config +++ b/src/Umbraco.Web.UI/config/ExamineSettings.config @@ -12,18 +12,15 @@ More information and documentation can be found on GitHub: https://github.com/Sh + analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/> + analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net"/> - + @@ -31,16 +28,13 @@ More information and documentation can be found on GitHub: https://github.com/Sh + analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/> - + + enableLeadingWildcard="true"/> From 62f21d3ceec7b85ad7bcc1248f3802644a21b37f Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Tue, 3 Jan 2017 09:17:05 +0100 Subject: [PATCH 19/28] Update nuspec to install latest version of ImageProcessor --- build/NuSpecs/UmbracoCms.Core.nuspec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build/NuSpecs/UmbracoCms.Core.nuspec b/build/NuSpecs/UmbracoCms.Core.nuspec index 7c1ff15cc8..5ba212640b 100644 --- a/build/NuSpecs/UmbracoCms.Core.nuspec +++ b/build/NuSpecs/UmbracoCms.Core.nuspec @@ -33,8 +33,8 @@ - - + + @@ -103,4 +103,4 @@ - \ No newline at end of file + From 56d2230251b57fa849524baeab56eed5c4b61c68 Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Tue, 3 Jan 2017 09:24:23 +0100 Subject: [PATCH 20/28] Add Microsoft.IO.RecyclableMemoryStream to the nuspec, update to the latest version (1.2.1) --- build/NuSpecs/UmbracoCms.Core.nuspec | 3 ++- src/Umbraco.Web.UI/Umbraco.Web.UI.csproj | 5 +++-- src/Umbraco.Web.UI/packages.config | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/build/NuSpecs/UmbracoCms.Core.nuspec b/build/NuSpecs/UmbracoCms.Core.nuspec index 5ba212640b..113de3970c 100644 --- a/build/NuSpecs/UmbracoCms.Core.nuspec +++ b/build/NuSpecs/UmbracoCms.Core.nuspec @@ -38,7 +38,8 @@ - + + diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj index c34b2aeb72..e342f6f886 100644 --- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj +++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj @@ -166,8 +166,9 @@ True - - ..\packages\Microsoft.IO.RecyclableMemoryStream.1.2.0\lib\net45\Microsoft.IO.RecyclableMemoryStream.dll + + ..\packages\Microsoft.IO.RecyclableMemoryStream.1.2.1\lib\net45\Microsoft.IO.RecyclableMemoryStream.dll + True ..\packages\Microsoft.Owin.3.0.1\lib\net45\Microsoft.Owin.dll diff --git a/src/Umbraco.Web.UI/packages.config b/src/Umbraco.Web.UI/packages.config index f3914cef7d..4b80afd79d 100644 --- a/src/Umbraco.Web.UI/packages.config +++ b/src/Umbraco.Web.UI/packages.config @@ -21,7 +21,7 @@ - + From d8b70d79e8f047e8e14426d0e7020b5b1173dfad Mon Sep 17 00:00:00 2001 From: Stephan Date: Tue, 3 Jan 2017 09:29:22 +0100 Subject: [PATCH 21/28] Version 7.6.0-alpha044 on MyGet --- build/UmbracoVersion.txt | 4 ++-- src/SolutionInfo.cs | 2 +- src/Umbraco.Core/Configuration/UmbracoVersion.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build/UmbracoVersion.txt b/build/UmbracoVersion.txt index 4dad972e68..096e4d6b5c 100644 --- a/build/UmbracoVersion.txt +++ b/build/UmbracoVersion.txt @@ -1,3 +1,3 @@ -# Usage: on line 2 put the release version, on line 3 put the version comment (example: beta) +# Usage: on line 2 put the release version, on line 3 put the version comment (example: beta) 7.6.0 -alpha043 \ No newline at end of file +alpha044 diff --git a/src/SolutionInfo.cs b/src/SolutionInfo.cs index 8eb9558419..5e904fab70 100644 --- a/src/SolutionInfo.cs +++ b/src/SolutionInfo.cs @@ -12,4 +12,4 @@ using System.Resources; [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyFileVersion("7.6.0")] -[assembly: AssemblyInformationalVersion("7.6.0-alpha043")] \ No newline at end of file +[assembly: AssemblyInformationalVersion("7.6.0-alpha044")] \ No newline at end of file diff --git a/src/Umbraco.Core/Configuration/UmbracoVersion.cs b/src/Umbraco.Core/Configuration/UmbracoVersion.cs index 79e4260028..03b1827221 100644 --- a/src/Umbraco.Core/Configuration/UmbracoVersion.cs +++ b/src/Umbraco.Core/Configuration/UmbracoVersion.cs @@ -24,7 +24,7 @@ namespace Umbraco.Core.Configuration /// Gets the version comment (like beta or RC). /// /// The version comment. - public static string CurrentComment { get { return "alpha043"; } } + public static string CurrentComment { get { return "alpha044"; } } // Get the version of the umbraco.dll by looking at a class in that dll // Had to do it like this due to medium trust issues, see: http://haacked.com/archive/2010/11/04/assembly-location-and-medium-trust.aspx From 53bbc5f922e8443356fcd92cd0e2340abde39955 Mon Sep 17 00:00:00 2001 From: Shannon Date: Tue, 3 Jan 2017 19:39:34 +1100 Subject: [PATCH 22/28] U4-9335 UmbracoExamine needs to ignore the useTempStorage option if an IDirectoryFactory config option is supplied by the indexer --- src/UmbracoExamine/BaseUmbracoIndexer.cs | 3 ++- src/UmbracoExamine/UmbracoExamineSearcher.cs | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/UmbracoExamine/BaseUmbracoIndexer.cs b/src/UmbracoExamine/BaseUmbracoIndexer.cs index 26763bd7cd..933e32cfff 100644 --- a/src/UmbracoExamine/BaseUmbracoIndexer.cs +++ b/src/UmbracoExamine/BaseUmbracoIndexer.cs @@ -162,7 +162,8 @@ namespace UmbracoExamine base.Initialize(name, config); - if (config["useTempStorage"] != null) + //detect if a dir factory has been specified, if so then useTempStorage will not be used (deprecated) + if (config["directoryFactory"] == null && config["useTempStorage"] != null) { var fsDir = base.GetLuceneDirectory() as FSDirectory; if (fsDir != null) diff --git a/src/UmbracoExamine/UmbracoExamineSearcher.cs b/src/UmbracoExamine/UmbracoExamineSearcher.cs index acbfefb180..efd0043e0c 100644 --- a/src/UmbracoExamine/UmbracoExamineSearcher.cs +++ b/src/UmbracoExamine/UmbracoExamineSearcher.cs @@ -73,7 +73,8 @@ namespace UmbracoExamine base.Initialize(name, config); - if (config != null && config["useTempStorage"] != null) + //detect if a dir factory has been specified, if so then useTempStorage will not be used (deprecated) + if (config != null && config["directoryFactory"] == null && config["useTempStorage"] != null) { //Use the temp storage directory which will store the index in the local/codegen folder, this is useful // for websites that are running from a remove file server and file IO latency becomes an issue From 84c0682f1619e394c7dacc290b8c432291f1b1c0 Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Tue, 3 Jan 2017 10:20:22 +0100 Subject: [PATCH 23/28] Not necessary to install Microsoft.IO.RecyclableMemoryStream, the ImageProcessor dependency will do that for us --- build/NuSpecs/UmbracoCms.Core.nuspec | 1 - 1 file changed, 1 deletion(-) diff --git a/build/NuSpecs/UmbracoCms.Core.nuspec b/build/NuSpecs/UmbracoCms.Core.nuspec index 113de3970c..44499f6a64 100644 --- a/build/NuSpecs/UmbracoCms.Core.nuspec +++ b/build/NuSpecs/UmbracoCms.Core.nuspec @@ -39,7 +39,6 @@ - From 6a374cbfa6c310514abdf121b6914722b23c3bda Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Tue, 3 Jan 2017 15:57:21 +0100 Subject: [PATCH 24/28] Make the NuGet install and upgrade work --- build/NuSpecs/UmbracoCms.Core.nuspec | 1 + build/NuSpecs/UmbracoCms.nuspec | 1 + build/NuSpecs/tools/processing.config.install.xdt | 1 + 3 files changed, 3 insertions(+) create mode 100644 build/NuSpecs/tools/processing.config.install.xdt diff --git a/build/NuSpecs/UmbracoCms.Core.nuspec b/build/NuSpecs/UmbracoCms.Core.nuspec index 44499f6a64..5849f2679f 100644 --- a/build/NuSpecs/UmbracoCms.Core.nuspec +++ b/build/NuSpecs/UmbracoCms.Core.nuspec @@ -35,6 +35,7 @@ + diff --git a/build/NuSpecs/UmbracoCms.nuspec b/build/NuSpecs/UmbracoCms.nuspec index d30a139adc..b56c8e6205 100644 --- a/build/NuSpecs/UmbracoCms.nuspec +++ b/build/NuSpecs/UmbracoCms.nuspec @@ -43,6 +43,7 @@ + diff --git a/build/NuSpecs/tools/processing.config.install.xdt b/build/NuSpecs/tools/processing.config.install.xdt new file mode 100644 index 0000000000..0bef321533 --- /dev/null +++ b/build/NuSpecs/tools/processing.config.install.xdt @@ -0,0 +1 @@ + \ No newline at end of file From 60f6a60ca9fc8865bc3ec49a5f0d5f5a483c9d66 Mon Sep 17 00:00:00 2001 From: Niels Hartvig Date: Tue, 3 Jan 2017 16:11:32 +0100 Subject: [PATCH 25/28] Update install post url to https --- src/Umbraco.Web/Install/InstallSteps/NewInstallStep.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Web/Install/InstallSteps/NewInstallStep.cs b/src/Umbraco.Web/Install/InstallSteps/NewInstallStep.cs index 4d8e9c5a4b..fd36d8e4e6 100644 --- a/src/Umbraco.Web/Install/InstallSteps/NewInstallStep.cs +++ b/src/Umbraco.Web/Install/InstallSteps/NewInstallStep.cs @@ -81,7 +81,7 @@ namespace Umbraco.Web.Install.InstallSteps { var client = new System.Net.WebClient(); var values = new NameValueCollection { { "name", admin.Name }, { "email", admin.Email} }; - client.UploadValues("http://umbraco.org/base/Ecom/SubmitEmail/installer.aspx", values); + client.UploadValues("https://umbraco.com/base/Ecom/SubmitEmail/installer.aspx", values); } catch { /* fail in silence */ } } From dc62272e6e987dcfb83622b13eaf73c2b42ff42a Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Tue, 3 Jan 2017 17:04:38 +0100 Subject: [PATCH 26/28] Revert "Add Microsoft.IO.RecyclableMemoryStream to the nuspec, update to the latest version (1.2.1)" Keep the version the same as what ImageProcessor relies on to avoid confusion and conflicts This reverts commit 56d2230251b57fa849524baeab56eed5c4b61c68. # Conflicts: # build/NuSpecs/UmbracoCms.Core.nuspec --- build/NuSpecs/UmbracoCms.Core.nuspec | 2 +- src/Umbraco.Web.UI/Umbraco.Web.UI.csproj | 5 ++--- src/Umbraco.Web.UI/packages.config | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/build/NuSpecs/UmbracoCms.Core.nuspec b/build/NuSpecs/UmbracoCms.Core.nuspec index 5849f2679f..03818d13f8 100644 --- a/build/NuSpecs/UmbracoCms.Core.nuspec +++ b/build/NuSpecs/UmbracoCms.Core.nuspec @@ -39,7 +39,7 @@ - + diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj index c8fb7ab189..79796e6bb7 100644 --- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj +++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj @@ -166,9 +166,8 @@ True - - ..\packages\Microsoft.IO.RecyclableMemoryStream.1.2.1\lib\net45\Microsoft.IO.RecyclableMemoryStream.dll - True + + ..\packages\Microsoft.IO.RecyclableMemoryStream.1.2.0\lib\net45\Microsoft.IO.RecyclableMemoryStream.dll ..\packages\Microsoft.Owin.3.0.1\lib\net45\Microsoft.Owin.dll diff --git a/src/Umbraco.Web.UI/packages.config b/src/Umbraco.Web.UI/packages.config index a308c4cb53..2a87d3dce9 100644 --- a/src/Umbraco.Web.UI/packages.config +++ b/src/Umbraco.Web.UI/packages.config @@ -22,7 +22,7 @@ - + From a92d255e4b0f2b8dc81daf89bdb11064cd3c8336 Mon Sep 17 00:00:00 2001 From: Shannon Date: Wed, 4 Jan 2017 17:10:48 +1100 Subject: [PATCH 27/28] adds notes, obsoletes a few classes that shouldn't have really been there --- src/UmbracoExamine/BaseUmbracoIndexer.cs | 4 ++++ src/UmbracoExamine/LocalStorage/AzureLocalStorageDirectory.cs | 3 +++ .../LocalStorage/CodeGenLocalStorageDirectory.cs | 4 ++++ src/UmbracoExamine/UmbracoExamineSearcher.cs | 4 ++++ 4 files changed, 15 insertions(+) diff --git a/src/UmbracoExamine/BaseUmbracoIndexer.cs b/src/UmbracoExamine/BaseUmbracoIndexer.cs index 933e32cfff..ebb718898b 100644 --- a/src/UmbracoExamine/BaseUmbracoIndexer.cs +++ b/src/UmbracoExamine/BaseUmbracoIndexer.cs @@ -162,6 +162,10 @@ namespace UmbracoExamine base.Initialize(name, config); + //NOTES: useTempStorage is obsolete, tempStorageDirectory is obsolete, both have been superceded by Examine Core's IDirectoryFactory + // tempStorageDirectory never actually got finished in Umbraco Core but accidentally got shipped (it's only enabled on the searcher + // and not the indexer). So this whole block is just legacy + //detect if a dir factory has been specified, if so then useTempStorage will not be used (deprecated) if (config["directoryFactory"] == null && config["useTempStorage"] != null) { diff --git a/src/UmbracoExamine/LocalStorage/AzureLocalStorageDirectory.cs b/src/UmbracoExamine/LocalStorage/AzureLocalStorageDirectory.cs index 6d60d26079..56d1b414c5 100644 --- a/src/UmbracoExamine/LocalStorage/AzureLocalStorageDirectory.cs +++ b/src/UmbracoExamine/LocalStorage/AzureLocalStorageDirectory.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Specialized; +using System.ComponentModel; using System.IO; using System.Web; using Umbraco.Core; @@ -9,6 +10,8 @@ namespace UmbracoExamine.LocalStorage /// /// When running on Azure websites, we can use the local user's storage space /// + [Obsolete("This has been superceded by IDirectoryFactory in Examine Core and should not be used")] + [EditorBrowsable(EditorBrowsableState.Never)] public sealed class AzureLocalStorageDirectory : ILocalStorageDirectory { public DirectoryInfo GetLocalStorageDirectory(NameValueCollection config, string configuredPath) diff --git a/src/UmbracoExamine/LocalStorage/CodeGenLocalStorageDirectory.cs b/src/UmbracoExamine/LocalStorage/CodeGenLocalStorageDirectory.cs index eb7bb9a8b3..4aa92f0e53 100644 --- a/src/UmbracoExamine/LocalStorage/CodeGenLocalStorageDirectory.cs +++ b/src/UmbracoExamine/LocalStorage/CodeGenLocalStorageDirectory.cs @@ -1,4 +1,6 @@ +using System; using System.Collections.Specialized; +using System.ComponentModel; using System.IO; using System.Web; @@ -11,6 +13,8 @@ namespace UmbracoExamine.LocalStorage /// This is the default implementation - but it comes with it's own limitations - the CodeGen folder is cleared whenever new /// DLLs are changed in the /bin folder (among other circumstances) which means the index would be re-synced (or rebuilt) there. /// + [Obsolete("This has been superceded by IDirectoryFactory in Examine Core and should not be used")] + [EditorBrowsable(EditorBrowsableState.Never)] public sealed class CodeGenLocalStorageDirectory : ILocalStorageDirectory { public DirectoryInfo GetLocalStorageDirectory(NameValueCollection config, string configuredPath) diff --git a/src/UmbracoExamine/UmbracoExamineSearcher.cs b/src/UmbracoExamine/UmbracoExamineSearcher.cs index efd0043e0c..7a2a80c3fe 100644 --- a/src/UmbracoExamine/UmbracoExamineSearcher.cs +++ b/src/UmbracoExamine/UmbracoExamineSearcher.cs @@ -73,6 +73,10 @@ namespace UmbracoExamine base.Initialize(name, config); + //NOTES: useTempStorage is obsolete, tempStorageDirectory is obsolete, both have been superceded by Examine Core's IDirectoryFactory + // tempStorageDirectory never actually got finished in Umbraco Core but accidentally got shipped (it's only enabled on the searcher + // and not the indexer). So this whole block is just legacy + //detect if a dir factory has been specified, if so then useTempStorage will not be used (deprecated) if (config != null && config["directoryFactory"] == null && config["useTempStorage"] != null) { From c472d4975e0eb8657158e2b0ba304d7a79973e84 Mon Sep 17 00:00:00 2001 From: Sebastiaan Janssen Date: Wed, 4 Jan 2017 16:31:47 +0100 Subject: [PATCH 28/28] Add some extra logging to ScheduledPublishing to more easily see where errors are coming from --- .../WebServices/ScheduledPublishController.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Web/WebServices/ScheduledPublishController.cs b/src/Umbraco.Web/WebServices/ScheduledPublishController.cs index fcf07126fb..433930dda9 100644 --- a/src/Umbraco.Web/WebServices/ScheduledPublishController.cs +++ b/src/Umbraco.Web/WebServices/ScheduledPublishController.cs @@ -44,7 +44,17 @@ namespace Umbraco.Web.WebServices } catch (Exception ee) { - LogHelper.Error("Error executing scheduled task", ee); + var errorMessage = "Error executing scheduled task"; + if (HttpContext != null && HttpContext.Request != null) + { + if (HttpContext.Request.Url != null) + errorMessage = string.Format("{0} | Request to {1}", errorMessage, HttpContext.Request.Url); + if (HttpContext.Request.UserHostAddress != null) + errorMessage = string.Format("{0} | Coming from {1}", errorMessage, HttpContext.Request.UserHostAddress); + if (HttpContext.Request.UrlReferrer != null) + errorMessage = string.Format("{0} | Referrer {1}", errorMessage, HttpContext.Request.UrlReferrer); + } + LogHelper.Error(errorMessage, ee); Response.StatusCode = 400;