2010-06-05 23:03:39 +00:00
|
|
|
= Notes on how to release new version =
|
|
|
|
|
2011-07-18 16:29:37 +00:00
|
|
|
== alpha/beta/production ==
|
|
|
|
|
|
|
|
Update documentation:
|
|
|
|
|
2011-08-21 23:01:57 +00:00
|
|
|
git blame
|
2011-07-18 16:29:37 +00:00
|
|
|
Unmodified beta since last version => production
|
2011-08-21 23:01:57 +00:00
|
|
|
Unmodified alpha since last version => beta
|
|
|
|
Modified => alpha
|
2011-07-18 16:29:37 +00:00
|
|
|
|
2010-06-05 23:03:39 +00:00
|
|
|
== Update version ==
|
|
|
|
|
|
|
|
=== configure.ac ===
|
|
|
|
configure.ac: AC_INIT([parallel], [20100422], [bug-parallel@gnu.org])
|
|
|
|
|
|
|
|
YYYYMMDD=`yyyymmdd`
|
|
|
|
perl -i -pe "s/20\d\d\d\d\d\d/$YYYYMMDD/" configure.ac
|
|
|
|
|
|
|
|
=== src/parallel ===
|
|
|
|
|
|
|
|
src/parallel: $Global::version = 20100422;
|
|
|
|
|
|
|
|
YYYYMMDD=`yyyymmdd`
|
|
|
|
perl -i -pe "/version/ and s/20\d\d\d\d\d\d/$YYYYMMDD/" src/parallel
|
2010-09-06 22:15:53 +00:00
|
|
|
perl -i -pe "/version/ and s/20\d\d\d\d\d\d/$YYYYMMDD/" src/sql
|
2010-12-21 20:10:44 +00:00
|
|
|
perl -i -pe "/version/ and s/20\d\d\d\d\d\d/$YYYYMMDD/" src/niceload
|
2010-06-05 23:03:39 +00:00
|
|
|
|
|
|
|
=== Autoconf/automake ===
|
|
|
|
|
|
|
|
rm -fr autom4te.cache aclocal.m4 config.h config.h.in config.log Makefile.in missing install-sh
|
|
|
|
rm -rf src/Makefile.in
|
|
|
|
autoreconf --install -W gnu
|
|
|
|
./configure
|
2010-12-21 17:08:16 +00:00
|
|
|
make -j && sudo make install
|
2010-06-05 23:03:39 +00:00
|
|
|
|
2010-11-13 13:57:39 +00:00
|
|
|
== Testsuite ==
|
2010-06-05 23:03:39 +00:00
|
|
|
|
2010-11-13 13:57:39 +00:00
|
|
|
cd testsuite; make
|
2010-06-05 23:03:39 +00:00
|
|
|
|
2010-07-18 02:17:49 +00:00
|
|
|
== Update NEWS ==
|
|
|
|
|
|
|
|
With the same things that goes in the announce mail
|
|
|
|
|
2010-06-05 23:03:39 +00:00
|
|
|
== Package ==
|
|
|
|
|
|
|
|
./configure
|
|
|
|
make dist
|
|
|
|
make dist-bzip2
|
|
|
|
|
2010-08-22 09:00:52 +00:00
|
|
|
== Test the package ==
|
|
|
|
|
2010-12-02 20:58:10 +00:00
|
|
|
YYYYMMDD=`yyyymmdd`
|
2010-08-22 09:00:52 +00:00
|
|
|
cp parallel-$YYYYMMDD.tar.bz2 /tmp
|
2011-01-19 15:25:25 +00:00
|
|
|
pushd /tmp
|
2010-08-22 09:00:52 +00:00
|
|
|
tar xjvf parallel-$YYYYMMDD.tar.bz2
|
|
|
|
cd parallel-$YYYYMMDD
|
2010-09-21 23:17:05 +00:00
|
|
|
./configure && make -j && sudo make -j install
|
2011-01-24 19:06:30 +00:00
|
|
|
pushd
|
2010-08-22 09:00:52 +00:00
|
|
|
|
2010-06-05 23:03:39 +00:00
|
|
|
== Upload ==
|
|
|
|
|
|
|
|
YYYYMMDD=`yyyymmdd`
|
|
|
|
cp doc/parallel.directive parallel-$YYYYMMDD.tar.bz2.directive
|
2010-06-16 03:03:52 +00:00
|
|
|
perl -i -pe "s/20\d\d\d\d\d\d/$YYYYMMDD/" parallel-*.tar.*directive
|
2010-06-05 23:03:39 +00:00
|
|
|
gpg --clearsign parallel-$YYYYMMDD.tar.bz2.directive
|
|
|
|
|
|
|
|
YYYYMMDD=`yyyymmdd`
|
|
|
|
gpg -b parallel-$YYYYMMDD.tar.bz2
|
|
|
|
|
|
|
|
YYYYMMDD=`yyyymmdd`
|
|
|
|
echo put parallel-$YYYYMMDD.tar.bz2{,.sig,*asc} | ncftp ftp://ftp-upload.gnu.org/incoming/ftp/
|
2011-01-02 00:01:21 +00:00
|
|
|
#echo put parallel-$YYYYMMDD.tar.bz2{,.sig,*asc} | ncftp ftp://ftp-upload.gnu.org/incoming/alpha/
|
2010-06-05 23:03:39 +00:00
|
|
|
|
2011-07-22 09:08:58 +00:00
|
|
|
== Update OpenSUSE build system ==
|
|
|
|
|
|
|
|
cd ~/privat/parallel/packager/obs
|
|
|
|
# Update version number
|
|
|
|
em home:tange/parallel/parallel.spec
|
|
|
|
find home:tange/parallel/* -type f | grep -v parallel.spec | parallel -Xj1 osc rm {}
|
|
|
|
# This should not create new files
|
|
|
|
osc up home:tange/parallel/
|
|
|
|
make
|
|
|
|
# Update versionsnummeret from 20110422-2 to YYYYMMDD-1
|
|
|
|
# Reload build-status:
|
|
|
|
https://build.opensuse.org/package/show?package=parallel&project=home%3Atange
|
2011-07-25 22:12:46 +00:00
|
|
|
# Check that one .deb (Debian 5.0) and one .rpm (CentOS) end with 'succeeded'
|
2011-07-22 09:08:58 +00:00
|
|
|
|
2010-09-01 13:26:45 +00:00
|
|
|
== Download and test ==
|
|
|
|
|
2011-03-22 00:44:50 +00:00
|
|
|
YYYYMMDD=`yyyymmdd`
|
2011-01-19 15:25:25 +00:00
|
|
|
pushd /tmp
|
2011-09-08 08:53:26 +00:00
|
|
|
rm -rf parallel-${YYYYMMDD}*
|
2010-09-01 13:26:45 +00:00
|
|
|
wget http://ftp.gnu.org/gnu/parallel/parallel-$YYYYMMDD.tar.bz2
|
2011-01-19 15:25:25 +00:00
|
|
|
#wget http://alpha.gnu.org/gnu/parallel/parallel-$YYYYMMDD.tar.bz2
|
2010-09-01 13:26:45 +00:00
|
|
|
tar xjvf parallel-$YYYYMMDD.tar.bz2
|
|
|
|
cd parallel-$YYYYMMDD
|
2010-11-15 19:14:27 +00:00
|
|
|
./configure
|
2010-09-01 13:26:45 +00:00
|
|
|
make -j && sudo make -j install
|
2011-02-02 15:36:29 +00:00
|
|
|
pushd
|
2010-09-01 13:26:45 +00:00
|
|
|
|
2010-06-08 14:13:20 +00:00
|
|
|
== Update website ==
|
|
|
|
|
|
|
|
http://www.gnu.org/software/parallel/
|
|
|
|
http://www.gnu.org/software/parallel/man.html
|
2010-12-21 17:08:16 +00:00
|
|
|
http://www.gnu.org/software/parallel/sql.html
|
|
|
|
http://www.gnu.org/software/parallel/sem.html
|
|
|
|
http://www.gnu.org/software/parallel/niceload.html
|
2010-06-08 14:13:20 +00:00
|
|
|
|
2010-12-21 17:08:16 +00:00
|
|
|
pod2html src/parallel.pod > ../parallel-web/parallel/man.html
|
2010-09-22 21:54:42 +00:00
|
|
|
pod2html src/sql > ../parallel-web/parallel/sql.html
|
2011-07-22 09:08:58 +00:00
|
|
|
pod2html src/niceload.pod > ../parallel-web/parallel/niceload.html
|
2010-12-21 17:08:16 +00:00
|
|
|
pod2html src/sem.pod > ../parallel-web/parallel/sem.html
|
2011-07-22 09:08:58 +00:00
|
|
|
pushd ../parallel-web/parallel
|
2010-09-05 22:48:28 +00:00
|
|
|
cvs up
|
2010-06-08 14:13:20 +00:00
|
|
|
cvs ci
|
2011-07-22 09:08:58 +00:00
|
|
|
pushd
|
2010-06-08 14:13:20 +00:00
|
|
|
|
2011-03-22 00:44:50 +00:00
|
|
|
== Commit released version ==
|
|
|
|
|
|
|
|
git diff
|
|
|
|
git commit -a
|
|
|
|
|
2011-07-25 22:12:46 +00:00
|
|
|
== Update Savannah ==
|
|
|
|
|
|
|
|
Content from release mail:
|
|
|
|
|
|
|
|
cat doc/release_new_version | klipper-stdin
|
|
|
|
https://savannah.gnu.org/news/submit.php?group=parallel
|
|
|
|
https://savannah.gnu.org/news/approve.php?group=parallel
|
|
|
|
|
|
|
|
# No longer updated. Too long and too buggy
|
|
|
|
# doc/pod2savannah_publicinfo src/parallel | klipper-stdin
|
|
|
|
# https://savannah.gnu.org/project/admin/editgroupinfo.php?group=parallel
|
|
|
|
|
2010-06-05 23:03:39 +00:00
|
|
|
== Update Freshmeat ==
|
|
|
|
|
|
|
|
http://freshmeat.net/projects/parallel/releases/new
|
|
|
|
|
2010-11-13 16:04:58 +00:00
|
|
|
== Update Twitter ==
|
|
|
|
|
2010-12-02 23:04:12 +00:00
|
|
|
New version of #GNU Parallel released. See what is new in this release
|
2010-11-13 16:04:58 +00:00
|
|
|
http://nd.gd/2j Watch the intro video http://nd.gd/0s
|
|
|
|
|
|
|
|
https://savannah.gnu.org/news/?group=parallel
|
|
|
|
|
2011-05-26 11:14:03 +00:00
|
|
|
|
2011-03-22 20:02:22 +00:00
|
|
|
# Only 350 requests per hour: 1 tweet = 3 requests
|
|
|
|
# 119 tweets/hour = sleep 30 per tweet (40 to be safe)
|
2011-05-26 11:14:03 +00:00
|
|
|
# The above is not enough.
|
|
|
|
# Went over the limit at number 132 (sleep 40)
|
|
|
|
# https://support.twitter.com/entries/15364-about-twitter-limits-update-api-dm-and-following
|
|
|
|
# says 250 direct msg per day = 86400/250 = sleep 345
|
2011-05-31 22:02:29 +00:00
|
|
|
cat twitters | grep -iv removed |
|
2011-10-24 19:51:14 +00:00
|
|
|
parallel -j1 sleep 354\; echo @{} You have shown interest in GNU Parallel. \
|
|
|
|
New version: http://nd.gd/2j This is the last message: Follow @GnuParallel \
|
|
|
|
'|' ttytter
|
|
|
|
|
|
|
|
|
2010-11-15 19:14:27 +00:00
|
|
|
|
2010-06-05 23:03:39 +00:00
|
|
|
== Send announce ==
|
|
|
|
|
2010-06-25 23:56:14 +00:00
|
|
|
http://groups.google.com/group/comp.unix.shell/post
|
2010-06-14 22:05:47 +00:00
|
|
|
Newsgroups: comp.unix.shell,comp.unix.admin
|
|
|
|
|
2011-04-23 12:01:22 +00:00
|
|
|
https://lists.gnu.org/mailman/admindb/bug-parallel
|
|
|
|
https://lists.gnu.org/mailman/admindb/parallel
|
|
|
|
|
2010-06-05 23:03:39 +00:00
|
|
|
<<<<<
|
2010-09-01 13:26:45 +00:00
|
|
|
from:tange@gnu.org
|
2010-06-05 23:03:39 +00:00
|
|
|
to:parallel@gnu.org, bug-parallel@gnu.org, info-gnu@gnu.org, bug-directory@gnu.org
|
2011-10-24 19:51:14 +00:00
|
|
|
cc:Sandro Cazzaniga <kharec@mandriva.org>,
|
2011-08-02 21:18:28 +00:00
|
|
|
Tim Cuthbertson <tim3d.junk@gmail.com>, Ludovic Courtès
|
|
|
|
<ludo@gnu.org>, Markus Ammer <mkmm@gmx-topmail.de>, Pavel Nuzhdin
|
|
|
|
<pnzhdin@gmail.com>, Phil Sung <psung@alum.mit.edu>, Michael
|
|
|
|
Shigorin <mike@altlinux.org>, Andrew McFague <amcfague@wgen.net>,
|
|
|
|
Steven M. Christensen <sunfreeware@gmail.com>, Chris Howey
|
|
|
|
<howeyc@gmail.com>, Fethican Coşkuner <fethicanc@gmail.com>,
|
|
|
|
Rogério Brito <rbrito@ime.usp.br>, Koen Vervloesem
|
|
|
|
<koen@vervloesem.eu>, R. Tyler Croy <tyler@monkeypox.org>,
|
|
|
|
kerick@shiftedbit.net, Christian Faulhammer <fauli@gentoo.org>,
|
|
|
|
Ryoichiro Suzuki <ryoichiro.suzuki@gmail.com>, Jesse Alama
|
|
|
|
<jesse.alama@gmail.com>
|
2010-06-05 23:03:39 +00:00
|
|
|
|
2011-10-23 00:28:51 +00:00
|
|
|
Subject: GNU Parallel 20111022 ('Steve Ritchie') released
|
2010-06-05 23:03:39 +00:00
|
|
|
|
2011-10-23 00:28:51 +00:00
|
|
|
GNU Parallel 20111022 ('Steve Ritchie') has been released. It is
|
2011-03-22 00:44:50 +00:00
|
|
|
available for download at: http://ftp.gnu.org/gnu/parallel/
|
2011-02-02 15:36:29 +00:00
|
|
|
|
2011-01-24 19:06:30 +00:00
|
|
|
New in this release:
|
2011-01-18 17:15:42 +00:00
|
|
|
|
2011-10-17 01:10:32 +00:00
|
|
|
* --tag prepends lines with the argument(s). If used with --(n)onall
|
|
|
|
the line will be prepended with the sshlogin instead.
|
|
|
|
|
2011-09-16 13:26:17 +00:00
|
|
|
* --shellquote does not run the command but quotes it using \'s.
|
|
|
|
Useful for making quoted composed commands.
|
2011-08-20 19:13:25 +00:00
|
|
|
|
2011-10-17 01:10:32 +00:00
|
|
|
* --profile can now be repeated merging multiple profiles.
|
|
|
|
|
|
|
|
* --bibtex now gives the BibTeX entry.
|
|
|
|
Thanks to Aleksandr Levchuk for testing.
|
|
|
|
|
|
|
|
* Makefile for simple .deb package.
|
|
|
|
cd packager/debian; make
|
|
|
|
|
|
|
|
* sql: --list-databases lists the databases.
|
|
|
|
|
2011-10-13 21:58:02 +00:00
|
|
|
* GNU Parallel officially in Fedora 16
|
|
|
|
http://www.spinics.net/lists/fedora-package-announce/msg67130.html
|
|
|
|
|
2011-09-16 13:26:17 +00:00
|
|
|
* Blog post on recompression FLAC audio.
|
|
|
|
http://blog.oxplot.com/2011/08/reflac-flac-cleanser.html
|
2011-08-02 21:18:28 +00:00
|
|
|
|
2011-09-16 13:26:17 +00:00
|
|
|
* The most complex use of ::: I a seen so far.
|
|
|
|
http://agentzlerich.blogspot.com/2011/09/following-up-on-previous-failures-ive.html
|
2011-07-19 14:44:14 +00:00
|
|
|
|
2011-10-13 21:58:02 +00:00
|
|
|
* Example of using GNU Parallel with sudo.
|
|
|
|
http://loopkid.net/articles/2011/10/07/recursive-chmod-and-chown-on-files
|
|
|
|
|
|
|
|
* Use wget and gnu parallel to download mp3s at rocket speed.
|
|
|
|
http://sdbrain.posterous.com/use-wget-and-gnu-parallel-to-download-mp3s-at
|
|
|
|
|
|
|
|
* First CV referring to GNU Parallel.
|
|
|
|
http://www.peopleperhour.com/freelancers/stephen_/internet_researcher_and_protocol_develop/140602
|
|
|
|
|
|
|
|
* Cartwright labs usage of GNU Parallel.
|
|
|
|
http://cartwrightlab.wikispaces.com/The+Most+Bang+for+Your+Buck
|
|
|
|
|
2011-01-02 00:01:21 +00:00
|
|
|
* Bug fixes and man page updates.
|
2010-12-21 17:08:16 +00:00
|
|
|
|
2011-03-01 22:04:15 +00:00
|
|
|
|
2010-06-05 23:03:39 +00:00
|
|
|
= About GNU Parallel =
|
|
|
|
|
|
|
|
GNU Parallel is a shell tool for executing jobs in parallel using one
|
2011-01-27 21:56:59 +00:00
|
|
|
or more computers. A job is can be a single command or a small script
|
|
|
|
that has to be run for each of the lines in the input. The typical
|
|
|
|
input is a list of files, a list of hosts, a list of users, a list of
|
|
|
|
URLs, or a list of tables. A job can also be a command that reads from
|
|
|
|
a pipe. GNU Parallel can then split the input and pipe it into
|
|
|
|
commands in parallel.
|
|
|
|
|
|
|
|
If you use xargs and tee today you will find GNU Parallel very easy to
|
|
|
|
use as GNU Parallel is written to have the same options as xargs. If
|
|
|
|
you write loops in shell, you will find GNU Parallel may be able to
|
2010-06-05 23:03:39 +00:00
|
|
|
replace most of the loops and make them run faster by running several
|
2011-05-13 12:02:03 +00:00
|
|
|
jobs in parallel. GNU Parallel can even replace nested loops.
|
2010-06-05 23:03:39 +00:00
|
|
|
|
|
|
|
GNU Parallel makes sure output from the commands is the same output as
|
|
|
|
you would get had you run the commands sequentially. This makes it
|
|
|
|
possible to use output from GNU Parallel as input for other programs.
|
|
|
|
|
|
|
|
You can find more about GNU Parallel at:
|
2011-09-16 13:26:17 +00:00
|
|
|
http://www.gnu.org/s/parallel/
|
2010-06-14 22:05:47 +00:00
|
|
|
|
2010-07-22 22:39:51 +00:00
|
|
|
Watch the intro video on http://www.youtube.com/watch?v=OpaiGYxkSuQ or
|
|
|
|
at http://tinyogg.com/watch/TORaR/ and http://tinyogg.com/watch/hfxKj/
|
2010-06-14 22:05:47 +00:00
|
|
|
|
2011-03-14 16:37:30 +00:00
|
|
|
When using GNU Parallel for a publication please cite:
|
|
|
|
|
|
|
|
O. Tange (2011): GNU Parallel - The Command-Line Power Tool, ;login:
|
|
|
|
The USENIX Magazine, February 2011:42-47.
|
2011-05-13 12:02:03 +00:00
|
|
|
|
|
|
|
|
|
|
|
= About GNU SQL =
|
|
|
|
|
|
|
|
GNU sql aims to give a simple, unified interface for accessing
|
|
|
|
databases through all the different databases' command line
|
|
|
|
clients. So far the focus has been on giving a common way to specify
|
|
|
|
login information (protocol, username, password, hostname, and port
|
|
|
|
number), size (database and table size), and running queries.
|
|
|
|
|
|
|
|
The database is addressed using a DBURL. If commands are left out you
|
|
|
|
will get that database's interactive shell.
|
|
|
|
|
|
|
|
When using GNU SQL for a publication please cite:
|
|
|
|
|
|
|
|
O. Tange (2011): GNU SQL - A Command Line Tool for Accessing Different
|
2011-05-20 23:07:45 +00:00
|
|
|
Databases Using DBURLs, ;login: The USENIX Magazine, April 2011:29-32.
|
2011-07-25 22:12:46 +00:00
|
|
|
|
|
|
|
|
|
|
|
= About GNU Niceload =
|
|
|
|
|
|
|
|
GNU niceload slows down a program when the computer load average (or
|
|
|
|
other system activity) is above a certain limit. When the limit is
|
|
|
|
reached the program will be suspended for some time. If the limit is a
|
|
|
|
soft limit the program will be allowed to run for short amounts of
|
|
|
|
time before being suspended again. If the limit is a hard limit the
|
|
|
|
program will only be allowed to run when the system is below the
|
|
|
|
limit.
|
|
|
|
|
2010-06-05 23:03:39 +00:00
|
|
|
>>>>>
|