Repository: pydantic/pydantic
Pull request: remove parts of docs about i64 limits applying to python ints
## Change Summary

This removes the places where the docs still talk about ints being internally handled as i64s. As discussed in #6889 this isn't the case anymore. The "Pydantic V2 Plan" page also talks about it but I've left it as is since it's a historic page and not really part of the current docs.

## Related issue number

fix #6889

## Checklist

* [X] The pull request title is a good summary of the changes - it will be used in the changelog
* [X] Unit tests for the changes exist
* [X] Tests pass on CI
* [X] Documentation reflects the changes where applicable
* [X] My PR is ready to review, **please add a comment including the phrase "please review" to assign reviewers**


Problem statement:
Implicit int limits
### Initial Checks

- [X] I confirm that I'm using Pydantic V2

### Description

Some of the older messaging around the move to v2 and the current data conversion table in the docs say that you use i64 values to internally represent python `int`. I expected this to lead to either error messages when trying to validate numbers outside of that range or (less ideally) have them be converted to the max/min. But running the code below just prints `True` every time. Is that the intended behaviour? Are you not using i64's internally anymore?

### Example Code

```Python
class MyModel(BaseModel):
    a: int

print(MyModel(a=2**70).a == 2**70)
print(MyModel.model_validate_json(f"""{{"a": {2**70}}}""").a == 2**70)

py_int = TypeAdapter(int)

print(py_int.validate_python(2**70) == 2**70)
print(py_int.validate_json(f"{2**70}") == 2**70)
```


### Python, Pydantic & OS Version

```Text
pydantic version: 2.0.3
pydantic-core version: 2.3.0 release build profile
python version: 3.11.4 | packaged by Anaconda, Inc. | (main, Jul  5 2023, 13:47:18) [MSC v.1916 64 bit (AMD64)]
platform: Windows-10-10.0.19045-SP0
optional deps. installed: ['typing-extensions'];
```


Selected Assignee: @davidhewitt

Hints from issue discussion:
I think we recently fixed this to handle large numbers, up to the limits of python (which IIRC are ~4000 decimal digits). I think we use i64s when the value can fit, and otherwise convert to a python int. 

If there are places in the docs that you think should be updated (probably an oversight on our part), please let us know and we can fix them.

Commit message: remove mentions of i64 limits applying to python ints

Patch to review:
diff --git a/docs/errors/validation_errors.md b/docs/errors/validation_errors.md
index bcc9dd6e8bb..7c8d43f8c58 100644
--- a/docs/errors/validation_errors.md
+++ b/docs/errors/validation_errors.md
@@ -778,8 +778,7 @@ except ValidationError as exc:
 
 ## `int_parsing_size`
 
-This error is raised when attempting to parse a python value from a string outside the maximum range of a Python `int`,
-or when trying to parse an integer from JSON that is outside the valid range of a 64 bit integer:
+This error is raised when attempting to parse a python value from a string outside the maximum range of a Python `int`:
 
 ```py
 import json
@@ -802,9 +801,8 @@ except ValidationError as exc:
     #> 'int_parsing_size'
 
 # from JSON
-i64_max = 9_223_372_036_854_775_807
 try:
-    Model.model_validate_json(json.dumps({'x': -i64_max * 2}))
+    Model.model_validate_json(json.dumps({'x': too_long}))
 except ValidationError as exc:
     print(repr(exc.errors()[0]['type']))
     #> 'int_parsing_size'
diff --git a/docs/plugins/conversion_table.py b/docs/plugins/conversion_table.py
index 5093afc08e6..2d27f8bdd08 100644
--- a/docs/plugins/conversion_table.py
+++ b/docs/plugins/conversion_table.py
@@ -165,7 +165,7 @@ def filtered(self, predicate: typing.Callable[[Row], bool]) -> ConversionTable:
         strict=True,
         python_input=True,
         json_input=True,
-        condition='Max abs value `2^64` as `i64` is used internally; `bool` is explicitly forbidden.',
+        condition='`bool` is explicitly forbidden.',
         invalid_examples=[2**64, True, False],
         core_schemas=[core_schema.IntSchema],
     ),
@@ -174,7 +174,6 @@ def filtered(self, predicate: typing.Callable[[Row], bool]) -> ConversionTable:
         int,
         python_input=True,
         json_input=True,
-        condition='`i64`. Limits `numbers > (2 ^ 63) - 1` to `(2 ^ 63) - 1`.',
         core_schemas=[core_schema.IntSchema],
     ),
     Row(
@@ -182,7 +181,7 @@ def filtered(self, predicate: typing.Callable[[Row], bool]) -> ConversionTable:
         float,
         python_input=True,
         json_input=True,
-        condition='`i64`, Must be exact int, e.g. `val % 1 == 0`, raises error for `nan`, `inf`.',
+        condition='Must be exact int, e.g. `val % 1 == 0`, raises error for `nan`, `inf`.',
         valid_examples=[2.0],
         invalid_examples=[2.1, 2.2250738585072011e308, float('nan'), float('inf')],
         core_schemas=[core_schema.IntSchema],
@@ -191,7 +190,7 @@ def filtered(self, predicate: typing.Callable[[Row], bool]) -> ConversionTable:
         int,
         Decimal,
         python_input=True,
-        condition='`i64`, Must be exact int, e.g. `val % 1 == 0`.',
+        condition='Must be exact int, e.g. `val % 1 == 0`.',
         valid_examples=[Decimal(2.0)],
         invalid_examples=[Decimal(2.1)],
         core_schemas=[core_schema.IntSchema],
@@ -209,7 +208,7 @@ def filtered(self, predicate: typing.Callable[[Row], bool]) -> ConversionTable:
         str,
         python_input=True,
         json_input=True,
-        condition='`i64`, Must be numeric only, e.g. `[0-9]+`.',
+        condition='Must be numeric only, e.g. `[0-9]+`.',
         valid_examples=['123'],
         invalid_examples=['test', '123x'],
         core_schemas=[core_schema.IntSchema],
@@ -218,7 +217,7 @@ def filtered(self, predicate: typing.Callable[[Row], bool]) -> ConversionTable:
         int,
         bytes,
         python_input=True,
-        condition='`i64`, Must be numeric only, e.g. `[0-9]+`.',
+        condition='Must be numeric only, e.g. `[0-9]+`.',
         valid_examples=[b'123'],
         invalid_examples=[b'test', b'123x'],
         core_schemas=[core_schema.IntSchema],


Code review comments:
diff_hunk: @@ -778,8 +778,7 @@ except ValidationError as exc:
 
 ## `int_parsing_size`
 
-This error is raised when attempting to parse a python value from a string outside the maximum range of a Python `int`,
-or when trying to parse an integer from JSON that is outside the valid range of a 64 bit integer:
+This error is raised when attempting to parse a python value from a string outside the maximum range of a Python `int`:
path: docs/errors/validation_errors.md
text: @user1:
We still get this error message in JSON parsing, So the second line shouldn't be deleted. You need to adjust the second line I think