rusqlite
Cargo
Our great sponsors
rusqlite | Cargo | |
---|---|---|
13 | 192 | |
1,889 | 9,688 | |
4.2% | 3.9% | |
7.9 | 9.9 | |
5 days ago | 1 day ago | |
Rust | Rust | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rusqlite
-
Embedded SQL database
As far as I know, the only option for an embedded SQL database is SQLite. The most actively maintained one, for rust, seems to be rusqlite (https://github.com/rusqlite/rusqlite).
-
SQLite extension to query Excel (.xlsx, .xls, .ods) files as virtual tables
Yes, but it's readonly. Also they did not merge loadable extensions support, which I need - https://github.com/rusqlite/rusqlite/pull/910
-
Rust for competitive programming
rusqlite 0.27.0, which looks like it's still the latest version
-
Store SQLite in Cloudflare Durable Objects
SQLite is written in C, while workers is based on V8 isolates, so it mainly runs JavaScript. Fortunately, it also supports running WASM through initialising and calling WASM modules via JavaScript. Emscripten can be used to build WASM from C, but I'd rather use it through Rust (using rusqlite), so this is what I focus on right away. Workers can also be written entirely in Rust using worker-rs.
-
I wrote a telegram bot in rust - a brief story and bot description
For the persistence layer I used Rusqlite and r2d2-sqlite for creating a connection pool.
-
Is the chrono crate unmaintained?
There are feature flags in chrono that make possible to disable usage of time: https://github.com/rusqlite/rusqlite/pull/1031
-
Hey Rustaceans! Got an easy question? Ask here (10/2021)!
I want to use arrays in sqlite but the documentations for rusqlite doesn't have examples of how to use the extra array feature. How do I store and search text arrays in rusqlite?
-
New chapter on the series - Writing a SQLite clone from scratch in Rust
Since this is a learning project, its probably not a good idea to count on this being production ready. If you need SQLite in your project checkout rusqlite. And for cross compiling issues simply use its bundled feature, makes it a breeze.
Cargo
-
Next Rust Compiler
> It defaulted to the fully backwards compatible version (vs 2021)
Cargo defaults to the 2021 edition, and has ever since it was stabilized: https://github.com/rust-lang/cargo/pull/9800
Either you accidentally installed a version of cargo from before the 2021 edition was stabilized, or you ran "cargo new --edition ", or you started by cloning an out of date project of some sort, in which case it's not really an issue with "defaults".
-
One Crate a Day: has-flag
Cargo, which is the out-of-the-box tool for running tests, installing packages/dependencies, and more, has conventions for building libraries versus binaries.
-
Rust 2030 Christmas list: Subcrate dependencies
Between workspace inheritance and tools like cargo-release, this has become trivial for me. If people don't want to use a third-party tool, we can always be working on improving cargo further, like publishing more than one crate at a time or merging support for modifying versions.
-
Security advisory for Cargo (CVE-2022-46176)
It looks like this might be the commit that fixes the vulnerability: https://github.com/rust-lang/cargo/commit/c9bff1ec6d147e0254ecfcafe6325ef1643edb6d
On other OSs than Linux, the situation is different, e.g. there was a crates.io outage for windows because OCSP servers weren't responding.
- rustup が "error: linker `cc` not found" で失敗 - Alpine Linux 3.17 (Rust 1.66)
-
Fix rustup failed with "error: linker `cc` not found" on Alpine Linux 3.17 (Rust 1.66)
Well, on the way, I met the error below when testing a cargo project:
- Rust on Arch Linux: 始め方
-
Rust on Arch Linux: Getting started
Rust has a lot of features such as functional programming paradigm and zero cost abstractions (!). As to speed and safety, it doesn't have GC, garbage collection, so it runs with much smaller memory and cleanly. As to productivity, it has the nice package manager called cargo and also a tool chain called rustup.
-
Welcome to Comprehensive Rust
Macro expansion is slow, but only noticeably in the specific situation of a) third-party proc macros, b) a debug build, and c) a few thousand invocations of said proc macros. This is because debug builds compile proc macros in debug mode too, so while the macro itself compiles quickly (because it's a debug build), it ends up running slowly (because it's a debug build).
I know this from observing this on a mostly auto-generated crate that had a couple of thousand types with `#[derive(serde::)]` on each. [1]
This doesn't affect most users, because first-party macros like `#[derive(Debug)]` etc are not slow because they're part of rustc and are thus optimized regardless of the profile, and even with third-party macros it is unlikely that they have thousands of invocations. Even if it is* a problem, users can opt in to compiling just the proc macros in release mode. [2]
What are some alternatives?
SQLite - Interface to SQLite
rust-sqlite3 - Rustic bindings for sqlite3
wasm-sqlite - [Experimental] SQLite compiled to WASM with pluggable page storage.
RustCMake - An example project showing usage of CMake with Rust
Clippy - A bunch of lints to catch common mistakes and improve your Rust code. Book: https://doc.rust-lang.org/clippy/
r2d2 - A generic connection pool for Rust
rustsqlite
opencv-rust - Rust bindings for OpenCV 3 & 4
cargo-check
RustScan - 🤖 The Modern Port Scanner 🤖
crates.io - The Rust package registry
cargo-outdated - A cargo subcommand for displaying when Rust dependencies are out of date