Skip to content

chore: Add support policy #170

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jul 8, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ You can find our source on `GitHub`_.

`Security issue notifications`_

See `Support Policy`_ for details on the current support status of all major versions of this library.

***************
Getting Started
***************
Expand Down Expand Up @@ -193,3 +195,4 @@ of the one that the client would normally construct for you.
.. _decrypt_dynamodb_item: https://aws-dynamodb-encryption-python.readthedocs.io/en/latest/lib/encrypted/item.html#dynamodb_encryption_sdk.encrypted.item.decrypt_dynamodb_item
.. _transformation functions: https://aws-dynamodb-encryption-python.readthedocs.io/en/latest/lib/tools/transform.html
.. _Security issue notifications: https://github.com/aws/aws-dynamodb-encryption-python/blob/master/CONTRIBUTING.md#user-content-security-issue-notifications
.. _Support Policy: https://github.com/aws/aws-dynamodb-encryption-python/blob/master/SUPPORT_POLICY.rst
33 changes: 33 additions & 0 deletions SUPPORT_POLICY.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
Overview
========
This page describes the support policy for the AWS DynamoDB Encryption Client. We regularly provide the AWS DynamoDB Encryption Client 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.

We recommend users to stay up-to-date with DynamoDB Encryption Client 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.


Major Version Lifecycle
========================
The AWS DynamoDB Encryption Client follows the same major version lifecycle as the AWS SDK. For details on this lifecycle, see `AWS SDKs and Tools Maintenance Policy`_.

Version Support Matrix
======================
This table describes the current support status of each major version of the AWS DynamoDB Encryption Client for Python. It also shows the next status each major version will transition to, and the date at which that transition will happen.

.. list-table::
:widths: 30 50 50 50
:header-rows: 1

* - Major version
- Current status
- Next status
- Next status date
* - 1.x
- Maintenance
- End of Support
- 2022-07-08
* - 2.x
- Generally Available
-
-

.. _AWS SDKs and Tools Maintenance Policy: https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle
2 changes: 1 addition & 1 deletion doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

def read(*args):
"""Reads complete file contents."""
return io.open(os.path.join(HERE, *args), encoding="utf-8").read()
return io.open(os.path.join(HERE, *args), encoding="utf-8").read() # pylint: disable=consider-using-with


def get_release():
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

def read(*args):
"""Reads complete file contents."""
return io.open(os.path.join(HERE, *args), encoding="utf-8").read()
return io.open(os.path.join(HERE, *args), encoding="utf-8").read() # pylint: disable=consider-using-with


def get_version():
Expand Down
3 changes: 2 additions & 1 deletion src/dynamodb_encryption_sdk/delegated_keys/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,8 @@ class DelegatedKey(object):
a :class:`NotImplementedError` detailing this.
"""

@abc.abstractproperty
@property
@abc.abstractmethod
def algorithm(self):
# type: () -> Text
"""Text description of algorithm used by this delegated key."""
Expand Down
15 changes: 10 additions & 5 deletions src/dynamodb_encryption_sdk/materials/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@
class CryptographicMaterials(object):
"""Base class for all cryptographic materials."""

@abc.abstractproperty
@property
@abc.abstractmethod
def material_description(self):
# type: () -> Dict[Text, Text]
"""Material description to use with these cryptographic materials.
Expand All @@ -42,7 +43,8 @@ def material_description(self):
:rtype: dict
"""

@abc.abstractproperty
@property
@abc.abstractmethod
def encryption_key(self):
# type: () -> DelegatedKey
"""Delegated key used for encrypting attributes.
Expand All @@ -51,7 +53,8 @@ def encryption_key(self):
:rtype: DelegatedKey
"""

@abc.abstractproperty
@property
@abc.abstractmethod
def decryption_key(self):
# type: () -> DelegatedKey
"""Delegated key used for decrypting attributes.
Expand All @@ -60,7 +63,8 @@ def decryption_key(self):
:rtype: DelegatedKey
"""

@abc.abstractproperty
@property
@abc.abstractmethod
def signing_key(self):
# type: () -> DelegatedKey
"""Delegated key used for calculating digital signatures.
Expand All @@ -69,7 +73,8 @@ def signing_key(self):
:rtype: DelegatedKey
"""

@abc.abstractproperty
@property
@abc.abstractmethod
def verification_key(self):
# type: () -> DelegatedKey
"""Delegated key used for verifying digital signatures.
Expand Down