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

Spurious "Unrecognized option" message on rustdoc panic #93579

Closed
ijackson opened this issue Feb 2, 2022 · 3 comments
Closed

Spurious "Unrecognized option" message on rustdoc panic #93579

ijackson opened this issue Feb 2, 2022 · 3 comments
Labels
C-bug Category: This is a bug. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.

Comments

@ijackson
Copy link
Contributor

ijackson commented Feb 2, 2022

With a version of rustdoc affected by #93428, I observe this when this bug occurs:

rustcargo@zealot:/home/ian/Rustup/Arti/Build/arti$ cargo doc --all-features
 Documenting tor-dirmgr v0.0.4 (/volatile/rustcargo/Rustup/Arti/arti/crates/tor-dirmgr)
thread 'rustc' panicked at 'no entry found for key', src/librustdoc/passes/collect_intra_doc_links.rs:929:16
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

error: internal compiler error: unexpected panic

error: Unrecognized option: 'default-theme'

error: could not document `tor-dirmgr`

Caused by:
  process didn't exit successfully: `rustdoc --edition=2018 --crate-type lib --crate-name tor_dirmgr crates/tor-dirmgr/src/lib.rs -o /volatile/rustcargo/Rustup/Arti/arti/target/doc --cfg 'feature="default"' --cfg 'feature="memmap2"' --cfg 'feature="mmap"' --cfg 'feature="routerdesc"' --cfg 'feature="static"' --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat -C metadata=aa53d6299379729d -L dependency=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps --extern async_trait=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libasync_trait-25efcc67c068c75d.so --extern base64=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libbase64-fc54b7dac8c37ff8.rmeta --extern derive_builder=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libderive_builder-e0d29543f3ee71f0.rmeta --extern digest=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libdigest-5294b49980fdd964.rmeta --extern event_listener=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libevent_listener-e7e03de28283491f.rmeta --extern fslock=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libfslock-b312da71e00a939e.rmeta --extern futures=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libfutures-12328c3c53c18ce6.rmeta --extern hex=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libhex-52738f6114d4bb1b.rmeta --extern humantime_serde=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libhumantime_serde-a8656ada3a9f6f8c.rmeta --extern itertools=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libitertools-ed6d9e96085d6069.rmeta --extern memmap2=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libmemmap2-00f241de9244ddb8.rmeta --extern once_cell=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libonce_cell-88ef809ea5bdbc77.rmeta --extern postage=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libpostage-3cd2da63b038b761.rmeta --extern rand=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/librand-f007c982c8c51a12.rmeta --extern retry_error=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libretry_error-0d1a42193f831f72.rmeta --extern rusqlite=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/librusqlite-d24ed85c86b154d0.rmeta --extern serde=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libserde-9913dbbfcd998186.rmeta --extern signature=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libsignature-bfa06a9a193347a4.rmeta --extern thiserror=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libthiserror-e3a57847eed1a010.rmeta --extern time=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtime-974a8c2e4079d94d.rmeta --extern tor_checkable=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_checkable-e335accabe64e5a3.rmeta --extern tor_circmgr=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_circmgr-cfe77275198ffc13.rmeta --extern tor_config=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_config-f4196bf5d1cab21d.rmeta --extern tor_consdiff=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_consdiff-0616a72a65b2c3a7.rmeta --extern tor_dirclient=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_dirclient-374a51644580a5f2.rmeta --extern tor_llcrypto=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_llcrypto-a259a67655059250.rmeta --extern tor_netdir=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_netdir-77e64a6473cb5820.rmeta --extern tor_netdoc=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_netdoc-749221325fef0cc1.rmeta --extern tor_rtcompat=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtor_rtcompat-3cd44dd5107fb13d.rmeta --extern tracing=/volatile/rustcargo/Rustup/Arti/arti/target/debug/deps/libtracing-90e2cc81476e06ab.rmeta --default-theme ayu --crate-version 0.0.4` (exit status: 1)
rustcargo@zealot:/home/ian/Rustup/Arti/Build/arti$ 

Note the message

error: Unrecognized option: 'default-theme'

which seems to be entirely spurious. The output in #93428 and the dupe #93539 has

error: Unrecognized option: 'crate-version'

I think I am getting the complaint about default-theme instead of crate-version because I have that set in my rustdocflags in ~/.cargo/config. Both the complained-about options do exist, and everything works when rustdoc isn't panicking.

It seems that something must be wrong with the panic handling. It restarts argument processing somehow?

I checked a random ICE issue (93578) and it appears that rustc is not affected, or that the rustdoc "no entry found for key" panic is special, or something.

Meta

rustcargo@zealot:/home/ian/Rustup/Arti/Build/arti$ rustdoc --version --verbose
rustdoc 1.60.0-nightly (6abb6385b 2022-01-26)
binary: rustdoc
commit-hash: 6abb6385b2cb7249f67b9b3ce7522527767dd907
commit-date: 2022-01-26
host: x86_64-unknown-linux-gnu
release: 1.60.0-nightly
LLVM version: 13.0.0
rustcargo@zealot:/home/ian/Rustup/Arti/Build/arti$ 

Not including a backtrace since there seem to be plenty of these about.

(NB this bug is not about the original panic; it is about the subsequent messages. So while #93428 is relevant since it provides a convenient repro, this bug is not the same as that one.)

@ijackson ijackson added the C-bug Category: This is a bug. label Feb 2, 2022
@ijackson
Copy link
Contributor Author

ijackson commented Feb 2, 2022

@rustbot modify labels +T-rustdoc

@rustbot rustbot added the T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. label Feb 2, 2022
@ehuss
Copy link
Contributor

ehuss commented Feb 2, 2022

Thanks for the report! PR #92310 is open to fix this.

@camelid
Copy link
Member

camelid commented Feb 3, 2022

PR #92310 has been merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

4 participants