Table of Contents
- 1. Local Development
- 2. Ideas
- 2.1. For branches
- 2.2. For patches
- 2.2.1. TODO Show and describe the overall status on the page for an issue
- 2.2.2. TODO Improve display of lint warning changes
- 2.2.3. TODO Show when there are comments/messages on the issue
- 2.2.4. TODO Show changes with system tests
- 2.2.5. TODO Extend testing for patches
- 2.2.6. TODO Run licensecheck on package sources
- 2.3. QA Ecosystem
-- mode: org --
This service is intended to assist with quality assurance within Guix. That is maintaining and improving the quality of many aspects of Guix, like packages for example.
1. Local Development
Use the guix-dev.scm file to provide the dependencies.
guix environment -l guix-dev.scm
Then run the following commands:
./bootstrap.sh ./configure make
After that, you can start the service via:
Expect pages to load slowly since the QA frontpage won't have up to date cached data to use.
2.1. For branches
2.1.1. TODO Show broken packages
2.1.3. TODO Show broken fixed output package derivations
2.1.4. TODO Show lint warnings
2.1.5. Branch comparisons
2.1.6. TODO Show package reproducibility statistics
This will provide a better URL and faster page load times compared to directly going to data.guix.gnu.org or data.qa.guix.gnu.org.
2.2. For patches
2.2.1. TODO Show and describe the overall status on the page for an issue
2.2.2. TODO Improve display of lint warning changes
2.2.3. TODO Show when there are comments/messages on the issue
To highlight when there is discussion that might need reading before merging the patch.
2.2.4. TODO Show changes with system tests
2.2.5. TODO Extend testing for patches
- TODO Cross-compilation from
This can be enabled, but data might often be lacking due to lack of build resources for bordeaux.guix.gnu.org
The one powerpc64le-linux build machine for bordeaux.guix.gnu.org isn't always on (this could be fixed by changing the hosting). Anyway, some always available build machine for powerpc64le-linux is probably needed before extending patch testing.
Builds are now happening on bordeaux.guix.gnu.org, once it's caught up, enabling i586-gnu should be possible. There might be issues with a lack of build resources (like x8664-linux).
2.2.6. TODO Run licensecheck on package sources
And highlight changes or when this doesn't match what's declared in the Guix package.
2.3. QA Ecosystem
2.3.2. Monitoring and observability
2.3.3. Keeping Guix packages up to date
- TODO Automated patch submission for package updates
Using guix refresh. This way the manual work is reduced, and it's easier to just apply the package updates that have been tested.
2.3.4. Facilitating people without commit access reviewing patches
This might help speed up getting patches merged, and get more people involved in the process. Maybe the QA Frontpage has a part to play in helping this to happen.