diff --git a/Doc/ReleaseNotes-ISHRemote-8.1.md b/Doc/ReleaseNotes-ISHRemote-8.1.md index 07d7b9a5..bee091bd 100644 --- a/Doc/ReleaseNotes-ISHRemote-8.1.md +++ b/Doc/ReleaseNotes-ISHRemote-8.1.md @@ -38,7 +38,7 @@ The contract of what you put on the BackgroundTask message queue under `InputDat | *custom* | when not specified you have to pass `-RawInputData` | *custom* | value of `-RawInputData` should match your BackgroundTask handler implementation | ### Example using SMARTTAG -Add BackgroundTask with event type `SMARTTAG` for the objects located under the `General\MyFolder\Topics` path. One BackgroundTask message will appear per folder containing a list of all latest version English content objects in the InputData of the message. Note that there is no devide on `$ishSession.MetadataBatchSize` (default was 999) anymore in this version of ISHRemote. +Add BackgroundTask with event type `SMARTTAG` for the objects located under the `General\MyFolder\Topics` path. One BackgroundTask message will appear per folder containing a list of all latest version English (`en`) content objects in the InputData of the message. Note that there is no devide on `$ishSession.MetadataBatchSize` (default was 999) anymore since this v8.1 version of ISHRemote. ```powershell Get-IshFolder -FolderPath "General\Myfolder\Topics" -FolderTypeFilter @("ISHModule", "ISHMasterDoc", "ISHLibrary") -Recurse | ForEach-Object -Process { @@ -48,9 +48,9 @@ ForEach-Object -Process { ``` ### Example using SYNCHRONIZEMETRICS -Rebuilding the Metrics subsystem, introduced in Tridion Docs 15.1, is optimally done in the order of Images, Topics and Publications. Add BackgroundTask with event type `SYNCHRONIZEMETRICS` for the objects located under the `General` path (`Data` folder). One BackgroundTask message will appear per folder containing a list of LogicalIds in the `InputData` of the message, hence the content of one folder is passed in one message. +Rebuilding the Metrics subsystem, introduced in Tridion Docs 15.1 Update 1 (15.1.1), is optimally done in the order of Images, Topics and Publications. Add BackgroundTask with event type `SYNCHRONIZEMETRICS` for the objects located under the `General` path (`Data` folder). One BackgroundTask message will appear per folder containing a list of LogicalIds in the `InputData` of the message, hence the content of one folder is passed in one message. -Note that a more complex script will be offered in the product (IShCD) that covers error handling, logging transcript and more. The below illustrates that ISHRemote cmdlets are an enabler for the feature. +Note that a more complex script will be offered in the product (IShCD) that covers error handling, logging transcript and more. The below illustrates that ISHRemote cmdlets are an enabler for the feature and offering variations like partial rebuilds and more. ```powershell # First Images Get-IshFolder -BaseFolder Data -FolderTypeFilter @("ISHIllustration") -Recurse | @@ -110,7 +110,8 @@ n/a ## Breaking Changes - Platform -n/a +* Security and Platform Updates, bumped version of System.Text.Json to 8.0.4; Duende's IdentityModel libraries to 6.0.0 and 7.0.0; Microsoft.Extensions.ApiDescription.Client to 8.0.8 and matching NSwag.ApiDescription.Client to 14.1.0; and Microsoft.PowerShell.Commands.Management to 7.2.23, the latest to support the technically obsolete PowerShell 7.2+/NET6+ combination. +* Note that `Microsoft.Extensions.Logging.dll` is no longer preloaded by `AppDomainModuleAssemblyInitializer.cs` as a side-effect of the above assembly version bumps where bugs where fixed in the third party libraries. ## Known Issues @@ -138,8 +139,8 @@ Below is not an official performance compare, but a recurring thing noticed alon | Name | Client Platform | Protocol | Test Results | |--------------------------|-------------------------------------|----------------------|----------------| | ISHRemote 8.0.10919.0 | PowerShell 7.4.0 on .NET 8.0.0 | WcfSoapWithOpenIdConnect | Tests completed in 449.72s AND Tests Passed: 1057, Failed: 0, Skipped: 3 NotRun: 0 | -| ISHRemote 8.0.11207.0 | Windows PowerShell 5.1 on .NET 4.8.1 | WcfSoapWithOpenIdConnect | Tests completed in 464.79s AND Tests Passed: 1062, Failed: 0, Skipped: 3 NotRun: 0 | -| ISHRemote 8.1.11503.0 | PowerShell 7.4.3 on .NET 8.0.0 | WcfSoapWithOpenIdConnect | Tests completed in 552.74s AND Tests Passed: 1062, Failed: 0, Skipped: 3 NotRun: 0 | +| ISHRemote 8.1.11623.0 | Windows PowerShell 5.1 on .NET 4.8.1 | WcfSoapWithOpenIdConnect | Tests completed in 515.62s AND Tests Passed: 1063, Failed: 0, Skipped: 4 NotRun: 0 | +| ISHRemote 8.1.11623.0 | PowerShell 7.4.5 on .NET 8.0.0 | WcfSoapWithOpenIdConnect | Tests completed in 467s AND Tests Passed: 1063, Failed: 0, Skipped: 4 NotRun: 0 | diff --git a/Source/ISHRemote/Trisoft.ISHRemote.OpenApiAM10/Trisoft.ISHRemote.OpenApiAM10.csproj b/Source/ISHRemote/Trisoft.ISHRemote.OpenApiAM10/Trisoft.ISHRemote.OpenApiAM10.csproj index f797ee94..6a847931 100644 --- a/Source/ISHRemote/Trisoft.ISHRemote.OpenApiAM10/Trisoft.ISHRemote.OpenApiAM10.csproj +++ b/Source/ISHRemote/Trisoft.ISHRemote.OpenApiAM10/Trisoft.ISHRemote.OpenApiAM10.csproj @@ -19,12 +19,12 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive - + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/Source/ISHRemote/Trisoft.ISHRemote.OpenApiISH30/Trisoft.ISHRemote.OpenApiISH30.csproj b/Source/ISHRemote/Trisoft.ISHRemote.OpenApiISH30/Trisoft.ISHRemote.OpenApiISH30.csproj index 7b4bb639..e444f14b 100644 --- a/Source/ISHRemote/Trisoft.ISHRemote.OpenApiISH30/Trisoft.ISHRemote.OpenApiISH30.csproj +++ b/Source/ISHRemote/Trisoft.ISHRemote.OpenApiISH30/Trisoft.ISHRemote.OpenApiISH30.csproj @@ -19,12 +19,12 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive - + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/Source/ISHRemote/Trisoft.ISHRemote/Cmdlets/Session/SessionCmdlet.cs b/Source/ISHRemote/Trisoft.ISHRemote/Cmdlets/Session/SessionCmdlet.cs index f0232b29..28437b02 100644 --- a/Source/ISHRemote/Trisoft.ISHRemote/Cmdlets/Session/SessionCmdlet.cs +++ b/Source/ISHRemote/Trisoft.ISHRemote/Cmdlets/Session/SessionCmdlet.cs @@ -40,7 +40,7 @@ protected override void BeginProcessing() { base.BeginProcessing(); #if NET48 - WriteVerbose("ISHRemote module on PS5.1/NET48 forces Assembly Redirects for System.Runtime.CompilerServices.Unsafe.dll/System.Text.Json.dll/IdentityModel.OidcClient.dll/Microsoft.Bcl.AsyncInterfaces.dll/System.Text.Encodings.Web.dll/System.Memory.dll/System.ComponentModel.Annotations.dll/Microsoft.Extensions.Logging.dll"); + WriteVerbose("ISHRemote module on PS5.1/NET48 forces Assembly Redirects for System.Runtime.CompilerServices.Unsafe.dll/System.Text.Json.dll/IdentityModel.OidcClient.dll/Microsoft.Bcl.AsyncInterfaces.dll/System.Text.Encodings.Web.dll/System.Memory.dll/System.ComponentModel.Annotations.dll"); #else WriteVerbose("ISHRemote module on PS7.2+/NET60+ forces Assembly Redirects for IdentityModel.dll"); #endif diff --git a/Source/ISHRemote/Trisoft.ISHRemote/HelperClasses/AppDomainModuleAssemblyInitializer.cs b/Source/ISHRemote/Trisoft.ISHRemote/HelperClasses/AppDomainModuleAssemblyInitializer.cs index c1d909f0..e0340856 100644 --- a/Source/ISHRemote/Trisoft.ISHRemote/HelperClasses/AppDomainModuleAssemblyInitializer.cs +++ b/Source/ISHRemote/Trisoft.ISHRemote/HelperClasses/AppDomainModuleAssemblyInitializer.cs @@ -101,9 +101,10 @@ public void OnImport() assembly = Assembly.LoadFrom(filePath); _forcedLoadedAssemblies.GetOrAdd("System.ComponentModel.Annotations", assembly); - filePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"Microsoft.Extensions.Logging.dll"); - assembly = Assembly.LoadFrom(filePath); - _forcedLoadedAssemblies.GetOrAdd("Microsoft.Extensions.Logging", assembly); + // No longer required since version bump of 3 IdentityModel.OidcClient assemblies from 5.2.1->6.0.0, so ISHRemote v8.1 + //filePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"Microsoft.Extensions.Logging.dll"); + //assembly = Assembly.LoadFrom(filePath); + //_forcedLoadedAssemblies.GetOrAdd("Microsoft.Extensions.Logging", assembly); #else AssemblyLoadContext.Default.Resolving += ResolveAssembly_NetCore; diff --git a/Source/ISHRemote/Trisoft.ISHRemote/Trisoft.ISHRemote.csproj b/Source/ISHRemote/Trisoft.ISHRemote/Trisoft.ISHRemote.csproj index 626bbe0b..47b8fced 100644 --- a/Source/ISHRemote/Trisoft.ISHRemote/Trisoft.ISHRemote.csproj +++ b/Source/ISHRemote/Trisoft.ISHRemote/Trisoft.ISHRemote.csproj @@ -1,4 +1,4 @@ - + net48;net6.0 @@ -14,23 +14,23 @@ - - - + + + - - + + - - - - - - + + + + + +