Skip to content

Commit d961a7f

Browse files
Azure.Communication.Email 1.1.0 - 2025-09-01 (Azure#52780)
* update email project * update to 1.2.0 * update api * update inline image test to use a real image to verify during live tests * update tests * updates from review * fix build errors * set version back to 1.1.0 * update
1 parent eea7739 commit d961a7f

File tree

9 files changed

+70
-7
lines changed

9 files changed

+70
-7
lines changed

sdk/communication/Azure.Communication.Email/CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Release History
22

3-
## 1.1.0 (2025-09-01)
3+
## 1.1.0 (2025-10-01)
44

55
### Features Added
66

sdk/communication/Azure.Communication.Email/api/Azure.Communication.Email.net8.0.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,14 @@ public EmailClient(System.Uri endpoint, Azure.Core.TokenCredential credential, A
3636
}
3737
public partial class EmailClientOptions : Azure.Core.ClientOptions
3838
{
39-
public EmailClientOptions(Azure.Communication.Email.EmailClientOptions.ServiceVersion version = Azure.Communication.Email.EmailClientOptions.ServiceVersion.V2024_07_01_Preview) { }
39+
public EmailClientOptions(Azure.Communication.Email.EmailClientOptions.ServiceVersion version = Azure.Communication.Email.EmailClientOptions.ServiceVersion.V2025_09_01) { }
4040
public enum ServiceVersion
4141
{
4242
V2021_10_01_Preview = 1,
4343
V2023_01_15_Preview = 2,
4444
V2023_03_31 = 3,
4545
V2024_07_01_Preview = 4,
46+
V2025_09_01 = 5,
4647
}
4748
}
4849
public partial class EmailContent
@@ -117,6 +118,14 @@ internal EmailSendResult() { }
117118
public static implicit operator Azure.Communication.Email.EmailSendStatus (string value) { throw null; }
118119
public static bool operator !=(Azure.Communication.Email.EmailSendStatus left, Azure.Communication.Email.EmailSendStatus right) { throw null; }
119120
public override string ToString() { throw null; }
121+
public static partial class Values
122+
{
123+
public const string Canceled = "Canceled";
124+
public const string Failed = "Failed";
125+
public const string NotStarted = "NotStarted";
126+
public const string Running = "Running";
127+
public const string Succeeded = "Succeeded";
128+
}
120129
}
121130
}
122131
namespace Microsoft.Extensions.Azure

sdk/communication/Azure.Communication.Email/api/Azure.Communication.Email.netstandard2.0.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,14 @@ public EmailClient(System.Uri endpoint, Azure.Core.TokenCredential credential, A
3636
}
3737
public partial class EmailClientOptions : Azure.Core.ClientOptions
3838
{
39-
public EmailClientOptions(Azure.Communication.Email.EmailClientOptions.ServiceVersion version = Azure.Communication.Email.EmailClientOptions.ServiceVersion.V2024_07_01_Preview) { }
39+
public EmailClientOptions(Azure.Communication.Email.EmailClientOptions.ServiceVersion version = Azure.Communication.Email.EmailClientOptions.ServiceVersion.V2025_09_01) { }
4040
public enum ServiceVersion
4141
{
4242
V2021_10_01_Preview = 1,
4343
V2023_01_15_Preview = 2,
4444
V2023_03_31 = 3,
4545
V2024_07_01_Preview = 4,
46+
V2025_09_01 = 5,
4647
}
4748
}
4849
public partial class EmailContent
@@ -117,6 +118,14 @@ internal EmailSendResult() { }
117118
public static implicit operator Azure.Communication.Email.EmailSendStatus (string value) { throw null; }
118119
public static bool operator !=(Azure.Communication.Email.EmailSendStatus left, Azure.Communication.Email.EmailSendStatus right) { throw null; }
119120
public override string ToString() { throw null; }
121+
public static partial class Values
122+
{
123+
public const string Canceled = "Canceled";
124+
public const string Failed = "Failed";
125+
public const string NotStarted = "NotStarted";
126+
public const string Running = "Running";
127+
public const string Succeeded = "Succeeded";
128+
}
120129
}
121130
}
122131
namespace Microsoft.Extensions.Azure

sdk/communication/Azure.Communication.Email/assets.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
"AssetsRepo": "Azure/azure-sdk-assets",
33
"AssetsRepoPrefixPath": "net",
44
"TagPrefix": "net/communication/Azure.Communication.Email",
5-
"Tag": "net/communication/Azure.Communication.Email_00a51dd0e7"
5+
"Tag": "net/communication/Azure.Communication.Email_161e7ea9e0"
66
}

sdk/communication/Azure.Communication.Email/src/EmailClientOptions.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public class EmailClientOptions : ClientOptions
1717
/// The latest version of the Email service.
1818
/// </summary>
1919
///
20-
private const ServiceVersion LatestVersion = ServiceVersion.V2024_07_01_Preview;
20+
private const ServiceVersion LatestVersion = ServiceVersion.V2025_09_01;
2121

2222
internal string ApiVersion { get; }
2323

@@ -30,6 +30,7 @@ public EmailClientOptions(ServiceVersion version = LatestVersion)
3030
{
3131
ServiceVersion.V2023_03_31 => "2023-03-31",
3232
ServiceVersion.V2024_07_01_Preview => "2024-07-01-preview",
33+
ServiceVersion.V2025_09_01 => "2025-09-01",
3334
_ => throw new ArgumentOutOfRangeException(nameof(version)),
3435
};
3536
}
@@ -56,6 +57,10 @@ public enum ServiceVersion
5657
/// The Inline Attachments preview version of the Email service.
5758
/// </summary>
5859
V2024_07_01_Preview = 4,
60+
/// <summary>
61+
/// The Inline Attachments GA version of the Email service.
62+
/// </summary>
63+
V2025_09_01 = 5,
5964
#pragma warning restore CA1707 // Identifiers should not contain underscores
6065
}
6166
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
// Copyright (c) Microsoft Corporation. All rights reserved.
2+
// Licensed under the MIT License.
3+
4+
#nullable disable
5+
6+
using System;
7+
using Azure.Core;
8+
9+
namespace Azure.Communication.Email
10+
{
11+
[CodeGenModel("EmailSendStatus")]
12+
[CodeGenSuppress("EmailSendStatus", typeof(string), typeof(string), typeof(string))]
13+
public partial struct EmailSendStatus : IEquatable<EmailSendStatus>
14+
{
15+
/// <summary>
16+
/// The values of all declared <see cref="EmailSendStatus"/> properties as string constants.
17+
/// </summary>
18+
public static class Values
19+
{
20+
/// <summary> Canceled </summary>
21+
public const string Canceled = "Canceled";
22+
/// <summary> Failed </summary>
23+
public const string Failed = "Failed";
24+
/// <summary> NotStarted </summary>
25+
public const string NotStarted = "NotStarted";
26+
/// <summary> Running </summary>
27+
public const string Running = "Running";
28+
/// <summary> Succeeded </summary>
29+
public const string Succeeded = "Succeeded";
30+
}
31+
}
32+
}

sdk/communication/Azure.Communication.Email/src/autorest.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,5 @@ directive:
1616
$["x-ms-client-name"] = "content";
1717
```
1818
19+
20+

sdk/communication/Azure.Communication.Email/tests/EmailClientLiveTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ public async Task SendEmailAndWaitForStatusWithAutomaticPollingAsync(
8383
Console.WriteLine($"Email send status = {statusMonitor.Status}");
8484
}
8585

86-
[Test]
86+
[RecordedTest]
8787
[SyncOnly]
8888
[TestCaseSource(nameof(SetRecipientAddressState))]
8989
public void SendEmailAndWaitForStatusWithAutomaticPolling(

sdk/communication/Azure.Communication.Email/tests/Samples/Sample1_EmailClientAsync.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -316,7 +316,13 @@ public async Task SendEmailWithInlineAttachmentAsync()
316316
#else
317317
string attachmentName = "InlineImage.jpg";
318318
string contentType = MediaTypeNames.Image.Jpeg;
319-
var content = new BinaryData("This is image file content.");
319+
320+
string base64String = "/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAAFAAUDAREAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAb/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFQEBAQAAAAAAAAAAAAAAAAAAAAb/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCfAAf/2Q==";
321+
322+
// Convert Base64 to byte array
323+
byte[] imageBytes = Convert.FromBase64String(base64String);
324+
325+
var content = new BinaryData(imageBytes);
320326
var contentId = "myInlineAttachmentContentId";
321327
#endif
322328
var emailAttachment = new EmailAttachment(attachmentName, contentType, content);

0 commit comments

Comments
 (0)