diff --git a/CHANGELOG.rst b/CHANGELOG.rst index a732d400..b70fb561 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,10 @@ Changelog ********* +1.0.3 -- 2018-05-03 +=================== +* Finish fixing ``MANIFEST.in``. + 1.0.2 -- 2018-05-03 =================== * Fill out ``MANIFEST.in`` to correctly include necessary files in source build. diff --git a/MANIFEST.in b/MANIFEST.in index 0ae4b35c..a88526aa 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -4,4 +4,9 @@ include LICENSE include requirements.txt recursive-include doc * -recursive-include test *.py \ No newline at end of file +recursive-exclude doc .DS_Store *.pyc +prune doc/build +prune doc/lib/generated + +recursive-include test * +recursive-exclude test .DS_Store *.pyc \ No newline at end of file diff --git a/src/dynamodb_encryption_sdk/identifiers.py b/src/dynamodb_encryption_sdk/identifiers.py index 33192158..c49ec32a 100644 --- a/src/dynamodb_encryption_sdk/identifiers.py +++ b/src/dynamodb_encryption_sdk/identifiers.py @@ -14,7 +14,7 @@ from enum import Enum __all__ = ('LOGGER_NAME', 'CryptoAction', 'EncryptionKeyType', 'KeyEncodingType') -__version__ = '1.0.2' +__version__ = '1.0.3' LOGGER_NAME = 'dynamodb_encryption_sdk' USER_AGENT_SUFFIX = 'DynamodbEncryptionSdkPython/{}'.format(__version__) diff --git a/test/requirements.txt b/test/requirements.txt index 34d6a3b4..5515ac9e 100644 --- a/test/requirements.txt +++ b/test/requirements.txt @@ -1,6 +1,6 @@ hypothesis mock -git+https://github.com/spulec/moto.git +moto>=1.3.3 pytest>=3.3.1 pytest-cov pytest-mock diff --git a/test/source-build-check.sh b/test/source-build-check.sh new file mode 100755 index 00000000..91403af4 --- /dev/null +++ b/test/source-build-check.sh @@ -0,0 +1,27 @@ +#!/bin/bash +# Verify that tests can be successfully run from the source build. +# +#NOTE: Humans should not run this file directly. If you want to run this check, use the +# tox to run the "sourcebuildcheck" test environment. + +WORKINGDIR=$1 +DISTDIR=$2 + +echo "Locating the source build and copying it into the working directory." +DISTFILE=`ls $DISTDIR/dynamodb-encryption-sdk-*.tar.gz | tail -1` +cp $DISTFILE $WORKINGDIR +DISTFILE=`ls $WORKINGDIR/dynamodb-encryption-sdk-*.tar.gz | tail -1` + +echo "Extracting the source build." +cd $WORKINGDIR +tar xzvf $DISTFILE +rm $DISTFILE +EXTRACTEDDIR=`ls | tail -1` +cd $EXTRACTEDDIR + +echo "Installing requirements from extracted source build." +pip install -r test/requirements.txt +pip install -e . + +echo "Running tests from extracted source build." +pytest --cov dynamodb_encryption_sdk -m "local and not slow and not veryslow and not nope" diff --git a/tox.ini b/tox.ini index 1d754963..5e7099a1 100644 --- a/tox.ini +++ b/tox.ini @@ -1,6 +1,6 @@ [tox] envlist = - py{27,34,35,36}-{local,integ,examples}-fast, nocmk, + py{27,34,35,36}-{local,integ,examples}-fast, nocmk, sourcebuildcheck, bandit, doc8, readme, flake8, pylint, flake8-tests, pylint-tests, @@ -66,6 +66,17 @@ sitepackages = False deps = -rtest/requirements.txt commands = {[testenv:base-command]commands} -m "local and not slow and not veryslow and not nope" +# Verify that tests can be successfully run from the source build. +[testenv:sourcebuildcheck] +basepython = python3 +sitepackages = False +recreate = True +deps = + {[testenv:build]deps} +commands = + {[testenv:build]commands} + {toxinidir}/test/source-build-check.sh {envtmpdir} {toxinidir}/dist + # mypy [testenv:mypy-coverage] commands =