commit | 84c723f5bbbf5534ea2907475691d6d6112636d0 | [log] [tgz] |
---|---|---|
author | Sean Griffin <sean@seantheprogrammer.com> | Tue Sep 18 14:46:36 2018 -0600 |
committer | Sean Griffin <sean@seantheprogrammer.com> | Tue Sep 18 14:54:12 2018 -0600 |
tree | 8053db5d16e49ca69d6c3bbc6f8790b5fa7b64a7 | |
parent | 5887a1f300e011c7973faa93d6c9417b06cf9d22 [diff] |
Add some derives for common trivial traits `impl_selectable_expression!` was one of the few pre 1.1 "fake internal derive" macros that I hadn't bothered to replace yet. I've also added a derive for `NonAggregate`, since most types which can derive `SelectableExpression` and `AppearsOnTable` can also derive `NonAggregate`. Spotting places we could remove `NonAggregate` impls was a bit trickier, since it's not always obvious at a glance whether every field had a bound or not. The tests always caught it when I messed up though, and when adding manual impls back I spotted at least one place where the impls were wrong (`count_star.in(vec![1, 2, 3])` was incorrectly treated as `NonAggregate`) I've probably missed a handful of manual impls for `AppearsOnTable` or `SelectableExpression` that could be derived, but I got all of the `NonAggregate` impls and uses of the legacy macro.
API Documentation: latest release – master branch
Diesel gets rid of the boilerplate for database interaction and eliminates runtime errors without sacrificing performance. It takes full advantage of Rust's type system to create a low overhead query builder that “feels like Rust.”
Find our extensive Getting Started tutorial at https://diesel.rs/guides/getting-started. Guides on more specific features are coming soon.
If you run into problems, Diesel has a very active Gitter room. You can come ask for help at gitter.im/diesel-rs/diesel. For help with longer questions and discussion about the future of Diesel, visit our discourse forum.
Anyone who interacts with Diesel in any space, including but not limited to this GitHub repository, must follow our code of conduct.
Licensed under either of these:
Unless you explicitly state otherwise, any contribution you intentionally submit for inclusion in the work, as defined in the Apache-2.0 license, shall be dual-licensed as above, without any additional terms or conditions.