|Number of watchers on Github||2471|
|Number of open issues||100|
|Average time to close an issue||3 days|
|Average time to merge a PR||3 days|
|Open pull requests||65+|
|Closed pull requests||32+|
|Last commit||3 months ago|
|Repo Created||over 2 years ago|
|Repo Last Updated||3 months ago|
|Organization / Author||diesel-rs|
|Do you use diesel? Leave a review!|
|View open issues (100)|
|View diesel activity|
|View on github|
|Latest Open Source Launches|
Trendy new open source projects in your inbox! View examples
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
Find our extensive Getting Started tutorial at https://diesel.rs/guides/getting-started. Guides on more specific features are coming soon.
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.
This release fixes a minor issue with our r2d2 support. In 1.1 we recommend that people access
r2d2 has a type called
Error, which was shadowed by our own type called
Error in that same module, making it inaccessible. This release adds an alias
PoolError to point at
Thanks to YetAnotherMinion for working on this release.
The primary focus of this release was improving the ergonomics of adding support for new types in Diesel.
For implementing new SQL types, we've added
#[derive(SqlType)] which implements many traits that you need to implement for every SQL type. See the documentation for
HasSqlType for details on this derive.
For implementing new mappings, we've added
#[derive(AsExpression)]. These derives will replace the majority of the boilerplate that was previously required when supporting new types. Adding support for new types in Diesel 1.1 should only require implementing
ToSql. The derives will handle the rest.
We've also provided
FromSql impls for
*const str and
*const [u8]. Due to the design of
FromSql, we can't provide impls for
&[u8] without a breaking change. However many impls just need to parse a string or some bytes, and don't need the allocation that would come from
Vec<u8>. This will require unsafe code to use, but should make certain implementations more efficient.
Finally, we've restructured how our serialize/deserialize modules are structured, and provided type aliases to make implementations of
ToSql more consise.
r2d2_dieselis Now Part of Diesel
Finally, this release merges
r2d2_diesel into Diesel itself. The main benefit of doing this is that we can implement
PooledConnection, removing the need for explicit
&* when using r2d2. This should also help to prevent version mismatches when changing Diesel versions.
To use the new r2d2 support, remove
r2d2_diesel from your Cargo.toml. Add the
r2d2 to your enabled features on
extern crate r2d2 with
pub use diesel::r2d2. Replace any
In addition to the headline features, there were dozens of smaller additions which should make using Diesel even better! As always, you can check the CHANGELOG for a full list of changes in this release.
In addition to the Diesel core team, 8 people contributed to this release. A huge thank you to:
We didn't quite make it for 2017, but Diesel 1.0 is finally here! There are no changes between Diesel 1.0 and 1.0.0-rc1.
1.0.0 marks stability for Diesel. While there are many more features that will be added in the future, there will be no breaking changes from this point forward without a major version bump (which we do not anticipate happening for many years).
A lot has happened since Diesel 0.1 was released over 2 years ago. While it would be impossible to list every major change that has happened since then, here are a few highlights:
infer_schema!as the go-to way to infer your database schema.
It's been a great honor to watch this community grow and thrive as this library has developed. I look forward to continuing to evolve Diesel, and seeing how far it can go.
In addition to the Diesel core team, 98 people have contributed to Diesel. A huge thank you to everyone who made this and every prior release possible: