Skip to content

Commit 69eccdb

Browse files
authored
Merge pull request #1554 from abderrahim/python-3.7
Drop support for Python 3.6
2 parents 90cb29f + 09e1ed5 commit 69eccdb

File tree

9 files changed

+26
-43
lines changed

9 files changed

+26
-43
lines changed

.github/common.env

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Shared common variables
22

33
CI_IMAGE_VERSION=master-450607952
4-
CI_TOXENV_MAIN=py36,py37,py38-nocover,py39-nocover,py310-nocover
5-
CI_TOXENV_PLUGINS=py36-plugins,py37-plugins,py38-plugins-nocover,py39-plugins-nocover,py310-plugins-nocover
4+
CI_TOXENV_MAIN=py37,py38-nocover,py39-nocover,py310-nocover
5+
CI_TOXENV_PLUGINS=py37-plugins,py38-plugins-nocover,py39-plugins-nocover,py310-plugins-nocover
66
CI_TOXENV_ALL="${CI_TOXENV_MAIN},${CI_TOXENV_PLUGINS}"

.github/compose/ci.docker-compose.yml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,6 @@ services:
3434
<<: *tests-template
3535
image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:10-${CI_IMAGE_VERSION:-latest}
3636

37-
ubuntu-18.04:
38-
<<: *tests-template
39-
image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-ubuntu:18.04-${CI_IMAGE_VERSION:-latest}
40-
41-
centos-7.7.1908:
42-
<<: *tests-template
43-
image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-centos:7.7.1908-${CI_IMAGE_VERSION:-latest}
44-
4537
# Ensure that tests also pass in the absence of a sandboxing tool
4638
fedora-missing-deps:
4739
<<: *tests-template

.github/run-ci.sh

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,6 @@ if [ -z "${test_names}" ]; then
105105
runTest "debian-10"
106106
runTest "fedora-34"
107107
runTest "fedora-35"
108-
runTest "ubuntu-18.04"
109-
runTest "centos-7.7.1908"
110108
runTest "fedora-missing-deps"
111109
runServiceTest "buildbarn"
112110
runServiceTest "buildgrid"

.github/workflows/ci.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,6 @@ jobs:
3939
- debian-10
4040
- fedora-34
4141
- fedora-35
42-
- ubuntu-18.04
43-
- centos-7.7.1908
4442
- fedora-missing-deps
4543
- lint
4644
- mypy

NEWS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
Core
66
----
7-
o BuildStream now also supports Python 3.10.
7+
o BuildStream now requires Python >= 3.7 and also supports Python 3.10.
88

99
Format
1010
------

doc/source/main_install.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ for installing these dependencies.
2323

2424
BuildStream requires the following base system requirements:
2525

26-
- python3 >= 3.6
26+
- python3 >= 3.7
2727
- pip
2828
- :ref:`buildbox-casd<install-buildbox>`
2929

setup.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,10 @@
4646
# Python requirements
4747
##################################################################
4848
REQUIRED_PYTHON_MAJOR = 3
49-
REQUIRED_PYTHON_MINOR = 6
49+
REQUIRED_PYTHON_MINOR = 7
5050

5151
if sys.version_info[0] != REQUIRED_PYTHON_MAJOR or sys.version_info[1] < REQUIRED_PYTHON_MINOR:
52-
print("BuildStream requires Python >= 3.6")
52+
print("BuildStream requires Python >= 3.7")
5353
sys.exit(1)
5454

5555
try:
@@ -322,7 +322,6 @@ def files_from_module(modname):
322322
"License :: OSI Approved :: Apache Software License",
323323
"Operating System :: POSIX",
324324
"Programming Language :: Python :: 3",
325-
"Programming Language :: Python :: 3.6",
326325
"Programming Language :: Python :: 3.7",
327326
"Programming Language :: Python :: 3.8",
328327
"Programming Language :: Python :: 3.9",

src/buildstream/_project.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
from typing import TYPE_CHECKING, Optional, Dict, Union, List
2121

2222
import os
23-
import sys
2423
import urllib.parse
2524
from pathlib import Path
2625
from pluginbase import PluginBase
@@ -288,10 +287,7 @@ def get_path_from_node(self, node, *, check_is_file=False, check_is_dir=False):
288287
)
289288

290289
try:
291-
if sys.version_info[0] == 3 and sys.version_info[1] < 6:
292-
full_resolved_path = full_path.resolve()
293-
else:
294-
full_resolved_path = full_path.resolve(strict=True) # pylint: disable=unexpected-keyword-arg
290+
full_resolved_path = full_path.resolve(strict=True)
295291
except FileNotFoundError:
296292
provenance = node.get_provenance()
297293
raise LoadError(

tox.ini

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Tox global configuration
33
#
44
[tox]
5-
envlist = py{36,37},py{38,39,310}-nocover
5+
envlist = py37,py{38,39,310}-nocover
66
skip_missing_interpreters = true
77
isolated_build = true
88

@@ -18,29 +18,29 @@ BST_PLUGINS_EXPERIMENTAL_VERSION = 1.93.4
1818
[testenv]
1919
usedevelop =
2020
# This is required by Cython in order to get coverage for cython files.
21-
py{36,37,38,39,310}-!nocover: True
21+
py{37,38,39,310}-!nocover: True
2222

2323
commands =
2424
# Running with coverage reporting enabled
25-
py{36,37,38,39,310}-!plugins-!nocover: pytest --basetemp {envtmpdir} --cov=buildstream --cov-config .coveragerc {posargs}
25+
py{37,38,39,310}-!plugins-!nocover: pytest --basetemp {envtmpdir} --cov=buildstream --cov-config .coveragerc {posargs}
2626
# Running with coverage reporting disabled
27-
py{36,37,38,39,310}-!plugins-nocover: pytest --basetemp {envtmpdir} {posargs}
27+
py{37,38,39,310}-!plugins-nocover: pytest --basetemp {envtmpdir} {posargs}
2828
# Running external plugins tests with coverage reporting enabled
29-
py{36,37,38,39,310}-plugins-!nocover: pytest --basetemp {envtmpdir} --cov=buildstream --cov-config .coveragerc --plugins {posargs}
29+
py{37,38,39,310}-plugins-!nocover: pytest --basetemp {envtmpdir} --cov=buildstream --cov-config .coveragerc --plugins {posargs}
3030
# Running external plugins tests with coverage disabled
31-
py{36,37,38,39,310}-plugins-nocover: pytest --basetemp {envtmpdir} --plugins {posargs}
31+
py{37,38,39,310}-plugins-nocover: pytest --basetemp {envtmpdir} --plugins {posargs}
3232
commands_post:
33-
py{36,37,38,39,310}-!nocover: mkdir -p .coverage-reports
34-
py{36,37,38,39,310}-!nocover: mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
33+
py{37,38,39,310}-!nocover: mkdir -p .coverage-reports
34+
py{37,38,39,310}-!nocover: mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
3535
deps =
36-
py{36,37,38,39,310}: -rrequirements/requirements.txt
37-
py{36,37,38,39,310}: -rrequirements/dev-requirements.txt
36+
py{37,38,39,310}: -rrequirements/requirements.txt
37+
py{37,38,39,310}: -rrequirements/dev-requirements.txt
3838

3939
# Install local sample plugins for testing pip plugin origins
40-
py{36,37,38,39,310}: {toxinidir}/tests/plugins/sample-plugins
40+
py{37,38,39,310}: {toxinidir}/tests/plugins/sample-plugins
4141

4242
# Install external plugins for plugin tests
43-
py{36,37,38,39,310}-plugins: git+https://gitlab.com/buildstream/bst-plugins-experimental.git@{env:BST_PLUGINS_EXPERIMENTAL_VERSION:{[config]BST_PLUGINS_EXPERIMENTAL_VERSION}}#egg=bst_plugins_experimental[deb]
43+
py{37,38,39,310}-plugins: git+https://gitlab.com/buildstream/bst-plugins-experimental.git@{env:BST_PLUGINS_EXPERIMENTAL_VERSION:{[config]BST_PLUGINS_EXPERIMENTAL_VERSION}}#egg=bst_plugins_experimental[deb]
4444

4545
# Only require coverage and pytest-cov when using it
4646
!nocover: -rrequirements/cov-requirements.txt
@@ -68,17 +68,17 @@ passenv =
6868
# These keys are not inherited by any other sections
6969
#
7070
setenv =
71-
py{36,37,38,39,310}: COVERAGE_FILE = {envtmpdir}/.coverage
72-
py{36,37,38,39,310}: BST_TEST_HOME = {envtmpdir}
73-
py{36,37,38,39,310}: BST_TEST_XDG_CACHE_HOME = {envtmpdir}/cache
74-
py{36,37,38,39,310}: BST_TEST_XDG_CONFIG_HOME = {envtmpdir}/config
75-
py{36,37,38,39,310}: BST_TEST_XDG_DATA_HOME = {envtmpdir}/share
71+
py{37,38,39,310}: COVERAGE_FILE = {envtmpdir}/.coverage
72+
py{37,38,39,310}: BST_TEST_HOME = {envtmpdir}
73+
py{37,38,39,310}: BST_TEST_XDG_CACHE_HOME = {envtmpdir}/cache
74+
py{37,38,39,310}: BST_TEST_XDG_CONFIG_HOME = {envtmpdir}/config
75+
py{37,38,39,310}: BST_TEST_XDG_DATA_HOME = {envtmpdir}/share
7676
# This is required to get coverage for Cython
77-
py{36,37,38,39,310}-!nocover: BST_CYTHON_TRACE = 1
77+
py{37,38,39,310}-!nocover: BST_CYTHON_TRACE = 1
7878
randomized: PYTEST_ADDOPTS="--random-order-bucket=global"
7979

8080
whitelist_externals =
81-
py{36,37,38,39,310}:
81+
py{37,38,39,310}:
8282
mv
8383
mkdir
8484

0 commit comments

Comments
 (0)