diff --git a/.github/workflows/copilot-setup-steps.yml b/.github/workflows/copilot-setup-steps.yml index 9070ba5c4..8d96b036c 100644 --- a/.github/workflows/copilot-setup-steps.yml +++ b/.github/workflows/copilot-setup-steps.yml @@ -17,3 +17,6 @@ jobs: uses: actions/setup-dotnet@v4 with: dotnet-version: "10.0.x" + + - name: Build, test, and pack + run: ./build.cmd Compile Test Pack diff --git a/.github/workflows/elsa-server.yml b/.github/workflows/elsa-server.yml index 1a486b0a0..30ecd65b5 100644 --- a/.github/workflows/elsa-server.yml +++ b/.github/workflows/elsa-server.yml @@ -29,7 +29,7 @@ jobs: with: # list of Docker images to use as base name for tags images: | - elsaworkflows/elsa-server-v3-6-preview + elsaworkflows/elsa-server-v3-7-0-preview flavor: | latest=true # generate Docker tags based on the following events/attributes diff --git a/.github/workflows/packages.yml b/.github/workflows/packages.yml index 02d18e5db..673cb5778 100644 --- a/.github/workflows/packages.yml +++ b/.github/workflows/packages.yml @@ -17,7 +17,7 @@ on: types: [prereleased, published] env: - base_version: '3.6.0' + base_version: '3.7.0' feedz_feed_source: 'https://f.feedz.io/elsa-workflows/elsa-3/nuget/index.json' nuget_feed_source: 'https://api.nuget.org/v3/index.json' diff --git a/README.md b/README.md index 575564ab5..590027250 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,8 @@ [![Discord](https://img.shields.io/discord/814605913783795763?label=discord&logo=discord)](https://discord.gg/hhChk5H472) [![Stack Overflow questions](https://img.shields.io/badge/stackoverflow-elsa_workflows-orange.svg)]( http://stackoverflow.com/questions/tagged/elsa-workflows ) [![Gurubase](https://img.shields.io/badge/Gurubase-Ask%20Elsa%20Guru-006BFF)](https://gurubase.io/g/elsa) +[![DeepWiki](https://img.shields.io/badge/DeepWiki-elsa--workflows%2Felsa--core-blue.svg?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAyCAYAAAAnWDnqAAAAAXNSR0IArs4c6QAAA05JREFUaEPtmUtyEzEQhtWTQyQLHNak2AB7ZnyXZMEjXMGeK/AIi+QuHrMnbChYY7MIh8g01fJoopFb0uhhEqqcbWTp06/uv1saEDv4O3n3dV60RfP947Mm9/SQc0ICFQgzfc4CYZoTPAswgSJCCUJUnAAoRHOAUOcATwbmVLWdGoH//PB8mnKqScAhsD0kYP3j/Yt5LPQe2KvcXmGvRHcDnpxfL2zOYJ1mFwrryWTz0advv1Ut4CJgf5uhDuDj5eUcAUoahrdY/56ebRWeraTjMt/00Sh3UDtjgHtQNHwcRGOC98BJEAEymycmYcWwOprTgcB6VZ5JK5TAJ+fXGLBm3FDAmn6oPPjR4rKCAoJCal2eAiQp2x0vxTPB3ALO2CRkwmDy5WohzBDwSEFKRwPbknEggCPB/imwrycgxX2NzoMCHhPkDwqYMr9tRcP5qNrMZHkVnOjRMWwLCcr8ohBVb1OMjxLwGCvjTikrsBOiA6fNyCrm8V1rP93iVPpwaE+gO0SsWmPiXB+jikdf6SizrT5qKasx5j8ABbHpFTx+vFXp9EnYQmLx02h1QTTrl6eDqxLnGjporxl3NL3agEvXdT0WmEost648sQOYAeJS9Q7bfUVoMGnjo4AZdUMQku50McDcMWcBPvr0SzbTAFDfvJqwLzgxwATnCgnp4wDl6Aa+Ax283gghmj+vj7feE2KBBRMW3FzOpLOADl0Isb5587h/U4gGvkt5v60Z1VLG8BhYjbzRwyQZemwAd6cCR5/XFWLYZRIMpX39AR0tjaGGiGzLVyhse5C9RKC6ai42ppWPKiBagOvaYk8lO7DajerabOZP46Lby5wKjw1HCRx7p9sVMOWGzb/vA1hwiWc6jm3MvQDTogQkiqIhJV0nBQBTU+3okKCFDy9WwferkHjtxib7t3xIUQtHxnIwtx4mpg26/HfwVNVDb4oI9RHmx5WGelRVlrtiw43zboCLaxv46AZeB3IlTkwouebTr1y2NjSpHz68WNFjHvupy3q8TFn3Hos2IAk4Ju5dCo8B3wP7VPr/FGaKiG+T+v+TQqIrOqMTL1VdWV1DdmcbO8KXBz6esmYWYKPwDL5b5FA1a0hwapHiom0r/cKaoqr+27/XcrS5UwSMbQAAAABJRU5ErkJggg==)](https://deepwiki.com/elsa-workflows/elsa-core) + ### [For Elsa 2, Click Here](https://github.com/elsa-workflows/elsa-core/tree/2.x) diff --git a/src/modules/Elsa.Http/ContentWriters/JsonContentFactory.cs b/src/modules/Elsa.Http/ContentWriters/JsonContentFactory.cs index 38d7fa6c8..72104de2c 100644 --- a/src/modules/Elsa.Http/ContentWriters/JsonContentFactory.cs +++ b/src/modules/Elsa.Http/ContentWriters/JsonContentFactory.cs @@ -13,6 +13,8 @@ public class JsonContentFactory : IHttpContentFactory /// public IEnumerable SupportedContentTypes => [MediaTypeNames.Application.Json, "text/json"]; + private static readonly UTF8Encoding _utf8Encoding = new UTF8Encoding(encoderShouldEmitUTF8Identifier: false); + /// [RequiresUnreferencedCode("The JsonSerializer type is not trim-compatible.")] public HttpContent CreateHttpContent(object content, string contentType) @@ -22,6 +24,6 @@ public class JsonContentFactory : IHttpContentFactory if (string.IsNullOrWhiteSpace(contentType)) contentType = MediaTypeNames.Application.Json; - return new RawStringContent(text, Encoding.UTF8, contentType); + return new RawStringContent(text, _utf8Encoding, contentType); } } \ No newline at end of file diff --git a/src/modules/Elsa.Scheduling/Services/LocalScheduler.cs b/src/modules/Elsa.Scheduling/Services/LocalScheduler.cs index e95a4a73c..a3cf9cb1f 100644 --- a/src/modules/Elsa.Scheduling/Services/LocalScheduler.cs +++ b/src/modules/Elsa.Scheduling/Services/LocalScheduler.cs @@ -1,5 +1,7 @@ using System.Collections.Concurrent; +using System.Collections.Generic; using Microsoft.Extensions.Logging; +using Elsa.Extensions; namespace Elsa.Scheduling.Services; @@ -71,6 +73,7 @@ public class LocalScheduler : IScheduler return ValueTask.CompletedTask; } + private void RegisterScheduledTask(string name, IScheduledTask scheduledTask, IEnumerable? keys = null) { _scheduledTasks.AddOrUpdate( @@ -88,6 +91,7 @@ public class LocalScheduler : IScheduler if (keys != null) _scheduledTaskKeys[scheduledTask] = keys.ToList(); } + private void RemoveScheduledTask(string name) {