Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Serde 0.8.0 #447

Closed
4 tasks done
dtolnay opened this issue Jul 18, 2016 · 4 comments
Closed
4 tasks done

Serde 0.8.0 #447

dtolnay opened this issue Jul 18, 2016 · 4 comments
Assignees
Labels
Milestone

Comments

@dtolnay
Copy link
Member

dtolnay commented Jul 18, 2016

Issue for tracking and discussion related to the upcoming 0.8.0 release.

Let's all do a thorough read through the entire public API and see if there is anything we do not want to live with for the next several months.

The big ticket items remaining are:

Aside from that, now is a good time for documentation improvements and code cleanup as many developers will be looking at docs as they migrate from 0.7.

@dtolnay dtolnay added this to the v0.8.0 milestone Jul 18, 2016
@oli-obk
Copy link
Member

oli-obk commented Jul 18, 2016

This is a lot of tedious work because we have 17 implementations in the codebase and Deserializer has 31 methods. Let's also look at existing Deserializer implementations across GitHub and see whether there are any common helpers

is it possible to specify a macro that takes method names as arguments and produces the default methods?

@dtolnay
Copy link
Member Author

dtolnay commented Jul 18, 2016

is it possible to specify a macro that takes method names as arguments and produces the default methods?

Yes, for internal use but we need to be very careful about what we make public. The reason for removing the defaults was because it is hard to know what makes a good default for a "typical" Deserializer.

@dtolnay dtolnay closed this as completed Jul 28, 2016
@dtolnay
Copy link
Member Author

dtolnay commented Jul 30, 2016

Here is what adoption looks like so far (not counting the 100+ google APIs which are really one project):

     54 ^0.7
     34 ^0.7.0
     21 ^0.6
     13 ^0.7.10
      8 ^0.8.0
      5 ^0.7.5
      5 ~0.7
      5 *
      4 ^0.7.11
      4 ~0.7.0
      3 ^0.7.9
      3 ^0.6.13
      3 >= 0.6, < 0.8
      2 ^0.8
      2 ^0.7.14
      2 ^0.6.7
      2 ^0.6.6
      2 ^0.6.11
      2 >= 0.6.1, < 0.8
      2 ~0.6.1
      2 ^0.6.0
      1 0.8.*
      1 = 0.7.9
      1 ^0.7.7
      1 ^0.7.6
      1 ~0.7.5
      1 ^0.7.15
      1 ^0.7.13
      1 0.7.*
      1 >= 0.6.6, < 0.8
      1 ^0.6.14
      1 ^0.6.10
      1 0.6.*
      1 ^0.5.3
      1 >= 0.5.0
      1 ^0.4.2
      1 ^0.4

The early adopters are:

bincode
ruma-identifiers
rust_cast
serde_json
serde_macros
serde-pickle
serde_test
serde_xml
serde_yaml
socket-io
tarpc

So 5 so far not counting the ones @oli-obk and I did.

@jimmycuadra
Copy link
Contributor

ruma-events is also using it, but not published to crates.io. Everything is working splendidly so far.

@dtolnay dtolnay added the publish label Aug 7, 2016
@dtolnay dtolnay self-assigned this Apr 9, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

3 participants