Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
fail-fast: false
matrix:
os: ["ubuntu-latest"]
python_version: ["3.8", "3.9", "3.10", "3.11", "3.12", "pypy3.10"]
python_version: ["3.9", "3.10", "3.11", "3.12", "pypy3.10"]

runs-on: ${{ matrix.os }}
steps:
Expand Down
10 changes: 0 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -270,16 +270,6 @@ For convenience, some custom types are provided:
from marshmallow_dataclass.typing import Email, Url
```

When using Python 3.8, you must import `Annotated` from the typing_extensions package

```python
# Version agnostic import code:
if sys.version_info >= (3, 9):
from typing import Annotated
else:
from typing_extensions import Annotated
```

### Custom NewType declarations [__deprecated__]

> NewType is deprecated in favor or type aliases using Annotated, as described above.
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.black]
line-length = 88
target-version = ['py36', 'py37', 'py38', 'py39', 'py310', 'py310']
target-version = ['py39', 'py310', 'py310']

[tool.pytest.ini_options]
filterwarnings = [
Expand Down
3 changes: 1 addition & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
"Operating System :: OS Independent",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
Expand Down Expand Up @@ -45,7 +44,7 @@
keywords=["marshmallow", "dataclass", "serialization"],
classifiers=CLASSIFIERS,
license="MIT",
python_requires=">=3.8",
python_requires=">=3.9",
install_requires=[
"marshmallow>=3.18.0,",
"typing-inspect>=0.9.0",
Expand Down
4 changes: 2 additions & 2 deletions tests/test_mypy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
follow_imports = silent
plugins = marshmallow_dataclass.mypy
show_error_codes = true
python_version = 3.8
python_version = 3.9
env:
- PYTHONPATH=.
main: |
Expand All @@ -27,7 +27,7 @@
reveal_type(user.email) # N: Revealed type is "builtins.str"

User(id=42, email="user@email.com") # E: Argument "id" to "User" has incompatible type "int"; expected "str" [arg-type]
User(id="a"*32, email=["not", "a", "string"]) # E: Argument "email" to "User" has incompatible type "List[str]"; expected "str" [arg-type]
User(id="a"*32, email=["not", "a", "string"]) # E: Argument "email" to "User" has incompatible type "list[str]"; expected "str" [arg-type]
- case: marshmallow_dataclass_keyword_arguments
mypy_config: |
follow_imports = silent
Expand Down