-
Notifications
You must be signed in to change notification settings - Fork 606
Description
Botan has very minimal 3rd-party dependencies, making it fairly simple to build from source for new contributors. Therefore, just the (implicit) toolchain requirements don't really justify the introduction of a devcontainer.json (or similar setups).
However, we do have plenty of tool configuration files hidden away in src/editors
, src/configs
and src/scripts
to keep the repository's root directory clutter-free. As a result, any first-time interaction with the code base isn't as frictionless as it could be. At least until one reads contributing.rst carefully.
My suggestion: let's introduce a top-level devcontainer.json
that then automagically sets up all the configurations and goodies we have stashed away at the moment. I'm thinking of things like .vscode/
, pyproject.toml
, .clang-format
, .editorconfig
and perhaps more that could be lifted into the repo root within the container without maintaining it in the repo root on GitHub.
In the long-term (read: just my wild idea for now) more configurations and development conveniences could be added like that. For instance: something like mise-en-place could improve the accessibility of certain manual development steps that are currently hidden behind scripts and/or documented processes. I'm thinking of things like "running bogo tests", "running TLS anvil", "rolling a release", "running clang-tidy", and such.