rust-lang / crates.io

The Rust package registry
https://crates.io
Apache License 2.0
3k stars 601 forks source link

Wrong link to image in markdown #9939

Open Lorak-mmk opened 1 week ago

Lorak-mmk commented 1 week ago

Current Behavior

In our README.md file we have an image:

<img src="assets/monster+rust.png" height="150" align="right">

Link to this line: https://github.com/scylladb/scylla-rust-driver/blob/f59908c54e6b6407112311a3745e32d4bd218d0c/README.md?plain=1#L1 It has not been edited for 4 years. The image is located at https://github.com/scylladb/scylla-rust-driver/blob/main/assets/monster%2Brust.png - again, in the same place for 4 years now.

Today we released new version of the crate, and the page on crates.io no longer shows the image: https://crates.io/crates/scylla/0.15.0 Image

This is because it links to https://github.com/scylladb/scylla-rust-driver/raw/HEAD/scylla/assets/monster+rust.png - notice the additional /scylla in the URL after /HEAD

All previous releases were working correctly - most recent one in September (so it is relatively recently introduced bug): https://crates.io/crates/scylla/0.14.0 Image

In this release link leads to https://github.com/scylladb/scylla-rust-driver/raw/HEAD/assets/monster+rust.png - no more /scylla after /HEAD.

Expected Behavior

I expected the image to be correctly displayed, as it always was.

Steps To Reproduce

  1. Go to: https://crates.io/crates/scylla/0.14.0
  2. Image works
  3. Go to https://crates.io/crates/scylla/0.15.0
  4. Image doesn't work despite the markdown source being the same

Environment

Not sure it is relevant here, but I'll include it anyway.

I also verified this on Chromium

Anything else?

No response

Lorak-mmk commented 1 week ago

Oh, I see that there was already https://github.com/rust-lang/crates.io/issues/9886 And we do use readme = "../README.md" But this issue basically says "this is how cargo works, sorry" - while it did work correctly 2 months ago, so it still looks like a regression.

Turbo87 commented 1 week ago

it did work correctly 2 months ago

huh, that's interesting. I don't remember any changes that would've caused this, but I'll take a closer look tomorrow.

it still looks like a regression.

I guess that depends on the viewpoint. My assumption is that 2 months ago we might not have taken https://docs.rs/crate/scylla/0.14.0/source/.cargo_vcs_info.json#5 into account yet (?). In your case this might look like a regression, but for people with README.md files that are actually in nested folders and don't rely on the cargo magic this would have fixed their relative paths.

Lorak-mmk commented 1 week ago

it did work correctly 2 months ago

huh, that's interesting. I don't remember any changes that would've caused this, but I'll take a closer look tomorrow.

it still looks like a regression.

I guess that depends on the viewpoint. My assumption is that 2 months ago we might not have taken https://docs.rs/crate/scylla/0.14.0/source/.cargo_vcs_info.json#5 into account yet (?). In your case this might look like a regression, but for people with README.md files that are actually in nested folders and don't rely on the cargo magic this would have fixed their relative paths.

What is the correct / recommended way to use relative image link in our situation?