From 944ac02ec65ea016b73555e9d4a5211762c2a3e1 Mon Sep 17 00:00:00 2001
From: Trenton Holmes <797416+stumpylog@users.noreply.github.com>
Date: Thu, 29 Feb 2024 13:37:25 -0800
Subject: [PATCH] Updates development tool versions

---
 .pre-commit-config.yaml |  4 ++--
 CHANGELOG.md            |  6 +++++-
 pyproject.toml          | 34 ++++++++++++++++++----------------
 3 files changed, 25 insertions(+), 19 deletions(-)

diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 478b4a5..5ff0128 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -43,10 +43,10 @@ repos:
       - id: codespell
   # Python hooks
   - repo: https://github.com/astral-sh/ruff-pre-commit
-    rev: 'v0.1.11'
+    rev: 'v0.3.0'
     hooks:
       - id: ruff
   - repo: https://github.com/psf/black-pre-commit-mirror
-    rev: 23.12.1
+    rev: 24.2.0
     hooks:
       - id: black
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9d15c20..bdf14ac 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,7 +17,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 
 ### Deprecated
 
-- All options deprecated in Gotenberg 8 have been removed and will raise a DeprecationWarning
+- All options deprecated in Gotenberg 8 will raise a DeprecationWarning
+
+### Changed
+
+- Development tools updated
 
 ## [0.5.0] - 2024-01-11
 
diff --git a/pyproject.toml b/pyproject.toml
index 5c68e57..8900406 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -28,7 +28,7 @@ classifiers = [
   "Programming Language :: Python :: Implementation :: PyPy",
 ]
 dependencies = [
-  "httpx[http2] ~= 0.25; python_version >= '3.9'",
+  "httpx[http2] ~= 0.27; python_version >= '3.9'",
   "httpx[http2] ~= 0.24; python_version < '3.9'",
   "typing-extensions; python_version < '3.11'"
 ]
@@ -53,11 +53,11 @@ exclude = [
 
 [tool.hatch.envs.default]
 dependencies = [
-  "coverage[toml] >= 7.3",
-  "pytest >= 7.4",
+  "coverage[toml] ~= 7.4",
+  "pytest ~= 8.0",
   "pytest-sugar",
   "pytest-env",
-  "pytest-httpx ~= 0.26; python_version >= '3.9'",
+  "pytest-httpx ~= 0.27; python_version >= '3.9'",
   "pytest-httpx ~= 0.22; python_version < '3.9'",
   "pikepdf",
   "python-magic",
@@ -89,7 +89,7 @@ cov = [
 template = "pre-commit"
 detached = true
 dependencies = [
-  "pre-commit>=3.5.0",
+  "pre-commit ~= 3.6.0",
 ]
 
 [tool.hatch.envs.pre-commit.scripts]
@@ -100,9 +100,9 @@ update = ["pre-commit autoupdate"]
 template = "docs"
 detached = true
 dependencies = [
-  "mkdocs-material[imaging]~=9.5.2",
-  "mike~=2.0.0",
-  "mkdocs-minify-plugin~=0.7.1"
+  "mkdocs-material[imaging] ~= 9.5.2",
+  "mike ~= 2.0.0",
+  "mkdocs-minify-plugin ~= 0.7.1"
 ]
 
 [tool.hatch.envs.docs.scripts]
@@ -120,9 +120,9 @@ deploy = [
 [tool.hatch.envs.lint]
 detached = true
 dependencies = [
-  "black>=23.9.1",
-  "mypy>=1.6.0",
-  "ruff>=0.1.0",
+  "black ~= 24.2.0",
+  "mypy ~= 1.8.0",
+  "ruff ~= 0.3.0",
   "httpx",
 ]
 
@@ -133,12 +133,12 @@ typing = [
   ]
 style = [
   "ruff --version",
-  "ruff {args:.}",
+  "ruff check {args:.}",
   "black --check --diff {args:.}",
 ]
 fmt = [
   "black {args:.}",
-  "ruff {args:.}",
+  "ruff check {args:.}",
   "style",
 ]
 all = [
@@ -156,6 +156,8 @@ fix = true
 output-format = "grouped"
 target-version = "py38"
 line-length = 120
+
+[tool.ruff.lint]
 # https://docs.astral.sh/ruff/rules/
 extend-select = [
   "A",
@@ -218,14 +220,14 @@ ignore = [
   "TD002", "TD003"
 ]
 
-[tool.ruff.isort]
+[tool.ruff.lint.isort]
 force-single-line = true
 known-first-party = ["gotenberg_client"]
 
-[tool.ruff.flake8-tidy-imports]
+[tool.ruff.lint.flake8-tidy-imports]
 ban-relative-imports = "all"
 
-[tool.ruff.per-file-ignores]
+[tool.ruff.lint.per-file-ignores]
 # Tests can use magic values, assertions, and relative imports
 "tests/**/*" = ["PLR2004", "S101", "TID252"]