Repository: odashi/cloud-storage-mocker (language: python)

Issue:
Cannot install using Python 3.12.1
The Python requirement in `./pyproject.toml` is very restrictive, preventing installation on recent versions of Python.

```
ERROR: Ignored the following versions that require a different python version: 0.0.1a1 Requires-Python <3.12,>=3.10; 0.0.1a2 Requires-Python <3.12,>=3.10; 0.0.1a3 Requires-Python <3.12,>=3.10; 0.0.1a4 Requires-Python <3.12,>=3.10; 0.0.1a5 Requires-Python <3.12,>=3.10; 0.1.0 Requires-Python <3.12,>=3.10; 0.2.0 Requires-Python <3.12,>=3.10; 0.2.1 Requires-Python <3.12,>=3.10; 0.3.0 Requires-Python <3.12,>=3.10; 0.3.1 Requires-Python <3.12,>=3.10
```


Discussion / hints:

Fix patch:
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index afd2025..35b64b8 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -33,7 +33,7 @@ jobs:
       - name: Set up Python
         uses: actions/setup-python@v4
         with:
-          python-version: "3.x"
+          python-version: "3.11"
       - name: Install dependencies
         run: |
           python -m pip install --upgrade pip
@@ -48,7 +48,7 @@ jobs:
       - name: Set up Python
         uses: actions/setup-python@v4
         with:
-          python-version: "3.x"
+          python-version: "3.11"
       - name: Install dependencies
         run: |
           python -m pip install --upgrade pip
@@ -63,7 +63,7 @@ jobs:
       - name: Set up Python
         uses: actions/setup-python@v4
         with:
-          python-version: "3.x"
+          python-version: "3.11"
       - name: Install dependencies
         run: |
           python -m pip install --upgrade pip
@@ -78,7 +78,7 @@ jobs:
       - name: Set up Python
         uses: actions/setup-python@v4
         with:
-          python-version: "3.x"
+          python-version: "3.11"
       - name: Install dependencies
         run: |
           python -m pip install --upgrade pip
diff --git a/pyproject.toml b/pyproject.toml
index 645c81d..9bfcce0 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -8,7 +8,7 @@ build-backend = "hatchling.build"
 name = "cloud-storage-mocker"
 description = "Mocker library of Google Cloud Storage with local filesystem mounting."
 readme = "README.md"
-requires-python = ">=3.10, <3.12"
+requires-python = ">=3.10, <3.13"
 license = {text = "MIT License"}
 authors = [
     {name = "Yusuke Oda", email = "odashi@inspiredco.ai"}
@@ -24,6 +24,7 @@ classifiers = [
     "License :: OSI Approved :: MIT License",
     "Programming Language :: Python :: 3.10",
     "Programming Language :: Python :: 3.11",
+    "Programming Language :: Python :: 3.12",
 ]
 dependencies = [
     "google-cloud-storage>=2.7.0",
diff --git a/src/cloud_storage_mocker/_core.py b/src/cloud_storage_mocker/_core.py
index 1a20ddd..178e6a2 100644
--- a/src/cloud_storage_mocker/_core.py
+++ b/src/cloud_storage_mocker/_core.py
@@ -12,7 +12,7 @@
 from unittest import mock
 
 import google.cloud.exceptions
-import google.cloud.storage  # type: ignore[import]
+import google.cloud.storage  # type: ignore[import-untyped]
 
 # Obtains original objects before mocking.
 _ORIG_CLIENT = google.cloud.storage.Client
diff --git a/src/cloud_storage_mocker/_version.py b/src/cloud_storage_mocker/_version.py
index 5afb350..e4afc2e 100644
--- a/src/cloud_storage_mocker/_version.py
+++ b/src/cloud_storage_mocker/_version.py
@@ -3,4 +3,5 @@
 DON'T TOUCH THIS FILE.
 This file is replaced during the release process.
 """
+
 __version__ = "0.0.0a0"


Test patch:
diff --git a/src/cloud_storage_mocker/_core_test.py b/src/cloud_storage_mocker/_core_test.py
index 3bf980f..bb62288 100644
--- a/src/cloud_storage_mocker/_core_test.py
+++ b/src/cloud_storage_mocker/_core_test.py
@@ -4,7 +4,7 @@
 from unittest import mock
 
 import google.cloud.exceptions
-import google.cloud.storage  # type: ignore[import]
+import google.cloud.storage  # type: ignore[import-untyped]
 import pytest
 
 CopiedClient = google.cloud.storage.Client
diff --git a/src/cloud_storage_mocker/_example_test.py b/src/cloud_storage_mocker/_example_test.py
index 9843500..5a029ff 100644
--- a/src/cloud_storage_mocker/_example_test.py
+++ b/src/cloud_storage_mocker/_example_test.py
@@ -2,7 +2,7 @@
 
 import pathlib
 
-import google.cloud.storage  # type: ignore[import]
+import google.cloud.storage  # type: ignore[import-untyped]
 
 from cloud_storage_mocker import BlobMetadata, Mount
 from cloud_storage_mocker import patch as gcs_patch