summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Reiter <reiter.christoph@gmail.com>2020-09-14 09:48:58 +0200
committerChristoph Reiter <reiter.christoph@gmail.com>2020-09-14 09:53:55 +0200
commit6ffc87e51694abd03aed2d42683d65caa74e313d (patch)
treec1c0047317f0051b53005c0dcdf366aed04750ba
parent12930c0eba55edec6e91bcde115a90cf959afbe0 (diff)
downloadpygobject-drop-py35.tar.gz
Drop Python 3.5 support and bump other dependenciesdrop-py35
Motivated by the EOL of Python 3.5 and the EOL of Ubuntu 16.04 next year this requires Python 3.6 and moves all other dependencies to what is available in Ubuntu 18.04.
-rw-r--r--.gitlab-ci.yml21
-rw-r--r--.gitlab-ci/Dockerfile15
-rw-r--r--.gitlab-ci/Dockerfile.old4
-rwxr-xr-x.gitlab-ci/run-docker-old.sh2
-rwxr-xr-x.gitlab-ci/run-docker.sh4
-rw-r--r--PKG-INFO.in2
-rw-r--r--README.rst2
-rw-r--r--meson.build14
-rwxr-xr-xsetup.py8
9 files changed, 34 insertions, 38 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5db5b26f..1d267ae4 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,4 @@
-image: registry.gitlab.gnome.org/gnome/pygobject/main:v13
+image: registry.gitlab.gnome.org/gnome/pygobject/main:v14
stages:
- build_and_test
@@ -34,7 +34,7 @@ coverage:
paths:
- coverage/
variables:
- PYENV_VERSION: "3.6.10"
+ PYENV_VERSION: "3.6.12"
script:
- bash -x ./.gitlab-ci/coverage-docker.sh
@@ -65,35 +65,30 @@ python3-mingw64:
CHERE_INVOKING: "yes"
<<: *mingw-defaults
-python3.5:
- variables:
- PYENV_VERSION: "3.5.9"
- <<: *defaults
-
python3.6:
variables:
- PYENV_VERSION: "3.6.10"
+ PYENV_VERSION: "3.6.12"
<<: *defaults
python3.7:
variables:
- PYENV_VERSION: "3.7.6-debug"
+ PYENV_VERSION: "3.7.9-debug"
<<: *defaults
python3.8:
variables:
- PYENV_VERSION: "3.8.1-debug"
+ PYENV_VERSION: "3.8.5-debug"
<<: *defaults
pypy3.6:
allow_failure: true
variables:
- PYENV_VERSION: "pypy3.6-7.3.0"
+ PYENV_VERSION: "pypy3.6-7.3.1"
<<: *defaults
-xenial-i386-py3:
+old-i386-py3:
stage: build_and_test
- image: registry.gitlab.gnome.org/gnome/pygobject/old:v3
+ image: registry.gitlab.gnome.org/gnome/pygobject/old:v4
artifacts:
paths:
- coverage/
diff --git a/.gitlab-ci/Dockerfile b/.gitlab-ci/Dockerfile
index 75d66d87..5c490b60 100644
--- a/.gitlab-ci/Dockerfile
+++ b/.gitlab-ci/Dockerfile
@@ -1,4 +1,6 @@
-FROM ubuntu:cosmic
+FROM ubuntu:focal
+
+ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
build-essential \
@@ -39,12 +41,9 @@ ENV PYTHON_CONFIGURE_OPTS="--enable-shared"
RUN curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
-RUN pyenv install pypy2.7-7.3.0
-RUN pyenv install pypy3.6-7.3.0
-RUN pyenv install --debug 2.7.17
-RUN pyenv install 3.5.9
-RUN pyenv install 3.6.10
-RUN pyenv install --debug 3.7.6
-RUN pyenv install --debug 3.8.1
+RUN pyenv install pypy3.6-7.3.1
+RUN pyenv install 3.6.12
+RUN pyenv install --debug 3.7.9
+RUN pyenv install --debug 3.8.5
ENV PATH="/usr/lib/ccache:${PATH}"
diff --git a/.gitlab-ci/Dockerfile.old b/.gitlab-ci/Dockerfile.old
index 7f53e40f..beffb9be 100644
--- a/.gitlab-ci/Dockerfile.old
+++ b/.gitlab-ci/Dockerfile.old
@@ -1,4 +1,6 @@
-FROM i386/ubuntu:xenial
+FROM i386/ubuntu:bionic
+
+ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
autoconf-archive \
diff --git a/.gitlab-ci/run-docker-old.sh b/.gitlab-ci/run-docker-old.sh
index 6f6a1d68..bd11cbff 100755
--- a/.gitlab-ci/run-docker-old.sh
+++ b/.gitlab-ci/run-docker-old.sh
@@ -2,7 +2,7 @@
set -e
-TAG="registry.gitlab.gnome.org/gnome/pygobject/old:v3"
+TAG="registry.gitlab.gnome.org/gnome/pygobject/old:v4"
sudo docker build --build-arg HOST_USER_ID="$UID" --tag "${TAG}" \
--file "Dockerfile.old" .
diff --git a/.gitlab-ci/run-docker.sh b/.gitlab-ci/run-docker.sh
index 148e5f40..9207a4a4 100755
--- a/.gitlab-ci/run-docker.sh
+++ b/.gitlab-ci/run-docker.sh
@@ -2,10 +2,10 @@
set -e
-TAG="registry.gitlab.gnome.org/gnome/pygobject/main:v13"
+TAG="registry.gitlab.gnome.org/gnome/pygobject/main:v14"
sudo docker build --build-arg HOST_USER_ID="$UID" --tag "${TAG}" \
--file "Dockerfile" .
-sudo docker run -e PYENV_VERSION='3.8.1-debug' --rm --security-opt label=disable \
+sudo docker run -e PYENV_VERSION='3.8.5-debug' --rm --security-opt label=disable \
--volume "$(pwd)/..:/home/user/app" --workdir "/home/user/app" \
--tty --interactive "${TAG}" bash
diff --git a/PKG-INFO.in b/PKG-INFO.in
index b48c9059..fd6096ad 100644
--- a/PKG-INFO.in
+++ b/PKG-INFO.in
@@ -18,4 +18,4 @@ Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: C
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Libraries :: Python Modules
-Requires-Python: >=3.5, <4
+Requires-Python: >=3.6, <4
diff --git a/README.rst b/README.rst
index 6f9f1489..9158a78c 100644
--- a/README.rst
+++ b/README.rst
@@ -12,7 +12,7 @@
<https://developer.gnome.org/glib/stable/>`__, `GIO
<https://developer.gnome.org/gio/stable/>`__ and many more.
-It supports Linux, Windows and macOS and works with **Python 3.5+** and
+It supports Linux, Windows and macOS and works with **Python 3.6+** and
**PyPy3**. PyGObject, including this documentation, is licensed under the
**LGPLv2.1+**.
diff --git a/meson.build b/meson.build
index 087cf2eb..bd07f9f2 100644
--- a/meson.build
+++ b/meson.build
@@ -15,16 +15,16 @@ platform_version = '@0@.0'.format(pygobject_version_major)
pymod = import('python')
python = pymod.find_installation(get_option('python'))
-if python.language_version().version_compare('< 3.5')
- error('Requires Python >= 3.5')
+if python.language_version().version_compare('< 3.6')
+ error('Requires Python >= 3.6')
endif
python_dep = python.dependency()
-glib_version_req = '>= 2.48.0'
-gi_version_req = '>= 1.46.0'
-pycairo_version_req = '>= 1.11.1'
-libffi_version_req = '>= 3.0'
+glib_version_req = '>= 2.56.0'
+gi_version_req = '>= 1.56.0'
+pycairo_version_req = '>= 1.16.0'
+libffi_version_req = '>= 3.2'
gi_dep = dependency('gobject-introspection-1.0', version : gi_version_req,
fallback: ['gobject-introspection', 'girepo_dep'])
@@ -36,7 +36,7 @@ gio_dep = dependency('gio-2.0', version : glib_version_req,
fallback: ['glib', 'libgio_dep'])
gmodule_dep = dependency('gmodule-2.0', version : glib_version_req,
fallback: ['glib', 'libgmodule_dep'])
-ffi_dep = dependency('libffi', version : '>= 3.0',
+ffi_dep = dependency('libffi', version : libffi_version_req,
fallback : ['libffi', 'ffi_dep'])
with_pycairo = get_option('pycairo')
diff --git a/setup.py b/setup.py
index d751dab7..fce5b4af 100755
--- a/setup.py
+++ b/setup.py
@@ -38,10 +38,10 @@ from distutils.spawn import find_executable
PYGOBJECT_VERSION = "3.39.0"
-GLIB_VERSION_REQUIRED = "2.48.0"
-GI_VERSION_REQUIRED = "1.46.0"
-PYCAIRO_VERSION_REQUIRED = "1.11.1"
-LIBFFI_VERSION_REQUIRED = "3.0"
+GLIB_VERSION_REQUIRED = "2.56.0"
+GI_VERSION_REQUIRED = "1.56.0"
+PYCAIRO_VERSION_REQUIRED = "1.16.0"
+LIBFFI_VERSION_REQUIRED = "3.2"
WITH_CAIRO = not bool(os.environ.get("PYGOBJECT_WITHOUT_PYCAIRO"))
"""Set PYGOBJECT_WITHOUT_PYCAIRO if you don't want to build with