diff --git a/.github/workflows/conda.yml b/.github/workflows/conda.yml
index 0a4d5904e3fb6360ed6219a3c4f7e8f173cb77df..513180426bc88e5ae3964c52bbf904cefc241f16 100644
--- a/.github/workflows/conda.yml
+++ b/.github/workflows/conda.yml
@@ -12,8 +12,8 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        platform: [ubuntu-latest, windows-2016, macos-latest]
-        python-version: ["3.6", "3.8"]
+        platform: [ubuntu-latest, macos-latest]  # TODO: windows after 2016 doesn't config correctly
+        python-version: ["3.7", "3.9"]
 
     runs-on: ${{ matrix.platform }}
 
diff --git a/.github/workflows/pip.yml b/.github/workflows/pip.yml
index e6e097741141611401d2ca06ab04992ee2128571..aa74cf3160bcb6f3976823943acc1bbc4f7df384 100644
--- a/.github/workflows/pip.yml
+++ b/.github/workflows/pip.yml
@@ -15,20 +15,15 @@ jobs:
       fail-fast: false
       matrix:
         platform: [windows-latest, macos-latest, ubuntu-latest]
-        python-version: ["3.6", "3.10", "pypy-3.7"]
+        python-version: ["3.6", "3.10", "pypy-3.8"]
 
     steps:
-    - uses: actions/checkout@v2
+    - uses: actions/checkout@v3
 
-    - uses: actions/setup-python@v2
+    - uses: actions/setup-python@v3
       with:
         python-version: ${{ matrix.python-version }}
 
-    - name: Set min macOS version
-      if: matrix.python-version == 'pypy-3.7' && runner.os == 'macOS'
-      run: |
-        echo "MACOS_DEPLOYMENT_TARGET=10.9" >> $GITHUB_ENV
-
     - name: Build and install
       run: pip install --verbose .[test]
 
diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml
index f5c0a29fa6b33b94b259025300f1dbe32b35ddf7..81382ebee5558ca0289c1c07a7eb7db54778fd71 100644
--- a/.github/workflows/wheels.yml
+++ b/.github/workflows/wheels.yml
@@ -48,7 +48,7 @@ jobs:
       with:
         submodules: true
 
-    - uses: pypa/cibuildwheel@v2.3.1
+    - uses: pypa/cibuildwheel@v2.4.0
 
     - name: Verify clean directory
       run: git diff --exit-code
diff --git a/.gitignore b/.gitignore
index 78d45bdbea089d3d9b39b21d8d7790d48a3ef8ed..6d1889ea8cfe5d6aa4e5d32525d7643d8e6dea9b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -138,3 +138,5 @@ dmypy.json
 
 # Cython debug symbols
 cython_debug/
+
+_skbuild/
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 07f0f85816d707da94a8e2e05c5668364d5a1969..ccadf9269cf99b7515503d6ed023256e26051bcd 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -19,7 +19,7 @@ ci:
 repos:
 # Standard hooks
 - repo: https://github.com/pre-commit/pre-commit-hooks
-  rev: v4.0.1
+  rev: v4.1.0
   hooks:
   - id: check-added-large-files
   - id: check-case-conflict
@@ -35,27 +35,27 @@ repos:
 
 # Black, the code formatter, natively supports pre-commit
 - repo: https://github.com/psf/black
-  rev: 21.9b0
+  rev: 22.3.0
   hooks:
   - id: black
     exclude: ^(docs)
 
 # Sort your imports in a standard form
 - repo: https://github.com/PyCQA/isort
-  rev: 5.9.3
+  rev: 5.10.1
   hooks:
   - id: isort
 
 # Upgrade older Python syntax
 - repo: https://github.com/asottile/pyupgrade
-  rev: v2.29.0
+  rev: v2.31.1
   hooks:
   - id: pyupgrade
     args: ["--py36-plus"]
 
 # Changes tabs to spaces
 - repo: https://github.com/Lucas-C/pre-commit-hooks
-  rev: v1.1.10
+  rev: v1.1.13
   hooks:
   - id: remove-tabs
     exclude: ^(docs)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b8d4ee04131b3e9f946a0c60215e29615a4d0025..17efbafb1e72845a3e4aef713bfb687c842c1f5d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 3.15...3.19)
+cmake_minimum_required(VERSION 3.15...3.22)
 
 project(scikit_build_example VERSION "0.0.1")
 
diff --git a/pyproject.toml b/pyproject.toml
index ec64ba2728f148717f6f346a950a395b014e94bc..9927324d5618580e9629d72121d55c12f01f136c 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,10 +1,9 @@
 [build-system]
 requires = [
     "setuptools>=42",
-    "wheel",
-    "pybind11>=2.9.0",
+    "pybind11>=2.9.2",
     "cmake>=3.22",
-    "scikit-build>=0.13",
+    "scikit-build>=0.14",
 ]
 
 build-backend = "setuptools.build_meta"