Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[beta API Doc] Broken links in `fmt` module #30477

Closed
phil-opp opened this Issue Dec 19, 2015 · 16 comments

Comments

Projects
None yet
8 participants
@phil-opp
Copy link
Contributor

phil-opp commented Dec 19, 2015

The formatting trait links are broken (except for Display and UpperExp): https://doc.rust-lang.org/nightly/std/fmt/#formatting-traits

Update: It seems like this was fixed on nighly. But the beta docs still have this issue.

And the link to debug_struct in the core::Debug doc seems broken, too: https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#examples (source: https://doc.rust-lang.org/nightly/src/core/fmt/mod.rs.html#359)

@alexcrichton alexcrichton added the A-docs label Dec 19, 2015

@shahn

This comment has been minimized.

Copy link
Contributor

shahn commented Dec 20, 2015

This is an issue that affects beta as well, looking for the cause/a fix.

@sfackler

This comment has been minimized.

Copy link
Member

sfackler commented Dec 20, 2015

This appears to be a rustdoc issue rather than a docs issue - documentation for all but two of the formatting traits have disappeared.

@petrochenkov

This comment has been minimized.

Copy link
Contributor

petrochenkov commented Dec 21, 2015

If something disappeared from the docs, then it may be related to #30213 (or may be not).

@phil-opp

This comment has been minimized.

Copy link
Contributor Author

phil-opp commented Dec 23, 2015

It seems like the formatting trait links were fixed in nightly. But the beta docs still have this issue. I will update the description.

@steveklabnik steveklabnik changed the title [Nightly API Doc] Broken links in `fmt` module [beta API Doc] Broken links in `fmt` module Dec 24, 2015

@steveklabnik

This comment has been minimized.

Copy link
Member

steveklabnik commented Dec 24, 2015

@brson @alexcrichton is this severe enough to justify a backport fix to beta? I'm not sure.

@sfackler

This comment has been minimized.

Copy link
Member

sfackler commented Dec 24, 2015

This seems like a case where we'd want to backport the fix, but does anyone know exactly what that is yet?

@brson

This comment has been minimized.

Copy link
Contributor

brson commented Dec 28, 2015

I'm ok backporting if somebody finds the fix.

Manishearth added a commit to Manishearth/rust that referenced this issue Dec 29, 2015

steveklabnik added a commit to steveklabnik/rust that referenced this issue Dec 29, 2015

steveklabnik added a commit to steveklabnik/rust that referenced this issue Dec 29, 2015

@brson

This comment has been minimized.

Copy link
Contributor

brson commented Jan 6, 2016

Could do a bisection to figure out what patch fixed it on nightly.

@brson brson self-assigned this Jan 7, 2016

@shahn

This comment has been minimized.

Copy link
Contributor

shahn commented Jan 9, 2016

I'm running a bisect now, let me know if you've already started doing that and I'll stop. Otherwise if you want I can take this off of you.

@shahn

This comment has been minimized.

Copy link
Contributor

shahn commented Jan 9, 2016

Hrm, since I cannot reproduce that nightly actually fixes this issue for me locally, I have to retract my offer of fixing this. Currently looking for someone who would be able to tell me how exactly the docs on rust-lang are built and deployed :/

@shahn

This comment has been minimized.

Copy link
Contributor

shahn commented Jan 10, 2016

Ouch, this is annoying. Whether the files get built depends on configure arguments. Compiling the current nightly code with ./configure without --release-channel argument (default is dev) or using =beta means this bug is present, building it with --release-channel=nightly fixes it.

Building the current beta code with --release-channel=nightly also produces the files in std, which explains why my bisect attempts led to only "bad" commits. I'm currently bisecting between stable and beta, to figure out when using --release-channel=beta stopped producing the files.

@shahn

This comment has been minimized.

Copy link
Contributor

shahn commented Jan 10, 2016

Ok, I'm not getting further here. The bisect gives non-deterministic results, at least in the way I'm doing my testing. This is what I did:

git checkout . && git clean -fdx && git submodule update
./configure --disable-valgrind --release-channel=beta && make -j8 doc
ls doc/std/fmt/trait.Octal.html

depending on the output of find (whether the file exists or not) I'm declaring a revision to be good or bad. But following this exact procedure, I have gotten both a "good" and a "bad" result for the commits 8bc43ed and 1099af7. I wonder if the current situation with beta being broken and nightly being fixed is mere coincidence, or if my testing methodology is flawed.

@brson

This comment has been minimized.

Copy link
Contributor

brson commented Jan 11, 2016

So it might be that this bug is not fixed on nightly and it's just non-deterministic. @shahn was doing builds with -j so I wonder if parallelism is introducing something non-deterministic.

@shahn

This comment has been minimized.

Copy link
Contributor

shahn commented Jan 12, 2016

I retried without -j now. I built the beta tag with --release-channel=beta for configure and a plain 'make'. Once I had the extra docs made. I ran the same thing again, they did not get created.

@shahn

This comment has been minimized.

Copy link
Contributor

shahn commented Jan 12, 2016

Another observation, if they weren't built the first time even an explicit "make doc" does not build them

@Eljay

This comment has been minimized.

Copy link
Contributor

Eljay commented Jan 12, 2016

Seeing as this is seems to be a problem with the rustdoc binary, I tried bisecting by installing nightlies through multirust and running rustdoc on libstd manually. Each build seems deterministic by itself, but which files are omitted changes between builds (I don't understand why only fmt seems to be affected though).

It seems that everything is fine up until 2015-11-26 and then 2015-11-27 onwards is broken. So the problem is likely somewhere in the range 1805bba...1727dee. That includes #30043 though so there are quite a lot of changes.

bors added a commit that referenced this issue Jan 13, 2016

Auto merge of #30870 - Eljay:issue-30477, r=alexcrichton
Fixes #30477, #30213.

The loop over reexports used to be a closure before #30043 but it's an iterator now so it should just continue instead of exiting the loop and skipping stuff.

r? @brson

@bors bors closed this in #30870 Jan 14, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.