diff --git a/.github/workflows/test_docker.yml b/.github/workflows/test_docker.yml index b365c03..fe6b4f3 100644 --- a/.github/workflows/test_docker.yml +++ b/.github/workflows/test_docker.yml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - version: ['38'] + version: ['39'] container: image: registry.fedoraproject.org/fedora:${{ matrix.version }} steps: diff --git a/.github/workflows/test_docs.yml b/.github/workflows/test_docs.yml index 5e3bb58..144a5b6 100644 --- a/.github/workflows/test_docs.yml +++ b/.github/workflows/test_docs.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: include: - - python-version: '3.11' + - python-version: '3.12' toxenv: 'docs' container: image: ubuntu:22.04 @@ -36,7 +36,7 @@ jobs: add-apt-repository -y ppa:deadsnakes/ppa add-apt-repository -y ppa:gift/dev apt-get update -q - apt-get install -y build-essential git libffi-dev python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-pip python3-setuptools + apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-pip python3-setuptools - name: Install tox run: | python3 -m pip install tox diff --git a/.github/workflows/test_tox.yml b/.github/workflows/test_tox.yml index 9e02a93..ab92871 100644 --- a/.github/workflows/test_tox.yml +++ b/.github/workflows/test_tox.yml @@ -14,8 +14,6 @@ jobs: strategy: matrix: include: - - python-version: '3.7' - toxenv: 'py37,wheel' - python-version: '3.8' toxenv: 'py38,wheel' - python-version: '3.9' @@ -46,7 +44,7 @@ jobs: add-apt-repository -y ppa:deadsnakes/ppa add-apt-repository -y ppa:gift/dev apt-get update -q - apt-get install -y build-essential git libffi-dev python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-pip python3-setuptools + apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-pip python3-setuptools - name: Install tox run: | python3 -m pip install tox @@ -82,7 +80,7 @@ jobs: add-apt-repository -y ppa:deadsnakes/ppa add-apt-repository -y ppa:gift/dev apt-get update -q - apt-get install -y build-essential git libffi-dev python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-pip python3-setuptools + apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-pip python3-setuptools - name: Install tox run: | python3 -m pip install tox @@ -98,7 +96,7 @@ jobs: strategy: matrix: include: - - python-version: '3.11' + - python-version: '3.12' toxenv: 'lint' container: image: ubuntu:22.04 @@ -120,7 +118,7 @@ jobs: add-apt-repository -y ppa:deadsnakes/ppa add-apt-repository -y ppa:gift/dev apt-get update -q - apt-get install -y build-essential git libffi-dev python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-pip python3-setuptools + apt-get install -y build-essential git python${{ matrix.python-version }} python${{ matrix.python-version }}-dev python${{ matrix.python-version }}-venv python3-distutils python3-pip python3-setuptools - name: Install tox run: | python3 -m pip install tox diff --git a/appveyor.yml b/appveyor.yml index f10b274..fa80fa7 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,34 +1,34 @@ environment: matrix: - - DESCRIPTION: "Run tests on Windows with 32-bit Python 3.11" + - DESCRIPTION: "Run tests on Windows with 32-bit Python 3.12" MACHINE_TYPE: "x86" APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 - PYTHON: "C:\\Python311" - PYTHON_VERSION: "3.11" + PYTHON: "C:\\Python312" + PYTHON_VERSION: "3.12" L2TBINARIES_TRACK: "dev" TARGET: tests - - DESCRIPTION: "Run tests on Windows with 64-bit Python 3.11" + - DESCRIPTION: "Run tests on Windows with 64-bit Python 3.12" MACHINE_TYPE: "amd64" APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 - PYTHON: "C:\\Python311-x64" - PYTHON_VERSION: "3.11" + PYTHON: "C:\\Python312-x64" + PYTHON_VERSION: "3.12" L2TBINARIES_TRACK: "dev" TARGET: tests - - DESCRIPTION: "Build wheel on Windows with 32-bit Python 3.11" + - DESCRIPTION: "Build wheel on Windows with 32-bit Python 3.12" MACHINE_TYPE: "amd64" APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 - PYTHON: "C:\\Python311-x64" - PYTHON_VERSION: "3.11" + PYTHON: "C:\\Python312-x64" + PYTHON_VERSION: "3.12" L2TBINARIES_TRACK: "dev" TARGET: wheel - - DESCRIPTION: "Build wheel on Windows with 64-bit Python 3.11" + - DESCRIPTION: "Build wheel on Windows with 64-bit Python 3.12" MACHINE_TYPE: "amd64" APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 - PYTHON: "C:\\Python311-x64" - PYTHON_VERSION: "3.11" + PYTHON: "C:\\Python312-x64" + PYTHON_VERSION: "3.12" L2TBINARIES_TRACK: "dev" TARGET: wheel - - DESCRIPTION: "Run tests on Mac OS with Python 3.11" + - DESCRIPTION: "Run tests on Mac OS with Python 3.12" APPVEYOR_BUILD_WORKER_IMAGE: macos-monterey HOMEBREW_NO_INSTALL_CLEANUP: 1 TARGET: tests diff --git a/config/appveyor/install.sh b/config/appveyor/install.sh index e36de4c..42c4ab6 100755 --- a/config/appveyor/install.sh +++ b/config/appveyor/install.sh @@ -3,5 +3,5 @@ set -e brew update -q -brew install -q gettext gnu-sed python@3.11 tox || true +brew install -q gettext gnu-sed python@3.12 tox || true diff --git a/config/appveyor/runtests.sh b/config/appveyor/runtests.sh index e3bc8c3..86ba5ce 100755 --- a/config/appveyor/runtests.sh +++ b/config/appveyor/runtests.sh @@ -9,7 +9,7 @@ export LDFLAGS="-L/usr/local/lib -L/usr/local/opt/gettext/lib ${LDFLAGS}"; export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include ${CPPFLAGS}"; export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib ${LDFLAGS}"; -# Set the following environment variables to ensure tox can find Python 3.11. -export PATH="/usr/local/opt/python@3.11/bin:${PATH}"; +# Set the following environment variables to ensure tox can find Python 3.12. +export PATH="/usr/local/opt/python@3.12/bin:${PATH}"; -tox -e py311 +tox -e py312 diff --git a/config/dpkg/changelog b/config/dpkg/changelog index a18ec46..a59a347 100644 --- a/config/dpkg/changelog +++ b/config/dpkg/changelog @@ -1,5 +1,5 @@ -dfkinds (20211228-1) unstable; urgency=low +dfkinds (20240317-1) unstable; urgency=low * Auto-generated - -- Log2Timeline maintainers Tue, 28 Dec 2021 04:57:45 +0100 + -- Log2Timeline maintainers Sun, 17 Mar 2024 06:27:18 +0100 diff --git a/dfkinds/__init__.py b/dfkinds/__init__.py index f94f4da..7f4249c 100644 --- a/dfkinds/__init__.py +++ b/dfkinds/__init__.py @@ -1,9 +1,9 @@ # -*- coding: utf-8 -*- """Digital Forensics kinds (types and classes). -dfKinds, or Digital Forensics kinds, provides data type and class definitions -to provide consistent definitions of entities (or description of things) across +dfKinds, or Digital Forensics kinds, provides data type and class definitions to +provide consistent definitions of entities (or description of things) across different tools. """ -__version__ = '20211228' +__version__ = '20240317' diff --git a/docs/conf.py b/docs/conf.py index 5e31621..adbd794 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -52,6 +52,7 @@ # docstrings. napoleon_google_docstring = True napoleon_numpy_docstring = False +napoleon_include_init_with_doc = True napoleon_include_private_with_doc = False napoleon_include_special_with_doc = True diff --git a/pyproject.toml b/pyproject.toml index 9787c3b..ee74093 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,10 @@ [build-system] requires = ["setuptools", "wheel"] build-backend = "setuptools.build_meta" + +[tool.docformatter] +black = false +non-cap = ["dfDateTime", "dfImageTools", "dfVFS", "dfWinReg", "dtFabric", "iMessage", "iOS", "iPod", "mDNS"] +non-strict = false +wrap-summaries = 80 +wrap-descriptions = 80 diff --git a/setup.cfg b/setup.cfg index 8a50f35..15e0755 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = dfkinds -version = 20231228 +version = 20240317 description = Digital Forensics kinds (types and classes). long_description = dfKinds, or Digital Forensics kinds, provides data type and class definitions to provide consistent definitions of entities (or description of things) across different tools. long_description_content_type = text/plain @@ -22,7 +22,7 @@ install_requires = file:requirements.txt package_dir = dfkinds = dfkinds packages = find: -python_requires = >=3.7 +python_requires = >=3.8 [options.packages.find] exclude = @@ -32,15 +32,5 @@ exclude = utils where = . -[bdist_rpm] -release = 1 -packager = Log2Timeline maintainers -doc_files = - ACKNOWLEDGEMENTS - AUTHORS - LICENSE - README -build_requires = python3-setuptools - [bdist_wheel] universal = 1 diff --git a/tox.ini b/tox.ini index ac82501..8f50ec2 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py3{7,8,9,10,11,12},coverage,docs,lint,wheel +envlist = py3{8,9,10,11,12},coverage,docformatter,docs,lint,wheel [testenv] allowlist_externals = ./run_tests.py @@ -19,12 +19,19 @@ deps = setuptools >= 65 wheel commands = - py3{7,8,9,10,11,12}: ./run_tests.py + py3{8,9,10,11,12}: ./run_tests.py coverage: coverage erase coverage: coverage run --source=dfkinds --omit="*_test*,*__init__*,*test_lib*" run_tests.py coverage: coverage xml wheel: python -m build --no-isolation --wheel +[testenv:docformatter] +usedevelop = True +deps = + docformatter +commands = + docformatter --in-place --recursive dfkinds tests + [testenv:docs] usedevelop = True deps = @@ -45,7 +52,11 @@ setenv = deps = -rrequirements.txt -rtest_requirements.txt - pylint >= 2.17.0, < 2.18.0 + docformatter + pylint >= 3.0.0, < 3.1.0 + setuptools commands = + docformatter --version pylint --version + docformatter --check --diff --recursive dfkinds setup.py tests pylint --rcfile=.pylintrc dfkinds setup.py tests diff --git a/utils/update_release.sh b/utils/update_release.sh index 3b8be6b..86ee741 100755 --- a/utils/update_release.sh +++ b/utils/update_release.sh @@ -22,7 +22,7 @@ dfkinds (${VERSION}-1) unstable; urgency=low EOT # Regenerate the API documentation. -tox -edocs +tox -edocformatter,docs exit ${EXIT_SUCCESS};