Skip to content

Commit eb5c55e

Browse files
authored
Changes for Python 3.14 CI test target (#1246)
1 parent f15a75e commit eb5c55e

40 files changed

Lines changed: 208 additions & 505 deletions

.github/workflows/test_tox.yml

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,16 @@ jobs:
1414
strategy:
1515
matrix:
1616
include:
17-
- python-version: '3.9'
18-
toxenv: 'py39,wheel'
19-
- python-version: '3.10'
20-
toxenv: 'py310,wheel'
2117
- python-version: '3.11'
2218
toxenv: 'py311,wheel'
2319
- python-version: '3.12'
2420
toxenv: 'py312,wheel'
2521
- python-version: '3.13'
2622
toxenv: 'py313,wheel'
23+
- python-version: '3.14'
24+
toxenv: 'py314,wheel'
2725
container:
28-
image: ubuntu:22.04
26+
image: ubuntu:24.04
2927
steps:
3028
- uses: actions/checkout@v4
3129
- name: Set up container
@@ -44,10 +42,7 @@ jobs:
4442
add-apt-repository -y ppa:deadsnakes/ppa
4543
add-apt-repository -y ppa:gift/dev
4644
apt-get update -q
47-
apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-lib2to3 python3-pip python3-setuptools
48-
- name: Install tox
49-
run: |
50-
python3 -m pip install tox
45+
apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-lib2to3 python3-pip python3-setuptools tox
5146
- name: Run tests
5247
env:
5348
LANG: en_US.UTF-8
@@ -58,10 +53,10 @@ jobs:
5853
strategy:
5954
matrix:
6055
include:
61-
- python-version: '3.10'
56+
- python-version: '3.12'
6257
toxenv: 'coverage'
6358
container:
64-
image: ubuntu:22.04
59+
image: ubuntu:24.04
6560
steps:
6661
- uses: actions/checkout@v4
6762
- name: Set up container
@@ -80,10 +75,7 @@ jobs:
8075
add-apt-repository -y ppa:deadsnakes/ppa
8176
add-apt-repository -y ppa:gift/dev
8277
apt-get update -q
83-
apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-lib2to3 python3-pip python3-setuptools
84-
- name: Install tox
85-
run: |
86-
python3 -m pip install tox
78+
apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-lib2to3 python3-pip python3-setuptools tox
8779
- name: Run tests with coverage
8880
env:
8981
LANG: en_US.UTF-8
@@ -101,7 +93,7 @@ jobs:
10193
- python-version: '3.12'
10294
toxenv: 'lint'
10395
container:
104-
image: ubuntu:22.04
96+
image: ubuntu:24.04
10597
steps:
10698
- uses: actions/checkout@v4
10799
- name: Set up container
@@ -120,10 +112,7 @@ jobs:
120112
add-apt-repository -y ppa:deadsnakes/ppa
121113
add-apt-repository -y ppa:gift/dev
122114
apt-get update -q
123-
apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-lib2to3 python3-pip python3-setuptools
124-
- name: Install tox
125-
run: |
126-
python3 -m pip install tox
115+
apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-lib2to3 python3-pip python3-setuptools tox
127116
- name: Run linter
128117
env:
129118
LANG: en_US.UTF-8

appveyor.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,11 @@ environment:
2828
PYTHON_VERSION: "3.12"
2929
L2TBINARIES_TRACK: "dev"
3030
TARGET: wheel
31-
- DESCRIPTION: "Run tests on Mac OS with Python 3.13"
31+
- DESCRIPTION: "Run tests on Mac OS with Python 3.14"
3232
APPVEYOR_BUILD_WORKER_IMAGE: macos-sonoma
3333
HOMEBREW_NO_INSTALL_CLEANUP: 1
3434
TARGET: tests
35+
PYTHON_VERSION: "3.14"
3536

3637
install:
3738
- cmd: "%PYTHON%\\python.exe -m pip install -U build pip setuptools twine wheel"

config/appveyor/install.sh

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

55
brew untap homebrew/homebrew-cask-versions
66
brew update -q
7-
brew install -q gettext gnu-sed python@3.13 tox || true
7+
brew install -q gettext gnu-sed python@${PYTHON_VERSION} tox || true
88

config/appveyor/runtests.sh

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,17 @@
22
# Script to run tests
33

44
# Set the following environment variables to build libyal with gettext.
5-
export CPPFLAGS="-I/usr/local/include -I/usr/local/opt/gettext/include ${CPPFLAGS}";
6-
export LDFLAGS="-L/usr/local/lib -L/usr/local/opt/gettext/lib ${LDFLAGS}";
5+
export CPPFLAGS="-I/usr/local/include -I/usr/local/opt/gettext/include ${CPPFLAGS}"
6+
export LDFLAGS="-L/usr/local/lib -L/usr/local/opt/gettext/lib ${LDFLAGS}"
77

88
# Set the following environment variables to build pycrypto and yara-python.
9-
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include ${CPPFLAGS}";
10-
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib ${LDFLAGS}";
9+
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include ${CPPFLAGS}"
10+
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib ${LDFLAGS}"
1111

12-
# Set the following environment variables to ensure tox can find Python 3.13.
13-
export PATH="/usr/local/opt/python@3.13/bin:${PATH}";
12+
# Set the following environment variables to ensure tox can find Python.
13+
export PATH="/usr/local/opt/python@${PYTHON_VERSION}/bin:${PATH}"
1414

15-
tox -e py313
15+
# Disable colored output.
16+
export NO_COLOR=1
17+
18+
tox -e py${PYTHON_VERSION//./}

config/docker/l2tbuilds_fedora.Dockerfile

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,24 @@ FROM fedora:42
33
# Create container with:
44
# docker build -f l2tbuilds_fedora.Dockerfile --force-rm --no-cache -t log2timeline/l2tbuilds_fedora .
55

6-
RUN dnf install -y @development-tools autoconf automake byacc dnf-plugins-core flex gcc-c++ gettext-devel git langpacks-en libtool pkg-config python3 python3-build python3-devel python3-setuptools python3-wheel
6+
RUN dnf install -y \
7+
@development-tools \
8+
autoconf \
9+
automake \
10+
byacc \
11+
dnf-plugins-core \
12+
flex \
13+
gcc-c++ \
14+
gettext-devel \
15+
git \
16+
langpacks-en \
17+
libtool \
18+
pkg-config \
19+
python3 \
20+
python3-build \
21+
python3-devel \
22+
python3-setuptools \
23+
python3-wheel
724

825
# Set up the l2tdevtools source and build directories
926
WORKDIR /home/build/

config/docker/l2tbuilds_ubuntu.Dockerfile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ RUN apt-get -y update && \
2525
dput \
2626
fakeroot \
2727
flex \
28+
flit \
2829
git \
2930
gnupg2 \
3031
libdistro-info-perl \
@@ -40,15 +41,19 @@ RUN apt-get -y update && \
4041
locales \
4142
pkg-config \
4243
pinentry-tty \
44+
pybuild-plugin-pyproject \
4345
python3-all \
4446
python3-all-dev \
4547
python3-cffi \
48+
python3-build \
49+
python3-hatchling \
4650
python3-packaging \
4751
python3-pbr \
4852
python3-pkgconfig \
4953
python3-poetry-core \
5054
python3-pytest \
5155
python3-pytest-runner \
56+
python3-scikit-build-core \
5257
python3-setuptools \
5358
python3-setuptools-scm \
5459
python3-toml \

config/docker/plaso-dev.Dockerfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ RUN apt-get -y install --no-install-recommends \
2727
mercurial \
2828
python3-build \
2929
python3-dev \
30-
python3-distutils \
3130
python3-setuptools \
3231
quilt \
3332
software-properties-common \

data/dpkg_templates/python3-future.install

Lines changed: 0 additions & 2 deletions
This file was deleted.

data/licenses/LICENSE.deprecated

Lines changed: 0 additions & 21 deletions
This file was deleted.

data/presets.ini

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,11 @@ projects: boto3,botocore,cachetools,dateutil,docutils,google-api-core,google-aut
2828
projects: libbde,libcaes,libcdata,libcdatetime,libcdirectory,libcerror,libcfile,libclocale,libcnotify,libcpath,libcreg,libcsplit,libcthreads,libesedb,libevt,libevtx,libewf,libexe,libfcrypto,libfsext,libfsfat,libfshfs,libfsntfs,libfsxfs,libfvde,libfwevt,libfwnt,libfwps,libfwsi,libhmac,liblnk,libluksde,libmodi,libmsiecf,libolecf,libphdi,libqcow,libregf,libscca,libsigscan,libsmdev,libsmraw,libvhdi,libvmdk,libvsapm,libvsbsdl,libvsgpt,libvshadow,libvslvm,libwrc
2929

3030
[plaso]
31-
presets: dfimagetools,redis-py
32-
projects: acstore,bencode,certifi,cffi,chardet,dateutil,defusedxml,fakeredis,Flor,idna,libcaes,libesedb,libevt,libevtx,libexe,libfwps,libfwsi,liblnk,libmsiecf,libolecf,libscca,mock,opensearch-py,pbr,pefile,plaso,psutil,pyparsing,python-lz4,python-zstd,pytz,pyzmq,requests,urllib3,XlsxWriter,yara-python
33-
34-
[redis-py]
35-
projects: deprecated,importlib-metadata,redis-py
31+
presets: dfimagetools
32+
projects: acstore,bencode,certifi,cffi,chardet,dateutil,defusedxml,fakeredis,Flor,idna,libcaes,libesedb,libevt,libevtx,libexe,libfwps,libfwsi,liblnk,libmsiecf,libolecf,libscca,mock,opensearch-py,pbr,pefile,plaso,psutil,pyparsing,python-lz4,python-zstd,pytz,pyzmq,redis-py,requests,urllib3,XlsxWriter,yara-python
3633

3734
[timesketch]
38-
presets: redis-py
39-
projects: alembic,altair,amqp,aniso8601,asn1crypto,attrs,bcrypt,beautifulsoup4,billiard,blinker,celery,certifi,cffi,chardet,ciso8601,Click,cryptography,datasketch,dateutil,entrypoints,Flask,Flask-Bcrypt,Flask-Migrate,Flask-Login,Flask-RESTful,Flask-Script,Flask-SQLAlchemy,Flask-WTF,google-auth,google-auth-oauthlib,gunicorn,importlib-metadata,idna,itsdangerous,Jinja2,jsonschema,kombu,Mako,Markdown,MarkupSafe,networkx,numpy,oauthlib,opensearch-py,pandas,parameterized,prometheus_flask_exporter,pycparser,PyJWT,pyrsistent,python-editor,pytz,PyYAML,requests,requests-oauthlib,sigmatools,SQLAlchemy,tabulate,timesketch,toolz,urllib3,vine,Werkzeug,WTForms,xlrd,xmltodict
35+
projects: alembic,altair,amqp,aniso8601,asn1crypto,attrs,bcrypt,beautifulsoup4,billiard,blinker,celery,certifi,cffi,chardet,ciso8601,Click,cryptography,datasketch,dateutil,entrypoints,Flask,Flask-Bcrypt,Flask-Migrate,Flask-Login,Flask-RESTful,Flask-Script,Flask-SQLAlchemy,Flask-WTF,google-auth,google-auth-oauthlib,gunicorn,importlib-metadata,idna,itsdangerous,Jinja2,jsonschema,kombu,Mako,Markdown,MarkupSafe,networkx,numpy,oauthlib,opensearch-py,pandas,parameterized,prometheus_flask_exporter,pycparser,PyJWT,pyrsistent,python-editor,pytz,PyYAML,redis-py,requests,requests-oauthlib,sigmatools,SQLAlchemy,tabulate,timesketch,toolz,urllib3,vine,Werkzeug,WTForms,xlrd,xmltodict
4036

4137
[winevt-kb]
4238
presets: dfimagetools
@@ -46,6 +42,10 @@ projects: acstore,libexe,libfwevt,libwrc,winevt-kb
4642
presets: dfimagetools
4743
projects: acstore,libfcrypto,libfwsi,libhmac,winreg-kb
4844

45+
[winshl-kb]
46+
presets: dfimagetools
47+
projects: acstore,libexe,libhmac,libwrc,winshl-kb
48+
4949
[winsps-kb]
5050
presets: dfimagetools
5151
projects: acstore,libexe,libfwps,liblnk,libolecf,libwrc,winsps-kb

0 commit comments

Comments
 (0)