The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.2 KiB
66 lines
2.2 KiB
# Wrap review guidelines |
|
|
|
In order to get a package in the Wrap database it must be reviewed and |
|
accepted by someone with admin rights. Here is a list of items to |
|
check in the review. If some item is not met it does not mean that the |
|
package is rejected. What should be done will be determined on a |
|
case-by-case basis. Similarly meeting all these requirements does not |
|
guarantee that the package will get accepted. Use common sense. |
|
|
|
## Setting up the tools |
|
|
|
The [mesonwrap repository](https://github.com/mesonbuild/mesonwrap) provides tools |
|
to maintain the WrapDB. Read-only features such can be used by anyone without Meson admin rights. |
|
|
|
## Personal access token |
|
|
|
Some tools require access to the Github API. |
|
A [personal access token](https://github.com/settings/tokens) may be required |
|
if the freebie Github API quota is exhausted. `public_repo` scope is required |
|
for write operations. |
|
|
|
``` |
|
$ cat ~/.config/mesonwrap.ini |
|
[mesonwrap] |
|
github_token = <github token> |
|
``` |
|
|
|
## Reviewing code |
|
|
|
``` |
|
mesonwrap review zlib --pull-request=1 [--approve] |
|
``` |
|
|
|
Since not every check can be automated please pay attention to the following during the review: |
|
|
|
- Download link points to an authoritative upstream location. |
|
- Version branch is created from master. |
|
- Except for the existing code, `LICENSE.build` is mandatory. |
|
- `project()` has a version and it matches the source version. |
|
- `project()` has a license. |
|
- Complex `configure_file()` inputs are documented. |
|
If the file is a copy of a project file make sure it is clear what was changed. |
|
- Unit tests are enabled if the project provides them. |
|
- There are no guidelines if `install()` is a good or a bad thing in wraps. |
|
- If the project can't be tested on the host platform consider using the `--cross-file` flag. |
|
See [the issue](https://github.com/mesonbuild/mesonwrap/issues/125). |
|
|
|
Encourage wrap readability. Use your own judgement. |
|
|
|
## Approval |
|
|
|
If the code looks good use the `--approve` flag to merge it. |
|
The tool automatically creates a release. |
|
|
|
If you need to create a release manually (because, for example, a MR |
|
was merged by hand), the command to do it is the following: |
|
|
|
```shell |
|
mesonwrap publish reponame version |
|
``` |
|
|
|
An example invocation would look like this: |
|
|
|
```shell |
|
mesonwrap publish expat 2.2.9 |
|
```
|
|
|