Skip to content

Commit 415a30a

Browse files
committed
Drop support for python < 3.10
It's time, there are nice features added by 3.8, 3.9, and 3.10. We're also forced to pin mypy, meaning we don't get access to mypy and typeshed fixes.
1 parent e4e2644 commit 415a30a

File tree

3 files changed

+10
-4
lines changed

3 files changed

+10
-4
lines changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ build system.
1616
- [Ninja](https://ninja-build.org) (version 1.8.2 or newer)
1717

1818
Latest Meson version supporting previous Python versions:
19+
- Python 3.9: **1.10**
20+
- Python 3.8: **1.10**
21+
- Python 3.7: **1.10**
1922
- Python 3.6: **0.61.5**
2023
- Python 3.5: **0.56.2**
2124
- Python 3.4: **0.45.1**

docs/markdown/FAQ.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -345,7 +345,10 @@ bug fixes.
345345

346346
- python 3.5: [supported through Meson 0.56.2](Release-notes-for-0.56.0.md#python-35-support-will-be-dropped-in-the-next-release)
347347
- python 3.6: [supported through Meson 0.61.5](Release-notes-for-0.61.0.md#python-36-support-will-be-dropped-in-the-next-release)
348-
- python 3.7: currently actively supported by Meson
348+
- python 3.7: [supported through Meson 1.11.x](Release-notes-for-1.11.0.md#last-major-version-supporting-python-37-38-and-39)
349+
- python 3.8: [supported through Meson 1.11.x](Release-notes-for-1.11.0.md#last-major-version-supporting-python-37-38-and-39)
350+
- python 3.9: [supported through Meson 1.11.x](Release-notes-for-1.11.0.md#last-major-version-supporting-python-37-38-and-39)
351+
- python 3.10: Currently supported
349352

350353
We encourage projects to support a wide range of Meson versions if they are not
351354
actually using the latest features anyway. In many, many cases it is quite

mesonbuild/mesonmain.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ def run(self, args: T.List[str]) -> int:
187187
# support for old python. If this is already the oldest supported version, then
188188
# this can never be true and does nothing.
189189
pending_python_deprecation_notice = \
190-
command in {'setup', 'compile', 'test', 'install'} and sys.version_info < (3, 7)
190+
command in {'setup', 'compile', 'test', 'install'} and sys.version_info < (3, 10)
191191

192192
try:
193193
return options.run_func(options)
@@ -198,8 +198,8 @@ def run(self, args: T.List[str]) -> int:
198198
mlog.warning('Running the setup command as `meson [options]` instead of '
199199
'`meson setup [options]` is ambiguous and deprecated.', fatal=False)
200200
if pending_python_deprecation_notice:
201-
mlog.notice('You are using Python 3.6 which is EOL. Starting with v0.62.0, '
202-
'Meson will require Python 3.7 or newer', fatal=False)
201+
mlog.notice(f'You are using Python 3.{sys.version_info.minor} which is EOL. Starting with v1.12.0, '
202+
'Meson will require Python 3.10 or newer', fatal=False)
203203
mlog.shutdown()
204204

205205
def run_script_command(script_name: str, script_args: T.List[str]) -> int:

0 commit comments

Comments
 (0)