Skip to content

Commit 8bb7b28

Browse files
authored
chore: Mark 1.x as End-of-Support (#1025)
1 parent 803c64f commit 8bb7b28

File tree

2 files changed

+44
-0
lines changed

2 files changed

+44
-0
lines changed

SUPPORT_POLICY.rst

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
Overview
2+
========
3+
This page describes the support policy for the AWS Encryption SDK. We regularly provide the AWS Encryption SDK with updates that may contain support for new or updated APIs, new features, enhancements, bug fixes, security patches, or documentation updates. Updates may also address changes with dependencies, language runtimes, and operating systems.
4+
5+
We recommend users to stay up-to-date with Encryption SDK releases to keep up with the latest features, security updates, and underlying dependencies. Continued use of an unsupported SDK version is not recommended and is done at the user’s discretion
6+
7+
8+
Major Version Lifecycle
9+
========================
10+
The AWS Encryption SDK follows the same major version lifecycle as the AWS SDK. For details on this lifecycle, see `AWS SDKs and Tools Maintenance Policy`_.
11+
12+
Version Support Matrix
13+
======================
14+
This table describes the current support status of each major version of the AWS Encryption SDK for Java. It also shows the next status each major version will transition to, and the date at which that transition will happen.
15+
16+
.. list-table::
17+
:widths: 30 50 50 50
18+
:header-rows: 1
19+
20+
* - Major version
21+
- Current status
22+
- Next status
23+
- Next status date
24+
* - 1.x
25+
- End of Support
26+
-
27+
-
28+
* - 2.x
29+
- Generally Available
30+
-
31+
-
32+
33+
.. _AWS SDKs and Tools Maintenance Policy: https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle

src/main/java/com/amazonaws/encryptionsdk/AwsCrypto.java

+11
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import java.nio.charset.StandardCharsets;
1515
import java.util.Collections;
1616
import java.util.Map;
17+
import java.util.logging.Logger;
1718

1819
/**
1920
* Provides the primary entry-point to the AWS Encryption SDK. All encryption and decryption
@@ -65,6 +66,7 @@
6566
*/
6667
@SuppressWarnings("WeakerAccess") // this is a public API
6768
public class AwsCrypto {
69+
private static final Logger LOGGER = Logger.getLogger(AwsCrypto.class.getName());
6870
private static final Map<String, String> EMPTY_MAP = Collections.emptyMap();
6971

7072
// These are volatile because we allow unsynchronized writes via our setters,
@@ -83,6 +85,13 @@ public class AwsCrypto {
8385
*/
8486
private final int maxEncryptedDataKeys_;
8587

88+
private static void warn_end_of_support() {
89+
LOGGER.warning(
90+
"This major version (1.x) of the AWS Encryption SDK for Java has reached End-of-Support.\n"
91+
+ "It will no longer receive security updates or bug fixes.\n"
92+
+ "Consider updating to the latest version of the AWS Encryption SDK.");
93+
}
94+
8695
/**
8796
* @deprecated This constructor implicitly configures the Aws Crypto client with a commitment
8897
* policy that allows reading encrypted messages without commitment values. Use {@link
@@ -91,11 +100,13 @@ public class AwsCrypto {
91100
*/
92101
@Deprecated
93102
public AwsCrypto() {
103+
warn_end_of_support();
94104
commitmentPolicy_ = CommitmentPolicy.ForbidEncryptAllowDecrypt;
95105
maxEncryptedDataKeys_ = CiphertextHeaders.NO_MAX_ENCRYPTED_DATA_KEYS;
96106
}
97107

98108
private AwsCrypto(Builder builder) {
109+
warn_end_of_support();
99110
if (builder.commitmentPolicy_ == null) {
100111
throw new IllegalArgumentException("Must specify a commitment policy on the client.");
101112
}

0 commit comments

Comments
 (0)