Update draft release notes (#743)

This commit is contained in:
John Kerl 2021-11-10 23:59:28 -05:00 committed by GitHub
parent feec887738
commit bf25cec435
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 26 additions and 47 deletions

View file

@ -4,12 +4,10 @@ Grab `miller.spec` and go to town.
## Instructions to make Miller source/binary RPMs for the RPM-inexperienced
### One-time setup
Change `3.3.2` to desired version. Release-package example:
https://github.com/johnkerl/miller/releases/download/v3.3.2/mlr-3.3.2.tar.gz
Change `6.2.0` to desired version. Release-package example:
https://github.com/johnkerl/miller/releases/download/v6.2.0/miller-6.2.0.tar.gz
```
cd
@ -17,7 +15,7 @@ mkdir ~/rpmbuild
mkdir ~/rpmbuild/SPECS
mkdir ~/rpmbuild/SOURCES
cp /your/path/to/miller/clone/miller.spec ~/rpmbuild/SPECS
cp /your/path/to/mlr-3.3.2.tar.gz ~/rpmbuild/SOURCES
cp /your/path/to/miller-6.2.0.tar.gz ~/rpmbuild/SOURCES
cd ~/rpmbuild/SPECS
```
@ -40,32 +38,20 @@ sudo yum install rpmlint
### Build source-RPM only
```
rpmbuild -bs miller.spec
Wrote: /your/home/dir/rpmbuild/SRPMS/miller-3.3.2-1.el6.src.rpm
Wrote: /your/home/dir/rpmbuild/SRPMS/miller-6.2.0-1.el6.src.rpm
```
```
rpm -qpl ../SRPMS/miller-3.3.2-1.el6.src.rpm
mlr-3.3.2.tar.gz
rpm -qpl ../SRPMS/miller-6.2.0-1.el6.src.rpm
miller-6.2.0.tar.gz
miller.spec
```
```
rpm -qpi ../SRPMS/miller-3.3.2-1.el6.src.rpm
rpm -qpi ../SRPMS/miller-6.2.0-1.el6.src.rpm
Name : mlr Relocations: (not relocatable)
Version : 3.3.2 Vendor: (none)
Release : 1.el6 Build Date: Sun 07 Feb 2016 09:43:39 PM EST
Install Date: (not installed) Build Host: host.name.goes.here
Group : Applications/Text Source RPM: (none)
Size : 774430 License: BSD2
Signature : (none)
URL : http://johnkerl.org/miller/doc
Summary : Name-indexed data processing tool
Description :
Miller (mlr) allows name-indexed data such as CSV and JSON files to be
processed with functions equivalent to sed, awk, cut, join, sort etc. It can
convert between formats, preserves headers when sorting or reversing, and
streams data where possible so its memory requirements stay small. It works
well with pipes and can feed "tail -f".
Version : 6.2.0 Vendor: (none)
...
```
### Build source and binary RPMs
@ -75,30 +61,21 @@ rpmbuild -ba miller.spec
```
```
rpm -qpl ../RPMS/x86_64//miller-3.3.2-1.el6.x86_64.rpm
rpm -qpl ../RPMS/x86_64//miller-6.2.0-1.el6.x86_64.rpm
/usr/bin/mlr
/usr/share/man/man1/mlr.1.gz
```
```
sudo rpm -ivh ../RPMS/x86_64/miller-3.3.2-1.el6.x86_64.rpm
sudo rpm -ivh ../RPMS/x86_64/miller-6.2.0-1.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:mlr ########################################### [100%]
```
```
/usr/bin/mlr --version
Miller 3.3.2
Miller 6.2.0
man -M /usr/share/man mlr
```
and check the version in the DESCRIPTION section.
### Some handy references
* https://github.com/bonzini/grep/blob/master/grep.spec
* http://www.rpm.org/max-rpm/s1-rpm-build-creating-spec-file.html
* http://www.rpm.org/max-rpm/s1-rpm-inside-files-list-directives.html
* http://www.tldp.org/HOWTO/RPM-HOWTO/build.html
* http://www.tldp.org/LDP/solrhe/Securing-Optimizing-Linux-RH-Edition-v1.3/chap3sec20.html
* https://fedoraproject.org/wiki/How_to_create_a_GNU_Hello_RPM_package

View file

@ -62,7 +62,7 @@ This documentation pageset is built using [https://www.mkdocs.org/](MkDocs). Ple
## Creating a new release: for developers
At present I'm the primary developer so this is just my checklist for making new releases.
This is my checklist for making new releases.
In this example I am using version 6.1.0 to 6.2.0; of course that will change for subsequent revisions.
@ -74,17 +74,18 @@ In this example I am using version 6.1.0 to 6.2.0; of course that will change fo
* The ordering in this makefile rule is important: the first build creates `mlr`; the second runs `mlr` to create `manpage.txt`; the third includes `manpage.txt` into one of its outputs.
* Commit and push.
* Create the release tarball and SRPM:
* Create the release tarball:
* TBD for the Go port ...
* Linux/MacOS/Windows binaries from GitHub Actions ...
* Pull back release tarball `mlr-6.2.0.tar.gz` from buildbox, and `mlr.{arch}` binaries from whatever buildboxes.
* `make release_tarball`
* This creates `miller-6.2.0-dev.tar.gz` which we'll upload to GitHub, the URL of which will be in our `miller.spec`
* Get `mlr.{arch}` binaries from latest successful build from [https://github.com/johnkerl/miller/actions](https://github.com/johnkerl/miller/actions), or, build them on buildboxes.
* Prepare the source RPM following [./README-RPM.md](README-RPM.md).
* Create the Github release tag:
* Don't forget the `v` in `v6.2.0`
* Write the release notes
* Attach the release tarball and binaries. Double-check assets were successfully uploaded.
* Attach the release tarball, binaries, and SRPM. Double-check assets were successfully uploaded.
* Publish the release
* Check the release-specific docs:

View file

@ -46,7 +46,7 @@ This documentation pageset is built using [https://www.mkdocs.org/](MkDocs). Ple
## Creating a new release: for developers
At present I'm the primary developer so this is just my checklist for making new releases.
This is my checklist for making new releases.
In this example I am using version 6.1.0 to 6.2.0; of course that will change for subsequent revisions.
@ -58,17 +58,18 @@ In this example I am using version 6.1.0 to 6.2.0; of course that will change fo
* The ordering in this makefile rule is important: the first build creates `mlr`; the second runs `mlr` to create `manpage.txt`; the third includes `manpage.txt` into one of its outputs.
* Commit and push.
* Create the release tarball and SRPM:
* Create the release tarball:
* TBD for the Go port ...
* Linux/MacOS/Windows binaries from GitHub Actions ...
* Pull back release tarball `mlr-6.2.0.tar.gz` from buildbox, and `mlr.{arch}` binaries from whatever buildboxes.
* `make release_tarball`
* This creates `miller-6.2.0-dev.tar.gz` which we'll upload to GitHub, the URL of which will be in our `miller.spec`
* Get `mlr.{arch}` binaries from latest successful build from [https://github.com/johnkerl/miller/actions](https://github.com/johnkerl/miller/actions), or, build them on buildboxes.
* Prepare the source RPM following [./README-RPM.md](README-RPM.md).
* Create the Github release tag:
* Don't forget the `v` in `v6.2.0`
* Write the release notes
* Attach the release tarball and binaries. Double-check assets were successfully uploaded.
* Attach the release tarball, binaries, and SRPM. Double-check assets were successfully uploaded.
* Publish the release
* Check the release-specific docs: