Commit Graph

1117 Commits

Author SHA1 Message Date
Erick Tryzelaar
f771eea6e6 doc(readme): Document new 0.7 skip-serializing approach 2016-03-06 21:20:04 -05:00
Erick Tryzelaar
6b127cb8d0 Update travis travis token 2016-03-06 21:14:23 -05:00
Erick Tryzelaar
d0a63b451c Update README.md 2016-03-06 21:06:11 -05:00
Erick Tryzelaar
8296ff4bad Merge pull request #257 from frewsxcv/patch-1
Remove now default 'sudo: false'
2016-03-02 03:11:39 -08:00
David Tolnay
eaff73a541 Where clause for generic types only 2016-02-29 21:53:58 -08:00
David Tolnay
19ec8bbdb9 feat(codegen): Inhibit generic bounds if skip_serializing
The generated code for a struct like:

    struct Test<A, B, C> {
        a: X<A>
        #[serde(skip_serializing)]
        b: B
        #[serde(serialize_with="...")]
        c: C
    }

Used to be:

    impl<A, B, C> Serialize for Test<A, B, C>
        where A: Serialize,
              B: Serialize,
              C: Serialize,
    { ... }

Now it is:

    impl<A, B, C> Serialize for Test<A, B, C>
        where X<A>: Serialize,
    { ... }

Both `skip_serializing` and `serialize_with` mean the type does not need to
implement `Serialize`.
2016-02-28 19:11:51 -08:00
Corey Farwell
4d4b85318f Remove now default 'sudo: false'
`sudo: false` is now default on Travis CI
2016-02-27 15:36:29 -05:00
Erick Tryzelaar
708a310ab0 Merge pull request #254 from erickt/error-custom
feat(errors): Switch Error::custom to use Into<String>
2016-02-26 21:25:01 -08:00
Erick Tryzelaar
ec75f22396 feat(errors): Switch Error::custom to use Into<String> 2016-02-26 21:12:16 -08:00
Erick Tryzelaar
6ea632e98b doc(readme): Update readme to compile with latest serde 2016-02-26 11:17:43 -08:00
Erick Tryzelaar
4117b1c054 refactor(de): Minor shuffling of methods 2016-02-24 09:11:23 -08:00
Erick Tryzelaar
761284932b doc(readme): Remove reference to old serde_json docs 2016-02-24 09:00:21 -08:00
Erick Tryzelaar
c244535f9b Merge remote-tracking branch 'remotes/origin/v0.6.x' 2016-02-24 08:49:22 -08:00
Erick Tryzelaar
577c7657dc Merge pull request #252 from ReadmeCritic/v0.6.x
Update README URLs based on HTTP redirects
2016-02-24 08:48:44 -08:00
Erick Tryzelaar
f05875e49a Merge pull request #250 from dtolnay/yaml
YAML serde based on yaml-rust
2016-02-24 08:48:14 -08:00
Erick Tryzelaar
56400ac0ff Merge remote-tracking branch 'remotes/origin/v0.6.x' 2016-02-24 08:31:17 -08:00
ReadmeCritic
a18d8fbc09 Update README URLs based on HTTP redirects 2016-02-24 06:33:14 -08:00
David Tolnay
a0eb235f0a YAML serde based on yaml-rust 2016-02-24 00:22:48 -08:00
Erick Tryzelaar
c6cd8a09c0 Merge pull request #249 from erickt/master
Rename error trait methods, optimize bytes, don't expose primitive
2016-02-23 20:51:59 -08:00
Erick Tryzelaar
3e94bf2d13 fix(warnings): Fix clippy warnings 2016-02-23 20:38:06 -08:00
Erick Tryzelaar
f4c8ad6c3a feat(de): Don't expose primitive 2016-02-23 20:38:06 -08:00
Erick Tryzelaar
57433e1eaa feat(codegen): Optimize deserializing fields from byte strings 2016-02-23 20:38:06 -08:00
Erick Tryzelaar
118476b98b feat(de): Rename de::Error trait methods 2016-02-23 20:21:07 -08:00
Erick Tryzelaar
6caf8a0074 fix(error): Report UnknownVariant and InvalidValue
Don't unify it with syntax errors.
2016-02-23 20:21:07 -08:00
Erick Tryzelaar
96483ee54f Merge pull request #246 from erickt/master
feat(cargo): Version bump to 0.7!
2016-02-23 20:20:52 -08:00
Erick Tryzelaar
6a9216f26a Merge pull request #248 from Yoric/v0.6.x
Resolves #183 - Serialize and Deserialize for PhantomData
2016-02-23 20:20:23 -08:00
David Rajchenbach-Teller
4bba342e42 Resolves #183 - Serialize and Deserialize for PhantomData 2016-02-23 21:43:50 +01:00
Erick Tryzelaar
2987b0d10a Merge pull request #245 from erickt/master
feat(serde): Add hooks for fixed-sized arrays
2016-02-23 05:32:56 -08:00
Erick Tryzelaar
d6a50b8977 feat(cargo): Version bump to 0.7! 2016-02-23 05:26:07 -08:00
Erick Tryzelaar
76b3dead9b feat(serde): Add hooks for fixed-sized arrays
Closes #244
2016-02-23 05:15:44 -08:00
Erick Tryzelaar
d24b2c86f2 Tagging for release
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJWyzcUAAoJEKwwZL55kszf9K8H/2Ab+jvc5xvmi7no+iIpX7me
 9uMo7Fbj1NY16GPPiApiZSCArX5/Dhqikoje/8xKbpJIf8GwTWxUB8HVTaiiZuAa
 KMC3kJP/vbnnJuoTtzZPW7wLQHBQudefDh7HsMF1wQ3zFqICvHkoQlwwvm7OCusJ
 q11tYZfeZTtaCnpF5SQpilvhO3kb5beDmuyHLM9w9pZlVzk+9jg+NiZbwkG7vv3K
 1I35F6UFFmS+rN/Rq7XnuZRrs67b13qpREwAbprV54CD44ENGHSh83uYAc8x7kQr
 cM0qs+3SNslXzz9cwkrUi5O9WOjhgUVo9AaW901oeFy/xEHNHOBYESI5cd3ISCY=
 =WfrH
 -----END PGP SIGNATURE-----

Merge tag 'v0.6.15'

Tagging for release
2016-02-22 08:32:05 -08:00
Erick Tryzelaar
b6965ecde8 feat(cargo): Version bump 2016-02-22 08:15:17 -08:00
Erick Tryzelaar
b3d5de3b92 Merge pull request #243 from erickt/master
feat(de): Remove dependency on the `num` crate.
2016-02-22 08:08:23 -08:00
Erick Tryzelaar
49b0bfd257 feat(de): Remove dependency on the num crate. 2016-02-21 21:22:58 -08:00
Erick Tryzelaar
1132c0b0e1 Merge pull request #242 from erickt/master
feat(impls): Add impls for std::net::Ip{,v4,v6}Addr
2016-02-21 20:47:38 -08:00
Erick Tryzelaar
4cb5ee0678 feat(impls): Add impls for std::net::SocketAddr{,V4,V6} 2016-02-21 20:21:21 -08:00
Erick Tryzelaar
b257084f3a feat(impls): Add impls for std::net::Ip{,v4,v6}Addr 2016-02-21 20:21:21 -08:00
Erick Tryzelaar
c03587f0bf Merge remote-tracking branch 'remotes/origin/v0.6.x' 2016-02-21 20:05:38 -08:00
Erick Tryzelaar
96526dfd66 Merge pull request #241 from erickt/master
feat(de): Add an Error::unknown_variant error.
2016-02-21 17:42:02 -08:00
Erick Tryzelaar
740865b637 feat(de): Add an Error::unknown_variant error.
Closes #169
2016-02-21 16:26:52 -08:00
Erick Tryzelaar
4d10eef55d doc(serde): Document the visit_string method
Closes #184
2016-02-21 16:03:33 -08:00
Erick Tryzelaar
7adf624dee Merge pull request #238 from erickt/skip4
Add codegen expr magic for default, skip serializing, and alternative serializers
2016-02-21 15:38:31 -08:00
Erick Tryzelaar
78cf29d1d1 feat(codegen): Switch attributes to using using paths not expressions 2016-02-21 15:28:25 -08:00
Erick Tryzelaar
3f3cffe317 Merge pull request #240 from kevinmehall/nightly
Fix cargo `nightly` feature
2016-02-21 13:28:54 -08:00
Kevin Mehall
4e7b0ac089 Fix cargo nightly feature
517c2f79b7 renamed the `nightly` feature to `nightly-testing` to
reflect that the `clippy` dependency is only required when testing.
However, the code also uses `#[cfg(feature = "nightly")]` to enable
trait impls for feature-gated types. This commit restores that
functionality and fixes a few `cfg_attr`s that refer to clippy lints.
2016-02-21 13:01:04 -08:00
Erick Tryzelaar
0c35ce0a4f feat(codegen): Improve error messages in annotations 2016-02-21 09:54:03 -08:00
Erick Tryzelaar
dbd05ae9cc doc(annotations): Add docs for the latest documentation 2016-02-18 19:32:10 -08:00
Erick Tryzelaar
c268eb2258 feat(codegen): Remove #[serde(skip_serializing_if_{none,empty})]
`#[serde(skip_serializing_if="...")]` can replace this functionality.
2016-02-18 19:31:43 -08:00
Erick Tryzelaar
40f8e6b061 feat(codegen): Add #[serde(deserialize_with="...")]
This allows a field to be deserialized with an expression instead
of the default deserializer. This simplifies deserializing a struct
or enum that contains an external type that doesn't implement
`serde::Deserialize`. This expression is passed a variable
`deserializer` that needs to be used to deserialize the expression.
2016-02-18 19:13:55 -08:00
Erick Tryzelaar
001cb7ab01 feat(codegen): Add #[serde(serialize_with="...")]
This allows a field to be serialized with an expression instead
of the default serializer. This simplifies serializing a struct
or enum that contains an external type that doesn't implement
`serde::Serialize`. This expression is passed a variable
`serializer` that needs to be used to serialize the expression.
2016-02-18 19:13:55 -08:00