cargo-semver-checks
docs.rs
cargo-semver-checks | docs.rs | |
---|---|---|
18 | 139 | |
921 | 943 | |
- | 0.3% | |
9.4 | 9.5 | |
9 days ago | 9 days ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
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.
cargo-semver-checks
-
Semver violations are common, better tooling is the answer
If you'd like to dig deeper, here are some links:
- cargo-semver-checks: https://github.com/obi1kenobi/cargo-semver-checks
- Trustfall query engine, which powers cargo-semver-checks: https://github.com/obi1kenobi/trustfall
- Trustfall playground, where you can query Rust library APIs in your browser -- for example, "which structs in `itertools` are importable by more than one path": https://play.predr.ag/rustdoc#?f=2&q=*3-Structs-importable-f...
- 10min conference talk on Trustfall: https://www.hytradboi.com/2022/how-to-query-almost-everythin...
I'm also giving a talk at P99 CONF in a few months about how Trustfall's new optimizations API made cargo-semver-checks over 2300x faster: https://twitter.com/PredragGruevski/status/16893002495908003...
- Cargo-semver-checks: Scan your Rust crate for semver violations
- cargo-semver-checks v0.20 and Trustfall v0.4 released — semver-check up to 2354x faster
-
err-as-you-go crate - anyhow meets thiserror
I strongly recommend that anybody creating new error types for public APIs read Study of std::io::Error by u/matklad to see some ways that error types can [need to] be future-proofed. I don't know if cargo-semver-checks can catch these issues when they're generated by a macro, but it'd be something people using this crate should carefully look into.
-
Re-exporting an enum with a type alias is breaking, but not major
cargo-semver-checks will implement a check for cases like this, and many other hazards like it. The check will be major, or minor, or just a hazard — whatever the overall community decides is right.
-
cargo-semver-checks v0.18.0: rustdoc caching, new lints & more
Full release notes: https://github.com/obi1kenobi/cargo-semver-checks/releases/tag/v0.18.0
-
cargo-semver-checks v0.17 is out: correct re-export handling
Release notes, TL;DR: Rust 1.65+ only, no more false positives due to moved+re-exported items.
- Semver implications of `#[non_exhaustive]` behavior on tuple/unit enum variants · Issue #304 · obi1kenobi/cargo-semver-checks
docs.rs
-
Using GenAI to improve developer experience on AWS
Working in combination with CodeWhisperer in your IDE, you can send whole code sections to Amazon Q and ask for an explanation of what the selected code does. To show how this works, we open up the file.rs file cloned from this GitHub repository. This is part of an open source project to host documentation of crates for the Rust Programming Language, which is a language we are not familiar with.
-
TSDocs.dev: type docs for any JavaScript library
Looks like a great initiative – I wish there was a reliable TS/JS equivalent of https://docs.rs (even considering rustdoc's deficiencies[1]).
I went through this exercise recently and so far my experience with trying to produce documentation from a somewhat convoluted TS codebase[2] has been disappointing. I would claim it's a consequence of the library's public (user-facing) API substantially differing from how the actual implementation is structured.
Typedoc produces bad results for that codebase so sphinx-js, which I wanted to use, doesn't have much to work with. I ultimately documented things by hand, for now, the way the API is meant to be used by the user.
Compare:
https://ts-results-es.readthedocs.io/en/latest/reference/api...
vs
https://tsdocs.dev/docs/ts-results-es/4.1.0-alpha.1/index.ht...
-
How did I need to know about feature rwh_05 for winit?
Rust Search Extension adds a section on docs.rs menubar which lists the features of a crate in a nice and easy to access format.
-
Embassy on ESP: GPIO
📝 Note: At the time of writing this post, I couldn't really locate the init function docs.rs documentation. It didn't seem easily accessible through any of the current HAL implementation documentation. Nevertheless, I reached the signature of the function through the source here.
-
First Rust Package - Telegram Notification Framework (Feedback Appreciated)
Rust Crates are a Game-Changer 🎮:The ease of releasing a crate with `cargo publish` and the convenience of rolling out new versions amazed me. The auto-generated docs on Docs.rs. is an amazing tool, especially with docstring formatting. Doc tests serve as a two-fold tool for documenting the code and ensuring it's up-to-date.
-
Grimoire: Open-Source bookmark manager with extra features
I've found I manually type out certain subsets of URLs where possible[0], maybe that's subconsciously associated with my impression that Google Search results have gotten worse and worse over the years.
[0] https://en.wiktionary.org/wiki/ and https://docs.rs/ come to mind.
-
Released my first crate ~20 hours ago; already downloaded 12 times. Who would know about it?
docs.rs also downloads you crate automatically to generate docs and I would guess lib.rs does something similar
- Docs.rs Is Down
-
Managed to land a junior role need help!
There are also a few key sites you'll want to keep in your back pocket at all times: - The Standard Library Documentation has complete documentation for every std library function in Rust - crates.io is a repository for all third-party packages, and docs.rs has human-readable documentation for the overwhelming majority of them - The Rust Cookbook has some code examples for common tasks you may need to perform - Make sure you are using clippy, which is available through Rustup and can be run with cargo clippy as a replacement to cargo check, it adds additional lints for your Rust code and is very helpful for teaching many of the best practices
-
How do you like code documentation inline in the source code vs. as separate guides, or how would you do it?
OTOH, source-code-generated-docs normalize how code docs are, like the rust docs.rs paradigm, so it sort of forces or encourages package creators/maintainers to write docs.
What are some alternatives?
octosql-plugin-postgres
crates.io - The Rust package registry
ddl-diff - Generates SQL migrations by parsing and diffing DDL
serenity - A Rust library for the Discord API.
octosql-plugin-random_data - OctoSQL plugin serving random data
tui-input - TUI input library supporting multiple backends, tui-rs and ratatui
prql-query - Query and transform data with PRQL
config-rs - ⚙️ Layered configuration system for Rust applications (with strong support for 12-factor applications).
argfile - Load additional CLI args from file
bevy - A refreshingly simple data-driven game engine built in Rust
go-sqlite3-stdlib - A standard library for mattn/go-sqlite3 including best-effort date parsing, url parsing, math/string functions, and stats aggregation functions
awesome-bevy - A collection of Bevy assets, plugins, learning resources, and apps made by the community