Contributing
Source:CONTRIBUTING.md
Development environment
We provide a default.nix
file that defines the right development environment if you already are a Nix user and wish to contribute to the package. This development environment will provide the required R packages to allow you to work on rixpress. This development environment is pinned to a specific nixpkgs
commit, so it does not reflect the current status on CRAN. This is why it’s also important to make sure that contributions work on rhub
.
Unit and end-to-end tests
This package has many unit tests, but some functionality cannot be reliably tested using unit tests. To solve this issue, we set up another repository called b-rodrigues/rixpress_demos which has many examples that run on GitHub Actions each time a commit is pushed to rixpress’s GitHub repository.
Submitting PRs
PRs are very welcome, just make sure unit tests pass if you open one. Ideally, you should also clone b-rodrigues/rixpress_demos and try to run some examples using your changes. If you still want feedback but tests don’t pass, then set the PR to draft.
If you’ve added a feature, make sure to document it and add a corresponding unit test as well.
We don’t mind PRs with code generated by LLMs, but be mindful of the following:
- make sure you understand and are happy to be responsible for every line of code as if you had written it yourself;
- make sure the code uses a similar coding style (for example, we don’t use global veriables);
- LLMs sometimes generate very verbose code to achieve simple things, try to simplify the code as much as possible.
Discussions
For general discussion about the package, open a discussion on https://github.com/b-rodrigues/rixpress/discussions. To submit bug reports or request features, open an issue https://github.com/b-rodrigues/rixpress/issues.