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

WIP: Thoughts on #2458 #2471

Closed

Conversation

kinnison
Copy link
Contributor

This is me starting to think about fixing #2458

I'm mostly putting it up so we can discuss the approach and see if it's sufficient. Right now it's not tested.

@workingjubilee
Copy link
Member

So, hm, at least 1 problem:

  1. The rust-toolchain file is specified as "yes, this has to be USASCII." But path names are not necessarily USASCII. USASCII is a subset of UTF8 however, so we're almost OK. But Windows paths are very not UTF8 by default. And I know what a BOM is but many of your users don't.

  2. Further, I think a "path" and a "channel" describe what is mostly the same concept ("what point in timespace am I getting my Rust toolchain from?") and this should be clarified somewhat.

For instance, I can see users requesting "how about I use rust-toolchain to set my own local interpretation of both stable and nightly so that I can use $proxy +stable or $proxy +nightly?" That can be denied, of course, but if it is, then I think we should still have a principled approach here, I guess is what I am saying? So if that doesn't work, then we should assign an ident to rust-toolchain's override like +local or +path.

@kinnison
Copy link
Contributor Author

I think the intent is that the USASCII encoding requirement will be lifted for the toml form of the rust-toolchain because that assumes utf8 encoding anyway AIUI. Given that, I suppose we could restrict the path form to the toml rather than the single-line variant; however the single-line variant gains (potentially un-advertised) support by dint of supporting cargo +/path/too/rust build type constructs which I would want to support.

Paths and channels are subtly different because channel is something which can update over time, whereas path is just some bytes on a filesystem.

Thanks for your input though, it's food for thought, for sure.

Signed-off-by: Daniel Silverstone <[email protected]>
@kinnison
Copy link
Contributor Author

Obsoleted by #2678

@kinnison kinnison closed this Feb 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants