Skip to content

Commit f480aba

Browse files
committed
fix(deps): move to python 3.6 as minimum supported level
This commit updates the minimum supported python version from 3.5 to 3.6 (python 3.5 has already passed its "end of service" date), and adds support for building/testing on python 3.9.
1 parent 7deac01 commit f480aba

File tree

6 files changed

+46
-71
lines changed

6 files changed

+46
-71
lines changed

.travis.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ language: python
22

33
matrix:
44
include:
5-
- python: 3.5
65
- python: 3.6
76
- python: 3.7
87
- python: 3.8
8+
- python: 3.9
99

1010
dist: xenial
1111

@@ -36,7 +36,7 @@ deploy:
3636
script: npx semantic-release
3737
skip_cleanup: true
3838
on:
39-
python: '3.5'
39+
python: '3.6'
4040
branch: master
4141

4242
- provider: pypi
@@ -45,5 +45,5 @@ deploy:
4545
repository: https://upload.pypi.org/legacy
4646
skip_cleanup: true
4747
on:
48-
python: '3.5'
48+
python: '3.6'
4949
tags: true

Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ setup: deps dev_deps install_project
77
all: setup test-unit lint
88

99
deps:
10+
python -m pip install --upgrade pip
1011
python -m pip install -r requirements.txt
1112

1213
dev_deps:

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ Service Name | Imported Class Name
7373

7474
* An [IBM Cloud][ibm-cloud-onboarding] account.
7575
* An IAM API key to allow the SDK to access your account. Create one [here](https://cloud.ibm.com/iam/apikeys).
76-
* Python 3.5 or above.
76+
* Python 3.6 or above.
7777

7878
## Installation
7979

requirements-dev.txt

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,9 @@
11
# test dependencies
2-
jproperties
3-
pytest>=5.0
4-
responses>=0.10
5-
python-dotenv>=0.1.5
6-
pylint>=1.4.4
7-
tox>=2.9.1
8-
couchdb>=1.2
9-
10-
# code coverage
11-
coverage<5
12-
codecov>=1.6.3,<3.0.0
2+
codecov>=2.1.0,<3.0.0
3+
couchdb>=1.2,<2.0.0
4+
coverage>=4.5.4
5+
pylint>=2.6.0,<3.0.0
6+
pytest>=6.2.1,<7.0.0
137
pytest-cov>=2.2.1,<3.0.0
14-
15-
# documentation
16-
recommonmark>=0.2.0
17-
Sphinx>=1.3.1
8+
responses>=0.12.1,<1.0.0
9+
tox>=3.2.0,<4.0.0

setup.py

Lines changed: 33 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@
2424
PACKAGE_DESC = 'Python client library for IBM Cloud Platform Services'
2525

2626
with open('requirements.txt') as f:
27-
install_requires = [str(req) for req in pkg_resources.parse_requirements(f)]
27+
install_requires = [
28+
str(req) for req in pkg_resources.parse_requirements(f)
29+
]
2830
with open('requirements-dev.txt') as f:
2931
tests_require = [str(req) for req in pkg_resources.parse_requirements(f)]
3032

@@ -38,56 +40,36 @@
3840
os.system('python setup.py sdist upload -r pypi')
3941
sys.exit()
4042

41-
class PyTest(TestCommand):
42-
def finalize_options(self):
43-
TestCommand.finalize_options(self)
44-
self.test_args = ['--strict', '--verbose', '--tb=long', 'test']
45-
self.test_suite = True
46-
47-
def run_tests(self):
48-
import pytest
49-
errcode = pytest.main(self.test_args)
50-
sys.exit(errcode)
51-
52-
class PyTestUnit(PyTest):
53-
def finalize_options(self):
54-
self.test_args = ['--strict', '--verbose', '--tb=long', 'test/unit']
55-
56-
class PyTestIntegration(PyTest):
57-
def finalize_options(self):
58-
self.test_args = ['--strict', '--verbose', '--tb=long', 'test/integration']
59-
6043
with open("README.md", "r") as fh:
6144
readme = fh.read()
6245

63-
setup(name=PACKAGE_NAME.replace('_', '-'),
64-
version=__version__,
65-
description=PACKAGE_DESC,
66-
license='Apache 2.0',
67-
install_requires=install_requires,
68-
tests_require=tests_require,
69-
cmdclass={'test': PyTest, 'test_unit': PyTestUnit, 'test_integration': PyTestIntegration},
70-
author='IBM',
71-
author_email='[email protected]',
72-
long_description=readme,
73-
long_description_content_type='text/markdown',
74-
url='https://github.com/IBM/platform-services-python-sdk',
75-
packages=[PACKAGE_NAME],
76-
include_package_data=True,
77-
keywords=PACKAGE_NAME,
78-
classifiers=[
79-
'Programming Language :: Python',
80-
'Programming Language :: Python :: 3',
81-
'Programming Language :: Python :: 3.5',
82-
'Programming Language :: Python :: 3.6',
83-
'Programming Language :: Python :: 3.7',
84-
'Programming Language :: Python :: 3.8',
85-
'Development Status :: 4 - Beta',
86-
'Intended Audience :: Developers',
87-
'License :: OSI Approved :: Apache Software License',
88-
'Operating System :: OS Independent',
89-
'Topic :: Software Development :: Libraries :: Python Modules',
90-
'Topic :: Software Development :: Libraries :: Application Frameworks',
91-
],
92-
zip_safe=True
93-
)
46+
setup(
47+
name=PACKAGE_NAME.replace('_', '-'),
48+
version=__version__,
49+
description=PACKAGE_DESC,
50+
license='Apache 2.0',
51+
install_requires=install_requires,
52+
tests_require=tests_require,
53+
author='IBM',
54+
author_email='[email protected]',
55+
long_description=readme,
56+
long_description_content_type='text/markdown',
57+
url='https://github.com/IBM/platform-services-python-sdk',
58+
packages=[PACKAGE_NAME],
59+
include_package_data=True,
60+
keywords=PACKAGE_NAME,
61+
classifiers=[
62+
'Programming Language :: Python',
63+
'Programming Language :: Python :: 3',
64+
'Programming Language :: Python :: 3.6',
65+
'Programming Language :: Python :: 3.7',
66+
'Programming Language :: Python :: 3.8',
67+
'Programming Language :: Python :: 3.9',
68+
'Development Status :: 4 - Beta',
69+
'Intended Audience :: Developers',
70+
'License :: OSI Approved :: Apache Software License',
71+
'Operating System :: OS Independent',
72+
'Topic :: Software Development :: Libraries :: Python Modules',
73+
'Topic :: Software Development :: Libraries :: Application Frameworks',
74+
],
75+
zip_safe=True)

tox.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[tox]
2-
envlist = lint, py35, py36, py37, py38
2+
envlist = lint, py36, py37, py38, py39
33

44
[testenv:lint]
55
basepython = python3.7

0 commit comments

Comments
 (0)