Blame RELEASES.md

Packit Service 4684c1
# Release policy
Packit Service 4684c1
Packit Service 4684c1
In the GnuTLS project there are at most two ongoing releases, one marked as
Packit Service 4684c1
'stable' and one marked as 'next'. The former is always present and
Packit Service 4684c1
supported, while the latter is introduced on the discretion of the
Packit Service 4684c1
development team.
Packit Service 4684c1
Packit Service 4684c1
For both release branches all the rules in [CONTRIBUTING.md](CONTRIBUTING.md)
Packit Service 4684c1
apply, but in principle the 'stable' release is more conservative in new features,
Packit Service 4684c1
while the 'next' branch allows for mild behavioral changes. The 'stable' branch
Packit Service 4684c1
always provides API and ABI compatibility, while the 'next' branch may on exceptional
Packit Service 4684c1
cases change the API.
Packit Service 4684c1
Packit Service 4684c1
Packit Service 4684c1
|Branch|Version|Release interval|
Packit Service 4684c1
|:----:|:-----:|:--------------:|
Packit Service 4684c1
|stable|3.6.x  |bi-monthly      |
Packit Service 4684c1
|next  |-      |                |
Packit Service 4684c1
Packit Service 4684c1
Packit Service 4684c1
# Release process
Packit Service 4684c1
Packit Service 4684c1
 0. Create a new 'milestone' for the next release and move all issues present in the
Packit Service 4684c1
    current release milestone.
Packit Service 4684c1
 1. Verification of release notes: ensure that release notes ([NEWS](NEWS)) exist
Packit Service 4684c1
    for this release, and include all significant changes since last release.
Packit Service 4684c1
 2. Update of release date in [NEWS](NEWS), and bump of version number in
Packit Service 4684c1
    [configure.ac](configure.ac) as well as soname numbers in [m4/hooks.m4](m4/hooks.m4).
Packit Service 4684c1
 3. make distcheck
Packit Service 4684c1
 4. git tag -s $(VERSION). The 3.6.12 was including both the 3.6.12 and
Packit Service 4684c1
    gnutls_3_6_12 tags, but it may make sense to only use the version from
Packit Service 4684c1
    now on.
Packit Service 4684c1
 5. git push && git push --tags
Packit Service 4684c1
 6. make dist && gpg --sign --detach gnutls-$(VERSION).tar.xz
Packit Service 4684c1
 7. scp gnutls-$(VERSION).tar.xz* trithemius.gnupg.org:/home/ftp/gcrypt/v3.6/
Packit Service 4684c1
 8. Create and send announcement email based on previously sent email to the list and
Packit Service 4684c1
    [NEWS](NEWS) file.
Packit Service 4684c1
 9. Create a NEWS entry at [web-pages repository](https://gitlab.com/gnutls/web-pages/-/tree/master/news-entries),
Packit Service 4684c1
    and/or [a security advisory entry](https://gitlab.com/gnutls/web-pages/-/tree/master/security-entries)
Packit Service 4684c1
    if necessary. The NEWS entry is usually pointing to the announcement email.
Packit Service 4684c1
    A commit auto-generates the [gnutls web site](https://gnutls.gitlab.io/web-pages/)
Packit Service 4684c1
    which is mirrored twice a day by www.gnutls.org.
Packit Service 4684c1
10. Use the @GnuTLS twitter account to announce the release.
Packit Service 4684c1
11. Close the current release milestone.