mirror of
https://github.com/NixOS/rfcs.git
synced 2025-11-09 03:56:11 +01:00
[RFC 0045] Deprecating unquoted URL syntax (#45)
* A small RFC on deprecating URL syntax * Convert alternatives to a list * Add a mention of tooling in future work * A remark from @globin about one more problem with unquoted URLs * Grammar edit: comparison of URLs, paths and strings. Co-Authored-By: 7c6f434c <7c6f434c@mail.ru> * Style edit: possibility of future removal Co-Authored-By: 7c6f434c <7c6f434c@mail.ru> * 0045: commit to using the tooling that now exists * Update rfcs/0045-deprecate-url-syntax.md Shepherd team Co-Authored-By: Domen Kožar <domen@enlambda.com> * Fix shepherd list * Update based on a discussion * Explicitly make future removal conditional on editions; restrict the claim about no special support to the Nix language itself
This commit is contained in:
parent
337b3d7962
commit
7bcdb8d878
1 changed files with 69 additions and 0 deletions
69
rfcs/0045-deprecate-url-syntax.md
Normal file
69
rfcs/0045-deprecate-url-syntax.md
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
---
|
||||||
|
feature: deprecate_url_syntax
|
||||||
|
start-date: 2019-04-28
|
||||||
|
author: Michael Raskin
|
||||||
|
co-authors:
|
||||||
|
shepherd-leader: Eelco Dolstra
|
||||||
|
shepherd-team: Eelco Dolstra, zimbatm, Silvan Mosberger
|
||||||
|
related-issues:
|
||||||
|
---
|
||||||
|
|
||||||
|
# Summary
|
||||||
|
[summary]: #summary
|
||||||
|
|
||||||
|
Discourage and eventually remove the use of unquoted URL syntax in Nix code and especially
|
||||||
|
Nixpkgs.
|
||||||
|
|
||||||
|
# Motivation
|
||||||
|
[motivation]: #motivation
|
||||||
|
|
||||||
|
The Nix language has a special syntax for URLs even though quoted strings can also be used to represent them. Unlike paths, URLs do not
|
||||||
|
have any special properties in the Nix expression language
|
||||||
|
that would make the difference useful.
|
||||||
|
Moreover, using
|
||||||
|
variable expansion in URLs requires some URLs to be quoted strings anyway. So
|
||||||
|
the most consistent approach is to always use quoted strings to represent URLs.
|
||||||
|
Additionally, a semicolon immediately after the URL can be mistaken for a part
|
||||||
|
of URL by language-agnostic tools such as terminal emulators.
|
||||||
|
|
||||||
|
Tools
|
||||||
|
targeting only Nixpkgs codebase can ignore URL syntax once Nixpkgs phases out
|
||||||
|
its use.
|
||||||
|
|
||||||
|
# Detailed design
|
||||||
|
[design]: #detailed-design
|
||||||
|
|
||||||
|
Add a note in the Nix manual that the special unquoted URL syntax is
|
||||||
|
discouraged and may be removed in a future edition of the Nix language.
|
||||||
|
|
||||||
|
Add a note in the Nixpkgs manual that the unquoted URL syntax should not be used anymore.
|
||||||
|
|
||||||
|
Convert all the unquoted URLs in the Nixpkgs codebase to quoted strings.
|
||||||
|
|
||||||
|
Add an ofBorg check that verifies that no new unquoted URLs have been added in
|
||||||
|
a PR.
|
||||||
|
|
||||||
|
# Drawbacks
|
||||||
|
[drawbacks]: #drawbacks
|
||||||
|
|
||||||
|
This is a minor cosmetic issue (and maybe a very minor readability issue) which
|
||||||
|
might not be worth making a specific decision.
|
||||||
|
|
||||||
|
# Alternatives
|
||||||
|
[alternatives]: #alternatives
|
||||||
|
|
||||||
|
* Do nothing; get PRs from time to time that make homepages uniformly quoted
|
||||||
|
strings or uniformly unquoted.
|
||||||
|
|
||||||
|
* Decide to use unquoted URLs for all URLs without special characters or
|
||||||
|
variable expansion.
|
||||||
|
|
||||||
|
# Unresolved questions
|
||||||
|
[unresolved]: #unresolved-questions
|
||||||
|
|
||||||
|
Currently none.
|
||||||
|
|
||||||
|
# Future work
|
||||||
|
[future]: #future-work
|
||||||
|
|
||||||
|
Currently none.
|
||||||
Loading…
Add table
Add a link
Reference in a new issue