Git Product home page Git Product logo

prev.rust-lang.org's Introduction

prev.rust-lang.org

This repository contains the source files for prev.rust-lang.org.

NOTE: This repository will be deprecated soon. A new website is currently in Alpha Stage, and being reviewed by the Rust Teams. It will go into beta on November 29, 2018, at which point it will be linked here. The current site will remain up until the beta of the new site is over, however you should refrain from making large changes to this repository as it will soon be deprecated.

Deployment

Build Status

The site is built with TravisCI and automatically deployed to S3.

Testing Locally

To install jekyll (and any other dependencies, if we get any):

bundle install

To run this website as a developer:

jekyll serve

This will serve the site at localhost:4000.

prev.rust-lang.org's People

Contributors

3442853561 avatar adrientetar avatar alexcrichton avatar alx741 avatar ashleygwilliams avatar aturon avatar badboy avatar brson avatar carols10cents avatar deedasmi avatar erickt avatar frewsxcv avatar gabibbo97 avatar graydon avatar huonw avatar jasonkliu avatar julienxx avatar keens avatar killercup avatar lazpeng avatar lifthrasiir avatar manishearth avatar mark-simulacrum avatar mkpankov avatar nikomatsakis avatar nrc avatar sphinxknight avatar starsep avatar steveklabnik avatar wakamatz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

prev.rust-lang.org's Issues

[docs] Exclude 0.11 docs from search engines

When googling for "c_int" (and many other rust doc queries) no. 1 result in Google is doc.rust-lang.org/0.11.0/libc/types/os/arch/c95/type.c_int.html

Since 0.11 docs are ancient and more likely to be misleading than useful I suggest excluding them from search engines.

Mention Cargo on rust-lang.org/install.html

(migrated from rust-lang/rust#16798)

Users looking to download Rust binaries could be prompted to install Cargo alongside Rust if they want a package manager as well.

I wanted to do the Piston tutorial, so I downloaded the standalone Rust binaries from www.rust-lang.org/install.html, then realised that to get Cargo I'd have to do do curl https://static.rust-lang.org/rustup.sh | sudo bash which anyway fetches rustc binaries.

Maybe we could have a note on www.rust-lang.org/install.html saying "if you want a package manager, use the rustup.sh method"?

World map of Rust contributors

So I was thinking it'd be neat to have a map of people who'd contributed to Rust on the website. What do people think?

I generated it from the GitHub profile information for the contributors of rust-lang/rust but perhaps it'd be more appropriate to do it for all repositories under the organisation.

In any case, seems to me like a nice way of showcasing our global community?

cc @brson

Host //rust-lang.org over HTTPS

It is possible to host a GitHub Pages hosted website that has a custom domain over HTTPS. I did this for my website using this tutorial and it didn't take too long.

I asked about this a few minutes ago on IRC and @steveklabnik basically just said it hasn't been done yet, which is fine. I didn't see an existing issue open for this so if allowing HTTPS is something that is planned, then I figure it might be good to open a GitHub Issue to track the progress.

Website uses old version of Fira font

Hi folks,

The rust-lang website is using an old version of the Mozilla Fira font, and it's very obvious on Windows because there's no hinting (so characters appear blurry).

The mozilla/Fira repository suggests using the URL //code.cdn.mozilla.net/fonts/fira.css to link to the latest version of the font. If external linking isn't desired, the local copy of the font could be updated instead. I'll leave it up to the team to decide the appropriate fix, instead of making a pull request.

I've tested the newer version of the font locally using the Firefox dev tools, and the blurring problem is fixed.

Provide release dates for beta and nightly

Release dates should be provided for Beta and nightly on the main page. State that on May 15, nightly goes Beta and Beta goes 1.0 or something like it. Then it'd be obvious when the next release is.

Make responsive layout for /book more responsive

I use a tiling window manager. My browser display width is 1042 pixels and I'm getting the mobile view because you require a 1060 pixel width. It'd make sense to use max-width instead of width on the body of the document so that you can drastically decrease the width requirement to display the sidebar.

Invalid value for version

The editor tries to make requests to the playpen using the version string 'master'. The current playpen only accepts 'beta' and 'nightly'.

Here

Not sure if we should be using beta or nightly.

Rust lang quick install link using curl ...

The easiest way to install rust is through the install page here

rust-lang.org/install

the command given is :

curl -s https://static.rust-lang.org/rustup.sh | sudo sh

Instead can we not have the link like this :

curl -s https://get.rust-lang.org | sudo sh

such a link is easier to remember at the top of the head and most people wont have to visit the site just to get the install link.

Thanks.

Incorrect download links for beta MSI files.

No version in links, while files in https://static.rust-lang.org/dist/ have it:
https://static.rust-lang.org/dist/rust-beta-i686-pc-windows-gnu.msi instead of https://static.rust-lang.org/dist/rust-1.1.0-beta-i686-pc-windows-gnu.msi
https://static.rust-lang.org/dist/rust-beta-x86_64-pc-windows-gnu.msi instead of https://static.rust-lang.org/dist/rust-1.1.0-beta-x86_64-pc-windows-gnu.msi

BTW, will all new betas be without version in their names (like nightlies) from now on?

When choosing to read the Book, focus .page-wrapper so users can scroll using keyboard

When I choose to read "The Rust Programming Language" book, the page doesn't let me scroll by arrow keys. I have to manually click on the main content (the non Table of Contents area) in order to make scroll-by-keyboard work.

To reproduce:

  1. Go to homepage
  2. Click Docs(Beta) -> Book
  3. Try and navigate the page using the arrow keys on the keyboard
    (The user needs to manually click on the content before scrolling by kb works)

Icon doesn't render in IE11

Upon testing, the icon is valid in the page source, but not in the DOM Explorer.

I think this is likely because of the <i> tags, which are rendered as italics or something in Internet Explorer.

From the Font-Awesome documentation:

Font Awesome is designed to be used with inline elements (we like the <i> tag for brevity, but using a <span> is more semantically correct).

rust

"std API docs" should be relabeled

For a while it has been possible to search and access all of the builtin crate API docs from "std API docs". Since I think 'all API docs' is usually what people want, and the current labeling suggests you need to click "All docs" (which goes to another page listing all forms of documentation) to get that, the link text should be changed to "API docs" or something.

Use HTTPS for hosting the `sudo rustup.sh` script

Using HTTPS goes a long way towards ensuring that the actual rustup.sh script is the one executed by users using elevated permissions. Serving the content in the clear provides no guarrantee that the script content sent is what will be received by the client. IMHO, this represents a critical threat to the rust developer community since this script is run by a large fraction of the rust community almost everyday.

This website could easily be served over HTTPS by using CloudFront or any of several other CDNs that charge $0 extra for TLS using "server name indication". I've written up a detailed blog post describing how to serve a statically generated website from AWS S3 encrypted using CloudFront for less than $10 for the year.

I'd be happy to help with this effort if that would be appreciated.

Feedback on Rust Vec<T> documentation from a beginner

Hi,

I just tried rust for the first time. From the description of the language, I decided to try a dynamic array first, since in my head this is the most important data structure in a low level language (e.g., for cache performance). So I decided to write a small program using a Vec<T> (is this the right data-structure in rust for an array of dynamic size?). My first step was to create a vector of size elements initialized to a default value of 0. So:

  • I went to the Arrays, Vectors, and Slices part of the book, where:
    • I see how I can use the vec! macro,
    • I see how I can use push.
    • I see a link to the Vec<T> documentation, so...
  • I went to the Vec<T> documentation:
    • this looks... empty,
    • I see how I can use new to create an empty vector,
    • I guess new(size) and new(size, default_value) might work (I have a C++ background), but the compiler is helpful here and tells me that there is only new(). Ok, keep looking!
    • I search in the docs for Vec and arrive at:
  • std::vec::Vec. I wonder why I didn't land here in the first place. Here:
    • I see more examples using: len, iter, this page looks good, I feel I'm getting close :)

    • There is a section about initializing a vector with a capacity using Vec::with_capacity and why this should be preferred, this is almost what I want!

    • I guess Vec::with_size without success, it seems I'm not there yet, so...

    • I read the rest of the doc there, but it seems I'm out of luck.

    • I go back to Vec::resize(new_len, value), it seems that value is not documented, but I guess that it would be the default value, so...

    • I try:

          let mut v : Vec<f64> = Vec::with_capacity(size);
          v.resize(size, 0.0);

which gives a warning but works as expected.

I'm left with a very weird feeling. I'll try to explain it. What in my head should be the most used data structure in a low level language, and thus the most used data structure in rust, turned out to be barely and poorly documented. The best part of the documentation is, without doubt, the "Capacity and reallocation" where with_capacity is explained. Most of the other functions there are missing documentation. Almost none of the functions have the algorithmic/memory complexity documented. Even in those functions that are documented, some arguments aren't. I think that for vector even the growth factor (which is an implementation detail) should be included in the documentation since it can be interesting to know it in some applications (or while debugging/profiling performance). Besides improving the documentation of all these functions, the documentation of vector could be improved significantly by including different "sub sections" like "Capacity and reallocation". Those I would have found useful are: "Initialization" (how to initialize a vector: with a capacity/size, with/without default constructed elements, from slice, from pointer and length, from raw array, using the vec! macro...), "Insertion" (push, insert, resize.. and how are the elements initialized when they are created), "Deletion" (pop, selectively delete some elements based on predicate: erase_remove_if in C++, resize.. and what happens if I resize below the current size), "Memory layout" (capacity, extend capacity, shrink to fit, ...), "Iteration" (how to iterate over a vector), "Common patterns" (sort + remove duplicates, stack, queue, flat_set).

  • I decide to fill an issue in the rust documentation and to give rust another try in a couple of months:
    • nowhere in the book could I find where to fill issues,
    • went to the rust language on github where I read somewhere that the documentation belongs to the website
    • supposed that rust-www host the website and also the documentation...

Another small issue I had at the beginning was that nowhere in the introduction did I find a link or a table with the primitive data types. Most of the introduction uses i32. I guessed double and failed, but then guessed f64 and it worked. I then googled rust primitive types and got a link to the reference where all primitive types where shown. A table explaining iX for integers, fX for doubles, str for chars where X is the width of the data type would have saved me jumping around through tabs and googling.

Bors polls too much for large projects

Rust's bors instance is close to the API rate limit (though I don't have numbers), and already doesn't update fast enough, with a 5 minute polling interval. This situation impresses GitHub support none-to-much when asking for a rate limit increase.

I assume bors will need to be more stateful.

Note that Rust is still running an old version of bors that doesn't incorporate any of the changes from the last six months, so this behavior may be better now, but I don't think so.

Where is the security mailing list?

(I don't have an issue to report)

https://github.com/rust-lang/rust-www/blob/60c1a1dd37fc173e09459f40dc3b20af29db5b5b/security.html#L70-L72
http://www.rust-lang.org/security.html

Receiving Security Updates

The best way to receive all the security announcements is to subscribe to the Rust security mailing list. The mailing list is very low traffic, and it receives the public notifications the moment the embargo is lifted.

I couldn't find it from the website.

  • If there is still a list, could you add a hyperlink please?
  • For the curious surfer looking for old security issues, could you point to them please?

I found the internals thread and the issue tag. The thread mentions a bug that doesn't have the tag, so the security archaeologists will have extra searching to do.

Current 404 page is the generic GitHub Pages one

I followed a malformed link to one of the pages on github.com/rust-lang and noticed that it appears the current 404 page is the generic one supplied by Pages, whose text is aimed more at the site owners than visitors. It would be fun to have a fun/useful custom Rust 404 page, unfortunately I'm not a web dev and so can't help with this, but I thought I'd point it out FWIW.

'Run' new code fails (due to cross-domain issue?)

The 'run' button on the rust front page doesn't work for me (Firefox 34.0.5, OSX). The status goes to 'running' and it just sits there. If I open a javascript console, it says that:

Cross-Origin Request Blocked:
    The Same Origin Policy disallows reading the remote resource at http://play.rust-lang.org/evaluate.json.
    This can be fixed by moving the resource to the same domain or enabling CORS.
        evaluate.json

TypeError:
    message is null
        www.rust-lang.org:382

Infra RFC: Move rust-lang.org from github pages to S3/Cloudfront for SSL support

Right now, the site is hosted on GitHub pages. This is great for convenience but does not allow us to serve it over HTTPS, which is expected (rust-lang/rust#16123, rust-lang/rust#13180, https://internals.rust-lang.org/t/broken-cert-on-https-www-rust-lang-org/2258, #144).

We have a couple options that I see as bad, and one that I'd consider good:

Stick with GitHub Pages and add CloudFlare

As described here, one can get SSL between a CDN and the end-user when using a custom domain on GitHub Pages. The fact that HTTPS can't be set up directly through GitHub is a known isue.

Pros:
  • Don't have to move the site
  • Adding a CDN should make pages load faster
Cons:
  • Connection between CDN and GitHub custom domain remains unencrypted, so the secure connection which the user's browser reports is a lie
  • Adds yet another service to our infrastructure, with user management etc. (CloudFlare)
Proxy through our existing Nginx

brson metioned that this would be an option on rust-lang/rust#13180, however, I regard introducing a dependency on our Nginx host as a step backwards in terms of reliability and redundancy. I'd rather offload the work onto a CDN with many sysadmins, rather than centralizing it onto ourselves.

Pros:
  • Fewer new moving parts
Cons:
  • Slower than a CDN
  • Introduces a new single point of failure
Move the static site to S3, use CloudFront as CDN and have them handle SSL

Considering the drawbacks of the other methods, this looks to me like the best option available.

Pros:
  • We already have S3 and CloudFront set up with SSL for static.rust-lang.org
  • S3 provides comparable uptime/redundancy to github pages (either is better than hosting it ourselves)
  • Small step toward standardizing our infrastructure
Cons:

@brson, @alexcrichton, @aturon Do you see any concerns that I've missed in evaluating these options, or any reason I shouldn't go ahead with migrating the site over to S3?

offline documentation

I do most of my development work while offline: it would be nice if we could have links on doc.rust-lang.org to download the Book and possibly the standard library docs too.

The library docs are already in an archive under http://static.rust-lang.org/dist/ so we could maybe just link to the current version of that.

I don't know if the book already has an archive anywhere.

Rust guide cargo installation instructions now redundant

With the merging of PR 46 #46, rustup takes care of installing Cargo, so the first part of section 0.4 of the new guide is now a bit redundant. Sorry if this is the wrong place to raise the issue, couldn't find a repo specifically for the guide or doc.rust-lang.org...

Embed calendar/news feed in front page

Calendar: https://www.google.com/calendar/embed?src=apd9vmbc22egenmtu5l6c5jbfc%40group.calendar.google.com&ctz=America/Los_Angeles

The calendar especially would be useful for users. News not so much, but it might make it easier aesthetically to add the calendar feed if we also add a second feed at the same time.

I started poking at this but integrating it nicely into the current design will take some finesse and I can't justify spending more time on it right now.

Publish (text of, shortlinks to) accepted RFCs

Feature request: either rendered text of, or short-links to the rendered text of, accepted RFCs would be nice to have somewhere on rlo where the URLs can be shorter.

For example, rustc's diagnostics has some explanations that benefit from references out to an RFC; however, the current 'canonical' URLs for RFCs (the Github renderings) are longer than the prescribed 80-character limit, which is an error.

Perhaps something like doc.rust-lang.org/rfcs/NNNN, which either presents a rendering of the RFC formatted to be consistent with the rest of the Rust documentation, or which redirects to the Github rendering of the RFC?

Concretely, instead of requiring references to variable-length URLs like (the 102-character-long)

https://github.com/rust-lang/rfcs/blob/master/text/0558-require-parentheses-for-chained-comparisons.md

we consistently have 35 characters like

https://doc.rust-lang.org/rfcs/0558

make rustbyexample more prominent

This is a clone of rust-lang/rust-by-example#509

The site rustbyexample.com should be much more visible on the main rust-lang.org site. Currently there's only an obscure link deep down in All docs -> External documentation. I've read The Book several times over the past months and never even realized that rustbyexample.com existed.

I think it's an excellent companion resource and should be listed prominently next to The Book.

Since the same authors are maintaining it all anyway this shouldn't be a problem :)

cc @sstirlin

DNS for various domain aliases is broken

We appear to have a few domain aliases for www.rust-lang.org other than rust-lang.org. The ones I'm aware of are rust-lang.com, rust-lang.net, rustlang.com, rustlang.org, and rustlang.net. There may be others too, I haven't gone looking.

The DNS for some of these is ok and for others it's broken. "Broken" means that visiting the page takes you to the easydns.com parked domain page.

Via dig, it seems that the correct domains all have an A record for 72.8.141.90, which is the IP for fwd.st2.easydns.com. These correct domains are rust-lang.net, rustlang.com, rustlang.net, and of course rust-lang.org. These all get redirected to www.rust-lang.org.

Unfortunately, others have 216.220.40.248, which is the parked domain DNS. The bad domain here is rust-lang.com.

You'll note I haven't mentioned rustlang.org yet. That's because it actually has both A records. This means that a visitor may arbitrarily either get redirected correctly, or may see the parked domain page. I personally can get both, by using different browsers.

So in short, the DNS for the following domains needs to be fixed to use the correct A address: rustlang.org, rust-lang.com.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.