diff --git a/.devcontainer/Python 2.7/devcontainer.json b/.devcontainer/Python 2.7/devcontainer.json
deleted file mode 100644
index ce0f9a92..00000000
--- a/.devcontainer/Python 2.7/devcontainer.json	
+++ /dev/null
@@ -1,38 +0,0 @@
-// For format details, see https://aka.ms/devcontainer.json. For config options, see the
-// README at: https://github.com/devcontainers/templates/tree/main/src/debian
-{
-	"name": "Python 2.7",
-	// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
-	"image": "mcr.microsoft.com/devcontainers/base:bullseye",
-
-	// Features to add to the dev container. More info: https://containers.dev/features.
-	// "features": {},
-	"features": {
-		"ghcr.io/devcontainers-contrib/features/apt-get-packages:1": {
-			"packages": "python2"
-		}
-	},
-
-	// Use 'forwardPorts' to make a list of ports inside the container available locally.
-	// "forwardPorts": [],
-
-	// Use 'postCreateCommand' to run commands after the container is created.
-	"postCreateCommand": "sudo ln -s /usr/bin/python2.7 /usr/bin/python; curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output /tmp/get-pip.py && sudo python /tmp/get-pip.py && pip install --user -r requirements-dev.txt",
-
-	// Configure tool-specific properties.
-	"customizations": {
-		"vscode": {
-			"extensions": [
-				"mikestead.dotenv",
-				"EditorConfig.EditorConfig",
-				"GitHub.vscode-pull-request-github",
-				"hbenl.vscode-test-explorer",
-				"redhat.vscode-xml",
-				"ninoseki.vscode-pylens"
-			]
-		}
-	}
-
-	// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
-	// "remoteUser": "root"
-}
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index d0800795..1940fab3 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -12,7 +12,7 @@ jobs:
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        py_version: [ 'py2', 'py3' ]
+        py_version: [ 'py3' ]
     steps:
       - name: Checkout repository
         uses: actions/checkout@v4
diff --git a/.github/workflows/codeql.yaml b/.github/workflows/codeql.yaml
index 21253920..8c3b8301 100644
--- a/.github/workflows/codeql.yaml
+++ b/.github/workflows/codeql.yaml
@@ -18,7 +18,7 @@ jobs:
       fail-fast: false
       matrix:
         language: [ 'python' ]
-        version: ['2.7', '3.9']
+        version: ['3.9']
     steps:
       - name: Checkout repository
         uses: actions/checkout@v4
@@ -30,22 +30,10 @@ jobs:
           queries: +security-and-quality
 
       - name: Set up Python ${{ matrix.version }}
-        if: matrix.version != '2.7'
         uses: actions/setup-python@v4
         with:
           python-version: ${{ matrix.version }}
 
-      - name: Set up Python 2.7
-        if: matrix.version == '2.7'
-        run: |
-          sudo apt-get update
-          sudo apt-get install -y \
-            python2.7 python2.7-dev python2-pip-whl
-          sudo ln -sf python2.7 /usr/bin/python
-          export PYTHONPATH=`echo /usr/share/python-wheels/pip-*py2*.whl`
-          sudo --preserve-env=PYTHONPATH python -m pip install --upgrade pip setuptools wheel
-          sudo chown -R $USER /usr/local/lib/python2.7
-
       - name: Autobuild
         uses: github/codeql-action/autobuild@v2
 
diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml
index b8015c56..dbb6a05a 100644
--- a/.github/workflows/publish.yaml
+++ b/.github/workflows/publish.yaml
@@ -8,7 +8,7 @@ jobs:
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        py_version: [ 'py2', 'py3' ]
+        py_version: [ 'py3' ]
     steps:
       - name: Update Draft
         uses: release-drafter/release-drafter@v6.0.0
diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml
index 1c93d06c..c6a83592 100644
--- a/.github/workflows/test.yaml
+++ b/.github/workflows/test.yaml
@@ -16,33 +16,19 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        py_version: ['2.7', '3.9', '3.11', '3.12']
+        py_version: ['3.9', '3.11', '3.12']
         os: [ubuntu-latest, windows-latest]
-        exclude:
-          - os: windows-latest
-            py_version: '2.7'
+
     runs-on: ${{ matrix.os }}
     steps:
       - name: Checkout repository
         uses: actions/checkout@v4
 
       - name: Set up Python ${{ matrix.py_version }}
-        if: matrix.py_version != '2.7'
         uses: actions/setup-python@v4
         with:
           python-version: ${{ matrix.py_version }}
 
-      - name: Set up Python 2.7
-        if: matrix.py_version == '2.7'
-        run: |
-          sudo apt-get update
-          sudo apt-get install -y \
-            python2.7 python2.7-dev python2-pip-whl
-          sudo ln -sf python2.7 /usr/bin/python
-          export PYTHONPATH=`echo /usr/share/python-wheels/pip-*py2*.whl`
-          sudo --preserve-env=PYTHONPATH python -m pip install --upgrade pip setuptools wheel
-          sudo chown -R $USER /usr/local/lib/python2.7
-
       - name: Install dependencies
         run: |
           python -m pip install --upgrade pip