Skip to content

Conversation

@mhucka
Copy link
Member

@mhucka mhucka commented Dec 9, 2025

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/file and 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.md file.

mhucka added 12 commits December 9, 2025 00:14
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.
@mhucka mhucka marked this pull request as ready for review December 9, 2025 01:20
@mhucka mhucka self-assigned this Dec 9, 2025
@mhucka mhucka added area/docs Involves documentation – problems, ideas, requests area/health Involves general matters of project configuration, health, maintenance, and similar concerns area/devops Involves build systems, Make files, Bazel files, continuous integration, and/or other DevOps topics labels Dec 9, 2025
@mhucka mhucka removed their assignment Dec 9, 2025
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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/devops Involves build systems, Make files, Bazel files, continuous integration, and/or other DevOps topics area/docs Involves documentation – problems, ideas, requests area/health Involves general matters of project configuration, health, maintenance, and similar concerns

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant