-
Notifications
You must be signed in to change notification settings - Fork 893
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
Make it possible to automatically list all specification requirements #1210
Labels
area:miscellaneous
For issues that don't match any other area label
priority:p2
Medium priority level
release:allowed-for-ga
Editorial changes that can still be added before GA since they don't require action by SIGs
spec:miscellaneous
For issues that don't match any other spec label
Comments
ocelotl
added
the
spec:miscellaneous
For issues that don't match any other spec label
label
Nov 9, 2020
ocelotl
added a commit
to ocelotl/opentelemetry-specification
that referenced
this issue
Nov 9, 2020
ocelotl
added a commit
to ocelotl/opentelemetry-specification
that referenced
this issue
Nov 9, 2020
andrewhsu
added
priority:p2
Medium priority level
release:allowed-for-ga
Editorial changes that can still be added before GA since they don't require action by SIGs
area:miscellaneous
For issues that don't match any other area label
labels
Nov 10, 2020
ocelotl
added a commit
to ocelotl/opentelemetry-specification
that referenced
this issue
Mar 4, 2021
ocelotl
added a commit
to ocelotl/opentelemetry-specification
that referenced
this issue
Mar 15, 2021
ocelotl
added a commit
to ocelotl/opentelemetry-specification
that referenced
this issue
Sep 9, 2021
ocelotl
added a commit
to ocelotl/opentelemetry-specification
that referenced
this issue
Oct 6, 2021
ocelotl
added a commit
to ocelotl/opentelemetry-specification
that referenced
this issue
Oct 8, 2021
ocelotl
added a commit
to ocelotl/opentelemetry-specification
that referenced
this issue
Oct 8, 2021
ocelotl
changed the title
Specification is sometimes not specific or consistent
Make it possible to automatically list all specification requirements
Oct 14, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area:miscellaneous
For issues that don't match any other area label
priority:p2
Medium priority level
release:allowed-for-ga
Editorial changes that can still be added before GA since they don't require action by SIGs
spec:miscellaneous
For issues that don't match any other spec label
This is the original content of this issue:
What are you trying to achieve?
I am trying to quickly make a list of specification requirements in order to check the specification compliance of a particular implementation.
What did you expect to see?
I was expecting to easily find all the requirements that make up the specification.
Additional context.
I have been reading some parts of the specification and found that the usage of RFC 2119 keywords is sometimes inconsistent, some hard requirements are not specified with MUST, some optional requirements are not specified with SHOULD/MAY. Instead, some requirements are written using other terms that have the same meaning but not the exact syntax of RFC 2119. This makes it impossible to simply search for these keywords in the specification in order to find all the precise requirements that make up the document.
@jmacd requested an issue to be filed. I prefer to reuse this one to minimize the amount of issues 👍
Motivation for this change
The spec is hard to understand because it is written in an inconsistently-applied formal language. Here are some examples:
When implementing OpenTelemetry it is very hard to know what has to be implemented because there is no clear listing of all requirements. If the specifcation is written in the way intended in this PR it will be possible to generate automatically a list of every requirement and condition that the specification states.
It is also much easier to check that the specification is correct if we only need to check a list of well defined sections. Some checks (like having a RFC 2119 keyword, for example) can even be automated.
It is also easier to communicate between OpenTelemetry participants if the requirements are clearly identifiable, this approach uses markdown headings so that each requirement will have its own URL so that they can be used as reference in Slack, email, etc.
Steps
Fixing this issue will require a big change, because it means reformatting every document that has been written to this moment, so it would be convenient to separate this into smaller steps:
The text was updated successfully, but these errors were encountered: