summaryrefslogtreecommitdiff
path: root/pkg/ReadMe.md
blob: 7faede8bf87c48e738a4869945b28bbc2e52b062 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# How to Make a `libyaml` Release

## Versioning

Update libyaml version in:
* announcement.msg
* Changes
* CMakeLists.txt
  * `YAML_VERSION_MAJOR`, `YAML_VERSION_MINOR`, `YAML_VERSION_PATCH`
* .appveyor.yml
* configure.ac
  * `YAML_MAJOR`, `YAML_MINOR`, `YAML_PATCH`, `YAML_RELEASE`, `YAML_CURRENT`, `YAML_REVISION`

Commit and push everything to `release/0.x.y`.

## Test and Create Release Archives

### GitHub Actions Automation

The github workflow:

    .github/workflows/dist.yaml

will do this automatically for you.

#### .github/workflows/dist.yaml

This workflow will create release archives (`tar.gz` and `zip`).

### Manually

Make sure you have a clean git repository (no changed files).
The following process will clone your current git directory.

This will need the docker image `yamlio/libyaml-dev`.
You can either pull it, or create it yourself:

    make docker-build

### Create dist archives

Run:

    make docker-dist

It will run `make dist` in the container to create a tarball written to
`pkg/docker/output`.
It will also create a zipfile.

## Update master

    git merge release/0.x.y
    git tag -a 0.x.y
    # <Editor opens>
    # Paste the corresponding entry from the Changes file
    # Look at an earlier release for how it should look like:
    #   git show 0.2.3
    git push origin master 0.x.y

## Create a GitHub release

Go to "Releases" and click on "Draft a new release".

Fill in the tag you just created in the previous step.

Fill in the release title: v0.x.y

Paste the changelog into the description field.

Upload the tar.gz and .zip file.

You can "Save draft" and publish later, or directly click on "Publish release".

## Update pyyaml.org

See <https://github.com/yaml/pyyaml.org/blob/master/ReadMe.md>.