Skip to content

A script to generate release artifacts such as announcement, news post, download index, etc

Notifications You must be signed in to change notification settings

liblouis/release-helpers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Liblouis release helpers

A script to generate some of the artifacts needed for a liblouis release. In particular it creates

  • An up-to-date ANNOUNCE file containing the news from NEWS
  • a news post that can be inserted in the Jekyll based web site
  • an up-to-date download index
  • an up-to-date online documentation

Usage

First build liblouis

cd ~/src/liblouis
make dist
make distwin

Then run the release-helper script. Specify where the source to liblouis and the liblouis website is located

clojure -m release-helper ~/src/liblouis ~/src/liblouis.github.io

Liblouisutdml

The script also works for creating a liblouisutdml release:

cd ~/src/liblouisutdml
make dist

Then run the release-helper script. Specify where the source to liblouis and the liblouis website is located

clojure -m release-helper ~/src/liblouisutdml ~/src/liblouis.github.io

All the generated artifacts in ~~/src/liblouisutdml~ and ~~/src/liblouis.github.io~ should be correct.

Rationale

Why do we need these scripts in the first place? Well, creating a release is quite laborious but fairly mundane work as described in the HACKING file. Automating most of this certainly makes sense.

On the other hand you can rightfully ask yourself why we are doing this. The changes for example are listed in three different places (website, GitHub release page, announce email) in two different formats. Is this really needed?

Not having a separate website would certainly simplify things and would partially obliviate the need for the release-helper scripts. At the time it seemed easier for the user to have a website where all the relevant information could be centrally organized, e.g. news, downloads, online documentation, etc. The downloads have pretty much been superseded by the GitHub releases page, but nightly snapshots are still easier to find on the website.

Another simplification might be to have all changes in markdown. We could put markdown in the announce email. That would mean no more converting of formats. On the other hands I personally love editing in orgmode and I would not want to miss it.

Prerequisites

  • You need the Clojure cli tools. Install them tools as described in the Getting Started Guide.
  • You need pandoc.
  • I recommend you use hub to create github releases from the command line

Contributing

If you have any improvements or comments please feel free to file a pull request or an issue.

License

Copyright (C) 2019 Swiss Library for the Blind, Visually Impaired and Print Disabled

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

About

A script to generate release artifacts such as announcement, news post, download index, etc

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published