-
Notifications
You must be signed in to change notification settings - Fork 5.3k
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
Update EIP-1: Expand External Link Policy #5474
Conversation
Hi! I'm a bot, and I wanted to automerge your PR, but couldn't because of the following issue(s): (fail) eip-1.md
|
Thanks for the PR. @Pandapip1 . I apprecitate it. My stance is
I am open to be convinced and would follow the consensus amongst others. |
IMHO, we can shift our focus to "external" more than a "link". I will be in favor of defining "external link" in EIP-1. IIRC, "the external links policy" was brought in to discourage authors of Standard Track - ERC proposals to add link to their project in the proposed EIP. It may not be the same as using different repo link from the same organization. Reference to link within the same GitHub organization shouldn't be considered as "external". |
@poojaranjan
For avoiding promotional purpose, I think even mentioning project names unnecessarily without a link are considered harmful. |
@Pandapip1 |
EIPS/eip-1.md
Outdated
@@ -187,7 +187,14 @@ EIPs may have a `requires` header, indicating the EIP numbers that this EIP depe | |||
|
|||
## Linking to External Resources | |||
|
|||
Links to external resources **SHOULD NOT** be included. External resources may disappear, move, or change unexpectedly. | |||
External resources are resources that are hosted outside of the EIPs repository. Links to external resources **MUST NOT** be included, except in `Living`, `Meta`, or `Informational` EIPs. External resources may disappear, move, or change unexpectedly. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
External resources are resources that are hosted outside of the EIPs repository. Links to external resources **MUST NOT** be included, except in `Living`, `Meta`, or `Informational` EIPs. External resources may disappear, move, or change unexpectedly. | |
Links to external resources **SHOULD NOT** be included without justification over and mitigation against the following caveats: | |
1. External resources may disappear, move, or change unexpectedly. Therefore, EIP should choose permlink or archive link over transient links/ | |
2. EIP is not meant for project-promotional purpose. Links to reference implementations or mentioning of projects outside of @ethereum org's repo **MUST** be justified based on merit by a consensus amongst the editor group. |
I think that links must be treated as though they may disappear at any time. I have added a clause (requires a valid backup in the The other issue with external links is that unless they are actually part of the specification, reference implementation, or test cases, they often turn the EIP into 65% history lesson and 35% important stuff, which we want to discourage. These small hurdles (e.g. requiring the link to be in the assets directory) are intentional. If it's not worth going over the hurdle to get the link in, well, then, you shouldn't have the link in there. If it is worth going over the hurdle (e.g. reference implementation), then the link should be allowed. I hope that makes sense.
There were two other justifications you missed:
|
EIPS/eip-1.md
Outdated
- Links to `ethereum/go-ethereum` commits | ||
- Links to `ethereum/execution-specs` commits | ||
- Links to `ethereum/consensus-specs` commits | ||
- Resources with an appropriate backup in the assets folder |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Resources with an appropriate backup in the assets folder | |
- Links to permlinks in any standard body that exists over 10 years, such as IETF, ISO, NIST, W3C,... | |
- Resources with an appropriate backup in the assets folder |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is outside the scope of this PR.
I simply don't agree with the demand for total immutability of links, or prohibition of links outside of such a narrow scope. And I keep being too busy to discuss it much. My own preference remains to stay closer to the IETFs approach, as laid out in the RFC style guides. See https://www.rfc-editor.org/styleguide/ and https://www.rfc-editor.org/styleguide/part2/ Simply put:
Importantly, they do insist on an actual list of References at the end of a document, both Normative and Informative. The References need not even contain a URI, but should contain authors, title, publisher, date and such to unambiguously refer to a document and find it somewhere if the URI changes. (Search engines exist. Libraries exist. If they stop existing, who will care about rewriting Ethereum from scratch?) And they are of course stricter about Normative References. So, for instance, references to other standards are OK. E.g.
But, for instance, references to Web repos are OK only for Informative References, but still should be as precise as possible. E.g.
|
I strongly agree with @gcolvin's stance in link policy. I think mandating full immutable links is not only unnessary, but also hurting the usefulness of EIP as whole. |
The point here is that users shouldn't have to Google to find things. A user should not have to rely on external information in order to implement a standard - that defeats the purpose of having a standards repository! The current rules as put forth in this EIP are hopefully an acceptable middle ground. Doing |
The IETF maintains the repository of Standards on which the internet it is built. The RFCs do not pretend to be complete unto themselves, and have always allowed both Normative references to outside Standards and Informative References to the open literature. They don't copy outside documents into their repository. They don't even require links. |
As i reiterate above, i strongly object to "no external links" policy. In this on argument, for example, when you say PDF, what is PDF? If you think this might be a joke question, just imagine someone visiting eip.ethereum.org might need to learn from "git", "JSON", "URL" to new concept like "IPFS", "Arweave", BLS12-381. What confident do we have to think EIP repo is encylopedia? Also copy and paste of something that was not originally CCO is absolutely a violation of CCO. I think EIP is a collaboration. May I suggesr surveying authors before making a controversial policy is probably a good idea. |
Once upon a time EIP-1 was considered mostly in the "should" category. At the editors' discretion authors could be given a lot of leeway. Anyway, here is one of the world's most important RFCs and an example of external references: RFC 9112 HTTP/1.1. The normative references are mostly to other RFCs, with some exceptions:
The first exception is the specification for ASCII. It has no URI because ANSI does not publish online. I wasn't able to quickly find a free copy online. Unfortunate, but HTTP needs ASCII. The other exception is the paper in the open literature that describes LZW compression. It's not peer reviewed. It's not even a standard. Unfortunate, but HTTP needs LZW. The link is to the IEEE's site, but the PDF there is paywalled. Google, Duckduckgo, and Bing all found free PDFs. For both of them you could to go to a good library. This is the real world. |
EIPS/eip-1.md
Outdated
- Links with an appropriate backup in the assets folder **MAY** be allowed | ||
- Links to external resources **SHOULD NOT** be included if one of the above rules does not apply | ||
|
||
If you feel that a link you wish to include shouldn't violate the above rules, please submit a Pull Request to change them. Remember that the smaller and more specific the change, the more likely it will be accepted. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you feel that a link you wish to include shouldn't violate the above rules, please submit a Pull Request to change them. Remember that the smaller and more specific the change, the more likely it will be accepted. |
I don't think this needs saying. PRs are always welcome. Advice on what makes for a good PR applies to all of them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PRs are always welcome.
People don't realize that. You wouldn't believe the number of comments like "why is such and such a rule a thing, I would like to change it to XYZ." People are afraid of touching things that they think are hallowed or something. Stating explicitly that it is not sacred aids in removing that barrier.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gotcha. In which case it needs saying, but as more general statement elsewhere in EIP-1. For that matter, people don't realize that they are always welcome to review PRs to any EIP.
Co-authored-by: Greg Colvin <greg@colvin.org>
There has been no activity on this pull request for 2 weeks. It will be closed after 3 months of inactivity. If you would like to move this PR forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review. |
Still an issue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have asked for a change below and really want to see it or something close to it go in. But I'm approving this anyway.
EIPS/eip-1.md
Outdated
- Links with an appropriate backup in the assets folder **MAY** be allowed | ||
- Links to external resources **SHOULD NOT** be included if one of the above rules does not apply | ||
|
||
If you feel that a link you wish to include shouldn't violate the above rules, please submit a Pull Request to change them. Remember that the smaller and more specific the change, the more likely it will be accepted. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gotcha. In which case it needs saying, but as more general statement elsewhere in EIP-1. For that matter, people don't realize that they are always welcome to review PRs to any EIP.
Might I suggest the usage of markdown reference links as the primary method of linking as well? Doing it in this way allows for a Bibliography section to be created at the bottom of the document. |
There's a markdown linter option for that. We can discuss enabling it. As for the bibliography section, I agree that it is a good idea. It would be a pretty significant change to EIP-1, so it would take a while to reach a consensus. I propose APA-v7-style bibliographies. |
Co-authored-by: Greg Colvin <greg@colvin.org>
What's your preference @Pandapip1 between this and #5757? Personally, I'd like to close this PR and open a similar one when we have the sources policy merged. |
My personal preference is this PR; I would prefer a single document with all the policies. Nonetheless, I like the modularity of your approach from the standpoint of getting things approved using an existing workflow, even if it makes finding the relevant rules much more challenging. |
EIP-1 would still have the authoritative list of permitted sources |
Closing as we've decided to go with the 5757 approach. |
I used to have a small description of the changes here, but I removed it. Just look at the Files Tab.