Commit graph

2115 commits

Author SHA1 Message Date
Guillaume Gomez
d5a8b247be
Rollup merge of #58297 - GuillaumeGomez:cleanup-js, r=QuietMisdreavus
Cleanup JS a bit

r? @QuietMisdreavus
2019-02-10 21:45:18 +01:00
Guillaume Gomez
adf516b94e
Rollup merge of #58243 - GuillaumeGomez:trait-alias-docs, r=Manishearth
Add trait alias support in rustdoc

Fixes #57595.

r? @QuietMisdreavus
2019-02-10 21:45:13 +01:00
Guillaume Gomez
cdbd07cc40
Rollup merge of #58203 - euclio:rustdoc-async, r=GuillaumeGomez
rustdoc: display sugared return types for async functions

Fixes #58027.
2019-02-10 21:45:12 +01:00
Guillaume Gomez
b1d82ac6ed Remove spotlight for trait aliases and fix nits 2019-02-10 16:56:21 +01:00
Guillaume Gomez
c20357a62a Add trait aliases to js types 2019-02-10 14:49:20 +01:00
Guillaume Gomez
29354ddc15 Add style for trait aliases 2019-02-10 14:49:20 +01:00
Guillaume Gomez
74e97f3381 Add trait alias support in rustdoc 2019-02-10 14:49:20 +01:00
Guillaume Gomez
b962ecc6f9 Cleanup JS a bit 2019-02-08 12:38:47 +01:00
hrls
5288f3f967 fix rustdoc JS 2019-02-08 12:47:20 +03:00
Guillaume Gomez
da8da5e061
Rollup merge of #58150 - GuillaumeGomez:dont-apply-impl-collapse-rules-to-trait-impls, r=Manishearth
Don't apply impl block collapse rules to trait impls

Fixes #58147.

r? @QuietMisdreavus
2019-02-07 14:28:40 +01:00
Guillaume Gomez
064b787fc9
Rollup merge of #58146 - GuillaumeGomez:dont-collapse-everything, r=QuietMisdreavus
Prevent automatic collapse of methods impl blocks

Fixes #57582.

r? @QuietMisdreavus
2019-02-07 14:28:38 +01:00
Guillaume Gomez
2c9f1f5750
Rollup merge of #58143 - GuillaumeGomez:sort-elements-in-sidebar, r=QuietMisdreavus
Sort elements in the sidebar

Fixes #57448.

Not sorting fields or variants though.

r? @QuietMisdreavus
2019-02-07 14:28:37 +01:00
Guillaume Gomez
f22c445053
Rollup merge of #58086 - GuillaumeGomez:rustdoc-file-list-improvement, r=Manishearth
[rustdoc] Improve file list display

Improve a bit the arrows to show a folder's file and the arrow to show/hide the left panel.

r? @QuietMisdreavus
2019-02-07 14:28:36 +01:00
Guillaume Gomez
f61a4f86db
Rollup merge of #58033 - euclio:rustdoc-tags, r=QuietMisdreavus
rustdoc: wrap stability tags in colored spans

A cosmetic change to make the stability tags stand out a bit against the docs. Opening for discussion.

Before:

![screen shot 2019-01-31 at 3 29 36 pm](https://user-images.githubusercontent.com/1372438/52083406-54730d80-256d-11e9-8e61-b8caff569434.png)
![screen shot 2019-01-31 at 3 31 32 pm](https://user-images.githubusercontent.com/1372438/52083408-54730d80-256d-11e9-97b7-43e808448f65.png)

After:
![screen shot 2019-01-31 at 3 29 18 pm](https://user-images.githubusercontent.com/1372438/52083405-54730d80-256d-11e9-9983-19d9519b2ed8.png)
![screen shot 2019-01-31 at 3 29 46 pm](https://user-images.githubusercontent.com/1372438/52083407-54730d80-256d-11e9-8c32-11a1ad7d3f34.png)

r? @QuietMisdreavus
2019-02-07 14:28:34 +01:00
Guillaume Gomez
1a99a32bd7
Rollup merge of #58028 - GuillaumeGomez:fix-settings-image-link, r=QuietMisdreavus
Fix image link in the settings menu

Fixes #57892.

r? @QuietMisdreavus
2019-02-07 14:28:33 +01:00
Guillaume Gomez
bb9d66d3ba
Rollup merge of #57954 - euclio:rustdoc-stability, r=QuietMisdreavus
rustdoc: remove blank unstable spans

Rustdoc generates blank unstable spans for unstable struct fields: ![screen shot 2019-01-28 at 1 05 04 pm](https://user-images.githubusercontent.com/1372438/51856295-5e8ed500-22fd-11e9-8074-025eddb4ef65.png)

This PR removes them:
![screen shot 2019-01-28 at 1 07 22 pm](https://user-images.githubusercontent.com/1372438/51856424-aada1500-22fd-11e9-86f0-34e2aa78b8b1.png)

r? @QuietMisdreavus
2019-02-07 14:28:32 +01:00
Guillaume Gomez
4c62d7e6f1
Rollup merge of #57884 - GuillaumeGomez:update-minifier-array, r=QuietMisdreavus
Update minifier version

Should fix #57754 (at least it's a bit faster on my computer).

The whole point of this update is to create a huge array instead of creating a lot of variables.

r? @QuietMisdreavus
2019-02-07 14:28:30 +01:00
Guillaume Gomez
55c0922201
Rollup merge of #57504 - GuillaumeGomez:re-enable-history, r=QuietMisdreavus
Re-enable history api on file:// protocol

Fixes #57135.

I tested locally on chrome (since it was the browser having issues with history management on `file://` protocol) and it worked fine so I guess we can re-enable it.

r? @QuietMisdreavus
2019-02-07 14:28:27 +01:00
Guillaume Gomez
729e37da4d Don't apply impl block collapse rules to trait impls 2019-02-07 11:48:31 +01:00
Andy Russell
4deb5959a3
display sugared return types for async functions 2019-02-06 09:24:03 -05:00
Guillaume Gomez
d0f88c4da3 Prevent automatic collapse of methods impl blocks 2019-02-04 14:59:06 +01:00
Guillaume Gomez
c40fa3271a sort elements in the sidebar 2019-02-04 12:38:26 +01:00
Guillaume Gomez
d80a558e4a Improve file list display 2019-02-03 00:14:32 +01:00
Guillaume Gomez
5cf20ca3c5 Fix image link in the settings menu 2019-02-01 11:27:59 +01:00
Andy Russell
ea2b1b035b
rustdoc: wrap stability tags in colored spans 2019-01-31 15:15:59 -05:00
Mazdak Farrokhzad
b1b67cdec1
Rollup merge of #57859 - GuillaumeGomez:fix-background, r=QuietMisdreavus
Fix invalid background color

As discussed in #57814.

r? @QuietMisdreavus
2019-01-28 22:25:45 +01:00
Andy Russell
30b1c35f03
rustdoc: remove blank unstable spans 2019-01-28 13:04:05 -05:00
Guillaume Gomez
f97856350c Update minifier version 2019-01-25 00:07:08 +01:00
Guillaume Gomez
0cf97042d1 Fix invalid background color 2019-01-23 12:05:00 +01:00
Mazdak Farrokhzad
e3d3cff019
Rollup merge of #57552 - GuillaumeGomez:default-images, r=QuietMisdreavus
Default images

Add default rust logo (the image at the top of the sidebar) and default favicon. No more missing image or inexistent icon on the documentation tabs!

r? @QuietMisdreavus
2019-01-22 12:20:27 +01:00
Guillaume Gomez
b5d167f58a Add default favicon for documentation 2019-01-20 21:47:43 +01:00
bors
846ea58cd5 Auto merge of #56884 - euclio:codeblock-diagnostics, r=QuietMisdreavus
rustdoc: overhaul code block lexing errors

Fixes #53919.

This PR moves the reporting of code block lexing errors from rendering time to an early pass, so we can use the compiler's error reporting mechanisms. This dramatically improves the diagnostics in this situation: we now de-emphasize the lexing errors as a note under a warning that has a span and suggestion instead of just emitting errors at the top level.

Additionally, this PR generalizes the markdown -> source span calculation function, which should allow other rustdoc warnings to use better spans in the future.

Last, the PR makes sure that the code block is always emitted in the docs, even if it fails to highlight correctly.

Of note:
- The new pass unfortunately adds another pass over the docs to gather the doc blocks for syntax-checking. I wonder if this could be combined with the pass that looks for testable blocks? I'm not familiar with that code, so I don't know how feasible that is.
- `pulldown_cmark` doesn't make it easy to find the spans of the code blocks, so the code that calculates the spans is a little nasty. It works for all the test cases I threw at it, but I wouldn't be surprised if an edge case would break it. Should have a thorough review.
- This PR worsens the state of #56885, since those certain fatal lexing errors are now emitted before docs get generated at all.
2019-01-20 19:01:38 +00:00
Guillaume Gomez
2200fd3c7c Add default rust logo for documentation 2019-01-20 18:53:56 +01:00
bors
2ab5d8ac44 Auto merge of #57651 - JohnTitor:give-char-type, r=estebank
Implement new literal type `Err`

Fixes #57384

I removed `return Ok`, otherwise, two errors occur. Any solutions?

r? @estebank
2019-01-20 08:26:12 +00:00
Mazdak Farrokhzad
c0ad9429ab
Rollup merge of #57476 - Xanewok:bye-crate-analysis, r=Zoxc
Move glob map use to query and get rid of CrateAnalysis

~Also includes commits from ~https://github.com/rust-lang/rust/pull/57392~ and ~https://github.com/rust-lang/rust/pull/57436~.~

With glob map calculated unconditionally in https://github.com/rust-lang/rust/pull/57392, this PR moves the calculated glob map to `GlobalCtxt` and exposes a relevant query (as we do with other queries which copy precomputed data over from the `Resolver`).

This allows us to get rid of the `CrateAnalysis` struct in an attempt to simplify the compiler interface.
cc @Zoxc

r? @nikomatsakis @Zoxc @petrochenkov
2019-01-19 09:03:24 +01:00
Mazdak Farrokhzad
ff583ac484
Rollup merge of #57710 - GuillaumeGomez:non-clickable, r=QuietMisdreavus
Fix non-clickable urls

Fixes #57695

I didn't find anywhere where this rule was useful. Why did you add it @JohnHeitmann?

r? @QuietMisdreavus
2019-01-18 18:06:40 +01:00
Mazdak Farrokhzad
b9e940c2e6
Rollup merge of #57646 - GuillaumeGomez:fix-css, r=QuietMisdreavus
Fixes text becoming invisible when element targetted

Fixes #57628.

r? @QuietMisdreavus
2019-01-18 18:06:34 +01:00
Mazdak Farrokhzad
e26498026f
Rollup merge of #57636 - GuillaumeGomez:fix-sources-sidebar, r=QuietMisdreavus
Fix sources sidebar not showing up

Fixes #57601.

The order of imports made it so that the sidebar creation was called before the sidebar sources were created. Like this, when the sources are loaded, they create the sidebar as expected.

r? @QuietMisdreavus
2019-01-18 18:06:33 +01:00
Guillaume Gomez
25189874fb Fix non-clickable urls 2019-01-17 21:28:23 +01:00
Yuki Okushi
8bbb63c600 Add token::Err 2019-01-18 05:23:56 +09:00
Igor Matuszewski
6f1d06d219 Querify glob map usage (last use of CrateAnalysis) 2019-01-17 10:40:22 +01:00
Guillaume Gomez
d405606c3b End fixing search index minification 2019-01-17 01:41:01 +01:00
Guillaume Gomez
2e8fd44598 Minify search-index in one pass 2019-01-17 01:41:01 +01:00
Guillaume Gomez
f42407f114 Reduce search-index.js size 2019-01-17 01:41:01 +01:00
Guillaume Gomez
feda6040fa Fixes text becoming invisible when element targetted 2019-01-15 23:21:36 +01:00
Guillaume Gomez
ed717f30ec Fix sources sidebar not showing up 2019-01-15 17:57:25 +01:00
Mazdak Farrokhzad
9947b3060c
Rollup merge of #57614 - GuillaumeGomez:fix-crate-filtering, r=QuietMisdreavus
[rustdoc] Fix crates filtering box not being filled

Currently, the filter crate box (at the left of the search input) is always empty. To get the number of keys of dictionary in JS, you need to call `Object.keys()` on it.

r? @QuietMisdreavus
2019-01-15 12:42:14 +01:00
Andy Russell
8c93798e9f
rustdoc: check code block syntax in early pass 2019-01-14 21:21:21 -05:00
Guillaume Gomez
0d695ff330 Fix crates filtering box not being filled 2019-01-15 00:41:41 +01:00
Mazdak Farrokhzad
6d00124b85
Rollup merge of #56874 - JohnHeitmann:docs-spacing, r=GuillaumeGomez
Simplify foreign type rendering.

Simplified foreign type rendering by switching from tables to flexbox. Also, removed some seemingly extraneous elements like “ghost” spans.

Reduces element count on the `std::iter::Iterator` page by 30%. On my laptop it drops Iterator page load time from ~15s to ~10s. Frame times during scrolling are a hair lower too.

Known visual changes (happy to tweak based on feedback):
* The main `impl ...` headers are now getting the default, larger, h3 font size. This was an accident, but I liked how it turned out so I didn't fix it.
* There's a hair less vertical spacing between the end of a where block and the start of the next fn. Now, all spacing is consistent. I think this looks a bit worse. I may tweak vertical spacing more here or in a follow-up that cleans up vertical spacing more broadly.
* "[src]" links are all sized at 17px. A few were 19px in the original.

I haven't yet done heavy cross-browser or cross-crate testing. I was hoping to get a quick thumbs up or thumbs down here at this first draft, then if this is on the right track I'll spend some time on that testing.

TODO:

- [x] Test on Chrome
- [x] Test on Firefox
- [ ] ~~Test on UC Android~~
- [x] Test on Edge
- [x] Test on iOS safari
- [x] Test on desktop safari
- [x] Update automated tests
- [x] Increase vertical margin
- [x] Fix "Important traits for" hover overlap
- [x] Wait for #55798 to land & merge it
2019-01-13 21:18:09 +01:00