Blame ChangeLog-2013

Packit Service 51e54d
Sat Nov 30 21:07:06 GMT 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* .bzrignore: Move to ...
Packit Service 51e54d
	* .gitignore: ... here, adjusting for differences between bzr and
Packit Service 51e54d
	  git.
Packit Service 51e54d
	* Makefile.am (EXTRA_DIST): Replace .bzrignore with .gitignore.
Packit Service 51e54d
	* gnulib: Add --no-vc-files.
Packit Service 51e54d
Packit Service 51e54d
Wed Nov 27 10:50:43 GMT 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* configure.ac: Only call AC_PROG_AR if it is defined, to restore
Packit Service 51e54d
	  compatibility with Automake 1.10 (thanks, Mathieu Malaterre;
Packit Service 51e54d
	  Debian bug #730191).
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Wed Nov 27 10:48:16 GMT 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Automake 1.14, Gettext 0.18.3, and Gnulib 20130805.
Packit Service 51e54d
Packit Service 51e54d
Sun Jun 23 12:44:09 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline-private.h (struct pipeline): Make want_infile and
Packit Service 51e54d
	  want_outfile non-const.
Packit Service 51e54d
	* lib/pipeline.c (pipeline_join): Take copies of p1->want_infile and
Packit Service 51e54d
	  p2->want_outfile.
Packit Service 51e54d
	  (pipeline_want_infile): Take a copy of file.
Packit Service 51e54d
	  (pipeline_want_outfile): Likewise.
Packit Service 51e54d
	  (pipeline_free): Free p->want_infile and p->want_outfile.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Sun Jun 23 12:40:32 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (argstr_get_word, pipeline_free): Remove
Packit Service 51e54d
	  unnecessary tests before freeing pointers.
Packit Service 51e54d
Packit Service 51e54d
Sat Jun 22 17:12:03 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/common.c (temp_dir_setup): Fail the test if mkdtemp fails.
Packit Service 51e54d
Packit Service 51e54d
Thu Jun  6 12:43:06 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Version: 1.2.4.
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LDFLAGS): Bump -version-info to
Packit Service 51e54d
	  3:4:2.
Packit Service 51e54d
Packit Service 51e54d
Thu Jun  6 12:38:07 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* NEWS: Document changes since 1.2.3.
Packit Service 51e54d
Packit Service 51e54d
Wed Jun  5 20:28:59 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Provide a replacement clearenv for non-glibc systems that lack it
Packit Service 51e54d
	(Savannah bug #36848).
Packit Service 51e54d
Packit Service 51e54d
	* gnulib: Import environ module.
Packit Service 51e54d
	* configure.ac: Check for clearenv.
Packit Service 51e54d
	* lib/pipeline.c [!HAVE_CLEARENV] (clearenv): New replacement
Packit Service 51e54d
	  function.
Packit Service 51e54d
	* lib/pipeline-private.h [!HAVE_CLEARENV] (clearenv): Add prototype.
Packit Service 51e54d
Packit Service 51e54d
Wed Jun  5 20:18:23 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* aclocal.m4: Upgrade to Gettext 0.18.2.1.
Packit Service 51e54d
Packit Service 51e54d
Wed Jun  5 20:12:11 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tools/config.guess: Update to 2013-05-16.
Packit Service 51e54d
	* tools/config.sub: Update to 2013-04-24.
Packit Service 51e54d
Packit Service 51e54d
Wed Jun  5 18:01:47 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (pipecmd_clearenv): Add a warning about use of this
Packit Service 51e54d
	  function.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build individual commands):
Packit Service 51e54d
	  Likewise.
Packit Service 51e54d
Packit Service 51e54d
Wed Jun  5 10:31:01 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Quieten warnings from compiling Gnulib.
Packit Service 51e54d
Packit Service 51e54d
	* m4/pipeline-gcc-warning.m4: Remove.
Packit Service 51e54d
	* gnulib: Import warnings module.
Packit Service 51e54d
	* configure.ac: Replace PIPELINE_GCC_WARNING with gl_WARN_ADD.
Packit Service 51e54d
	* lib/Makefile.am (AM_CFLAGS): Add $(WARN_CFLAGS).
Packit Service 51e54d
	* tests/Makefile.am (AM_CFLAGS): Likewise.
Packit Service 51e54d
Packit Service 51e54d
Wed Jun  5 10:16:59 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/argstr.c, tests/basic.c, tests/exec.c, tests/inspect.c,
Packit Service 51e54d
	  tests/pump.c, tests/reading_long_line.c, tests/redirect.c: Define
Packit Service 51e54d
	  program_name (thanks, Fernando Lemos; see Savannah bug #36848).
Packit Service 51e54d
Packit Service 51e54d
Wed Jun  5 10:12:29 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Makefile.in (DIST_COMMON): Regenerate, adding tools/depcomp.
Packit Service 51e54d
Packit Service 51e54d
Thu May 30 13:28:08 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Automake 1.13.2 and Gnulib 20130529.
Packit Service 51e54d
Packit Service 51e54d
	* .bzrignore: Add tests/*.log and tests/*.trs.
Packit Service 51e54d
	* autogen.sh: Drop gnulib/gets.patch backport.
Packit Service 51e54d
	* Makefile.am (EXTRA_DIST): Remove gnulib/gets.patch.
Packit Service 51e54d
	* gnulib/gets.patch: Remove.
Packit Service 51e54d
	* tests/argstr.c, tests/basic.c, tests/exec.c, tests/inspect.c,
Packit Service 51e54d
	  tests/reading_long_line.c, tests/redirect.c: Include config.h.
Packit Service 51e54d
Packit Service 51e54d
Wed Apr 24 07:48:26 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Version: 1.2.3.
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LDFLAGS): Bump -version-info to
Packit Service 51e54d
	  3:3:2.
Packit Service 51e54d
Packit Service 51e54d
Wed Apr 24 07:44:38 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait_all): Free active_pipelines if it is
Packit Service 51e54d
	  entirely empty.
Packit Service 51e54d
Packit Service 51e54d
Wed Apr 24 07:27:44 BST 2013  Peter Schiffer  <pschiffe@redhat.com>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipecmd_new_argstr): Fix memory leak when the
Packit Service 51e54d
	  first word of argstr is "exec".
Packit Service 51e54d
	* tests/argstr.c (test_argstr_exec): Free cmd at end.
Packit Service 51e54d
	* tests/basic.c (test_basic_wait_all): Free statuses at end.
Packit Service 51e54d
	  (test_basic_clearenv): Free p and p2 at end.
Packit Service 51e54d
	* tests/exec.c (test_exec_process, test_exec_function): Free cmd at
Packit Service 51e54d
	  end of loop.
Packit Service 51e54d
	* tests/redirect.c (test_redirect_files): Free p and template at
Packit Service 51e54d
	  end.
Packit Service 51e54d
Packit Service 51e54d
Tue Apr 23 07:52:40 BST 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipecmd_exec): Flush stdio before starting a
Packit Service 51e54d
	  sequence.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Tue Apr 23 07:50:45 BST 2013  Peter Schiffer  <pschiffe@redhat.com>
Packit Service 51e54d
                              Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Don't read uninitialised memory when testing for the end of long
Packit Service 51e54d
	lines (Fedora bug #876108).
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (get_line): Fix incorrect memchr bounds.
Packit Service 51e54d
	* tests/Makefile.am (TESTS): Add reading_long_line.
Packit Service 51e54d
	  (reading_long_line_SOURCES, reading_long_line_LDADD): Add.
Packit Service 51e54d
	* tests/reading_long_line.c: New file.
Packit Service 51e54d
	* .bzrignore: Add tests/reading_long_line.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Mon Jan 21 11:42:09 GMT 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* configure.ac (AC_HEADER_SYS_WAIT): Remove; superseded by Gnulib.
Packit Service 51e54d
Packit Service 51e54d
Mon Jan 21 11:26:15 GMT 2013  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Libtool 2.4.2-1.2 (from Debian).
Packit Service 51e54d
Packit Service 51e54d
Mon Dec 24 02:23:37 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Remove redundant condition.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 22:54:12 BST 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Version: 1.2.2.
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LDFLAGS): Bump -version-info to
Packit Service 51e54d
	  3:2:2.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 22:52:58 BST 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Makefile.am (EXTRA_DIST): Add gnulib/gets.patch.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 22:31:18 BST 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* release.sh: Use 'set -e' rather than '#! /bin/sh -e', to avoid
Packit Service 51e54d
	  accidents when debugging with 'sh -x'.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 22:27:47 BST 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* NEWS: Document changes since 1.2.1.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 22:23:59 BST 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* autogen.sh: Use 'set -e' rather than '#! /bin/sh -e', to avoid
Packit Service 51e54d
	  accidents when debugging with 'sh -x'.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 22:21:44 BST 2012  Křištof Želechovski  <yecril71pl@gmail.com>
Packit Service 51e54d
Packit Service 51e54d
	* configure.ac: Use AM_PROG_AR before LT_INIT, for compatibility
Packit Service 51e54d
	  with Automake 1.12.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 22:05:04 BST 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Backport Gnulib commit 66712c23388e93e5c518ebc8515140fa0c807348 to
Packit Service 51e54d
	stop assuming gets.
Packit Service 51e54d
Packit Service 51e54d
	* gnulib/gets.patch: New file.
Packit Service 51e54d
	* autogen.sh: Apply gnulib/gets.patch.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 22:03:09 BST 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Autoconf 2.69, Automake 1.11.6, and Gnulib
Packit Service 51e54d
	20120404-stable.
Packit Service 51e54d
Packit Service 51e54d
Sun Mar  4 17:43:21 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Flush stdio after emitting
Packit Service 51e54d
	  debugging output.
Packit Service 51e54d
Packit Service 51e54d
Fri Mar  2 19:54:40 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Version: 1.2.1.
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LDFLAGS): Bump -version-info to
Packit Service 51e54d
	  3:1:2.
Packit Service 51e54d
Packit Service 51e54d
Thu Mar  1 22:51:30 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* NEWS: Correct date of 1.2.0 release.
Packit Service 51e54d
Packit Service 51e54d
Wed Feb 29 20:09:12 GMT 2012  Martin Pollard  <martin.pollard@sanger.ac.uk>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h: Enclose in extern "C" { } when compiling as C++.
Packit Service 51e54d
Packit Service 51e54d
Wed Feb 29 18:26:22 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/Makefile.am (TESTS): Add pump.
Packit Service 51e54d
	  (pump_SOURCES, pump_LDADD): Add.
Packit Service 51e54d
	* tests/pump.c: New file.
Packit Service 51e54d
	* .bzrignore: Add tests/pump.
Packit Service 51e54d
Packit Service 51e54d
Wed Feb 29 18:19:08 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Create output files if they do
Packit Service 51e54d
	  not already exist, and truncate them if they do.
Packit Service 51e54d
	* lib/pipeline.h (pipeline_want_outfile): Document this.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build pipelines): Likewise.
Packit Service 51e54d
	* tests/common.c: New file.
Packit Service 51e54d
	* tests/common.h (TEST_CASE_WITH_FIXTURE): New macro.
Packit Service 51e54d
	  (temp_dir_setup, temp_dir_teardown): Add prototypes.
Packit Service 51e54d
	* tests/redirect.c (test_redirect_outfile): New test.
Packit Service 51e54d
	  (redirect_suite): Call test_redirect_outfile.
Packit Service 51e54d
	* tests/Makefile.am (basic_SOURCES, argstr_SOURCES, exec_SOURCES,
Packit Service 51e54d
	  inspect_SOURCES, redirect_SOURCES): Add common.c.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Mon Feb 27 22:17:20 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/exec.c (exit_helper, test_exit_function): Add test that
Packit Service 51e54d
	  pipecmd_exec works with functions.
Packit Service 51e54d
	  (exec_suite): Call test_exit_function.
Packit Service 51e54d
Packit Service 51e54d
Thu Feb  9 12:04:26 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Automake 1.11.3.
Packit Service 51e54d
Packit Service 51e54d
Sun Feb  5 02:33:14 GMT 2012  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Automake 1.11.2 and Gnulib 20111211-stable.
Packit Service 51e54d
Packit Service 51e54d
	* Makefile.am (EXTRA_DIST): Remove gnulib/m4/sockpfaf.m4, which was
Packit Service 51e54d
	  removed from this package some time ago.  Add gnulib/m4/math_h.m4.
Packit Service 51e54d
Packit Service 51e54d
Wed Dec 14 12:54:40 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/Makefile.am (FUNCTIONS): Add pipecmd_new_sequencev,
Packit Service 51e54d
	  pipeline_new_command_argv, pipeline_command_argv,
Packit Service 51e54d
	  pipeline_wait_all, and pipeline_run.
Packit Service 51e54d
Packit Service 51e54d
Wed Dec 14 12:48:56 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Libtool 2.4.2.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 10 09:22:41 BST 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* README: Document test suite dependencies.  Suggested by Bruce
Packit Service 51e54d
	  Dubbs.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 26 13:34:00 BST 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3 (Reaping of child processes): Fix typo.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 26 12:10:35 BST 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Gnulib 20110908-stable.
Packit Service 51e54d
Packit Service 51e54d
Sat Apr 23 17:51:13 BST 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Autoconf 2.68, Libtool 2.4, and Gnulib 20110412-stable.
Packit Service 51e54d
Packit Service 51e54d
Wed Mar 30 13:40:42 BST 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* gnulib: Import full-write, safe-read, and safe-write modules.
Packit Service 51e54d
	* lib/pipeline.c (passthrough): Use safe_read instead of read.  Use
Packit Service 51e54d
	  full_write instead of fwrite (stdio is not necessarily
Packit Service 51e54d
	  EINTR-safe).
Packit Service 51e54d
	  (pipeline_pump): Use safe_write instead of write and a manual
Packit Service 51e54d
	  EINTR check.
Packit Service 51e54d
	  (get_block): Use safe_read instead of read.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Fri Mar 18 22:27:39 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Version: 1.2.0.
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LDFLAGS): Bump -version-info to
Packit Service 51e54d
	  3:0:2.
Packit Service 51e54d
Packit Service 51e54d
Fri Mar 18 18:24:42 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/Makefile.am (FUNCTIONS): Add pipeline_get_pid.
Packit Service 51e54d
Packit Service 51e54d
Fri Mar 18 18:22:42 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/inspect.c (pid_helper): Flush stdout before pausing.
Packit Service 51e54d
Packit Service 51e54d
Fri Mar 18 12:08:51 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* gnulib: Import waitpid module.
Packit Service 51e54d
Packit Service 51e54d
Fri Mar 18 12:02:42 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Upgrade to Gnulib 20110216-stable.
Packit Service 51e54d
Packit Service 51e54d
Fri Mar 18 11:45:10 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/basic.c (test_basic_clearenv): Test that pipecmd_clearenv
Packit Service 51e54d
	  and pipecmd_setenv survive pipecmd_dup.
Packit Service 51e54d
Packit Service 51e54d
Tue Mar  8 14:10:52 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Add a function to get process IDs of commands in started pipelines
Packit Service 51e54d
	(Savannah bug #32710).
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_get_pid): New function.
Packit Service 51e54d
	* lib/pipeline.h (pipeline_get_pid): Add prototype.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build pipelines): Document
Packit Service 51e54d
	  pipeline_get_pid.
Packit Service 51e54d
	* tests/inspect.c (pid_helper, test_inspect_pid): Test
Packit Service 51e54d
	  pipeline_get_pid.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Mon Mar  7 10:41:50 GMT 2011  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* configure.ac: Check for working fork(2).
Packit Service 51e54d
Packit Service 51e54d
Sat Dec 11 15:01:14 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Version: 1.1.0.
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LDFLAGS): Bump -version-info to
Packit Service 51e54d
	  2:0:1.
Packit Service 51e54d
Packit Service 51e54d
Sat Dec 11 15:00:02 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/Makefile.am (FUNCTIONS): Add pipecmd_get_nargs,
Packit Service 51e54d
	  pipecmd_clearenv, and pipecmd_exec.
Packit Service 51e54d
Packit Service 51e54d
Sat Dec 11 13:25:29 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (pipecmd_get_nargs): Clarify that the command name
Packit Service 51e54d
	  is counted as the first argument.
Packit Service 51e54d
	* man/libpipeline.3 (pipecmd_get_nargs): Likewise.
Packit Service 51e54d
	* tests/basic.c (test_basic_args): Correct off-by-one error.
Packit Service 51e54d
Packit Service 51e54d
Mon Dec  6 20:54:29 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipecmd_get_nargs): New function.
Packit Service 51e54d
	* lib/pipeline.h (pipecmd_get_nargs): Add prototype.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build individual commands):
Packit Service 51e54d
	  Document pipecmd_get_nargs.
Packit Service 51e54d
	* tests/basic.c (test_basic_args): Test pipecmd_get_nargs.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Mon Dec  6 20:07:43 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipecmd_clearenv): New function.
Packit Service 51e54d
	  (pipecmd_dup, pipecmd_dump, pipecmd_tostring, pipecmd_exec):
Packit Service 51e54d
	  Handle cmd->env[i].name being NULL.
Packit Service 51e54d
	* lib/pipeline.h (pipecmd_clearenv): Add prototype.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build individual commands):
Packit Service 51e54d
	  Document pipecmd_clearenv.
Packit Service 51e54d
	* tests/basic.c (test_basic_clearenv): Add test.
Packit Service 51e54d
	  (basic_suite): Call test_basic_clearenv.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Sun Nov 28 14:49:42 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* NEWS: Note date of 1.0.0 release.
Packit Service 51e54d
Packit Service 51e54d
Sun Nov 28 14:47:03 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipecmd_start_child): Rename to ...
Packit Service 51e54d
	  (pipecmd_exec): ... this, and make external.  Update all callers.
Packit Service 51e54d
	* lib/pipeline.h (pipecmd_exec): Add prototype.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build individual commands):
Packit Service 51e54d
	  Document pipecmd_exec.
Packit Service 51e54d
	* tests/Makefile.am (TESTS): Add exec.
Packit Service 51e54d
	  (exec_SOURCES, exec_LDADD): Add.
Packit Service 51e54d
	* tests/exec.c: New file.
Packit Service 51e54d
	* .bzrignore: Add tests/exec.
Packit Service 51e54d
	* NEWS: Document this.
Packit Service 51e54d
Packit Service 51e54d
Sun Nov 28 13:43:45 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* gnulib: Remove mkstemp module.  Add sys_stat module.
Packit Service 51e54d
Packit Service 51e54d
Tue Nov 16 17:25:08 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3 (EXAMPLES): Clarify pipeline_readline example:
Packit Service 51e54d
	  show calls to pipeline_want_out and pipeline_start.
Packit Service 51e54d
Packit Service 51e54d
Tue Nov  2 16:56:22 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* README (Building programs with libpipeline): Recommend -Wformat.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 07:34:05 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Version: 1.0.0.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 07:25:14 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (pipeline_install_post_fork): Clarify that this is
Packit Service 51e54d
	  run in the child process.
Packit Service 51e54d
	  (pipeline_wait_all): Clarify that SIGPIPE is considered equivalent
Packit Service 51e54d
	  to exiting zero.
Packit Service 51e54d
	* man/libpipeline.3 (DESCRIPTION): Update descriptions of
Packit Service 51e54d
	  pipeline_install_post_fork and pipeline_wait_all to match this.
Packit Service 51e54d
	  (Functions to read output from pipelines): Note that output is
Packit Service 51e54d
	  returned as a pointer into a pipeline-owned buffer.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 06:21:02 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* TODO: New file.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 06:20:18 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* README (Credits): New section.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 06:11:37 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipecmd_new_sequencev): New function.
Packit Service 51e54d
	  (pipecmd_new_sequence): Rewrite in terms of pipecmd_new_sequence.
Packit Service 51e54d
	  (pipeline_new_command_argv): New function.
Packit Service 51e54d
	  (pipeline_new_command_args): Rewrite in terms of
Packit Service 51e54d
	  pipeline_new_command_argv.
Packit Service 51e54d
	  (pipeline_command_argv): New function.
Packit Service 51e54d
	  (pipeline_command_args): Rewrite in terms of
Packit Service 51e54d
	  pipeline_command_argv.
Packit Service 51e54d
	* lib/pipeline.h (pipecmd_new_sequencev, pipeline_new_command_argv,
Packit Service 51e54d
	  pipeline_command_argv): Add prototypes.
Packit Service 51e54d
	* man/libpipeline.3 (DESCRIPTION): Document pipecmd_new_sequencev,
Packit Service 51e54d
	  pipeline_new_command_argv, and pipeline_command_argv.
Packit Service 51e54d
	* tests/basic.c (test_basic_sequence): Add test.
Packit Service 51e54d
	  (basic_suite): Call test_basic_sequence.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 05:25:19 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Rename to ...
Packit Service 51e54d
	  (pipeline_wait_all): ... this.  Return 127 rather than 1 if
Packit Service 51e54d
	  closing the pipeline output fails.  Return 127 if a command other
Packit Service 51e54d
	  than the last one fails.  Return the statuses and the number of
Packit Service 51e54d
	  statuses in new output parameters if they are non-NULL.
Packit Service 51e54d
	  (pipeline_wait): Add new wrapper function.
Packit Service 51e54d
	* lib/pipeline.h (pipeline_wait_all): Add prototype.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to run pipelines and handle signals):
Packit Service 51e54d
	  Document pipeline_wait_all.
Packit Service 51e54d
	* tests/basic.c (test_basic_wait_all): Add test.
Packit Service 51e54d
	  (basic_suite): Call test_basic_wait_all.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 03:46:39 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_new): Default ignore_signals to 0.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build pipelines): Update
Packit Service 51e54d
	  pipeline_ignore_signals documentation.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 03:43:29 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build pipelines): Rephrase
Packit Service 51e54d
	  description of want_out and want_in handling in terms of public
Packit Service 51e54d
	  function calls.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 03:30:45 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build individual commands):
Packit Service 51e54d
	  Document variable arguments to pipecmd_new_sequence.
Packit Service 51e54d
	  (Functions to build pipelines): Explain analogy of
Packit Service 51e54d
	  pipeline_connect to tee(1).
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 03:13:21 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c, lib/pipeline.h, lib/pipeline-private.h: Rename
Packit Service 51e54d
	  command to pipecmd, command_* to pipecmd_*, and COMMAND_* to
Packit Service 51e54d
	  PIPECMD_*.  Update all callers and documentation references.
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LDFLAGS): Adjust
Packit Service 51e54d
	  -export-symbols-regex to export pipecmd_* rather than command_*.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 29 03:00:51 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3 (DESCRIPTION): Various minor corrections and
Packit Service 51e54d
	  clarifications from Ian Jackson.
Packit Service 51e54d
	  (BUGS): New section.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 26 21:09:53 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/Makefile.am (TESTS): Add argstr.
Packit Service 51e54d
	  (argstr_SOURCES, argstr_LDADD): Add.
Packit Service 51e54d
	* tests/argstr.c: New file.
Packit Service 51e54d
	* .bzrignore: Add tests/argstr.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 21:56:08 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/inspect.c (test_inspect_command): Free the result of
Packit Service 51e54d
	  command_tostring.
Packit Service 51e54d
	  (test_inspect_pipeline): Free the result of pipeline_tostring.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 20:25:11 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Revert our patched version of xstrdup, since none of libpipeline's
Packit Service 51e54d
	calls to xstrdup rely on being able to pass NULL to it.
Packit Service 51e54d
Packit Service 51e54d
	* Makefile.am (EXTRA_DIST): Remove gnulib/lib/xmalloc.c.orig and
Packit Service 51e54d
	  gnulib/lib/xmalloc.patch.
Packit Service 51e54d
	* autogen.sh: Stop applying gnulib/lib/xmalloc.patch.
Packit Service 51e54d
	* gnulib/lib/xmalloc.c.orig, gnulib/lib/xmalloc.patch: Remove.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 20:10:25 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* README (Building programs with libpipeline): New section.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 19:39:06 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/Makefile.am (FUNCTIONS): Add command_nice,
Packit Service 51e54d
	  command_discard_err, command_unsetenv, pipeline_new_command_args,
Packit Service 51e54d
	  pipeline_get_ncommands, pipeline_get_command,
Packit Service 51e54d
	  pipeline_set_command, pipeline_want_in, pipeline_want_out,
Packit Service 51e54d
	  pipeline_want_infile, pipeline_want_outfile, and
Packit Service 51e54d
	  pipeline_ignore_signals.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 19:31:27 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/basic.c: Include <string.h>.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 19:31:09 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/Makefile.am (TESTS): Add inspect.
Packit Service 51e54d
	  (inspect_SOURCES, inspect_LDADD): Add.
Packit Service 51e54d
	* tests/inspect.c: New file.
Packit Service 51e54d
	* .bzrignore: Add tests/inspect.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 19:18:35 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* tests/common.h: New file.
Packit Service 51e54d
	* tests/basic.c (basic_suite, main), tests/redirect.c
Packit Service 51e54d
	  (redirect_suite, main): Use new TEST_CASE and MAIN macros.
Packit Service 51e54d
	* tests/Makefile.am (basic_SOURCES, redirect_SOURCES): Add common.h.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 16:17:24 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* gnulib: Import unsetenv module.
Packit Service 51e54d
	* lib/pipeline.c (command_unsetenv): New function.
Packit Service 51e54d
	  (command_dup, command_dump, command_tostring): Check for NULL
Packit Service 51e54d
	  cmd->env[i].value.
Packit Service 51e54d
	  (command_start_child): If cmd->env[i].value is NULL, call unsetenv
Packit Service 51e54d
	  rather than setenv.
Packit Service 51e54d
	* lib/pipeline.h (command_unsetenv): Add prototype.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build individual commands):
Packit Service 51e54d
	  Document command_unsetenv.
Packit Service 51e54d
	* tests/basic.c (test_basic_setenv, test_basic_unsetenv): New tests.
Packit Service 51e54d
	  (basic_suite): Call test_basic_setenv and test_basic_unsetenv.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 14:31:41 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* gnulib: Import mkstemp module.
Packit Service 51e54d
	* tests/Makefile.am (TESTS): Add redirect.
Packit Service 51e54d
	  (LIBPIPELINE): Rename to ...
Packit Service 51e54d
	  (LIBS): ... this, and add libgnu and $(LTLIBOBJS).
Packit Service 51e54d
	  (AM_CPPFLAGS): Add -I$(top_srcdir)/gnulib/lib and
Packit Service 51e54d
	  -I$(top_builddir)/gnulib/lib.
Packit Service 51e54d
	  (clean-local): Remove temporary test files.
Packit Service 51e54d
	  (basic_LDADD): Use $(LIBS) rather than $(LIBPIPELINE).
Packit Service 51e54d
	  (redirect_SOURCES, redirect_LDADD): Add.
Packit Service 51e54d
	* tests/redirect.c: New file.
Packit Service 51e54d
	* .bzrignore: Add gnulib/lib/time.h and tests/redirect.
Packit Service 51e54d
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_CPPFLAGS): Remove spurious
Packit Service 51e54d
	  -I$(top_builddir)/include.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 14:30:14 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Fix typo that broke
Packit Service 51e54d
	  pipeline_want_infile.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 25 13:38:40 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Start test suite.
Packit Service 51e54d
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LDFLAGS): Remove -module; this
Packit Service 51e54d
	  introduces too many complications for now.
Packit Service 51e54d
Packit Service 51e54d
	* configure.ac: Test for check >= 0.9.4.
Packit Service 51e54d
	  (AC_CONFIG_FILES): Add tests/Makefile.
Packit Service 51e54d
	* Makefile.am (SUBDIRS): Add tests if check was found.
Packit Service 51e54d
	* tests/Makefile.am: New file.
Packit Service 51e54d
	* tests/basic.c: New file.
Packit Service 51e54d
	* .bzrignore: Add tests/basic.
Packit Service 51e54d
Packit Service 51e54d
Sun Oct 24 22:22:21 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_start_child): Add trailing newline to
Packit Service 51e54d
	  "nice failed" debug message.
Packit Service 51e54d
Packit Service 51e54d
Sun Oct 24 22:21:20 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Make command and pipeline opaque types.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_nice, command_discard_err,
Packit Service 51e54d
	  pipeline_get_ncommands, pipeline_get_command,
Packit Service 51e54d
	  pipeline_set_command, pipeline_want_in, pipeline_want_out,
Packit Service 51e54d
	  pipeline_want_infile, pipeline_want_outfile,
Packit Service 51e54d
	  pipeline_ignore_signals): New functions.
Packit Service 51e54d
	* lib/pipeline.h (command_nice, command_discard_err,
Packit Service 51e54d
	  pipeline_get_ncommands, pipeline_get_command,
Packit Service 51e54d
	  pipeline_set_command, pipeline_want_in, pipeline_want_out,
Packit Service 51e54d
	  pipeline_want_infile, pipeline_want_outfile,
Packit Service 51e54d
	  pipeline_ignore_signals): Add prototypes.
Packit Service 51e54d
	* man/libpipeline.3 (DESCRIPTION): Document new functions.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (enum command_tag, struct command_env, struct
Packit Service 51e54d
	  command, struct pipeline): Move to ...
Packit Service 51e54d
	* lib/pipeline-private.h (enum command_tag, struct command_env,
Packit Service 51e54d
	  struct command, struct pipeline): ... here.
Packit Service 51e54d
	* man/libpipeline.3 (Public command fields, Public pipeline fields):
Packit Service 51e54d
	  Remove.
Packit Service 51e54d
Packit Service 51e54d
	Redirections are now handled slightly differently internally,
Packit Service 51e54d
	allowing redirection from/to fd 0.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_new, pipeline_join): Set redirect_in and
Packit Service 51e54d
	  redirect_out.
Packit Service 51e54d
	  (pipeline_connect): Use pipeline_want_in and pipeline_want_out.
Packit Service 51e54d
	  Check source->redirect_out.
Packit Service 51e54d
	  (pipeline_start): Handle new redirection semantics.
Packit Service 51e54d
	* man/libpipeline.3 (EXAMPLES): Use pipeline_want_infile.
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3 (DESCRIPTION): Document string copying.
Packit Service 51e54d
	  (Reaping of child processes): New subsection.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 19 01:43:29 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Make debugging work properly in a library context.
Packit Service 51e54d
Packit Service 51e54d
	* lib/debug.c (init_debug): Check whether we've already been
Packit Service 51e54d
	  initialised.
Packit Service 51e54d
	  (debug): Call init_debug.
Packit Service 51e54d
	* lib/pipeline-private.h (init_debug): Add prototype.
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start, pipeline_wait): Call init_debug.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 19 01:42:47 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3: Bump licence header to GPLv3, since that more
Packit Service 51e54d
	  accurately describes the whole package.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 19 01:41:59 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/Makefile.am (install-data-hook): Handle repeated
Packit Service 51e54d
	  installations.
Packit Service 51e54d
	  (uninstall-hook): Add.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 19 01:39:54 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline-private.h: Move attribute macros to ...
Packit Service 51e54d
	* lib/pipeline.h: ... here, and make them namespace-safe.  Update
Packit Service 51e54d
	  all users.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 18 11:32:52 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_run): This would be a more convenient
Packit Service 51e54d
	  wrapper for the common case if it freed the pipeline as well, so
Packit Service 51e54d
	  do that.  (Callers that don't want this should call pipeline_start
Packit Service 51e54d
	  and pipeline_wait separately.)
Packit Service 51e54d
	* lib/pipeline.h (pipeline_run): Update comment.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build pipelines): Update
Packit Service 51e54d
	  pipeline_run documentation.
Packit Service 51e54d
	  (EXAMPLES): Remove now-unnecessary calls to pipeline_free.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 18 11:29:11 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_new_command_args): New function.
Packit Service 51e54d
	* lib/pipeline.h (pipeline_new_command_args): Add prototype.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to build pipelines): Add
Packit Service 51e54d
	  pipeline_new_command_args.
Packit Service 51e54d
	  (EXAMPLES): Use this to describe the simplest case.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 18 11:10:27 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_run): New function.
Packit Service 51e54d
	* lib/pipeline.h (pipeline_run): Add prototype.
Packit Service 51e54d
	* man/libpipeline.3 (Functions to run pipelines and handle signals):
Packit Service 51e54d
	  Add pipeline_run.
Packit Service 51e54d
	  (EXAMPLES): Use it.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 18 11:07:16 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3 (DESCRIPTION): Add some more paragraph breaks.
Packit Service 51e54d
Packit Service 51e54d
Fri Oct 15 10:26:02 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/libpipeline.pc.in: Add copyright/licensing comment.
Packit Service 51e54d
	* man/libpipeline.3: Add brief licensing comment.
Packit Service 51e54d
Packit Service 51e54d
Thu Oct 14 00:49:34 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* README (Copyright and licensing): Bump to GPLv3 or later, for
Packit Service 51e54d
	  clarity.  (lib/* remains licensed under GPLv2 or later, but the
Packit Service 51e54d
	  work as a whole is GPLv3 or later.)  Move further advice to ...
Packit Service 51e54d
	  (Note on GPL versions): ... here, and expand.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 12 01:12:13 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* README: New file.
Packit Service 51e54d
	* INSTALL: New file.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 12 01:01:04 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* COPYING: New file.
Packit Service 51e54d
Packit Service 51e54d
	* autogen.sh: Add a copyright/licence notice.
Packit Service 51e54d
	* configure.ac: Likewise.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline-private.h: Update copyright years.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 12 00:52:00 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/libpipeline.3: Add a licence notice.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 12 00:27:01 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* autogen.sh: Stop setting AUTOPOINT=true.
Packit Service 51e54d
	* configure.ac: Stop echoing DBLIBS (specific to man-db).
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 12 00:22:00 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* configure.ac: Remove check for gnulib/po/Makefile.in.in.
Packit Service 51e54d
Packit Service 51e54d
Tue Oct 12 00:17:53 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Remove gettext support.  It's overkill for a library considering
Packit Service 51e54d
	that we only emit error messages, and it vastly inflates the size of
Packit Service 51e54d
	our configuration requirements.
Packit Service 51e54d
Packit Service 51e54d
	* Makefile.am (SUBDIRS): Remove gnulib/po and po.
Packit Service 51e54d
	  (EXTRA_DIST): Remove everything except gnulib/m4/sockpfaf.m4.
Packit Service 51e54d
	* autogen.sh: Remove call to autopoint and removal of po/ChangeLog.
Packit Service 51e54d
	* configure.ac: Remove calls to AM_GNU_GETTEXT and
Packit Service 51e54d
	  AM_GNU_GETTEXT_VERSION.  Stop substituting LINGUAS.
Packit Service 51e54d
	  (AC_CONFIG_FILES): Remove gnulib/po/Makefile.in and
Packit Service 51e54d
	  po/Makefile.in.
Packit Service 51e54d
	* gnulib/m4/gnulib-cache.m4: Remove --po-base and --po-domain
Packit Service 51e54d
	  options.  Remove gettext module.
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_LIBADD): Remove @LTLIBINTL@.
Packit Service 51e54d
	* lib/pipeline.c (command_new_argstr, command_start_child),
Packit Service 51e54d
	  pipeline_get_infile, pipeline_get_outfile,
Packit Service 51e54d
	  pipeline_install_sigchld, pipeline_start, pipeline_wait,
Packit Service 51e54d
	  pipeline_pump): Remove gettext support.
Packit Service 51e54d
	* po/*: Remove.
Packit Service 51e54d
	* .bzrignore: Remove gnulib/po and po/*.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 11 21:25:37 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* autogen.sh: Remove po/ChangeLog after running autoreconf.
Packit Service 51e54d
	* .bzrignore: Remove po/ChangeLog.
Packit Service 51e54d
Packit Service 51e54d
	* Makefile.am (EXTRA_DIST): Add gnulib/m4/codeset.m4,
Packit Service 51e54d
	  gnulib/m4/fcntl-o.m4, and gnulib/m4/glibc21.m4.
Packit Service 51e54d
Packit Service 51e54d
	* po/LINGUAS: New file.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 11 18:19:37 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* man/Makefile.am (man3_MANS): Move to ...
Packit Service 51e54d
	  (dist_man3_MANS): ... here.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 11 17:51:16 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* Makefile.am (SUBDIRS): Add man.
Packit Service 51e54d
	* configure.ac (AC_PROG_LN_S): Add.
Packit Service 51e54d
	  (AC_CONFIG_FILES): Add man/Makefile.
Packit Service 51e54d
	* man/Makefile.am: New file.
Packit Service 51e54d
	* man/libpipeline.3: New file.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 11 16:38:29 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (pipeline_pump): Mention in comment that arguments
Packit Service 51e54d
	  must be NULL-terminated.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct 11 14:10:54 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (pipeline_new_commandv): Fix comment.
Packit Service 51e54d
Packit Service 51e54d
Thu Oct  7 08:05:41 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/libpipeline.pc.in: New file.
Packit Service 51e54d
	* configure.ac (AC_CONFIG_FILES): Add lib/libpipeline.pc.
Packit Service 51e54d
	* lib/Makefile.am (pkgconfigdir, pkgconfig_DATA): Install
Packit Service 51e54d
	  libpipeline.pc to $(libdir)/pkgconfig.
Packit Service 51e54d
	* .bzrignore: Add lib/libpipeline.pc.
Packit Service 51e54d
Packit Service 51e54d
Thu Oct  7 07:56:27 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* po/libpipeline.pot: Update.
Packit Service 51e54d
	* po/*.po: Import translations from man-db.
Packit Service 51e54d
Packit Service 51e54d
Thu Oct  7 07:54:12 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/Makefile.am (libpipeline_la_SOURCES): Add pipeline-private.h.
Packit Service 51e54d
Packit Service 51e54d
Thu Oct  7 07:49:46 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* release.sh: New file, from man-db.
Packit Service 51e54d
Packit Service 51e54d
Thu Oct  7 07:48:12 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Build independently from man-db.  Many new files from gettextize,
Packit Service 51e54d
	gnulib-tool, and autoreconf.
Packit Service 51e54d
Packit Service 51e54d
	* lib/appendstr.c: New file, from man-db.
Packit Service 51e54d
	* lib/debug.c: Likewise.
Packit Service 51e54d
	* m4/pipeline-gcc-warning.m4: Likewise.
Packit Service 51e54d
	* m4/pipeline-socketpair.m4: Likewise.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline-private.h: New file.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_new_argstr): Use strcmp rather than STREQ.
Packit Service 51e54d
	  (pipeline_install_post_fork): New function.
Packit Service 51e54d
	  (pipeline_start): Call post-fork handler rather than hardcoding
Packit Service 51e54d
	  pop_all_cleanups.
Packit Service 51e54d
	* lib/pipeline.h (pipeline_install_post_fork): Add prototype.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c: Update copyright notice for libpipeline.
Packit Service 51e54d
	* lib/pipeline.h: Likewise.
Packit Service 51e54d
Packit Service 51e54d
	* gnulib: Import dirname, error, gettext, lib-ignore, setenv,
Packit Service 51e54d
	  sigaction, signal, sigprocmask, strerror, strsignal, sys_select,
Packit Service 51e54d
	  xalloc, xstrndup, and xvasprintf modules.
Packit Service 51e54d
Packit Service 51e54d
	* Makefile.am: New file.
Packit Service 51e54d
	* NEWS: New file.
Packit Service 51e54d
	* autogen.sh: New file.
Packit Service 51e54d
	* configure.ac: New file.
Packit Service 51e54d
	* lib/Makefile.am: New file.
Packit Service 51e54d
	* .bzrignore: New file.
Packit Service 51e54d
Packit Service 51e54d
Entries below this point are edited versions of entries in man-db.
Packit Service 51e54d
Packit Service 51e54d
Sun Oct  3 23:57:45 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_argf): New function.
Packit Service 51e54d
	* lib/pipeline.h (command_argf): Add prototype.
Packit Service 51e54d
Packit Service 51e54d
Sun Oct  3 22:34:13 BST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (reap_children, pipeline_sigchld,
Packit Service 51e54d
	  pipeline_install_sigchld): Move above pipeline_start.
Packit Service 51e54d
	  (pipeline_install_sigchld): Make static.  Return immediately if
Packit Service 51e54d
	  already installed.
Packit Service 51e54d
	  (pipeline_start): Call pipeline_install_sigchld.
Packit Service 51e54d
	* lib/pipeline.h (pipeline_start): Document that this installs a
Packit Service 51e54d
	  SIGCHLD handler.
Packit Service 51e54d
	  (pipeline_install_sigchld): Remove prototype.
Packit Service 51e54d
Packit Service 51e54d
Tue Mar  2 10:04:54 GMT 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Fix assertion failure on 'man -l' with an uncompressed page and
Packit Service 51e54d
	prefixed input (no-hyphenation, no-justification, or a non-English
Packit Service 51e54d
	page).
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_new_passthrough): New function.
Packit Service 51e54d
	* lib/pipeline.h (command_new_passthrough): Add prototype.
Packit Service 51e54d
Packit Service 51e54d
Mon Feb  1 12:18:36 PST 2010  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Don't bother printing error
Packit Service 51e54d
	  messages for SIGINT and SIGQUIT, since these correspond to
Packit Service 51e54d
	  explicit user actions (Debian bug #568000).
Packit Service 51e54d
Packit Service 51e54d
Wed Jan 13 23:42:00 GMT 2010  Werner Fink  <werner@suse.de>
Packit Service 51e54d
Packit Service 51e54d
	Add support for using socketpair(2) as a replacement for pipe(2),
Packit Service 51e54d
	which is faster on some systems (Savannah patch #6741).
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c [USE_SOCKETPAIR_PIPE]: Redefine pipe() to a
Packit Service 51e54d
	  construction based on socketpair().
Packit Service 51e54d
Packit Service 51e54d
Tue Jan 12 13:33:51 GMT 2010  Samuel Thibault  <sthibault@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_pump): Fix off-by-one error when write
Packit Service 51e54d
	  returns EAGAIN (Debian bug #564818).
Packit Service 51e54d
Packit Service 51e54d
Sat Nov 14 18:52:15 GMT 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (argstr_get_word): Fix a small memory leak.
Packit Service 51e54d
Packit Service 51e54d
Sat Nov 14 10:23:28 GMT 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_new_sequence, command_sequence_command):
Packit Service 51e54d
	  New functions.
Packit Service 51e54d
	  (command_dup, command_dump, command_tostring, command_free):
Packit Service 51e54d
	  Handle commands of type COMMAND_SEQUENCE.
Packit Service 51e54d
	  (pipeline_start): Move command execution to ...
Packit Service 51e54d
	  (command_start_child): ... here (new function). Handle commands of
Packit Service 51e54d
	  type COMMAND_SEQUENCE.
Packit Service 51e54d
	* lib/pipeline.h (enum command_tag): Add COMMAND_SEQUENCE.
Packit Service 51e54d
	  (struct command): Add support for commands that consist of a
Packit Service 51e54d
	  sequence of commands.
Packit Service 51e54d
	  (command_new_sequence, command_sequence_command): Add prototypes.
Packit Service 51e54d
Packit Service 51e54d
Thu Sep 24 12:32:48 BST 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_pump): When a source pipeline dies, make
Packit Service 51e54d
	  sure to drain its output before discarding its output file
Packit Service 51e54d
	  descriptor (Debian bug #548153). We still record the death to
Packit Service 51e54d
	  avoid duplicate debugging messages.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug 23 15:49:45 BST 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_dup): Fix newcmd->nenv assertion.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug 23 15:41:32 BST 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_dup, command_setenv): cmd->env does not
Packit Service 51e54d
	  need to be { NULL, NULL }-terminated.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug 23 00:04:56 BST 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_setenv): New function, allowing
Packit Service 51e54d
	  application code to ask for environment variables to be set when a
Packit Service 51e54d
	  command is executed.
Packit Service 51e54d
	  (command_new, command_new_function, command_dup, command_dump,
Packit Service 51e54d
	  command_tostring, command_free): Handle new nenv, env_max, and env
Packit Service 51e54d
	  members of 'struct command'.
Packit Service 51e54d
	  (argstr_get_word): Add TODO comment for environment variable
Packit Service 51e54d
	  support.
Packit Service 51e54d
	  (pipeline_start): Set environment variables as requested.
Packit Service 51e54d
	* lib/pipeline.h (struct command_env): New structure.
Packit Service 51e54d
	  (struct command): Add nenv, env_max, and env members.
Packit Service 51e54d
	  (command_setenv): Add prototype.
Packit Service 51e54d
Packit Service 51e54d
Sun Jun 28 01:47:51 BST 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_free): Free buffer and line_cache.
Packit Service 51e54d
Packit Service 51e54d
Sun Jun 28 01:40:24 BST 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (get_line): Limit newline search to the data length
Packit Service 51e54d
	  returned by get_block, fixing an assertion failure.
Packit Service 51e54d
Packit Service 51e54d
Sat May 30 12:50:44 BST 2009  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Check the return value of nice.
Packit Service 51e54d
Packit Service 51e54d
Mon Nov 17 11:07:50 GMT 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_new_function): Initialise discard_err.
Packit Service 51e54d
	  (pipeline_start): Zero-initialise pids and statuses arrays on
Packit Service 51e54d
	  allocation, and don'\''t unblock SIGCHLD until after doing so.
Packit Service 51e54d
Packit Service 51e54d
Mon Nov 17 00:39:14 GMT 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Mangle return value into a value
Packit Service 51e54d
	  suitable for passing to exit (Debian bug #477305).
Packit Service 51e54d
Packit Service 51e54d
Mon Sep  8 09:09:06 BST 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Add support for freeing command_function data.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_new_function): Add free_func argument.
Packit Service 51e54d
	  (command_dup): Copy it.
Packit Service 51e54d
	  (pipeline_connect): Adjust command_new_function call.
Packit Service 51e54d
	  (pipeline_start): Free command_function data before exiting.
Packit Service 51e54d
	  (pipeline_wait): Free command_function data while cleaning up
Packit Service 51e54d
	  pipeline.
Packit Service 51e54d
	* lib/pipeline.h: Add command_function_free_type typedef.
Packit Service 51e54d
	  (struct command [struct command_function]): Add free_func member.
Packit Service 51e54d
	  (command_new_function): Update prototype.
Packit Service 51e54d
Packit Service 51e54d
Thu Jul 31 00:51:58 BST 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_pump): Free known_source before returning
Packit Service 51e54d
	  (Coverity CID #15).
Packit Service 51e54d
Packit Service 51e54d
Sun May  4 23:16:59 BST 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start, pipeline_pump): Zero sigaction
Packit Service 51e54d
	  structures before using them. (I believe we set all required
Packit Service 51e54d
	  fields anyway; this is just an extra safety catch.)
Packit Service 51e54d
Packit Service 51e54d
Sun Apr 27 11:24:24 BST 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_sigchld): assert is not
Packit Service 51e54d
	  async-signal-safe, so avoid calling it in a signal handler and use
Packit Service 51e54d
	  an if guard instead (Ubuntu bug #221635, although exactly why the
Packit Service 51e54d
	  assertion is failing there is unclear).
Packit Service 51e54d
Packit Service 51e54d
Sun Feb 17 17:13:55 GMT 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Call strsignal rather than
Packit Service 51e54d
	  xstrsignal.
Packit Service 51e54d
Packit Service 51e54d
Sun Jan 27 13:42:31 GMT 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_join): Initialise source, buffer, buflen,
Packit Service 51e54d
	  bufmax, line_cache, and peek_offset.
Packit Service 51e54d
Packit Service 51e54d
Sun Jan 27 13:37:17 GMT 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (struct pipeline): Add ignore_signals member.
Packit Service 51e54d
	* lib/pipeline.c (pipeline_new): Initialise ignore_signals to 1.
Packit Service 51e54d
	  (pipeline_join): Set ignore_signals if either input pipeline has
Packit Service 51e54d
	  it set.
Packit Service 51e54d
	  (pipeline_start): Only ignore SIGINT and SIGQUIT if ignore_signals
Packit Service 51e54d
	  is set.
Packit Service 51e54d
	  (pipeline_wait): Only restore SIGINT and SIGQUIT if ignore_signals
Packit Service 51e54d
	  is set.
Packit Service 51e54d
Packit Service 51e54d
Sun Jan  6 15:01:08 GMT 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start, pipeline_wait,
Packit Service 51e54d
	  pipeline_install_sigchld, pipeline_pump): Call sigaction rather
Packit Service 51e54d
	  than xsigaction.
Packit Service 51e54d
Packit Service 51e54d
Wed Jan  2 23:30:33 GMT 2008  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (passthrough): Use STDIN_FILENO, STDOUT_FILENO, and
Packit Service 51e54d
	  STDERR_FILENO macros rather than calling fileno.
Packit Service 51e54d
Packit Service 51e54d
Mon Dec 31 10:02:28 GMT 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (passthrough): New helper function.
Packit Service 51e54d
	  (pipeline_connect): Add special (kludge) handling for zero-command
Packit Service 51e54d
	  sinks.
Packit Service 51e54d
	  (pipeline_pump): Add minor commentary.
Packit Service 51e54d
Packit Service 51e54d
Wed Oct 17 21:05:50 BST 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c: Assume <sys/select.h> and <unistd.h>. Remove
Packit Service 51e54d
	  duplicate <fcntl.h> inclusion.
Packit Service 51e54d
	  (command_new): Use base_name.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct  8 02:24:19 BST 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (get_block): Use xrealloc instead of realloc.
Packit Service 51e54d
Packit Service 51e54d
Mon Oct  8 02:09:55 BST 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	The strappend function is in the namespace reserved by C99
Packit Service 51e54d
	7.26.10/7.26.11; rename it to appendstr.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c: Update all callers.
Packit Service 51e54d
Packit Service 51e54d
Mon Sep 17 00:11:38 UTC 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Break after execvp, otherwise we
Packit Service 51e54d
	  segfault if execvp fails.
Packit Service 51e54d
Packit Service 51e54d
Fri Aug 31 04:54:45 BST 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_free): Call pipeline_wait if the pipeline
Packit Service 51e54d
	  is still running.
Packit Service 51e54d
	* lib/pipeline.h (pipeline_free): Document that this may happen.
Packit Service 51e54d
Packit Service 51e54d
Tue Aug 28 17:19:16 BST 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Implement and use a decompression library. This allows cat pages to
Packit Service 51e54d
	be saved in the background (Debian bug #18452) and operation with a
Packit Service 51e54d
	read-only /tmp (Debian bug #165499).
Packit Service 51e54d
  
Packit Service 51e54d
	* lib/pipeline.h (struct command): Add support for commands that
Packit Service 51e54d
	  consist of calling a function rather than executing a process.
Packit Service 51e54d
	  (struct pipeline): Add want_infile and want_outfile members. Note
Packit Service 51e54d
	  that infile and outfile default to NULL. Add source, buffer,
Packit Service 51e54d
	  buflen, bufmax, line_cache, and peek_offset members.
Packit Service 51e54d
	  (command_new_function, command_dump, command_tostring,
Packit Service 51e54d
	  pipeline_connect, pipeline_pump, pipeline_read, pipeline_peek,
Packit Service 51e54d
	  pipeline_peek_size, pipeline_peek_skip, pipeline_readline,
Packit Service 51e54d
	  pipeline_peekline): New prototypes.
Packit Service 51e54d
	  (pipeline_join): Update description for want_infile and
Packit Service 51e54d
	  want_outfile.
Packit Service 51e54d
	* lib/pipeline.c (command_new, command_dup, command_arg,
Packit Service 51e54d
	  command_argv, command_args, command_argstr, command_free): Update
Packit Service 51e54d
	  for 'struct command' changes.
Packit Service 51e54d
	  (command_new_function, command_dump, command_tostring): New
Packit Service 51e54d
	  functions.
Packit Service 51e54d
	  (pipeline_new, pipeline_join, pipeline_dump, pipeline_tostring):
Packit Service 51e54d
	  Update for 'struct pipeline' changes.
Packit Service 51e54d
	  (pipeline_dump): Use command_dump.
Packit Service 51e54d
	  (pipeline_tostring): Use command_tostring.
Packit Service 51e54d
	  (pipeline_start): Implement want_infile, want_outfile, and
Packit Service 51e54d
	  function commands. Make zero-command case work properly (read
Packit Service 51e54d
	  directly from input file). Flush all pending stdio output so that
Packit Service 51e54d
	  subprocesses don't inherit it.
Packit Service 51e54d
	  (pipeline_connect, pipeline_pump, get_block, pipeline_read,
Packit Service 51e54d
	  pipeline_peek, pipeline_peek_size, pipeline_peek_skip, get_line,
Packit Service 51e54d
	  pipeline_readline, pipeline_peekline): New functions.
Packit Service 51e54d
Packit Service 51e54d
Mon Aug 27 20:02:17 BST 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Re-raise SIGINT or SIGQUIT if they
Packit Service 51e54d
	  terminate a subprocess.
Packit Service 51e54d
Packit Service 51e54d
Mon Aug 27 19:58:19 BST 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Return 1 if we fail to close the
Packit Service 51e54d
	  pipeline's output.
Packit Service 51e54d
Packit Service 51e54d
Mon Aug 20 00:10:49 BST 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Discard stderr from formatting processes when outputting to a pager,
Packit Service 51e54d
	to avoid visual corruption from any error messages (thanks, Vincent
Packit Service 51e54d
	Lefevre; Debian bug #372939).
Packit Service 51e54d
  
Packit Service 51e54d
	* lib/pipeline.h (struct command): Add discard_err member.
Packit Service 51e54d
	* lib/pipeline.c (command_new, command_dup): Initialise discard_err.
Packit Service 51e54d
	  (pipeline_start): Redirect the child's stderr to /dev/null if
Packit Service 51e54d
	  discard_err is set.
Packit Service 51e54d
Packit Service 51e54d
Sun Mar  4 00:51:30 GMT 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Eliminate variable and function shadowing.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Remove duplicate declarations of
Packit Service 51e54d
	  set and oset.
Packit Service 51e54d
Packit Service 51e54d
Wed Feb 28 22:04:04 GMT 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Close inputs and outputs from
Packit Service 51e54d
	  other active pipelines in all subprocesses.
Packit Service 51e54d
Packit Service 51e54d
Wed Feb 28 21:57:24 GMT 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Don't ignore SIGPIPE in
Packit Service 51e54d
	  subprocesses; this has undesirable consequences in some
Packit Service 51e54d
	  situations.
Packit Service 51e54d
	  (pipeline_wait): Flatten SIGPIPE exit statuses to zero instead.
Packit Service 51e54d
Packit Service 51e54d
Tue Feb 27 20:58:31 GMT 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Save previous value of SIGQUIT
Packit Service 51e54d
	  such that it gets restored as SIGQUIT, not as SIGINT.
Packit Service 51e54d
Packit Service 51e54d
Mon Jan  8 10:39:24 GMT 2007  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start, pipeline_wait,
Packit Service 51e54d
	  pipeline_install_sigchld): Use xsigaction instead of
Packit Service 51e54d
	  sigaction-plus-EINTR-check.
Packit Service 51e54d
Packit Service 51e54d
Tue Dec 26 14:27:59 GMT 2006  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c: Include "gettext.h" rather than <libintl.h>. Make
Packit Service 51e54d
	  sure not to include <locale.h> before "gettext.h", for portability
Packit Service 51e54d
	  to Solaris.
Packit Service 51e54d
Packit Service 51e54d
Sun Sep 17 09:20:33 BST 2006  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Ignore SIGPIPE in child processes
Packit Service 51e54d
	  (Debian bug #387864).
Packit Service 51e54d
Packit Service 51e54d
Wed Feb 22 09:44:02 GMT 2006  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_new_argstr): Skip "exec" at the start of a
Packit Service 51e54d
	  command, to make old configuration files work (Debian bug
Packit Service 51e54d
	  #353959).
Packit Service 51e54d
Packit Service 51e54d
Wed Sep 21 10:56:22 BST 2005  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Queue SIGCHLD for the whole time
Packit Service 51e54d
	  we're collecting child process statuses; we need to keep a careful
Packit Service 51e54d
	  count of processes. Forget any previous errno before calling
Packit Service 51e54d
	  reap_children. Should fix Debian bug #326488.
Packit Service 51e54d
Packit Service 51e54d
Wed Sep 21 10:10:12 BST 2005  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start, pipeline_wait): Ignore SIGINT and
Packit Service 51e54d
	  SIGQUIT in the parent while running subprocesses (Debian bug
Packit Service 51e54d
	  #328982).
Packit Service 51e54d
Packit Service 51e54d
Thu Sep  1 14:10:07 BST 2005  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (argstr_get_word): Use an enum for quotemode rather
Packit Service 51e54d
	  than magic numbers.
Packit Service 51e54d
Packit Service 51e54d
Mon Jul 11 18:12:58 BST 2005  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Emit a debugging message.
Packit Service 51e54d
Packit Service 51e54d
Mon Jul 11 14:41:52 BST 2005  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* include/manconfig.h.in: Define ATTRIBUTE_SENTINEL to a function
Packit Service 51e54d
	  attribute enabling sentinel checking if using GCC 4.0 or newer.
Packit Service 51e54d
	  (strappend): Use it.
Packit Service 51e54d
	* lib/pipeline.h (command_new_args, command_args,
Packit Service 51e54d
	  pipeline_new_commands, pipeline_command_args, pipeline_commands):
Packit Service 51e54d
	  Likewise.
Packit Service 51e54d
Packit Service 51e54d
Sun Dec 12 21:48:04 CET 2004  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_sigchld): Don't bother saving and
Packit Service 51e54d
	  restoring errno if SIGCHLD is being queued.
Packit Service 51e54d
Packit Service 51e54d
Sun Nov  7 16:07:26 GMT 2004  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Close pipeline output before
Packit Service 51e54d
	  reaping processes, so that writing processes get SIGPIPE.
Packit Service 51e54d
Packit Service 51e54d
Sun Nov  7 16:05:08 GMT 2004  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): Fix active process debugging
Packit Service 51e54d
	  output to include processes without statuses.
Packit Service 51e54d
Packit Service 51e54d
Mon Mar  8 11:21:05 GMT 2004  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_dump): Show caller-supplied input and
Packit Service 51e54d
	  output file descriptors.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_free, pipeline_free): Return safely if
Packit Service 51e54d
	  argument is NULL.
Packit Service 51e54d
	* lib/pipeline.h (command_free, pipeline_free): Document NULL
Packit Service 51e54d
	  arguments as a safe no-op, like free().
Packit Service 51e54d
Packit Service 51e54d
Sun Sep 21 02:17:43 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Dump pipeline in debugging mode.
Packit Service 51e54d
Packit Service 51e54d
Thu Aug 28 00:40:09 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Change "couldn't exec %s" to
Packit Service 51e54d
	  "can't execute %s" in line with src/man.c, to make translators'
Packit Service 51e54d
	  lives easier.
Packit Service 51e54d
	  (pipeline_wait): Separate "%s: %s%s" into two translatable
Packit Service 51e54d
	  strings: the "(core dumped)" portion should definitely be
Packit Service 51e54d
	  translated.
Packit Service 51e54d
Packit Service 51e54d
Fri Aug 15 18:05:37 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c: Include <libgen.h> instead of relying on
Packit Service 51e54d
	  basename() prototype in manconfig.h.
Packit Service 51e54d
Packit Service 51e54d
Sat Aug  9 18:28:01 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Replace the old "wait() for one child at a time" approach with a
Packit Service 51e54d
	SIGCHLD-handling edifice that collects children's exit statuses as
Packit Service 51e54d
	they die.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_new): Initialize statuses.
Packit Service 51e54d
	  (pipeline_join): Set statuses to NULL in joined pipeline.
Packit Service 51e54d
	  (pipeline_join, pipeline_get_infile, pipeline_get_outfile,
Packit Service 51e54d
	  pipeline_start, pipeline_wait): Assert that statuses field is NULL
Packit Service 51e54d
	  or non-NULL as appropriate.
Packit Service 51e54d
	  (pipeline_free): Free statuses if necessary.
Packit Service 51e54d
Packit Service 51e54d
	  (pipeline_start): Add p to a new active_pipelines array, to be
Packit Service 51e54d
	  used while reaping children. Initialize statuses elements to -1.
Packit Service 51e54d
	  Block SIGCHLD while forking children.
Packit Service 51e54d
	  (reap_children): New function. Delivers collected exit statuses
Packit Service 51e54d
	  into statuses fields of entries in active_pipelines.
Packit Service 51e54d
	  (pipeline_wait): Rather than wait()ing manually here, check
Packit Service 51e54d
	  whether any statuses have been picked up by the SIGCHLD handler,
Packit Service 51e54d
	  and if not call reap_children(). Remove now-obsolete TODO comment.
Packit Service 51e54d
	  (pipeline_sigchld): New function, the SIGCHLD handler.
Packit Service 51e54d
	  (pipeline_install_sigchld): New function, to be called once per
Packit Service 51e54d
	  program.
Packit Service 51e54d
Packit Service 51e54d
	  (pipeline_start, pipeline_wait): Add minimal debugging
Packit Service 51e54d
	  information.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h: Prototype new functions.
Packit Service 51e54d
	  (struct pipeline): New statuses member.
Packit Service 51e54d
Packit Service 51e54d
Sat Aug  9 17:00:12 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_dup): Copy cmd->nice.
Packit Service 51e54d
	  (pipeline_command): Correct condition for growing commands array.
Packit Service 51e54d
Packit Service 51e54d
Mon Aug  4 19:35:26 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_dup): Terminate argv with a NULL.
Packit Service 51e54d
	  (command_dup, command_arg): Assert that argc < argv_max after
Packit Service 51e54d
	  changing either.
Packit Service 51e54d
Packit Service 51e54d
Mon Aug  4 19:30:22 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_dump): New function to dump a printable
Packit Service 51e54d
	  representation of a pipeline to a stream.
Packit Service 51e54d
	  (pipeline_tostring): Likewise, but to a newly allocated string.
Packit Service 51e54d
	* lib/pipeline.h: Prototype these.
Packit Service 51e54d
Packit Service 51e54d
Mon Aug  4 12:03:38 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (argstr_get_word): Plug some memory leaks.
Packit Service 51e54d
Packit Service 51e54d
Mon Aug  4 01:05:12 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_wait): The return value was a bit
Packit Service 51e54d
	  groff-specific. Now just return the status of the last command in
Packit Service 51e54d
	  the pipeline, as reported by wait().
Packit Service 51e54d
Packit Service 51e54d
Mon Aug  4 00:31:44 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Add support for getting stdio streams for input and output. Needs
Packit Service 51e54d
	library support because pipeline_wait() needs to know to close the
Packit Service 51e54d
	stream rather than the underlying file descriptor.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (struct pipeline): New infile and outfile members.
Packit Service 51e54d
	  (pipeline_get_infile, pipeline_get_outfile): Add prototypes.
Packit Service 51e54d
	* lib/pipeline.c (pipeline_new): Initialize infile and outfile.
Packit Service 51e54d
	  (pipeline_join): Likewise.
Packit Service 51e54d
	  (pipeline_get_infile, pipeline_get_outfile): New functions.
Packit Service 51e54d
	  (pipeline_wait): Check for infile and outfile and fclose() them in
Packit Service 51e54d
	  preference to close()ing infd and outfd. Check for errors on
Packit Service 51e54d
	  close().
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 23:59:18 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Use dup2() instead of close()
Packit Service 51e54d
	  then dup().
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 23:52:14 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	infd and outfd should now only be set by pipeline_start(). Positive
Packit Service 51e54d
	values in want_in and want_out now indicate caller-supplied file
Packit Service 51e54d
	descriptors, while negative values indicate a request for
Packit Service 51e54d
	pipeline_start() to create a pipe.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (struct pipeline): Document this.
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Implement it. Caller-supplied
Packit Service 51e54d
	  input and output file descriptors previously didn't work properly.
Packit Service 51e54d
	  (pipeline_wait): Update TODO comment.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 21:07:46 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (struct command): New 'nice' member.
Packit Service 51e54d
	* lib/pipeline.c (command_new): Initialize nice.
Packit Service 51e54d
	  (pipeline_start): Change child process priority if nice is set.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 20:50:35 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_start): Pop all cleanups in child.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 20:47:24 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (argstr_get_word, command_new_argstr,
Packit Service 51e54d
	  command_argstr, pipeline_command_argstr): New functions to handle
Packit Service 51e54d
	  constructing commands from shell-quoted strings, such as those
Packit Service 51e54d
	  found in man-db configuration files. They deliberately handle only
Packit Service 51e54d
	  a safe subset of shell syntax.
Packit Service 51e54d
	* lib/pipeline.h: Prototype command_new_argstr(), command_argstr(),
Packit Service 51e54d
	  and pipeline_command_argstr().
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 19:09:59 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (command_dup): New function to duplicate a command.
Packit Service 51e54d
	  (pipeline_join): New function to join two pipelines together.
Packit Service 51e54d
	* lib/pipeline.h: Prototype these.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 18:00:59 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.h (struct pipeline): The writeto, readfrom, writefd,
Packit Service 51e54d
	  and readfd names turn out to be confusing in calling code. Rename
Packit Service 51e54d
	  to want_in, want_out, infd, and outfd respectively.
Packit Service 51e54d
	* lib/pipeline.c (pipeline_new, pipeline_start, pipeline_wait): Use
Packit Service 51e54d
	  new names.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 16:35:24 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	Add support in pipeline library for writing input to or reading
Packit Service 51e54d
	output from the whole pipeline.
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c (pipeline_new): Initialize writeto, readfrom,
Packit Service 51e54d
	  writefd, and readfd.
Packit Service 51e54d
	  (pipeline_start): Create extra pipes as necessary.
Packit Service 51e54d
	  (pipeline_wait): Expand TODO comment. Close file descriptors from
Packit Service 51e54d
	  extra pipes if necessary.
Packit Service 51e54d
	* lib/pipeline.h (struct pipeline): Add writeto, readfrom, writefd,
Packit Service 51e54d
	  and readfd.
Packit Service 51e54d
Packit Service 51e54d
Sun Aug  3 11:15:17 BST 2003  Colin Watson  <cjwatson@debian.org>
Packit Service 51e54d
Packit Service 51e54d
	* lib/pipeline.c: New pipeline library, adapted from that in groff.
Packit Service 51e54d
	  The interface isn't complete yet; in particular, it can't be a
Packit Service 51e54d
	  replacement for popen() at the moment.
Packit Service 51e54d
	* lib/pipeline.h: New file with pipeline library interface.