Build(deps): Update marshmallow requirement from <4,>=3.0.0 to >=3.0.0,<5
Type: Pull Request
State: Open
Association: Contributor
Comments: 3
(about 1 year ago)
(10 months ago)
part:tooling type:tech-debt
Updates the requirements on marshmallow to permit the latest version.
Changelog
Sourced from marshmallow's changelog.
4.0.0 (2025-04-16)
See :ref:
upgrading_4_0for a guide on updating your code.Features:
- Typing: Add types to all
Field <marshmallow.fields.Field>constructor kwargs (:issue:2285). Thanks :user:navignawfor the suggestion.DateTime <marshmallow.fields.DateTime>,Date <marshmallow.fields.Date>,Time <marshmallow.fields.Time>,TimeDelta <marshmallow.fields.TimeDelta>, andEnum <marshmallow.fields.Enum>accept their internal value types as valid input (:issue:1415). Thanks :user:bitdancerfor the suggestion.@validates <marshmallow.validates>accepts multiple field names (:issue:1960). Backwards-incompatible: Decorated methods now receivedata_keyas a keyword argument. Thanks :user:dpriskornfor the suggestion and :user:dharani7998for the PR.Other changes:
Typing:
Field <marshmallow.fields.Field>is now a generic type with a type argument for the internal value type.
marshmallow.fields.UUIDno longer subclassesmarshmallow.fields.String.
marshmallow.Schema.loadno longer silently fails to call schema validators when a generator is passed (:issue:1898). The typing ofdatais also updated to be more accurate. Thanks :user:ziplokk1for reporting.Backwards-incompatible: Use
datetime.date.fromisoformat,datetime.time.fromisoformat, anddatetime.datetime.fromisoformatfrom the standard library to deserialize dates, times and datetimes (:pr:2078). As a consequence of this change:
- Time with time offsets are now supported.
- YYYY-MM-DD is now accepted as a datetime and deserialized as naive 00:00 AM.
from_iso_date,from_iso_timeandfrom_iso_datetimeare removed frommarshmallow.utils.Remove
isoformat,to_iso_timeandto_iso_datetimefrommarshmallow.utils(:pr:2766).Remove
from_rfc, andrfcformatfrommarshmallow.utils(:pr:2767).Remove
is_keyed_tuplefrommarshmallow.utils(:pr:2768).Remove
get_fixed_timezonefrommarshmallow.utils(:pr:2773).Backwards-incompatible:
marshmallow.fields.Booleanno longer serializes non-boolean values (:pr:2725).Backwards-incompatible: Rename
schemaparameter toparentinmarshmallow.fields.Field._bind_to_schema(:issue:1360).Backwards-incompatible: Rename
pass_manyparameter topass_collectionin pre/post processing methods (:issue:1369).Backwards-incompatible:
marshmallow.fields.TimeDeltano longer truncates float values when deserializing (:pr:2654). This allows microseconds to be preserved, e.g... code-block:: python
from marshmallow import fieldsfield = fields.TimeDelta()
Before
field.deserialize(12.9) datetime.timedelta(seconds=12)
datetime.timedelta(seconds=12)
... (truncated)
Commits
84b1596Bump version and update changeloga715b9eBump sphinx-issues from 5.0.0 to 5.0.1 (#2819)5c136b1[pre-commit.ci] pre-commit autoupdate (#2817)df1daf0Bump sphinxext-opengraph from 0.9.1 to 0.10.0 (#2818)2fc8207@​validatesaccepts multiple field names (#1965)b7026f3Bump sphinx from 8.1.3 to 8.2.3c495e52[pre-commit.ci] pre-commit autoupdatef0c6afbAdd missing fields to all (#2809)ef06fbe[pre-commit.ci] pre-commit autoupdate (#2808)ffedbfeMerge branch '3.x-line' into dev- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Pull Request Statistics
0
0
+0
-0
Technical Details
| ID: | 973202 |
| UUID: | 3034784208 |
| Node ID: | PR_kwDOMI1fJ86UsJho |
| Host: | GitHub |
| Repository: | frequenz-floss/frequenz-quantities-python |