From 18ff02647c702ed6a5c2bf4e9035938abf89567d Mon Sep 17 00:00:00 2001
From: slush <sam@apeworx.io>
Date: Tue, 10 Dec 2024 14:41:57 -0600
Subject: [PATCH] feat: pep-625 compliance and enabling python 3.13 (#157)

---
 .github/workflows/test.yaml | 2 +-
 pyproject.toml              | 4 ++--
 setup.py                    | 3 ++-
 3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml
index 12b65ac..831ca40 100644
--- a/.github/workflows/test.yaml
+++ b/.github/workflows/test.yaml
@@ -63,7 +63,7 @@ jobs:
         strategy:
             matrix:
                 os: [ubuntu-latest, macos-latest]   # eventually add `windows-latest`
-                python-version: [3.9, '3.10', '3.11', '3.12']
+                python-version: [3.9, '3.10', '3.11', '3.12', '3.13']
 
         env:
           GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/pyproject.toml b/pyproject.toml
index 00925ba..8991fa8 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,5 +1,5 @@
 [build-system]
-requires = ["setuptools>=51.1.1", "wheel", "setuptools_scm[toml]>=5.0"]
+requires = ["setuptools>=75.6.0", "wheel", "setuptools_scm[toml]>=5.0"]
 
 [tool.mypy]
 exclude = "build/"
@@ -16,7 +16,7 @@ write_to = "ape_solidity/version.py"
 
 [tool.black]
 line-length = 100
-target-version = ['py39', 'py310', 'py311', 'py312']
+target-version = ['py39', 'py310', 'py311', 'py312', 'py313']
 include = '\.pyi?$'
 
 [tool.pytest.ini_options]
diff --git a/setup.py b/setup.py
index d4e5f26..0f5809c 100644
--- a/setup.py
+++ b/setup.py
@@ -31,7 +31,7 @@
         "towncrier>=19.2.0,<20",  # Generate release notes
     ],
     "release": [  # `release` GitHub Action job uses this
-        "setuptools",  # Installation tool
+        "setuptools>=75.6.0",  # Installation tool
         "setuptools-scm",  # Installation tool
         "wheel",  # Packaging tool
         "twine==3.8",  # Package upload tool
@@ -101,5 +101,6 @@
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Programming Language :: Python :: 3.13",
     ],
 )