[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: [ANN] slingshot 7 released
- From: Gary Vaughan <gary@...>
- Date: Thu, 31 Jul 2014 15:19:47 +0100
Slingshot releases rocks!
I am happy to announce the release of Slingshot version 7.
Slingshot's home page is at http://github.com/gvvaughan/slingshot
The idea of Slingshot is to provide a common infrastructure to
build and release luarocks from Lua packages on github, automating
administrative project tasks such as:
- managing a separate github release branch
- generating rockspec files
- making luarocks uploads
- emailing release announcements
- bootstrapping autotools
- launching Specl checks
This is the first public release of Slingshot, though I have been
using it to manage releases of stdlib, luaposix, lyaml, Specl, Zile
and others for more than a year now, where it has saved me a metric
bucket-load of time. I'd be delighted if it can help improve your
workflows too.
Feedback, especially in the form of patches, always welcome!
* Noteworthy changes in release 7 (2014-07-31) [stable]
** New Features:
- Slingshot now requires a LuaRocks binary that supports the
upload command (such as the 2.2.0 beta release) and uses that to
upload rockspecs directly to the moonrocks repository, rather
than emailing the luarocks-developer list with an upload request.
- `mkrockspecs` accepts a new `--branch` option for generating a
git/scm rockspec that pulls that branch instead of master.
- `mkrockspecs` accepts a new `--repository` option to cope with
releasing a LuaRock from a repository with a different name, e.g:
`stdlib-36-1.rockspec` from `http://github.com/rrthomas/lua-stdlib`.
- Slingshot bootstrap will check rockspecs listed in $buildreq,
according to the URL part of a specification-triple ending in
`.rockspec`. So that we don't have to install, say, LDoc twice for
Travis (once in the system rocks tree so that bootstrap won't bomb
out with a missing rockspec error, and then again in the project
rocks tree after luarocks-config.ld has been built by make), the
rockspec version checks can be short-circuited by setting an APPVAR
in bootstrap's environment, e.g:
LDOC=`pwd`/luarocks/bin/ldoc ./bootstrap
- Slingshot bootstrap accepts a new `--luarocks-tree` option to
check a particular tree for prerequisite rocks.
- `build-aux/merge-sections` has a new `--verbose` flag that reports
progress to stderr in real time.
- Remove m4/ax_compare_version.m4 and dependencies, resulting in a
slightly faster and smaller configure.
** Bugs fixed:
- `bootstrap` now has `slingshot_copy` merged in correctly.
- `mkrockspecs` generates build.modules keys correctly for the
`foo/bar/init.lua` pattern.
Install it with LuaRocks, using:
luarocks --server=http://rocks.moonscript.org install slingshot 7
Or, with a recent enough luarocks binary:
luarocks install slingshot 7
If the latest rocks are not yet available from the official repositories,
you can install directly from the slingshot release branch, with:
$ luarocks install \
https://raw.githubusercontent.com/gvvaughan/slingshot/release-v7/slingshot-7-1.rockspec