Commit graph

4517 commits

Author SHA1 Message Date
Guillaume Gomez
b7791b0c7e
Rollup merge of #48274 - GuillaumeGomez:remove-hoedown, r=QuietMisdreavus
Remove hoedown from rustdoc

Finally the time has come!

r? @QuietMisdreavus
2018-02-18 13:20:59 +01:00
QuietMisdreavus
b3d6597855 move manual "extern crate" statements outside auto "fn main" in doctests 2018-02-17 16:51:39 -06:00
Guillaume Gomez
6661ebb4bd Remove useless comment 2018-02-17 23:47:45 +01:00
Vitaly _Vi Shukela
3c83596f04
rustdoc: Fix position of collapse-toggle on small screens 2018-02-17 20:54:00 +03:00
Vitaly _Vi Shukela
644258044d
rustdoc: Remove visual overlap between § and [+] 2018-02-17 20:46:06 +03:00
Guillaume Gomez
8aa2852399
Rollup merge of #48095 - QuietMisdreavus:doctest-assembly, r=GuillaumeGomez
add unit tests for rustdoc's processing of doctests

cc #42018

There's a lot of things that rustdoc will do to massage doctests into something that can be compiled, and a lot of options that can be toggled to affect this. Hopefully this list of tests can show off that functionality.

The first commit is slightly unrelated but doesn't touch public functionality, because i found that if you have a manual `fn main`, it adds an extra line break at the end, whereas it would trim this extra line break if it were putting a `fn main` in automatically. That first commit makes it trim out that whitespace ahead of time.
2018-02-17 14:45:20 +01:00
QuietMisdreavus
7aca34b896 add readme for librustdoc 2018-02-16 16:47:48 -06:00
Guillaume Gomez
5bd5bc3f21 Remove hoedown from rustdoc
Is it really time? Have our months, no, *years* of suffering come to an end? Are we finally able to cast off the pall of Hoedown? The weight which has dragged us down for so long?

-----

So, timeline for those who need to catch up:

* Way back in December 2016, [we decided we wanted to switch out the markdown renderer](https://github.com/rust-lang/rust/issues/38400). However, this was put on hold because the build system at the time made it difficult to pull in dependencies from crates.io.
* A few months later, in March 2017, [the first PR was done, to switch out the renderers entirely](https://github.com/rust-lang/rust/pull/40338). The PR itself was fraught with CI and build system issues, but eventually landed.
* However, not all was well in the Rustdoc world. During the PR and shortly after, we noticed [some differences in the way the two parsers handled some things](https://github.com/rust-lang/rust/issues/40912), and some of these differences were major enough to break the docs for some crates.
* A couple weeks afterward, [Hoedown was put back in](https://github.com/rust-lang/rust/pull/41290), at this point just to catch tests that Pulldown was "spuriously" running. This would at least provide some warning about spurious tests, rather than just breaking spontaneously.
* However, the problems had created enough noise by this point that just a few days after that, [Hoedown was switched back to the default](https://github.com/rust-lang/rust/pull/41431) while we came up with a solution for properly warning about the differences.
* That solution came a few weeks later, [as a series of warnings when the HTML emitted by the two parsers was semantically different](https://github.com/rust-lang/rust/pull/41991). But that came at a cost, as now rustdoc needed proc-macro support (the new crate needed some custom derives farther down its dependency tree), and the build system was not equipped to handle it at the time. It was worked on for three months as the issue stumped more and more people.
  * In that time, [bootstrap was completely reworked](https://github.com/rust-lang/rust/pull/43059) to change how it ordered compilation, and [the method by which it built rustdoc would change](https://github.com/rust-lang/rust/pull/43482), as well. This allowed it to only be built after stage1, when proc-macros would be available, allowing the "rendering differences" PR to finally land.
  * The warnings were not perfect, and revealed a few [spurious](https://github.com/rust-lang/rust/pull/44368) [differences](https://github.com/rust-lang/rust/pull/45421) between how we handled the renderers.
  * Once these were handled, [we flipped the switch to turn on the "rendering difference" warnings all the time](https://github.com/rust-lang/rust/pull/45324), in October 2017. This began the "warning cycle" for this change, and landed in stable in 1.23, on 2018-01-04.
  * Once those warnings hit stable, and after a couple weeks of seeing whether we would get any more reports than what we got from sitting on nightly/beta, [we switched the renderers](https://github.com/rust-lang/rust/pull/47398), making Pulldown the default but still offering the option to use Hoedown.

And that brings us to the present. We haven't received more new issues from this in the meantime, and the "switch by default" is now on beta. Our reasoning is that, at this point, anyone who would have been affected by this has run into it already.
2018-02-16 23:17:15 +01:00
kennytm
c89976e556
Rollup merge of #47806 - PramodBisht:feature/47801, r=steveklabnik
Changed color of struct link from #ff794d to #2dbfb8 for Rust docs

This is in reference to https://github.com/rust-lang/rust/issues/47801

here I have changed the default color of struct link for `#ff794d` to `#2dbfb8`

cc: @nagisa  @timClicks
2018-02-14 16:14:28 +08:00
kennytm
a580eefe5f
Rollup merge of #48080 - GuillaumeGomez:mobile-docs-fixes, r=QuietMisdreavus
Hide theme button under menu in mobile mode and fix top margin issue …

Fixes #48060.

r? @QuietMisdreavus
2018-02-10 14:24:05 +08:00
kennytm
d6394e51a0
Rollup merge of #48064 - Manishearth:intra-doc-bail, r=QuietMisdreavus
intra-doc-links: bail early for linky things

r? @QuietMisdreavus
2018-02-10 14:24:03 +08:00
kennytm
4139c0ac74
Rollup merge of #48051 - ollie27:rustdoc_fn_unit_return, r=QuietMisdreavus
rustdoc: Hide `-> ()` in cross crate inlined Fn* bounds
2018-02-10 14:23:59 +08:00
QuietMisdreavus
70b5c458e6 add tests for the doctest construction functionality 2018-02-09 10:40:27 -06:00
QuietMisdreavus
a58d1b5346 trim the body of doctests after partitioning 2018-02-09 09:24:23 -06:00
Guillaume Gomez
e9bcb4eb89 Hide theme button under menu in mobile mode and fix top margin issue (in mobile too) 2018-02-08 23:47:49 +01:00
Guillaume Gomez
b1b11d4589 Pass themes folder as parameter 2018-02-08 10:53:09 +01:00
Guillaume Gomez
51580d46f9 Add tests for themes 2018-02-08 10:53:09 +01:00
Guillaume Gomez
63ee1cd846 Improve output a bit in case of error 2018-02-08 10:53:09 +01:00
Guillaume Gomez
9ee69818f7 Add test when trying to add new theme 2018-02-08 10:53:09 +01:00
Guillaume Gomez
583b29f85c Handle comments in css selector and add tests 2018-02-08 10:53:09 +01:00
Guillaume Gomez
649715d09b Fix missing rules for dark.css 2018-02-08 10:53:09 +01:00
Guillaume Gomez
b44b033bf1 get differences 2018-02-08 10:53:09 +01:00
Guillaume Gomez
94ad4e1d38 Add theme tests 2018-02-08 10:53:09 +01:00
Manish Goregaokar
04fde1c42f intra-doc-links: bail early for linky things 2018-02-07 16:35:40 -08:00
Manish Goregaokar
185f258801
Rollup merge of #47810 - GuillaumeGomez:fix-theme-but-position, r=QuietMisdreavus
Fix rendering issues on mobile

Fixes #47723

r? @QuietMisdreavus
2018-02-07 08:30:49 -08:00
Oliver Middleton
528d6b65b6 rustdoc: Hide -> () in cross crate inlined Fn* bounds 2018-02-07 13:14:37 +00:00
Vitaly _Vi Shukela
71c4da866a
rustdoc: Fix doc and impl collapsing on small screens 2018-02-07 00:46:47 +03:00
Vitaly _Vi Shukela
bc277b271d
Revert "rustdoc: Move collapse toggle to the left"
This reverts commit 0885865e90.
2018-02-07 00:44:47 +03:00
kennytm
686986375b
Rollup merge of #47862 - GuillaumeGomez:const-evaluation-ice, r=eddyb
Fix const evaluation ICE in rustdoc

Fixes #47860.

r? @eddyb
2018-02-04 23:28:53 +08:00
Guillaume Gomez
8a587e67af Improve big sidebar elements display 2018-02-04 13:47:35 +01:00
Guillaume Gomez
c26abe75bc Fix not selectable search input 2018-02-04 13:38:39 +01:00
Guillaume Gomez
dde3611281 Fix rendering issues on mobile 2018-02-03 13:13:29 +01:00
Guillaume Gomez
6b35d81382 Fix const evaluation ICE in rustdoc 2018-02-03 12:30:37 +01:00
Guillaume Gomez
8b8d044026 Fix ugly hover in sidebar 2018-02-01 23:40:23 +01:00
Vitaly _Vi Shukela
28efcfc083
rustdoc: Fix erroneous collapsing of second+ inherent impl. 2018-02-01 17:07:43 +03:00
Vitaly _Vi Shukela
a3acd10297
rustdoc: Auto-collapse all non-inherent impls 2018-02-01 16:53:29 +03:00
Vitaly _Vi Shukela
0885865e90
rustdoc: Move collapse toggle to the left 2018-02-01 16:52:44 +03:00
Pramod Bisht
434bfb17b4 Changed of struct url to #ad448e in rust docs 2018-01-31 21:51:27 +05:30
Vitaly _Vi Shukela
c904b1bef4
rustdoc: Fix some minor issues per reviewer 2018-01-31 17:35:57 +03:00
bors
560a2f4faf Auto merge of #45752 - estebank:highlight-primary, r=nikomatsakis
Highlight code on diagnostics when underlined

Highlight the label's span with the respective color:

<img width="692" alt="" src="https://user-images.githubusercontent.com/1606434/32411026-a1842482-c18d-11e7-9933-6510eefbad19.png">

Fix #42112.
2018-01-31 07:53:57 +00:00
Vitaly _Vi Shukela
7cd0280226
rustdoc: Fix tidy errors found by travis 2018-01-31 04:02:51 +03:00
Vitaly _Vi Shukela
73f52d3d8f
rustdoc: Foldable impl blocks
Addresses #40363, #45720, #24483, #23986 and so on

* Expands and refactors collapseDocs and toggleAllDocs
* Adds [-] toggle to all impls (including inherent impl)
* Makes it hiding though main css file, not though element style

May need to be addressed:

* "[-]" and anchor link copier are overlaid a bit
* Inherent methods are also hidden by the global [-] toggle.
* Auto-collapsing "Iterator" and so on by default is not implemented yet
* Tested only shallowly and only in Chromiuim
* No tests. Are there tests for css/js part here?
* The new implementation may be a bit slower.
2018-01-31 03:48:16 +03:00
kennytm
393a1994af Rollup merge of #47855 - ollie27:rustdoc_hoedown_link_title, r=QuietMisdreavus
rustdoc: Fix link title rendering with hoedown

The link title needs to be HTML escaped.

It was broken by #47046.

r? @QuietMisdreavus
2018-01-30 17:11:00 +08:00
Oliver Middleton
ae98f4cac5 rustdoc: Fix link title rendering with hoedown
The link title needs to be HTML escaped.
2018-01-29 19:26:31 +00:00
Esteban Küber
08287c1e26 Toggle span highlighting on -Zteach 2018-01-29 08:59:15 -08:00
Alex Crichton
884715c654 rustc: Load the rustc_trans crate at runtime
Building on the work of # 45684 this commit updates the compiler to
unconditionally load the `rustc_trans` crate at runtime instead of linking to it
at compile time. The end goal of this work is to implement # 46819 where rustc
will have multiple backends available to it to load.

This commit starts off by removing the `extern crate rustc_trans` from the
driver. This involved moving some miscellaneous functionality into the
`TransCrate` trait and also required an implementation of how to locate and load
the trans backend. This ended up being a little tricky because the sysroot isn't
always the right location (for example `--sysroot` arguments) so some extra code
was added as well to probe a directory relative to the current dll (the
rustc_driver dll).

Rustbuild has been updated accordingly as well to have a separate compilation
invocation for the `rustc_trans` crate and assembly it accordingly into the
sysroot. Finally, the distribution logic for the `rustc` package was also
updated to slurp up the trans backends folder.

A number of assorted fallout changes were included here as well to ensure tests
pass and such, and they should all be commented inline.
2018-01-27 19:16:21 -08:00
Pramod Bisht
7f6a53e746 Changed color of struct link from #ff794d to #2dbfb8 2018-01-27 20:00:59 +05:30
Alex Crichton
1dc85768d2 Merge branch 'rustdoc_masked' of https://github.com/ollie27/rust into rollup 2018-01-26 06:51:58 -08:00
Alex Crichton
b335b10b22 Rollup merge of #47701 - Manishearth:intra-fixes, r=QuietMisdreavus
Fixes for intra-doc-links

Turn errors into warnings, also handle methods, trait items, and variants.

r? @killercup @QuietMisdreavus
2018-01-25 13:49:51 -08:00
Guillaume Gomez
6f2a0c6f68 Rollup merge of #47721 - GuillaumeGomez:experimental-color, r=QuietMisdreavus
Fix experimental text display on default theme

r? @QuietMisdreavus
2018-01-25 15:52:17 +01:00