I found `mise` a tool to help manage development projects. https://mise.jdx.dev/ It basically can manage ENV vars based on the directory you are in, manages tools you need (and makes thoser available based on the directory you are in), and allows to define simple tasks that can then be shared between developers. Tools can be found in npm, pipx, aqua, binaries on github, ... and it tries to verify signatures and all that (if supported by the repo the data comes from). I replaces the entire autofix workflow with mise tooling and tasks, just to give it a try :-) To reproduce: ```sh > cargo install mise # to get the tool itself # Follow the necessary step # https://mise.jdx.dev/installing-mise.html#shells # to intergate into your shell > cd /your/slint/folder # Mise will now ask whether or not to trust this dir and prints the # command needed to do so. Run that. > mise install # Install all the tools defined in .mise/config.toml # Add a .mise.local.toml with local overrides. Git will ignore this file. # Or add tasks into .mise/tasks/local ... Git will also ignore those. > mise run 'ci:autofix:**:all' # To run all the ci:autofix tasks. ``` It is so much fatser to see these checks fail locally than it is to bother CI with them :-)
1.5 KiB
Contributing
We warmly welcome contributions to the project. Let's discuss ideas or questions in Github discussions. Please feel welcome to open GitHub issues, pull requests, or comment for example on RFC tagged issues.
Issues which we think are suitable for new contributors are tagged with good first issue.
Internal documentation
- Development guide
- Building Slint from sources in this repository
- Testing
- GitHub issues triage and labels
Contributor License Agreement
All contributions are accepted under the terms of the MIT No Attribution License. Please note that you must have written the contribution 100% yourself and that no rights have been transferred to third parties (e.g. your employer). In any other case, please let us know.
When opening a pull request, you will be asked to sign a Contributor License Agreement (CLA).
Coding Style
For the Rust portion of the code base, the CI enforce the coding style via rustfmt.
For the C++ portion of the code base, the CI enforce the coding style via clang-format.