### Improving Vere developer experience
This PR enables a `bazel run //bazel:refresh_compile_commands` command
that generates a `compile_commands.json` file in the root of the repo.
This file can be used by popular C/C++ editor plugins/extensions to
automatically enable modern IDE features like auto-completion,
cross-references, hovering, refactoring, etc.
To enable this, we add
[this](https://github.com/hedronvision/bazel-compile-commands-extractor)
"compile commands extractor" program to our `BUILD.bazel` file.
If you want to try this yourself with your own installation of vscode
with the official `clangd` extension (for example)...
```
git checkout i/195/better-ide-support
# uninstall any c/c++ extensions you might already have
code --install-extension llvm-vs-code-extensions.vscode-clangd
code --uninstall-extension ms-vscode.cpptools
# add these `clangd` settings to your *user* json:
"clangd.arguments": [
"--header-insertion=never",
"--compile-commands-dir=${workspaceFolder}/",
"--query-driver=**",
],
# generate the `compile_commands.json` file
bazel run //bazel:refresh_compile_commands
# finally, reload your vscode window
```
Enjoy no red squigglies, plus lots more.
Resolves#195.
Also removes a blurb about accepting emailed patches; this
has never happened in practice, and we don't supply
maintainers' emails. Sticking to what we know we support
is best.
'Urbit' refers to the project/product/platform, whereas 'urbit' refers
to an individual ship or instance. This corrects some old, incorrect
lower-case usage.
Revamps the "Git practice" section to make it less of a git and GitHub
tutorial and more of a guide of expected contribution style. In
particular, it answers the questions of:
* what tree contributors should branch from
* how to submit contributions
* how to structure commits
* how to format commit descriptions
* what contributions are considered acceptable
* what our expectations are around committing pills
Additionally, adds a "Releases" section that describes how we go about
making and deploying releases.