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

docs: Add an ADR the format of README files in repos. #363

Merged
merged 8 commits into from
Aug 10, 2022

Conversation

feanil
Copy link
Contributor

@feanil feanil commented Aug 1, 2022

This is an additional ADR for OEP-55 which provides details about the
README specification.

@feanil feanil force-pushed the feanil/readme_adr branch from 61e667c to b81bf47 Compare August 1, 2022 16:20
@feanil feanil requested a review from e0d August 1, 2022 17:46
Copy link
Contributor

@e0d e0d left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've added a couple non-blocking comments.

* **Reporting Security Issues** - A link to the e-mail address where security
issues can be reported.

Template
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would a link to a template in cookie cutters be better? Worry this will drift compared to where the rubber meets the road.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's a good call, Once we've hammerd out the contents, I'll update the cookiecutter and link to it from here.

with the component. It should link to relevant docs as well as places where
the users can get help with from other humans.

* **How to Contribute** - A section to indicate how new users can contribute to
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to have a status or similar around whether contributions are desired and/or will be accepted?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was considering renaming this section to Contributing and then we could let maintainers decide what level of contributions this component is accepting. If we did that, I could imagine us having a status for the level of contribution accepted. Possible values being:

  • fixes only - no new features are being accepted at this point, but fixes and maintenance updates welcome.
  • new-features accepted - please discuss your new ideas with the maintainers before you write code to increase the changes that features are accepted.
  • security only - no changes accepted except for security fixes.

@e0d what do you think, is it worth updating this?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That makes sense to me. Though I think that we should emphasize the following:

  1. contributions should always start with an issue, before code
  2. we prefer maintainers who accept contributions

Copy link
Contributor

@idegtiarov idegtiarov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One minor nit, the other looks good to me. Thank you.

Copy link
Contributor

@nedbat nedbat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is great that we are codifying this! I've made a few suggestions.

* **Purpose** - A paragraph or two summarizing the purpose of this component.

* **Getting Started** - A section to indicate how you can begin development on
the new component.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sometimes Getting Started is about starting to use the component, sometimes it's about starting to develop. You've clearly said "development" here. I wonder if the title of the section should clarify that, or if we might also need how to start using the component?


* **People** - A section that tells people how they can find the current
maintainers of this component. Usually a link to the Backstage page for the
component and to the catalog-info.yaml file.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this section duplicative of Getting Help?

Also, do we need to link to both the Backstage page and the yaml file? Isn't one the published version of the other? I haven't seen what this will look like, does it tell how to actually contact people?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're right, linking to the component in backstage should be sufficient. I'll update the language.

The Open edX Code of Conduct
----------------------------

All community members should familarize themselves with the `Open edX Code of Conduct`_.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"All community members are expected to follow the Open edX Code of Conduct" or something like that.

======

The assigned maintainers for this component and other project details
may be found in `Backstage`_ or groked from inspecting catalog-info.yaml.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We aren't going to say "groked", right? :)

Copy link
Contributor

@robrap robrap left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @feanil.

Context
*******

`OEP-55`_ states that one of the jobs of a maintainer is te maintain an
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additional context, is that OEP-19 provided information about READMEs: https://open-edx-proposals.readthedocs.io/en/latest/best-practices/oep-0019-bp-developer-documentation.html#readmes

OEP-19 should get an update, at a minimum to point here for more decisions and details around READMEs. Not sure what else should stay in sync by copying from OEP-19 here, or the other direction.

@feanil feanil force-pushed the feanil/readme_adr branch from 3baf034 to 96db54a Compare August 3, 2022 16:31
@feanil feanil requested review from nedbat and robrap August 3, 2022 16:46
@feanil
Copy link
Contributor Author

feanil commented Aug 3, 2022

Ready for another round of review.

Copy link
Contributor

@robrap robrap left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor clean-up. Thanks.

Status
******

** Accepted **
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: I generally haven't seen formatting for the status.

@feanil feanil force-pushed the feanil/readme_adr branch from 559b53f to 7174571 Compare August 3, 2022 20:30
Feanil Patel and others added 3 commits August 3, 2022 16:34
This is an additional ADR for OEP-55 which provides details about the
README specification.
Co-authored-by: Igor Degtiarov <degtiarov.igor@gmail.com>
Co-authored-by: Ned Batchelder <ned@edx.org>
Co-authored-by: Robert Raposa <rraposa@edx.org>
Give maintainers more flexability about the level of contributions
they accept and some examples of words they cane use to communicate that
to the poor souls who aren't in the know.
@feanil feanil force-pushed the feanil/readme_adr branch from 7174571 to eab628c Compare August 3, 2022 20:34

** Accepted **

Context
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops. @feanil - I didn't mean to approve without #363 (comment) being addressed. It was mistakenly marked as outdated, because a separate change came through on the same line.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, yes, I meant to reply on that one, I just added an update to OEP-55 and OEP-19

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks. I think the context paragraph should note the history of addressing READMEs in OEP-19, but I won't belabor the point. I understand it wasn't part of your immediate concern, OEP-55, but it was the initial attempt at codifying the use and purpose of a README.

Now that we have a place to put the specification, update OEPs
that reference readmes and link to the specification.
@feanil feanil requested review from nedbat and robrap August 3, 2022 21:56
@feanil feanil self-assigned this Aug 4, 2022
Co-authored-by: Ned Batchelder <ned@edx.org>
Co-authored-by: Robert Raposa <rraposa@edx.org>
@feanil feanil force-pushed the feanil/readme_adr branch from 8ad52bf to d864096 Compare August 4, 2022 17:42
Feanil Patel and others added 2 commits August 4, 2022 13:44
@feanil
Copy link
Contributor Author

feanil commented Aug 10, 2022

FYI, I've incorporated these guidelines into an update of the cookiecutter: openedx/edx-cookiecutters#241 I'll be updating this PR to remove the template readme and point to that one instead.

Link to the cookiecutter version of the template instead of having
another copy of the best practices here.  This way the cookiecutter
copy is treated as the definitive version of the file.
@feanil feanil merged commit 14515df into master Aug 10, 2022
@feanil feanil deleted the feanil/readme_adr branch August 10, 2022 19:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

5 participants