Repository navigation
v0.11.7
Rebuild note: the graph format changed, so the first start after the upgrade builds each tree once.
Calls are linked only where the build allows them
- A Rust name reaches only its crate and the crates it depends on. A call matched by name alone linked to the one definition of that name anywhere in the tree, even in a crate the caller cannot reach. It now links only when that definition is in the caller's crate or a crate its
Cargo.tomlnames bypath(directly or through[workspace.dependencies]). - A standard method on a value of unknown type links nowhere.
x.len(),x.is_empty(),x.iter()… no longer point at a tree method of that name;find_callerslists such calls from the definition's own crate underundecided_callers. - A call to a definition the file has just renamed or removed is no longer taken as a local call, so
detect_changeslists the dangling callers in the same file too. r#nameis the namename.
Tools
find_unusedlists the definitions of Rust files nomoddeclaration reaches undernot_compiled, andoverviewnames those files. Crate roots,#[path], inline modules andinclude!are followed.overviewlists the crates of a Rust workspace and names a subsystemcrate/stem, so thelib.rsof two crates no longer read as one subsystem.affected_testspages its tests withlimit(default 50) andoffset, and for Rust names thecargo testruns that cover them.change_historyreturns the firstbody_lines(default 6) of each commit body and says how many it left out.query_graphranks an implementation before the tests that repeat its words, unless the question asks about tests.explain_node:structurally_similarlists only the nearest definitions by embedding; callers, callees and the file's other definitions follow undernearby.
Security
- Access-token hashes (SHA-256) and the random bytes of new tokens come from
ring, the library rustls already uses for TLS. Stored token hashes stay valid. SECURITY.mdstates the versioning policy and that release notes name every vulnerability a release fixes.
Install
- Homebrew:
brew install attackwave/glasir/glasir - Scoop: add the bucket
Attackwave/scoop-glasir, then runscoop install glasir