Closed johnmave126 closed 4 months ago
Attention: Patch coverage is 79.41176%
with 7 lines
in your changes missing coverage. Please review.
Project coverage is 67.32%. Comparing base (
dee706a
) to head (94ff4c1
). Report is 7 commits behind head on master.
Files | Patch % | Lines |
---|---|---|
serde_with/src/de/skip_error.rs | 76.66% | 7 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Thanks for the PR, this looks all really good.
Regarding your questions:
serde_with::rust
. The VecSkipError
doesn't have any other variations either. In general, it is difficult to combine such different behaviors and if you combine too many you have a giant compatibility matrix.Cooool.
You are right. Under the current way of enumerating different types of map, adding support to kv-list probably means adding support for MapPreventDuplicates
and alike, which is out of the scope of this PR. I don't plan to further change this PR then.
Thanks for the work :) I try to prepare a new release this weekend.
Currently, there is a
VecSkipError
for resiliently handling heterogenous sequences. However, there are also heterogenous maps in the wild, notably the bundle version information plist from Apple.This PR implements
MapSkipError
, analogous toVecSkipError
, deserializes an entry only if both the key and value are deserializable.Notable Changes
VecSkipError
is moved to a new filede/skip_error.rs
andser/skip_error.rs
to reuseGoodOrError
withMapSkipError
.MapSkipError
works for all the maps enumerated byimpls::macros::foreach_map
.Unanswered Questions
serde_with::rust
forBTreeMap
andHashMap
?