David Tolnay
6475e73b05
Less horrible logic for missing fields that unconditionally return error
2018-05-06 22:20:35 -07:00
David Tolnay
697234517d
Merge pull request #1249 from serde-rs/empty
...
Fix adjacently tagged empty tuple variant or struct variant
2018-05-06 22:20:27 -07:00
David Tolnay
3cd9d071c2
Fix adjacently tagged empty tuple variant or struct variant
2018-05-06 21:50:40 -07:00
David Tolnay
9dc05c36f0
Release 1.0.47
2018-05-06 21:39:21 -07:00
David Tolnay
972cc06fed
Format the flatten tests using rustfmt 0.6.1
2018-05-06 21:38:41 -07:00
David Tolnay
20013464f8
Merge pull request #1248 from serde-rs/flatten
...
Support flatten in enums
2018-05-06 21:37:32 -07:00
David Tolnay
2009b4da5f
Remove old flatten in enum compile-fail test
2018-05-06 21:26:40 -07:00
David Tolnay
0b72c86a35
Add tests for flatten in enums
2018-05-06 21:23:20 -07:00
David Tolnay
94b857057b
Support deserializing enums containing flatten
2018-05-06 20:41:02 -07:00
David Tolnay
979df3427b
Support serializing enums containing flatten
2018-05-06 20:14:35 -07:00
David Tolnay
978d64993e
Allow flatten attribute in enums
2018-05-06 20:14:28 -07:00
David Tolnay
5098609935
Release 1.0.46
2018-05-06 13:44:55 -07:00
David Tolnay
6374467f02
Merge pull request #1245 from serde-rs/flat
...
Support deserializing a flattened internally tagged enum
2018-05-06 13:43:44 -07:00
David Tolnay
1f9fc61b98
Merge pull request #1246 from serde-rs/internals
...
Move derive internals into serde_derive crate
2018-05-05 23:58:41 -07:00
David Tolnay
3859f58d9b
Move derive internals into serde_derive crate
...
We can continue to publish serde_derive_internals independently but
serde_derive no longer has a dependency on it. This improves compile
time of serde_derive by 7%.
2018-05-05 23:46:30 -07:00
David Tolnay
aac1c65033
Simplify implementation of flattened internally tagged enum
...
The fact that the tag entry is consumed was only observable if there is
a later flattened map field, at which point the behavior is already
confusing anyway.
#[derive(Deserialize)]
struct Example {
#[serde(flatten)]
a: InternallyTagged,
#[serde(flatten)]
rest: BTreeMap<String, Value>,
}
Before this simplification the map would receive all the fields of the
internally tagged enum but not its tag, after it receives all the fields
including the tag.
2018-05-05 22:30:46 -07:00
David Tolnay
d8120e19bc
Support deserializing a flattened internally tagged enum
2018-05-05 21:52:16 -07:00
David Tolnay
ed425b3a6f
Clean up indentation in VariantAccess doc
2018-05-05 18:40:28 -07:00
David Tolnay
d1297deb36
Format where-clauses in serde docs like rustfmt
2018-05-05 18:33:33 -07:00
David Tolnay
f263e3fcec
Format serde_derive generated where-clauses
2018-05-05 18:24:16 -07:00
David Tolnay
40479336c1
Format serde_test doc where-clauses in the style of rustfmt
2018-05-05 18:20:26 -07:00
David Tolnay
6ca4dd2c4a
Add an issue suggestion for documentation improvements
2018-05-05 10:01:54 -07:00
David Tolnay
c04c233838
Generalize the help issue type
2018-05-05 10:00:17 -07:00
David Tolnay
175c638fdc
Set up some issue templates
2018-05-05 01:45:24 -07:00
David Tolnay
97eff8e875
Format with rustfmt 0.6.1
2018-05-05 00:56:12 -07:00
David Tolnay
47676cdb49
Clean up references to Ident
2018-05-05 00:45:30 -07:00
David Tolnay
93bddb361e
Fix toplevel_ref_arg lint
2018-05-05 00:39:26 -07:00
David Tolnay
adb1c9540d
Remove a layer of wrapping in deserialize_with untagged newtype variant
2018-05-05 00:25:27 -07:00
David Tolnay
0e1d065402
Format with rustfmt 0.6.1
2018-05-05 00:18:21 -07:00
David Tolnay
8c3b52e308
Remove a layer of wrapping in deserialize_with newtype struct
2018-05-05 00:17:00 -07:00
David Tolnay
3f0d3453d8
Release 1.0.45
2018-05-02 15:18:17 -07:00
David Tolnay
b27a27ce22
Merge pull request #1241 from serde-rs/pretend
...
Pretend remote derives are not dead code
2018-05-02 15:17:19 -07:00
David Tolnay
80c0600657
Merge pull request #1243 from serde-rs/ci
...
Add a CI build on 1.15.0
2018-05-02 15:17:10 -07:00
David Tolnay
77f9e63661
Add a CI build on 1.15.0
2018-05-02 14:29:51 -07:00
David Tolnay
b78f434086
Pretend remote derives are not dead code
2018-05-02 14:23:59 -07:00
David Tolnay
893c0578dd
Release 1.0.44
2018-05-01 22:34:27 -07:00
David Tolnay
cb2b92f828
Handle flatten + deserialize_with
2018-05-01 22:25:06 -07:00
David Tolnay
47a4ffbd31
Fill in missing fully qualified paths in flatten
2018-05-01 22:24:25 -07:00
David Tolnay
d82d1707d6
Format with rustfmt 0.6.0
2018-04-30 01:42:46 -07:00
David Tolnay
89278996c5
Release 1.0.43
2018-04-23 11:23:58 -07:00
David Tolnay
ecef937e26
Merge pull request #1234 from serde-rs/newtype
...
Unpack a layer of NewtypeStruct when content is newtype
2018-04-23 11:23:21 -07:00
David Tolnay
bceda5fb18
Unpack a layer of NewtypeStruct when content is newtype
2018-04-23 11:04:42 -07:00
David Tolnay
f46a08b04e
Merge pull request #1231 from ignatenkobrain/patch-1
...
derive: bump min version of quote to 0.5.2
2018-04-22 16:48:11 -07:00
Igor Gnatenko
f3cb7c7a32
derive: bump min version of quote to 0.5.2
...
Fixes: https://github.com/serde-rs/serde/issues/1230
2018-04-22 09:22:47 +02:00
David Tolnay
af795e2e54
Release 1.0.42
2018-04-21 15:16:10 -07:00
David Tolnay
6aa07fe0d6
Merge pull request #1229 from serde-rs/cold
...
Mark error construction as cold code
2018-04-21 14:57:11 -07:00
David Tolnay
c455720f81
Mark error construction as cold code
...
This eliminates 12% of the Serde-related code in the Xi release binary
as measured by:
nm -S target/release/xi-core \
| awk '/serde/{sum += strtonum("0x"$2)} END{print sum}'
2018-04-21 14:41:14 -07:00
David Tolnay
b07a208716
Merge pull request #1228 from serde-rs/untagged
...
Reduce instantiations of Result::map in Deserialize of unit variants
2018-04-21 13:46:36 -07:00
David Tolnay
df93fab5fa
Reduce instantiations of Result::map in Deserialize of unit variants
...
This eliminates 110 instantiations of Result::map in Xi and reduces
binary size by 229 kilobytes.
2018-04-21 13:27:17 -07:00
David Tolnay
1a972d2105
Merge pull request #1227 from serde-rs/ser
...
Improve Serialize of adjacently tagged newtype variants
2018-04-21 12:10:28 -07:00