Skip to content

Commit 733e0ea

Browse files
authored
Drop support for marshmallow v3 (#712)
1 parent ac21a17 commit 733e0ea

5 files changed

Lines changed: 18 additions & 23 deletions

File tree

.github/workflows/build-release.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,10 @@ jobs:
1414
fail-fast: false
1515
matrix:
1616
include:
17-
- { name: "3.10", tox: py310-marshmallow3 }
18-
- { name: "3.14", tox: py314-marshmallow3 }
17+
- { name: "3.10", tox: py310 }
18+
- { name: "3.14", tox: py314 }
1919
- { name: "lowest", tox: py310-lowest }
2020
- { name: "dev", tox: py314-marshmallowdev }
21-
- { name: "mypy-ma3", tox: mypy-marshmallow3 }
2221
- { name: "mypy-madev", tox: mypy-marshmallowdev }
2322
steps:
2423
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

CHANGELOG.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
Changelog
22
---------
33

4+
unreleased
5+
++++++++++
6+
7+
Other changes:
8+
9+
* Drop support for marshmallow 3, which is EOL.
10+
411
1.5.0 (2026-04-01)
512
++++++++++++++++++
613

pyproject.toml

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@ name = "marshmallow-sqlalchemy"
33
version = "1.5.0"
44
description = "SQLAlchemy integration with the marshmallow (de)serialization library"
55
readme = "README.rst"
6-
license = { file = "LICENSE" }
7-
maintainers = [{ name = "Steven Loria", email = "sloria1@gmail.com" }]
6+
license = "MIT"
7+
maintainers = [{ name = "Steven Loria", email = "oss@stevenloria.com" }]
88
classifiers = [
99
"Intended Audience :: Developers",
10-
"License :: OSI Approved :: MIT License",
1110
"Programming Language :: Python :: 3",
1211
"Programming Language :: Python :: 3.10",
1312
"Programming Language :: Python :: 3.11",
@@ -16,10 +15,7 @@ classifiers = [
1615
"Programming Language :: Python :: 3.14",
1716
]
1817
requires-python = ">=3.10"
19-
dependencies = [
20-
"marshmallow>=3.18.0",
21-
"SQLAlchemy>=1.4.40,<3.0",
22-
]
18+
dependencies = ["marshmallow>=4.0.0", "SQLAlchemy>=1.4.40,<3.0"]
2319

2420
[project.urls]
2521
Changelog = "https://marshmallow-sqlalchemy.readthedocs.io/en/latest/changelog.html"
@@ -37,12 +33,7 @@ docs = [
3733
"sphinxext-opengraph",
3834
]
3935
tests = ["pytest", "pytest-lazy-fixtures"]
40-
dev = [
41-
{ include-group = "tests" },
42-
"tox",
43-
"tox-uv",
44-
"pre-commit>=3.5,<5.0",
45-
]
36+
dev = [{ include-group = "tests" }, "tox", "tox-uv", "pre-commit>=3.5,<5.0"]
4637

4738
[tool.uv]
4839
default-groups = ["dev"]

tox.ini

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,23 @@
11
[tox]
22
envlist=
33
lint
4-
py{310,311,312,313,314}-marshmallow3
4+
py{310,311,312,313,314}
55
py314-marshmallowdev
66
py310-lowest
7-
mypy-marshmallow{3,dev}
7+
mypy-marshmallowdev
88
docs
99

1010
[testenv]
1111
dependency_groups = tests
1212
deps =
13-
marshmallow3: marshmallow>=3.18.0,<4.0.0
1413
marshmallowdev: https://github.com/marshmallow-code/marshmallow/archive/dev.tar.gz
15-
lowest: marshmallow==3.18.0
14+
lowest: marshmallow==4.0.0
1615
lowest: sqlalchemy==1.4.40
1716
commands = pytest {posargs}
1817

19-
[testenv:mypy-marshmallow{3,dev}]
18+
[testenv:mypy-marshmallowdev]
2019
deps =
2120
mypy>=1.14.1
22-
marshmallow3: marshmallow>=3.18.0,<4.0.0
2321
marshmallowdev: https://github.com/marshmallow-code/marshmallow/archive/dev.tar.gz
2422
commands = mypy
2523

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)