summaryrefslogtreecommitdiff
path: root/dev-python/faker/files/faker-37.1.0-py314.patch
blob: 9f6931ba7a8da1d21edd36e56f1dfc2dd02a32e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
From eaad7bb42385793a0622376caf3b832a7836781e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Wed, 14 May 2025 13:17:48 +0200
Subject: [PATCH] Fix type annotations for Python 3.14

Fix type annotations for `Provider.json()` to avoid name collision
in Python 3.14.0b1 where `json` is resolved to the `json()` method
itself rather than the `json` module.  Import `JSONEncoder` directly
instead, so we can reference it without `json.`.

Fixes #2212
---
 faker/providers/misc/__init__.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/faker/providers/misc/__init__.py b/faker/providers/misc/__init__.py
index dca3363e..6ed2e958 100644
--- a/faker/providers/misc/__init__.py
+++ b/faker/providers/misc/__init__.py
@@ -9,6 +9,7 @@ import tarfile
 import uuid
 import zipfile
 
+from json import JSONEncoder
 from typing import Any, Callable, Dict, List, Literal, Optional, Sequence, Set, Tuple, Type, Union, overload
 
 from faker.exceptions import UnsupportedFeature
@@ -536,7 +537,7 @@ class Provider(BaseProvider):
         data_columns: Optional[List] = None,
         num_rows: int = 10,
         indent: Optional[int] = None,
-        cls: Optional[Type[json.JSONEncoder]] = None,
+        cls: Optional[Type[JSONEncoder]] = None,
     ) -> bytes:
         """
         Generate random JSON structure and return as bytes.
@@ -551,7 +552,7 @@ class Provider(BaseProvider):
         data_columns: Optional[List] = None,
         num_rows: int = 10,
         indent: Optional[int] = None,
-        cls: Optional[Type[json.JSONEncoder]] = None,
+        cls: Optional[Type[JSONEncoder]] = None,
     ) -> str:
         """
         Generate random JSON structure values.