From fdd3a04358a31dbce820fbd72176dd5b172b0137 Mon Sep 17 00:00:00 2001 From: David De Sloovere Date: Sun, 20 Sep 2026 12:17:27 +0200 Subject: [PATCH 1/2] feat!: migrate to jcamp.FluentEmail and update target framework to net10.0 --- README.md | 10 +- sample/SendMailTestApp/packages.lock.json | 12 +- .../FluentEmail.Graph.csproj | 4 +- src/FluentEmail.Graph/packages.lock.json | 258 ++---------------- .../packages.lock.json | 12 +- 5 files changed, 49 insertions(+), 247 deletions(-) diff --git a/README.md b/README.md index b947668..f33db22 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # FluentEmail.Graph -Sender for [FluentEmail](https://github.com/lukencode/FluentEmail) that +> ⚠️ v5 is now using [jcamp-code/FluentEmail](https://github.com/jcamp-code/FluentEmail) instead of the abandoned [lukencode/FluentEmail](https://github.com/lukencode/FluentEmail) + +Sender for [FluentEmail](https://github.com/jcamp-code/FluentEmail) that uses [Microsoft Graph API](https://docs.microsoft.com/en-us/graph/api/resources/mail-api-overview?view=graph-rest-1.0). ![Nuget](https://img.shields.io/nuget/v/FluentEmail.Graph) @@ -33,6 +35,12 @@ Example config in `appsettings.json` } ``` +## v5 + +Changed from using the abandoned [lukencode/FluentEmail](https://github.com/lukencode/FluentEmail) to better maintained [jcamp-code/FluentEmail](https://github.com/jcamp-code/FluentEmail). + +Moved from .NET Standard 2.0 to .NET 10.0 (jcamp-code/FluentEmail is .NET 8.0) + ## v2 The original version only used diff --git a/sample/SendMailTestApp/packages.lock.json b/sample/SendMailTestApp/packages.lock.json index 19b3e63..616d2f7 100644 --- a/sample/SendMailTestApp/packages.lock.json +++ b/sample/SendMailTestApp/packages.lock.json @@ -54,12 +54,12 @@ "Azure.Core": "1.53.0" } }, - "FluentEmail.Core": { + "jcamp.FluentEmail.Core": { "type": "Transitive", - "resolved": "3.0.2", - "contentHash": "uQFFbJgMhhCFUti7pfMi429fMNi7fLGMj+7uDtD7POlQzLxlhXJ6tmt4Y1SI51sZsA36GO5b7+o29eY/dKiICQ==", + "resolved": "4.0.0", + "contentHash": "iwRyGXCRCTtlPbJnq29lY56y3XqcHz4Z01yOlAXIQblOtkS/MYOCt6jp7RuJ8HyO60u1NFZcEQA9SjAJKVGuPw==", "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0" + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" } }, "Microsoft.Bcl.AsyncInterfaces": { @@ -527,8 +527,8 @@ "type": "Project", "dependencies": { "Azure.Identity": "[1.21.0, )", - "FluentEmail.Core": "[3.0.2, )", - "Microsoft.Graph": "[6.6.0, )" + "Microsoft.Graph": "[6.6.0, )", + "jcamp.FluentEmail.Core": "[4.0.0, )" } } } diff --git a/src/FluentEmail.Graph/FluentEmail.Graph.csproj b/src/FluentEmail.Graph/FluentEmail.Graph.csproj index 580c893..a79593c 100644 --- a/src/FluentEmail.Graph/FluentEmail.Graph.csproj +++ b/src/FluentEmail.Graph/FluentEmail.Graph.csproj @@ -1,7 +1,7 @@ - netstandard2.0 + net10.0 David De Sloovere, Matt Goldman ESC ESC @@ -48,7 +48,7 @@ v2.1 Added support for Inline images all runtime; build; native; contentfiles; analyzers; buildtransitive - + all diff --git a/src/FluentEmail.Graph/packages.lock.json b/src/FluentEmail.Graph/packages.lock.json index 303601f..a6d8d0c 100644 --- a/src/FluentEmail.Graph/packages.lock.json +++ b/src/FluentEmail.Graph/packages.lock.json @@ -1,7 +1,7 @@ { "version": 1, "dependencies": { - ".NETStandard,Version=v2.0": { + "net10.0": { "Azure.Identity": { "type": "Direct", "requested": "[1.21.0, )", @@ -17,13 +17,13 @@ "resolved": "2.0.5", "contentHash": "8LrlvI1KpjjJ4VGSqZ16yoOCKlQnYS+Y8rYNifNrscmVh5anJcF9E4e0NiDP30BHBMUbkoJ5KdcxoRWM7Pz9Aw==" }, - "FluentEmail.Core": { + "jcamp.FluentEmail.Core": { "type": "Direct", - "requested": "[3.0.2, )", - "resolved": "3.0.2", - "contentHash": "uQFFbJgMhhCFUti7pfMi429fMNi7fLGMj+7uDtD7POlQzLxlhXJ6tmt4Y1SI51sZsA36GO5b7+o29eY/dKiICQ==", + "requested": "[4.0.0, )", + "resolved": "4.0.0", + "contentHash": "iwRyGXCRCTtlPbJnq29lY56y3XqcHz4Z01yOlAXIQblOtkS/MYOCt6jp7RuJ8HyO60u1NFZcEQA9SjAJKVGuPw==", "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0" + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" } }, "JetBrains.Annotations": { @@ -47,15 +47,6 @@ "resolved": "8.0.0", "contentHash": "AJy/KVjXgUbgjf6HiI8wAk4DSSq0SCmvXQF8aU6IB+pnIQq+YJvofvMczug2hqO8yEvnQY557ryew66KPpyCsA==" }, - "NETStandard.Library": { - "type": "Direct", - "requested": "[2.0.3, )", - "resolved": "2.0.3", - "contentHash": "st47PosZSHrjECdjeIzZQbzivYBJFv6P2nv4cj2ypdI204DO+vZ7l5raGMiX4eXMJ53RfOIg+/s4DHVZ54Nu2A==", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0" - } - }, "StyleCop.Analyzers": { "type": "Direct", "requested": "[1.1.118, )", @@ -73,35 +64,13 @@ "Microsoft.Identity.Client": "4.83.1", "Microsoft.Identity.Client.Extensions.Msal": "4.83.1", "System.ClientModel": "1.10.0", - "System.Diagnostics.DiagnosticSource": "10.0.3", - "System.Memory": "4.6.3", - "System.Memory.Data": "10.0.3", - "System.Numerics.Vectors": "4.6.1", - "System.Text.Encodings.Web": "10.0.3", - "System.Text.Json": "10.0.3", - "System.Threading.Tasks.Extensions": "4.6.3" + "System.Memory.Data": "10.0.3" } }, "Microsoft.Bcl.AsyncInterfaces": { "type": "Transitive", "resolved": "10.0.3", - "contentHash": "TV62UsrJZPX6gbt3c4WrtXh7bmaDIcMqf9uft1cc4L6gJXOU07hDGEh+bFQh/L2Az0R1WVOkiT66lFqS6G2NmA==", - "dependencies": { - "System.Threading.Tasks.Extensions": "4.6.3" - } - }, - "Microsoft.Bcl.TimeProvider": { - "type": "Transitive", - "resolved": "8.0.1", - "contentHash": "C7kWHJnMRY7EvJev2S8+yJHZ1y7A4ZlLbA4NE+O23BDIAN5mHeqND1m+SKv1ChRS5YlCDW7yAMUe7lttRsJaAA==", - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "8.0.0" - } - }, - "Microsoft.CSharp": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "kaj6Wb4qoMuH3HySFJhxwQfe8R/sJsNJnANrvv8WdFPMoNbKY5htfNscv+LHCu5ipz+49m2e+WQXpLXr9XYemQ==" + "contentHash": "TV62UsrJZPX6gbt3c4WrtXh7bmaDIcMqf9uft1cc4L6gJXOU07hDGEh+bFQh/L2Az0R1WVOkiT66lFqS6G2NmA==" }, "Microsoft.Extensions.Configuration.Abstractions": { "type": "Transitive", @@ -114,11 +83,7 @@ "Microsoft.Extensions.DependencyInjection.Abstractions": { "type": "Transitive", "resolved": "10.0.3", - "contentHash": "bwGMrRcAMWx2s/RDgja97p27rxSz2pEQW0+rX5cWAUWVETVJ/eyxGfjAl8vuG5a+lckWmPIE+vcuaZNVB5YDdw==", - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.3", - "System.Threading.Tasks.Extensions": "4.6.3" - } + "contentHash": "bwGMrRcAMWx2s/RDgja97p27rxSz2pEQW0+rX5cWAUWVETVJ/eyxGfjAl8vuG5a+lckWmPIE+vcuaZNVB5YDdw==" }, "Microsoft.Extensions.Diagnostics.Abstractions": { "type": "Transitive", @@ -126,10 +91,7 @@ "contentHash": "mQiTzAj7PIJ2A9YXR5QhgulS1fTWhmQc3ckd1Mrf3hKW07d03fBDqx8vVaFw+cRTebDOeB6pNqdWdnRxsi1hBA==", "dependencies": { "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3", - "Microsoft.Extensions.Options": "10.0.3", - "System.Buffers": "4.6.1", - "System.Diagnostics.DiagnosticSource": "10.0.3", - "System.Memory": "4.6.3" + "Microsoft.Extensions.Options": "10.0.3" } }, "Microsoft.Extensions.FileProviders.Abstractions": { @@ -145,13 +107,11 @@ "resolved": "10.0.3", "contentHash": "GdMpC10Jf6poxSvUJ4lgYpJ5F/kJeaAoJmrPufjBoPYyCTKKY5Dyl0rZA+LBNvFqTq1cZa/lhlptlUhNvU6xrg==", "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.3", "Microsoft.Extensions.Configuration.Abstractions": "10.0.3", "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3", "Microsoft.Extensions.Diagnostics.Abstractions": "10.0.3", "Microsoft.Extensions.FileProviders.Abstractions": "10.0.3", - "Microsoft.Extensions.Logging.Abstractions": "10.0.3", - "System.Threading.Tasks.Extensions": "4.6.3" + "Microsoft.Extensions.Logging.Abstractions": "10.0.3" } }, "Microsoft.Extensions.Logging.Abstractions": { @@ -159,10 +119,7 @@ "resolved": "10.0.3", "contentHash": "lxl0WLk7ROgBFAsjcOYjQ8/DVK+VMszxGBzUhgtQmAsTNldLL5pk9NG/cWTsXHq0lUhUEAtZkEE7jOGOA8bGKQ==", "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3", - "System.Buffers": "4.6.1", - "System.Diagnostics.DiagnosticSource": "10.0.3", - "System.Memory": "4.6.3" + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3" } }, "Microsoft.Extensions.Options": { @@ -171,18 +128,13 @@ "contentHash": "hU6WzGTPvPoLA2ng1ILvWQb3g0qORdlHNsxI8IcPLumJb3suimYUl+bbDzdo1V4KFsvVhnMWzysHpKbZaoDQPQ==", "dependencies": { "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.3", - "Microsoft.Extensions.Primitives": "10.0.3", - "System.ComponentModel.Annotations": "5.0.0" + "Microsoft.Extensions.Primitives": "10.0.3" } }, "Microsoft.Extensions.Primitives": { "type": "Transitive", "resolved": "10.0.3", - "contentHash": "GEcpTwo7sUoLGGNTqV1FZEuL+tTD9m81NX/mh099dqGNna07/UGZShKQNZRw4hv6nlliSUwYQgSYc7OR99Jufg==", - "dependencies": { - "System.Memory": "4.6.3", - "System.Runtime.CompilerServices.Unsafe": "6.1.2" - } + "contentHash": "GEcpTwo7sUoLGGNTqV1FZEuL+tTD9m81NX/mh099dqGNna07/UGZShKQNZRw4hv6nlliSUwYQgSYc7OR99Jufg==" }, "Microsoft.Graph.Core": { "type": "Transitive", @@ -205,11 +157,7 @@ "resolved": "4.83.1", "contentHash": "jOLIrZ3cynoqHLLO1cXplFFabrhrMEYs/EuKHvmCyrOm1axqiVFT6nCSnHxk7w5+d2BeQfCdM12Yf/0X7OeS1g==", "dependencies": { - "Microsoft.IdentityModel.Abstractions": "8.14.0", - "System.Diagnostics.DiagnosticSource": "6.0.1", - "System.Formats.Asn1": "8.0.1", - "System.Security.Cryptography.Cng": "5.0.0", - "System.ValueTuple": "4.5.0" + "Microsoft.IdentityModel.Abstractions": "8.14.0" } }, "Microsoft.Identity.Client.Extensions.Msal": { @@ -218,7 +166,6 @@ "contentHash": "I3k4J4Hj4KbLEFanjeUzzDOVecukETaTgEkJ7h2pP/Yazs6SLp6TVUTo/Eo+ptPXMwvc+iX7rBFtMSUrA7R+Mg==", "dependencies": { "Microsoft.Identity.Client": "4.83.1", - "System.IO.FileSystem.AccessControl": "5.0.0", "System.Security.Cryptography.ProtectedData": "4.5.0" } }, @@ -232,7 +179,6 @@ "resolved": "8.18.0", "contentHash": "ZUMJt3r1zOi67AVSfnh3u9hg9KCq06roOIX5gs7FqsucSZ/VTsI89DI9h2gHyU0xOtj/qVZV2ugWS6JlLMTwHQ==", "dependencies": { - "Microsoft.Bcl.TimeProvider": "8.0.1", "Microsoft.IdentityModel.Tokens": "8.18.0" } }, @@ -258,8 +204,7 @@ "contentHash": "suO9qM+gTjIMmHiEwZFitx1Z0BROQwTT3BYJJCDM/+djBAolhXHVpZzTzIFAxkjgakJRNCRlZi9ecZ2g68Pn5w==", "dependencies": { "Microsoft.IdentityModel.Protocols": "8.18.0", - "System.IdentityModel.Tokens.Jwt": "8.18.0", - "System.Text.Json": "8.0.5" + "System.IdentityModel.Tokens.Jwt": "8.18.0" } }, "Microsoft.IdentityModel.Tokens": { @@ -267,13 +212,8 @@ "resolved": "8.18.0", "contentHash": "c6ksXXFj5oPPsl8pfsui5zv8Gs7uxrGetXCTc1p7k7Nue/C8iBMtAVgtRrH7Esqe596QWD7KS3exKYY1FJG2iw==", "dependencies": { - "Microsoft.Bcl.TimeProvider": "8.0.1", - "Microsoft.CSharp": "4.5.0", - "Microsoft.Extensions.Logging.Abstractions": "2.1.0", - "Microsoft.IdentityModel.Logging": "8.18.0", - "System.Diagnostics.DiagnosticSource": "6.0.2", - "System.Security.Cryptography.Cng": "4.5.0", - "System.Text.Json": "8.0.5" + "Microsoft.Extensions.Logging.Abstractions": "8.0.0", + "Microsoft.IdentityModel.Logging": "8.18.0" } }, "Microsoft.IdentityModel.Validators": { @@ -290,18 +230,14 @@ "Microsoft.IO.RecyclableMemoryStream": { "type": "Transitive", "resolved": "3.0.1", - "contentHash": "s/s20YTVY9r9TPfTrN5g8zPF1YhwxyqO6PxUkrYTGI2B+OGPe9AdajWZrLhFqXIvqIW23fnUE4+ztrUWNU1+9g==", - "dependencies": { - "System.Memory": "4.5.5" - } + "contentHash": "s/s20YTVY9r9TPfTrN5g8zPF1YhwxyqO6PxUkrYTGI2B+OGPe9AdajWZrLhFqXIvqIW23fnUE4+ztrUWNU1+9g==" }, "Microsoft.Kiota.Abstractions": { "type": "Transitive", "resolved": "2.0.0", "contentHash": "cb0KA6QGvqMR1xNIjmErb5CiEbQJ/6odKcuPn2GTWD+aRMuldKDqRqRWMDT7MOBcUk9waJyJsgDG+ItQA01JmA==", "dependencies": { - "Std.UriTemplate": "2.0.8", - "System.Diagnostics.DiagnosticSource": "8.0.1" + "Std.UriTemplate": "2.0.8" } }, "Microsoft.Kiota.Authentication.Azure": { @@ -310,8 +246,7 @@ "contentHash": "O890EE/4mIwfZbAeayZ0dXMSJVZWwUDcvOeH2GEmUbEQlSn+w37OHhuPClhIN4UO7EcqNC5N9ynyQWhOF+FWCg==", "dependencies": { "Azure.Core": "1.50.0", - "Microsoft.Kiota.Abstractions": "2.0.0", - "System.Diagnostics.DiagnosticSource": "8.0.1" + "Microsoft.Kiota.Abstractions": "2.0.0" } }, "Microsoft.Kiota.Http.HttpClientLibrary": { @@ -320,9 +255,7 @@ "contentHash": "oZ3ZR84InWEST6GyO9EBZMHweeprzlMiVsGy5dt9ec8Py1d6fgs4Yyyv0LJ56WoPc3Og5mM84pz3qD4hpiCT9w==", "dependencies": { "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0", - "Microsoft.Kiota.Abstractions": "2.0.0", - "System.Diagnostics.DiagnosticSource": "8.0.1", - "System.Text.Json": "8.0.0" + "Microsoft.Kiota.Abstractions": "2.0.0" } }, "Microsoft.Kiota.Serialization.Form": { @@ -340,8 +273,7 @@ "contentHash": "0QB6RWSA3u7kQEDyaY3a3dVA98Fk2UwuYpusvX2aXmkQLPFijW4XKujQazHMoalx26fmSg6RF85ZJBqGzmgucA==", "dependencies": { "Microsoft.IO.RecyclableMemoryStream": "3.0.1", - "Microsoft.Kiota.Abstractions": "2.0.0", - "System.Text.Json": "8.0.0" + "Microsoft.Kiota.Abstractions": "2.0.0" } }, "Microsoft.Kiota.Serialization.Multipart": { @@ -362,21 +294,11 @@ "Microsoft.Kiota.Abstractions": "2.0.0" } }, - "Microsoft.NETCore.Platforms": { - "type": "Transitive", - "resolved": "1.1.0", - "contentHash": "kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==" - }, "Std.UriTemplate": { "type": "Transitive", "resolved": "2.0.8", "contentHash": "IAR4gJlLVD4r/FsU/rDb1+9sbB3/tCFVZz5IzlbM2yHoiUisBi5Ek/KXRUF7RcqNARka79EoaOz9INnXvQ/O6w==" }, - "System.Buffers": { - "type": "Transitive", - "resolved": "4.6.1", - "contentHash": "N8GXpmiLMtljq7gwvyS+1QvKT/W2J8sNAvx+HVg4NGmsG/H+2k/y9QI23auLJRterrzCiDH+IWAw4V/GPwsMlw==" - }, "System.ClientModel": { "type": "Transitive", "resolved": "1.10.0", @@ -385,32 +307,7 @@ "Microsoft.Extensions.Configuration.Abstractions": "10.0.3", "Microsoft.Extensions.Hosting.Abstractions": "10.0.3", "Microsoft.Extensions.Logging.Abstractions": "10.0.3", - "System.Diagnostics.DiagnosticSource": "10.0.3", - "System.Memory.Data": "10.0.3", - "System.Text.Json": "10.0.3" - } - }, - "System.ComponentModel.Annotations": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "dMkqfy2el8A8/I76n2Hi1oBFEbG1SfxD2l5nhwXV3XjlnOmwxJlQbYpJH4W51odnU9sARCSAgv7S3CyAFMkpYg==" - }, - "System.Diagnostics.DiagnosticSource": { - "type": "Transitive", - "resolved": "10.0.3", - "contentHash": "IuZXyF3K5X+mCsBKIQ87Cn/V4Nyb39vyCbzfH/AkoneSWNV/ExGQ/I0m4CEaVAeFh9fW6kp2NVObkmevd1Ys7A==", - "dependencies": { - "System.Memory": "4.6.3", - "System.Runtime.CompilerServices.Unsafe": "6.1.2" - } - }, - "System.Formats.Asn1": { - "type": "Transitive", - "resolved": "8.0.1", - "contentHash": "XqKba7Mm/koKSjKMfW82olQdmfbI5yqeoLV/tidRp7fbh5rmHAQ5raDI/7SU0swTzv+jgqtUGkzmFxuUg0it1A==", - "dependencies": { - "System.Buffers": "4.5.1", - "System.Memory": "4.5.5" + "System.Memory.Data": "10.0.3" } }, "System.IdentityModel.Tokens.Jwt": { @@ -422,118 +319,15 @@ "Microsoft.IdentityModel.Tokens": "8.18.0" } }, - "System.IO.FileSystem.AccessControl": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "SxHB3nuNrpptVk+vZ/F+7OHEpoHUIKKMl02bUmYHQr1r+glbZQxs7pRtsf4ENO29TVm2TH3AEeep2fJcy92oYw==", - "dependencies": { - "System.Buffers": "4.5.1", - "System.Memory": "4.5.4", - "System.Security.AccessControl": "5.0.0", - "System.Security.Principal.Windows": "5.0.0" - } - }, - "System.IO.Pipelines": { - "type": "Transitive", - "resolved": "10.0.3", - "contentHash": "WMxiA2jGdHnRBmoVK55YUq5VPaxW0Sg2frPtXV+urUMvpqHIga6lleV/YuryHIuGsAKVjQAjv6PrQ6IJpoLohQ==", - "dependencies": { - "System.Buffers": "4.6.1", - "System.Memory": "4.6.3", - "System.Threading.Tasks.Extensions": "4.6.3" - } - }, - "System.Memory": { - "type": "Transitive", - "resolved": "4.6.3", - "contentHash": "qdcDOgnFZY40+Q9876JUHnlHu7bosOHX8XISRoH94fwk6hgaeQGSgfZd8srWRZNt5bV9ZW2TljcegDNxsf+96A==", - "dependencies": { - "System.Buffers": "4.6.1", - "System.Numerics.Vectors": "4.6.1", - "System.Runtime.CompilerServices.Unsafe": "6.1.2" - } - }, "System.Memory.Data": { "type": "Transitive", "resolved": "10.0.3", - "contentHash": "MaGhRfGunmrj/nHjtsi9XkhlYJ/ERGWrbA+BiSKNtGnAjc9XlG5EhAvak6VRcX5LYzPF6pBO8nJ613dTgzabig==", - "dependencies": { - "System.Memory": "4.6.3", - "System.Text.Json": "10.0.3" - } - }, - "System.Numerics.Vectors": { - "type": "Transitive", - "resolved": "4.6.1", - "contentHash": "sQxefTnhagrhoq2ReR0D/6K0zJcr9Hrd6kikeXsA1I8kOCboTavcUC4r7TSfpKFeE163uMuxZcyfO1mGO3EN8Q==" - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Transitive", - "resolved": "6.1.2", - "contentHash": "2hBr6zdbIBTDE3EhK7NSVNdX58uTK6iHW/P/Axmm9sl1xoGSLqDvMtpecn226TNwHByFokYwJmt/aQQNlO5CRw==" - }, - "System.Security.AccessControl": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "dagJ1mHZO3Ani8GH0PHpPEe/oYO+rVdbQjvjJkBRNQkX4t0r1iaeGn8+/ybkSLEan3/slM0t59SVdHzuHf2jmw==", - "dependencies": { - "System.Security.Principal.Windows": "5.0.0" - } - }, - "System.Security.Cryptography.Cng": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "jIMXsKn94T9JY7PvPq/tMfqa6GAaHpElRDpmG+SuL+D3+sTw2M8VhnibKnN8Tq+4JqbPJ/f+BwtLeDMEnzAvRg==" + "contentHash": "MaGhRfGunmrj/nHjtsi9XkhlYJ/ERGWrbA+BiSKNtGnAjc9XlG5EhAvak6VRcX5LYzPF6pBO8nJ613dTgzabig==" }, "System.Security.Cryptography.ProtectedData": { "type": "Transitive", "resolved": "4.5.0", - "contentHash": "wLBKzFnDCxP12VL9ANydSYhk59fC4cvOr9ypYQLPnAj48NQIhqnjdD2yhP8yEKyBJEjERWS9DisKL7rX5eU25Q==", - "dependencies": { - "System.Memory": "4.5.0" - } - }, - "System.Security.Principal.Windows": { - "type": "Transitive", - "resolved": "5.0.0", - "contentHash": "t0MGLukB5WAVU9bO3MGzvlGnyJPgUlcwerXn1kzBRjwLKixT96XV0Uza41W49gVd8zEMFu9vQEFlv0IOrytICA==" - }, - "System.Text.Encodings.Web": { - "type": "Transitive", - "resolved": "10.0.3", - "contentHash": "l8QNBPp92bVzl9Kw8nNtm1uYRNNhUrdulZjM4a8YK/QGNa8z9utKsC0bDoPB+Vq8LOlbD3fIyGlabtz80jT7cw==", - "dependencies": { - "System.Buffers": "4.6.1", - "System.Memory": "4.6.3", - "System.Runtime.CompilerServices.Unsafe": "6.1.2" - } - }, - "System.Text.Json": { - "type": "Transitive", - "resolved": "10.0.3", - "contentHash": "NTUt9DL+maqbgrIYCAmeZUbX0NoXaueySyjW/bdOlFdSUDC1l51XnsbVEuj5tuad12vdq5Sviskp9uMVGgCNLw==", - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.3", - "System.Buffers": "4.6.1", - "System.IO.Pipelines": "10.0.3", - "System.Memory": "4.6.3", - "System.Runtime.CompilerServices.Unsafe": "6.1.2", - "System.Text.Encodings.Web": "10.0.3", - "System.Threading.Tasks.Extensions": "4.6.3" - } - }, - "System.Threading.Tasks.Extensions": { - "type": "Transitive", - "resolved": "4.6.3", - "contentHash": "7sCiwilJLYbTZELaKnc7RecBBXWXA+xMLQWZKWawBxYjp6DBlSE3v9/UcvKBvr1vv2tTOhipiogM8rRmxlhrVA==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "6.1.2" - } - }, - "System.ValueTuple": { - "type": "Transitive", - "resolved": "4.5.0", - "contentHash": "okurQJO6NRE/apDIP23ajJ0hpiNmJ+f0BwOlB/cSqTLQlw5upkf+5+96+iG2Jw40G1fCVCyPz/FhIABUjMR+RQ==" + "contentHash": "wLBKzFnDCxP12VL9ANydSYhk59fC4cvOr9ypYQLPnAj48NQIhqnjdD2yhP8yEKyBJEjERWS9DisKL7rX5eU25Q==" } } } diff --git a/tests/FluentEmail.Graph.Tests/packages.lock.json b/tests/FluentEmail.Graph.Tests/packages.lock.json index 2fa2ea0..c414531 100644 --- a/tests/FluentEmail.Graph.Tests/packages.lock.json +++ b/tests/FluentEmail.Graph.Tests/packages.lock.json @@ -57,12 +57,12 @@ "Azure.Core": "1.53.0" } }, - "FluentEmail.Core": { + "jcamp.FluentEmail.Core": { "type": "Transitive", - "resolved": "3.0.2", - "contentHash": "uQFFbJgMhhCFUti7pfMi429fMNi7fLGMj+7uDtD7POlQzLxlhXJ6tmt4Y1SI51sZsA36GO5b7+o29eY/dKiICQ==", + "resolved": "4.0.0", + "contentHash": "iwRyGXCRCTtlPbJnq29lY56y3XqcHz4Z01yOlAXIQblOtkS/MYOCt6jp7RuJ8HyO60u1NFZcEQA9SjAJKVGuPw==", "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0" + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" } }, "Microsoft.ApplicationInsights": { @@ -452,8 +452,8 @@ "type": "Project", "dependencies": { "Azure.Identity": "[1.21.0, )", - "FluentEmail.Core": "[3.0.2, )", - "Microsoft.Graph": "[6.6.0, )" + "Microsoft.Graph": "[6.6.0, )", + "jcamp.FluentEmail.Core": "[4.0.0, )" } } } From d0f22d07dea981a0ca0a29bd3685ebf06eb62827 Mon Sep 17 00:00:00 2001 From: David De Sloovere Date: Sun, 20 Sep 2026 12:27:51 +0200 Subject: [PATCH 2/2] chore: update project metadata and release notes for FluentEmail.Graph --- src/FluentEmail.Graph/FluentEmail.Graph.csproj | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/FluentEmail.Graph/FluentEmail.Graph.csproj b/src/FluentEmail.Graph/FluentEmail.Graph.csproj index a79593c..d815dd1 100644 --- a/src/FluentEmail.Graph/FluentEmail.Graph.csproj +++ b/src/FluentEmail.Graph/FluentEmail.Graph.csproj @@ -3,11 +3,11 @@ net10.0 David De Sloovere, Matt Goldman - ESC - ESC + Alistar + Alistar Sender for FluentEmail that uses Microsoft Graph API. Implements `FluentEmail.Core.Interfaces.ISender`. fluentemail sender isender graph - https://github.com/ESC-BV/FluentEmail.Graph + https://github.com/alistar-dev/FluentEmail.Graph icon.png bin\$(Configuration)\FluentEmail.Graph.xml true @@ -20,8 +20,9 @@ 0.0.1 MIT detailed - 4.0 - v4.0 Updated Microsoft.Graph to v6 + 5.0 + v5.0 Changed FluentEmail.Core and moved to .NET 10 +v4.0 Updated Microsoft.Graph to v6 v3.0 Updated all dependencies and upgraded test projects to .NET 10 v2.4 Updated Microsoft.Graph to v5 v2.2 Added support for Headers