-
Notifications
You must be signed in to change notification settings - Fork 643
Add more support materials for contributors #924
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
base: master
Are you sure you want to change the base?
Conversation
This adds much more information about this project's conventions, development process, and contributor workflow.
This sets the default style (to Google style), so that `clang-format` can be invoked with the style argument.
This sets the default style (to Google style), so that `yapf` can be invoked with the style argument.
The content here is currently all about adjusting GitHub's file type statistics. (IMHO it's weird that GitHub doesn't list Markdown files.)
This configures the linter program `actionlint` for this project. It helps to have this when making changes to the GitHub Actions workflows.
These help improve visibility of errors in CI.
In preparation for a separate PR to do nothing but reformat a few files, this adds information telling developers how to configure git to ignore specific commits. (This is the same approach used in Cirq.) This also adds a placeholder `.git-blame-ignore-revs` file for now, so that running the git config command does not result in an error.
Thanks to Pablo Samano Elton for catching that.
MichaelBroughton
left a comment
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.
Thanks for working on this. I don't think we can merge this PR as is. There are too many changes at once in a single PR. I see the git-blame-ignore-revs stuff is in here again, which I don't think we want. It looks like there is a whole bunch of other linting and styling changes going on here that are hard to track where they come from and how it all fits together on top of all of the changes to .md files. Could you please split this into smaller focused PRs ?
Would also recommend reading go/prefer-small-cls for some general guidelines when splitting things up.
This adds information about project conventions and workflows to
CONTRIBUTING.md, and in support of that, also adds configuration files for more linters and formatters.The biggest change is to
CONTRIBUTING.md, which is now greatly expanded. It includes more "getting started" type guidance, plus developer processes, and coding conventions. Where possible, this references other documentation in TensorFlow or TensorFlow Quantum.The remaining changes are to help developers get the right settings for some commonly-used programs, add GitHub problem matchers for more of the programs used in CI, and add a couple of files that are standard these days:
Add configuration files for some linters and formatters relevant to this project. Not only can users run, e.g.,
clang-format /path/to/some/fileand it will use the correct format without the user having to remember to add a style parameter; program config files are recognized by some editing tools to help developers get immediate feedback while they're editing. (E.g., Emacs has such tooling.)Add more problem matchers to help surface errors in CI by taking advantage of the GitHub problem matchers feature
Add a code of conduct and a standard project
SUPPORT.mdfile.