Comments (5)
Fixed in https://crates.io/crates/cargo-public-api/0.31.0
from cargo-public-api.
Thank you a lot! I have tried version 0.31.0 and the results were great. I am now able to diff the API surface of skia-safe as a pre-release check and immediately found some inconsistencies in the current master.
from cargo-public-api.
Thank you very much for taking the time to report this issue, and especially for your minimal reproducer. I have done some debugging, and the problem seems to be that for items in paths, generic parameters are ignored. Only the name of the item name is used if it is part of a path:
Clearly a somewhat big bug. I'm surprised it has not been noticed before. Instead of output.push(token_fn(name.to_string()))
we probably need to call a higher-level rendering function like fn token_stream()
, but refactor the code to avoid recursion.
from cargo-public-api.
Oops, GitHub thought #430 was a fix. It wasn't...
from cargo-public-api.
PR with fix: #431
@pragmatrix If you want to test the fix already now on your real code you can do like this:
- Check out my branch with the fix
- Run the below command (but change
Cargo.toml
path of course)
$ cargo run -- --manifest-path ~/src/lib/Cargo.toml --omit blanket-impls,auto-trait-impls,auto-derived-impls
pub mod lib
pub struct lib::Handle<T>(_)
impl lib::Handle<u32>
pub fn lib::Handle<u32>::get_u32() -> u32
pub type lib::HU32 = lib::Handle<u32>
from cargo-public-api.
Related Issues (20)
- Resolve `Self` to concrete type to avoid unnecessary diffs HOT 6
- Probable bug in `Builder::clear_toolchain` HOT 1
- Add check for presence of dependencies in the public API HOT 3
- Support sparse creates.io registry HOT 5
- `serenity:all` re-exports triggers endless RAM-eating loop HOT 8
- Failure with `nightly-2023-05-24`
- Simplify diff when moving an item to a different inherent impl while changing it HOT 11
- Error if the library target name is different than the package name HOT 2
- Installation instructions on README can be clarified HOT 2
- Make error message more helpful when `rustup` is not in `PATH` HOT 15
- New `rustdoc-json` minor release? HOT 2
- Add binaries to the releases to support taiki-e/install-action HOT 5
- Diffing public API against a published crate with `[package] name` != `[lib] name` miscalculates the rustdoc JSON path and fails HOT 4
- Output JSON? HOT 7
- Bump minimum supported nightly version HOT 4
- Features in combination with diff HOT 13
- `constant literals have a type` error HOT 8
- [Status: Completed] Move project from https://github.com/Enselic/cargo-public-api to https://github.com/cargo-public-api/cargo-public-api HOT 1
- Unknown variant `lifetime_predicate` HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cargo-public-api.