David Tolnay
eb3f2329af
Merge pull request #2514 from dtolnay/precompiled
...
Add experiment to produce precompiled builds of serde_derive
2023-07-18 13:48:17 -07:00
David Tolnay
9e8f14816b
Add experiment to produce precompiled builds of serde_derive
2023-07-18 13:37:36 -07:00
Mingun
4e5e55bf1c
Remove custom implementations of SeqDeserializer and MapDeserializer for enums
...
Those deserializers are used to deserialize tuple or struct variants from Content
which is used by internally tagged enums and by flatten
FlatMapDeserializer is reached in the following tests:
flatten::enum_::externally_tagged::newtype
flatten::enum_::externally_tagged::struct_from_map
flatten::enum_::externally_tagged::struct_from_seq
flatten::enum_::externally_tagged::tuple
ContentDeserializer is reached in the following tests:
test_enum_in_internally_tagged_enum
test_internally_tagged_struct_variant_containing_unit_variant
2023-07-11 22:01:48 +05:00
Mingun
4513a9e6a7
Move test_flatten_enum_newtype into new group of flatten tests - flatten::enum_::externally_tagged::newtype
2023-07-11 22:00:38 +05:00
Mingun
4f922e4e5b
Implement serialization of flattened tuple variants of externally tagged enums
...
The Container struct
struct Container {
#[serde(flatten)]
enum_field: Enum,
}
enum Enum {
Tuple(u32, u32),
}
now can be serialized to JSON as
{ "enum_field": [1, 2] }
Deserialization already works
Fixes (1):
flatten::enum_::externally_tagged::tuple
2023-07-11 22:00:10 +05:00
Mingun
993966600e
Implement tests for crate::private: 🇩🇪 :content::VariantDeserializer
...
failures (1):
flatten::enum_::externally_tagged::tuple
2023-07-11 21:59:22 +05:00
Mingun
5b96cf1bde
Use traditional order for enum variants (Unit, Newtype, Tuple, Struct) and names for tag and content fields
2023-07-11 21:58:43 +05:00
Mingun
f3d50e5209
Use FromIterator to fill HashMap
2023-07-11 21:58:14 +05:00
Mingun
ab21d4d017
Merge assert_de_tokens and assert_ser_tokens into assert_tokens
2023-07-11 21:57:49 +05:00
Mingun
f7c5d93e6a
Pull up types from function into module, unify style
2023-07-11 21:57:22 +05:00
Mingun
52a7d40e6e
Rename test types so their names reflects, what's tested
2023-07-11 21:56:53 +05:00
Mingun
348bc6b257
Move flatten enum tests to a dedicated module
...
(review with "ignore whitespace" option on and editor that shows line moves,
for example, TortoiseGitMerge)
2023-07-11 21:56:22 +05:00
David Tolnay
03da66c805
Release 1.0.171
2023-07-09 18:05:02 -07:00
David Tolnay
f75426f47e
Inline visitor_expr of unit struct deserialize impl
2023-07-09 18:03:58 -07:00
David Tolnay
662fc3861c
Add test of const-generic unit struct where-clause edge case
...
Closes #2501 .
2023-07-09 18:01:43 -07:00
David Tolnay
28c10020b9
Merge pull request #2500 from Baptistemontan/derive_generic_unit_struct
...
Allow `[derive(serde::Deserialize)]` for generic unit structs
2023-07-09 17:52:12 -07:00
Baptiste de Montangon
89c8d85de9
allow Deserialize derive to handle generic unit structs
2023-07-10 01:31:40 +02:00
David Tolnay
6502838f27
Release 1.0.170
2023-07-09 11:17:30 -07:00
David Tolnay
c93a0f335a
Merge pull request #2499 from dtolnay/strsuffix
...
Reject suffixed string literals inside serde attrs
2023-07-09 11:16:31 -07:00
David Tolnay
8264e002a7
Reject suffixed string literals inside serde attrs
2023-07-09 11:13:24 -07:00
David Tolnay
117ef22142
Add ui test with suffixed string literals in attribute
2023-07-09 11:09:38 -07:00
David Tolnay
3fb5e71c33
Release 1.0.169
2023-07-08 21:09:08 -07:00
David Tolnay
296db177e2
Pull in syn fix for issue 2414
2023-07-08 21:08:22 -07:00
David Tolnay
e4a4389177
Delete excessive tests of adjacently tagged non-string keys
2023-07-08 18:23:31 -07:00
David Tolnay
7aa0453c3b
Merge pull request 2475 from Baptistemontan/master
2023-07-08 18:07:16 -07:00
David Tolnay
09b78b24e9
Release 1.0.168
2023-07-08 17:52:06 -07:00
David Tolnay
a622b8a74a
Merge pull request #2495 from dtolnay/cautious
...
Allow larger preallocated capacity for smaller elements
2023-07-08 17:51:16 -07:00
David Tolnay
399ef081ec
Allow larger preallocated capacity for smaller elements
2023-07-08 17:43:01 -07:00
David Tolnay
3686277e14
Merge pull request #2436 from Mingun/flatten-ignored-any
...
Allow to flatten `IgnoredAny`
2023-07-06 16:35:10 -07:00
David Tolnay
807bd20a64
Release 1.0.167
2023-07-06 16:25:48 -07:00
David Tolnay
ed9a140348
Merge pull request #2444 from Mingun/dedup
...
Simplify code for generation of struct deserializers
2023-07-06 16:25:15 -07:00
David Tolnay
2de7c2bea2
Resolve redundant_static_lifetimes clippy lint from PR 2471
...
error: constants have by default a `'static` lifetime
--> serde/src/de/impls.rs:2467:24
|
2467 | pub const FIELDS: &'static [&'static str] = &["end"];
| -^^^^^^^--------------- help: consider removing `'static`: `&[&'static str]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes
= note: `-D clippy::redundant-static-lifetimes` implied by `-D clippy::all`
error: constants have by default a `'static` lifetime
--> serde/src/de/impls.rs:2467:34
|
2467 | pub const FIELDS: &'static [&'static str] = &["end"];
| -^^^^^^^---- help: consider removing `'static`: `&str`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes
error: constants have by default a `'static` lifetime
--> serde/src/de/impls.rs:2605:24
|
2605 | pub const FIELDS: &'static [&'static str] = &["start"];
| -^^^^^^^--------------- help: consider removing `'static`: `&[&'static str]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes
error: constants have by default a `'static` lifetime
--> serde/src/de/impls.rs:2605:34
|
2605 | pub const FIELDS: &'static [&'static str] = &["start"];
| -^^^^^^^---- help: consider removing `'static`: `&str`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes
2023-07-06 16:18:39 -07:00
David Tolnay
e6a4a3772e
Delete unuseful RangeFull impls
2023-07-06 16:10:21 -07:00
David Tolnay
0fca04e1a6
Merge pull request 2471 from tbu-/pr_more_ranges
2023-07-06 16:09:13 -07:00
David Tolnay
92bfc8d3af
Merge pull request #2290 from Mingun/enum-tests-and-cleanup
...
Remove unused `impl` and unnecessary struct-wrapper around tuple
2023-07-06 16:02:27 -07:00
David Tolnay
fa0312ac45
More formatting of doc tests and example code
2023-07-06 15:56:47 -07:00
David Tolnay
1920b694aa
Declare required automod dev-dependency
...
1.0.0 does not work with workspaces.
error: No such file or directory (os error 2)
--> test_suite/tests/regression.rs:2:5
|
2 | automod::dir!("tests/regression");
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: this error originates in the macro `automod::dir` (in Nightly builds, run with -Z macro-backtrace for more info)
2023-07-06 15:50:32 -07:00
David Tolnay
3bfd41d624
Format doctests using rustfmt's format_code_in_doc_comments
...
cargo fmt -- --config format_code_in_doc_comments=true
2023-07-06 15:44:32 -07:00
David Tolnay
290449f19b
Fix doc tests to work whether or not serde derive feature is used
2023-07-06 15:40:12 -07:00
David Tolnay
3a1f387e69
Merge pull request #2493 from dtolnay/docedition
...
Update documentation example code to 2021 edition
2023-07-06 15:40:03 -07:00
David Tolnay
541603ac94
Fix doc tests for 2021 edition
2023-07-06 15:36:17 -07:00
David Tolnay
0666fbfa20
Update documentation example code to 2021 edition
2023-07-06 15:17:05 -07:00
David Tolnay
ea071ae1d4
Add CI job using minimal-versions
2023-07-05 10:01:33 -07:00
David Tolnay
992a01bad2
Sort dependency features in Cargo.toml
2023-07-04 12:12:31 -07:00
David Tolnay
d640b5624f
Add no-alloc category to the macro crate also
2023-07-03 14:05:32 -07:00
David Tolnay
48479e4bae
Release 1.0.166
2023-07-03 11:33:19 -07:00
David Tolnay
dfaf48bc09
Add no-std::no-alloc category
2023-07-03 11:32:55 -07:00
David Tolnay
dcbc3e0162
Release 1.0.165
2023-07-03 04:21:59 -07:00
David Tolnay
0289d31724
Fix -Zminimal-versions build
2023-07-03 04:21:14 -07:00
David Tolnay
015e39776f
No need for single-element vec for chaining one element
2023-07-02 21:11:09 -07:00