Merge lp:~cjwatson/storm/require-py38 into lp:storm

Proposed by Colin Watson
Status: Needs review
Proposed branch: lp:~cjwatson/storm/require-py38
Merge into: lp:storm
Prerequisite: lp:~cjwatson/storm/pyupgrade
Diff against target: 81 lines (+3/-16)
4 files modified
NEWS (+1/-1)
setup.py (+1/-4)
storm/tests/schema/patch.py (+1/-4)
tox.ini (+0/-7)
To merge this branch: bzr merge lp:~cjwatson/storm/require-py38
Reviewer Review Type Date Requested Status
Mitch Burton Approve
Review via email: mp+462343@code.launchpad.net

Commit message

Remove support for Python < 3.8.

Description of the change

I don't think anyone needs this any more, and it allows simplifying `tox.ini` a bit.

(I guess you might want to double-check with the Landscape folks. I think I remember that they were on at least focal now ...)

To post a comment you must log in.
Revision history for this message
Mitch Burton (mitchburton) wrote :

Landscape is fine with dropping < 3.8. I'll let Launchpad weigh in for final review but consider this a +1 from me.

review: Approve
Revision history for this message
Colin Watson (cjwatson) wrote :

It just occurred to me that lp-signing uses Storm and is still deployed on bionic according to its Mojo spec, so Python 3.6. Maybe we should retain 3.6 support for now? That would still allow dropping the awkward `tox.ini` stuff for 3.5, and there's otherwise no apparent simplification to be gained by dropping 3.6 (other than speeding up the test suite).

Unmerged revisions

586. By Colin Watson

Remove support for Python < 3.8.

I don't think anyone needs this any more, and it allows simplifying
`tox.ini` a bit.

585. By Colin Watson

Run pyupgrade.

Generated using `find storm -name \*.py | xargs pyupgrade --py3-plus
--keep-percent-format`.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'NEWS'
2--- NEWS 2024-03-04 16:33:02 +0000
3+++ NEWS 2024-03-13 17:25:34 +0000
4@@ -10,7 +10,7 @@
5 API changes
6 -----------
7
8-- Remove support for Python 2.
9+- Remove support for Python < 3.8 (including Python 2).
10 - Remove the storm.compat module.
11 - Deprecate storm.sqlobject.AutoUnicodeVariable and
12 storm.sqlobject.AutoUnicode.
13
14=== modified file 'setup.py'
15--- setup.py 2024-03-04 16:33:02 +0000
16+++ setup.py 2024-03-13 17:25:34 +0000
17@@ -63,9 +63,6 @@
18 "Lesser General Public License (LGPL)"),
19 "Programming Language :: Python",
20 "Programming Language :: Python :: 3",
21- "Programming Language :: Python :: 3.5",
22- "Programming Language :: Python :: 3.6",
23- "Programming Language :: Python :: 3.7",
24 "Programming Language :: Python :: 3.8",
25 "Programming Language :: Python :: 3.9",
26 "Programming Language :: Python :: 3.10",
27@@ -81,7 +78,7 @@
28 # warning) by distutils.
29 include_package_data=True,
30 zip_safe=False,
31- python_requires=">=3.5",
32+ python_requires=">=3.8",
33 install_requires=["packaging >= 14.1"],
34 test_suite="storm.tests.find_tests",
35 tests_require=tests_require,
36
37=== modified file 'storm/tests/schema/patch.py'
38--- storm/tests/schema/patch.py 2024-03-13 17:25:34 +0000
39+++ storm/tests/schema/patch.py 2024-03-13 17:25:34 +0000
40@@ -352,10 +352,7 @@
41 self.patch_applier.apply_all()
42 except BadPatchError as e:
43 self.assertTrue("mypackage/patch_999.py" in str(e))
44- if sys.version_info >= (3, 3):
45- self.assertTrue("takes 0 positional arguments" in str(e))
46- else:
47- self.assertTrue("takes no arguments" in str(e))
48+ self.assertTrue("takes 0 positional arguments" in str(e))
49 self.assertTrue("TypeError" in str(e))
50 else:
51 self.fail("BadPatchError not raised")
52
53=== modified file 'tox.ini'
54--- tox.ini 2024-03-04 16:33:02 +0000
55+++ tox.ini 2024-03-13 17:25:34 +0000
56@@ -1,8 +1,5 @@
57 [tox]
58 envlist =
59- py35-{cextensions,nocextensions}
60- py36-{cextensions,nocextensions}
61- py37-{cextensions,nocextensions}
62 py38-{cextensions,nocextensions}
63 py39-{cextensions,nocextensions}
64 py310-{cextensions,nocextensions}
65@@ -11,8 +8,6 @@
66 docs
67
68 [testenv]
69-download =
70- py35: true
71 deps =
72 .[test]
73 passenv =
74@@ -21,8 +16,6 @@
75 setenv =
76 cextensions: STORM_CEXTENSIONS = 1
77 nocextensions: STORM_CEXTENSIONS = 0
78- py35: VIRTUALENV_DOWNLOAD = 1
79- py35: VIRTUALENV_PIP = 20.3.4
80 commands =
81 python dev/test {posargs}
82

Subscribers

People subscribed via source and target branches

to status/vote changes: