Refer to ChangeLog for detailed per-file info. caspar version 20240818 - The Meždo Release - We no longer ship typesetted (zoem) documentations in our tarball release, but now build-depend upon zoem (and tidy and w3m). This makes this software more truly Free Software (stronger guarantees it actually builds from a git checkout) and makes our build system less vulnerable to Supply Chain Attacks. It also closes Debian Bug #1049637: "Fails to build binary packages again after successful build". See also uruk Debian Bug #1049742. + doc/Makefile.am: Add *.1 *.7 and tmpfiles *.{zmr,zmt} to DISTCLEANFILES, so that DISTCLEANFILES are now MAINTAINERCLEANFILES. Remove typsetted files from EXTRA_DIST. + configure.ac: fail the build if zoem is not available. - .gitignore: added. - doc/Makefile.am: No longer build or install PostScript documentation from manpages. One can easily do that anyway by running e.g.: zcat /usr/share/man/man7/caspar.7.gz | groff -man >/tmp/caspar.ps - mk/markdown.mk: No longer rely on the traditional markdown processor but assume CommonMark spec-adhering input and call cmark(1). caspar version 20220907 - The Stanowischt Release - Caspar now processes .md markdown files: + caspar/mk/markdown.mk: Added. + caspar/doc/caspar-typesetting.azm: Document this. - configure.ac: update copyright years. caspar version 20200611 - The Minneapolis Release - This release dedicated to James Baldwin (★ 1924 – † 1987). - doc/caspar.azm: add missing {, so that sections like FILES, ENVIRONMENT, SEE ALSO are no longer skipped from typesetting the caspar(7) manpage. - bootstrap: update from automake/aclocal 1.15 to 1.16 as shipped with current Debian stable. caspar version 20180315 - The Romstjern Release - caspar/mk/caspar.mk: Patch contributed by Wessel Dankers: csp_* variables are part of caspar's public interface. However, in some cases (csp_scp_FUNC and friends) we overwrote those unconditionally. This patch fixes that behavior: from now on, existing values for csp_scp_FUNC are not overwritten any more. - bootstrap: update from automake/aclocal 1.14 to 1.15 as shipped with current Debian stable. caspar version 20170830 - The Bleukbos Release - mk/pod.mk: drop ps2pdf, use pod2pdf (as shipped with e.g. Debian 8 "jessie") for generating PDF from POD. - mk/caspar.mk: apply patch contributed by Wessel Dankers: 1) Add support for foo-verify make targets. Such make targets will be executed by caspar and should verify if the file "foo" is correct in terms of syntax and integrity. 2) Add a csp_CHECK that works identically to csp_LOAD except that no csp_LOAD actions are attempted unless and until csp_CHECK completes successfully. Use this to validate config remotely before loading (and potentially breaking) your service. 3) Officially deprecate csp_BUILD. 4) Officially deprecate the "for suh in $(csp_UHOSTS) ..." idiom. Please note that if you have multiple csp_LOAD targets or multiple csp_CHECK targets, these are NOT necessarily executed in the order you specify them! The documentation used to (erroneously) suggest that specifying a check target and a load target in csp_LOAD in the correct order would cause the check to run before the load. This is not true in general, and specifically in the case of make -j. caspar version 20140919 - The Prnjavor Release - mk/caspar.mk: apply patch contributed by Wessel Dankers, Aug 8 2014: 1) Localize variables: previously, caspar would use a few generic variable names (such as “FILES”) and assign values to them, blithely overwriting any variable of the same name that the user might be using. With this change, all variables internal to caspar are prefixed using ‘_csp_’. 2) Stop changing input variables: variables that serve as input to caspar should be read-only as far as caspar is concerned. Before this change it would change the value of (at least) csp_UHOSTS, which broke certain advanced usage patterns. With this change, caspar uses internal variables for computations. These modifications do not change the caspar interface. - doc/caspar.azm: updated links for ansible, cfengine and puppet. - bootstrap: update from automake/aclocal 1.11 to 1.14 (only relevant for developers building caspar from within a git checkout). caspar version 20140203 - The Matonge, BXL Release - Makefile.am: explictly set path of setversion: use $(top_srcdir)/setversion. Specify DISTCLEANFILES. Tweak EXTRADIST. No longer set VERSION. - configure.ac, setversion: use generic AD1_VERSION, not CASPAR_VERSION - configure.ac: AC_PREREQ(2.67), reintroduce and update AC_COPYRIGHT, set AC_REVISION. - setversion: simplify: rip out support for manually overwriting autogenerated version. - bootstrap: downgrade from autotools 1.14 to autotools 1.11, so that building from git works on current Ubuntu LTS. - doc/csp_helper.azm: documented csp_mkdircp. - doc/caspar.azm: started documenting 'make diff'. caspar version 20140106 - The Bakertand Release - script/csp_sucp: bugfix: feed not just $3, but also any more args as files to tar. Now passing more than just one file to csp_sucp actually works. - bootstrap: update from automake/aclocal 1.11 to 1.14 (only relevant for developers building caspar from within a git checkout). - Makefile.am: no longer ship caspar-.tar.bz2, do ship caspar-.tar.xz. caspar version 20131119 - The Sint Agatha Release [ Joost van Baal-Ilić ] - doc/csp_helper.azm, script/csp_sucp: Fixes in csp_sucp(1): + update csp_sucp description: since version 20120514 we use tar, not cat. document how to use csp_sucp with interactive sudo password prompt. + we no longer suffer from password-prompt bug: run sudo non-interactive (-n) when stdin is filled with tar data ; explicitly get rid of tty when stdin is filled with tar in order to make sure this data will not get interpreted as password for sudo; pass -t to ssh, not -T, when refreshing sudo password, gets rid of error message "sudo: no tty present and no askpass program specified ". + explicitly pass c to tar. (GNU tar) 1.26 needs at least one option. - mk/caspar.mk: Swap dealing with $(csp_TABOOFILES) and $(csp_BUILD) in contructing FILES to be install-ed. Now $(csp_TABOOFILES) is subtracted from $(csp_BUILD) (was: $(csp_BUILD) gets added to result of subtracting $(csp_TABOOFILES) from list of FILES. So, now "csp_BUILD = check" and "csp_TABOOFILES_ADD = check" no longer results in caspar trying to install a file called 'check'. caspar version 20120530 - The Miekoekse Release [Wessel Dankers] - mk/caspar.mk: do not run bulktargets if no files are available [Joost van Baal-Ilić] - script/csp_mkdircp: add yet another caspar helper caspar version 20120514 - The Железничка Release [Joost van Baal-Ilić] - caspar/script/csp_sucp: csp_sucp is reimplemented: now with "multisupport" for "bulktargets", it no longer uses cat, but tar. - caspar/mk/caspar.mk: csp_SUCP now again supports setting csp_SUCP_USER from within Makefile: interface restored to the one in caspar <= 20101204. [Wessel Dankers] - caspar/mk/caspar.mk: Introduce "bulktargets" in caspar.mk. Running "make" or "make install" now installs all files in current directory in just one csp_PUSH call. In case csp_PUSH is set to default "scp", scp is called just once; this makes caspar much more efficient. caspar version 20120508 - The Sint Katelijne Release [Joost van Baal-Ilić] - caspar/doc/Makefile.am: assume html is in utf8; this fixes a bug introduced in version 20120420: manpages were empty. caspar version 20120420 - The Lamprais Release, for Danishka Navin [Joost van Baal-Ilić] - caspar/script/csp_sucp: csp_sucp now honors CSP_DEBUG - caspar/NEWS, caspar/doc/caspar.azm: document new csp_PUSH interface, support for csp_XARG is dropped - caspar/mk/caspar.mk: add (undocumented) target "debug". fix bug, caspar now somewhat usable again. caspar version 20120417 - The Kokki Release [Joost van Baal-Ilić] - We now support installing multiple local files in one scp call. The destination directory of a push script is now passed as the first argument. Therefore, one can now implement one's own push mechanism in a more efficient way. The arguments of a push implementation can get shifted, one can treat remaining args as "$@". - User interface for caspar helpers csp_* changed in INCOMPATIBLE way. - If you've written your own csp_PUSH implementation, update it. arguments now are <[user@]host> (was: <[user@]host> []) + caspar/script/csp_sucp, caspar/script/csp_scp_keep_mode: swap arguments: now csp_* <[user@]host> (was: <[user@]host> [su-user]) + caspar/script/csp_install: swap arguments: now csp_install - csp_DIFFXARG support reimplemented (in a slightly less flexible way) - caspar/script/csp_sucp: fix bug in $CSP_SUCP_USER processing. caspar version 20120322 - The Kothu Roti Release [Joost van Baal-Ilić] - caspar/mk/caspar.mk: backwards INCOMPATIBLE change: csp_CPDIRS and csp_CPDIR (and 'localtargets') are no longer honored. If you'd like to use cp(1) to install to csp_CPDIR, define csp_UHOST = dummy csp_PUSH = $(csp_cp_FUNC) and set csp_DIR accordingly. Support for installing in multiple different directories using cp(1) is dropped. (Likely it's possible to implement it via some dirty hack.) - caspar/doc/caspar.azm, caspar/mk/caspar.mk: implement function csp_scpmkdir_FUNC (and variable csp_MKDIRP): no longer need to define this function in Makefile. - caspar/doc/caspar.azm: document csp_UHOSTS_SKIP. - caspar/doc/caspar.azm: document more advanced way of using csp_LOAD: refer to $1 in definition of load target, keep loop over hosts implicit. - caspar/doc/*.azm, caspar/doc/include*: converting syntax to aephea >= 10.008-1, zoem >= 11-166-1. - caspar/doc/caspar.azm, caspar/doc/csp_helper.azm: various improvements in manpages. caspar version 20101204 [Wessel Dankers] - caspar/mk/caspar.mk: add $(csp_UHOSTS_SKIP) feature: exclude hosts - caspar/mk/caspar.mk: combine file lists less clumsily caspar version 20100624 - Bugfix release [Wessel Dankers] - caspar/mk/caspar.mk: fix load-target-as-a-variable didn't work because $(call ...) was expanded too early caspar version 20100223 [Joost van Baal] - Converted from CVS to git. + use git2cl (no longer cvs2cl) - Add (.so request) manpages for csp_install, csp_scp_keep_mode and csp_sucp. [Wessel Dankers] - Fixed "target given more than once in the same rule" errors. - Caspar now shows each command as it is run, and aborts on errors. - csp_LOAD values are now defined as variables with $1 being the host they push to. caspar version 20091115 - Renamed caspar(1) to casparize(1). - Some tweaking on manpages. caspar version 20091114 - Preliminary manpage csp_helper(1) added, documenting helper scripts csp_install, csp_scp_keep_mode and csp_sucp. (The separate csp_sucp manpage is gone.) - Adjusted caspar.mk so that it's actually possible to hook csp_install and csp_scp_keep_mode into caspar. caspar version 20090926 - Unstable bleeding edge snapshot release. - Added (not yet documented) new scripts csp_install and csp_scp_keep_mode, allowing for more robust installs. - Add script caspar(1), for generating caspar-style Makefiles, contributed by Jeroen Hoppenbrouwers. - setversion: allow for user override of version of caspar release. - TODO: updated caspar version 20090406 - BEWARE! Backwards INcompatible change in user interface! mk/caspar.mk does no longer supply backward compatibility with caspar <= 20060216: Support for csp_SUH, csp_SUHS, csp_SUHDIRS and csp_SCPDIR is dropped. If you use old-style Makefiles, you'll have to fix these now: for csp_SUHS now use csp_UHOSTS for csp_SUH now use csp_UHOST for csp_SCPDIR now use csp_DIR (There is no replacement variable for csp_SUHDIRS; csp_CPDIRS for now is still supported.) See the 20060216 NEWS item for more details. A crude way to update your Makefiles would be to run something along the lines of: % find . -name Makefile -o -name install.mk | while read f; do sed -i 's/csp_SUHS/csp_UHOSTS/g; s/csp_SUH/csp_UHOST/g; s/csp_SCPDIR/csp_DIR/g' $f; done This kinda worked for me. YMMV. (Please mail the author if you need help converting your Makefiles and you've explicitly used the variable csp_SUHDIRS.) (No other incompatible change will get introduced during the Debian "squeeze" nor during the "squeeze + 1" release cycle: caspar in squeeze + 1 will be backwards compatible with this caspar version. History of incompatible changes and Debian GNU/Linux releases: Debian release caspar version incompatible? -------------- -------------- ------------- woody (oldoldoldstable) none - sarge (oldoldstable) 20050302-1 YES etch (oldstable) 20060618-1 - lenny (stable) 20070729-1 - squeeze (testing) > 20070729-1 YES [1] caspar version 20040721-1 was the first one uploaded to the Debian archives.) - Added preliminary support for "make diff" and "make -diff": this shows the diff between filename in current directory and filename at remote location. One can use this to test wether the file on the server is in sync with (e.g.) a previous SVN version before scp-ing it. This prevents overwrites of "illegal" (i.e. without having used SVN (but possibly useful)) edits directly on the remote server. New variables introduced: csp_DIFFXARG (default: -u) csp_DIFF (default: csp_diff_FUNC; overwrite this if you want to tweak the way the diff is computed) as well as csp_SSH, csp_CAT, csp_Diff and csp_diff_FUNC. For now, this feature works out of the box in case csp_PUSH is $(csp_scp_FUNC) (the default scp-based install mechanism) and in case csp_PUSH is $(csp_sucp_FUNC). If you use cp(1) to install, and have set csp_PUSH to $(csp_cp_FUNC), for now do set csp_DIFF = $(csp_Diff) $(4) $(3)/$(1) $(1) to get this feature working. Very likely, this will no longer be needed in the feature: out of the box support for all push mechanisms is planned. Thanks Fred Vos and Jeroen Hoppenbrouwers for joining the discussion about this feature. - Added preliminary support for using rsync(1) as push mechanism. Use it by setting csp_PUSH = $(csp_rsync_FUNC) Use csp_rsyncssh_FUNC instead of csp_rsync_FUNC if you don't want to use the rsync daemon, but ssh (or rsh). Other new variables introduced: csp_RSYNC (default: rsync), csp_RSYNCFLAGS (default: -zPt --chmod=ugo=rwX). Thanks Ko van der Sloot for suggesting this feature. - Caspar is now licensed under the GNU GPL version 3 or later (no longer v2 or later). - Various improvements in caspar(7) manpage. E.g. example added about using sudo without ssh. - Bugfix in sgml/print.dsl as used by docbook.mk. The error `jade:/usr/share/sgml/caspar/print.dsl:126:24:E: element "SYSTEMITEM" undefined' will no longer show up. - Bugfix in caspar.mk: deal sane with files named like "debian-lenny-install.txt": files which had "-install" in their name never got installed. - Now uses automake 1.10 for building (was 1.9). caspar version 20070729 - Caspar now supports a smart way for temporary overrides of csp_UHOSTS, using csp_UHOSTS_SUBSET. (Actually, this was implemented in release 20070713). - Improvements in caspar(7) manpage: documented csp_BUILD, improved csp_LOAD examples, added example on how to add a "check" target. caspar version 20070713 - Fix bug in csp_sucp(1) when using fourth argument (e.g. via CSP_XARG). This bug caused sudo to die with error "sudo: the `-u' and '-v' options may not be used together". - Minor improvements in caspar(7) manpage. - TODO: recorded lots of new ideas for improvements, thanks to caspar user community at UvT. caspar version 20060618 - Various improvements in caspar(7) manpage. caspar version 20060610 - The variables csp_scp_DIR, csp_scp_UHOSTS, csp_scp_UHOST and csp_cp_DIR, which were introduced in snapshot version 20060216, are no longer supported. These variable were redundant. (Very likely, you'll need csp_UHOST[S], csp_DIR, and maybe csp_PUSH and csp_LOAD only.) caspar version 20060608 - Unstable bleeding edge snapshot release. - Fixed section of csp_sucp(1) manpage. - Minor bugfixes in caspar.mk. - Various improvements in caspar(7) manpage. caspar version 20060531 - Yet another unstable bleeding edge snapshot release. - Typo in caspar.mk which lead to "invalid syntax in conditional" error is fixed. - Added csp_sucp(1) manpage. This script now gets installed. - Minor improvements on other manpages. caspar version 20060216 - Beware! This is an unstable bleeding edge snapshot release. Test results are welcomed. - caspar.mk now has support for installing files using sudo, wrapped in ssh: it runs something like ssh foo@bar "sudo sh -c \"cat - > /duh/blah\"" < blah . To facilitate this, new variables have been introduced: csp_PUSH (default: a csp_scp make function), csp_SUCP, csp_UHOST, csp_UHOSTS, csp_DIR, csp_XARG. A script csp_sucp, dealing with the wrapping, is now shipped; it honors a CSP_SUCP_USER environment variable. Lots of variables are now deprecated: for csp_SUHS now use csp_UHOSTS for csp_SUH now use csp_UHOST for csp_SCPDIR now use csp_DIR The variable csp_CPDIRS will be phased out: no more multiple cp target dirs. Don't worry yet: we still supply full backwards compatibity. - mk/caspar.mk: install and load now are .PHONY targets, as they should be. You'll like this if you have files named "install" or "load". Thanks Guus Sliepen. caspar version 20050424 - (This release was shipped with Debian. We'll try to remain compatibility.) - New variable csp_EXTRAFILES added. This enables one to succesfully run e.g. make .bashrc-install . Aren't you all happy now? Thanks Guus Sliepen for the patch. - In order to have csp_EXTRAFILES behave nice, .%.swp is added to csp_TABOOFILES_DEFAULT and .svn is added to csp_TABOODIRS_DEFAULT. caspar version 20050302 - (This release was shipped with Debian. We'll try to remain compatibility.) - Fixed caspar(7) manpage: the last part was not typesetted. Duh. caspar version 20050301 - BEWARE! BACKWARDS INCOMPATIBILITY! mk/caspar.mk does no longer supply backward compatibility with caspar <= 20030825. If you use old-style Makefiles, you'll have to fix these now. See the 20040531 NEWS item for details. A crude way to update your Makefiles would be to run something along the lines of: % find . -name Makefile | while read f; \ do sed -i 's/SDIR/csp_SCPDIR/g; s/(SUH)/(csp_SUH)/g; \ s/^LOAD /csp_LOAD /; s/(SUHS)/(csp_SUHS)/g; \ s/^SUH /csp_SUH /; s/^SUHS /csp_SUHS /' $f; done % find . -name install.mk | while read f; \ do sed -i 's/^SRDIRS /csp_SUHDIRS /g' $f; done This kinda worked for me. YMMV. - New variables csp_TABOO{DIRS,FILES}_{ADD,SKIP} in caspar.mk. See caspar(7). caspar version 20040721 - This release is planned to get shipped with Debian: it will be available from the Debian archive. - No functional changes, just some minor documentation updates and tweaks of the build system (interesting only for people building a tarball from CVS). caspar version 20040531 - The caspar CVS is moved to http://alioth.debian.org/. Thanks to the Alioth admins! - Experimental install-recursive target added. If you'd like to play with it, you won't need to adjust your Makefile's. Just type `make install-recursive' and decide wether you like this feature. - BEWARE! Change in user interface! caspar.mk variables have been renamed: new name old name ======== ======== csp_CP CP csp_CPFLAGS CPFLAGS csp_CPDIR CDIR csp_CPDIRS CPDIRS csp_LOAD LOAD csp_SCP SCP csp_SCPFLAGS SCPFLAGS csp_SCPDIR SDIR csp_SUH SUH csp_SUHS SUHS csp_SUHDIRS SRDIRS This is done to make sure no unexpected name clashes occur. For now, we offer a backward compatibility hack: your old Makefile's will continue to work. However, you're advised to switch to the new user interface a.s.a.p. caspar version 20030825 - CPFLAGS and SCPFLAGS added to caspar.mk. See caspar(7), as well as the caspar.mk file itself. caspar version 20030809 - Added manpages caspar(7) and caspar-typesetting(7). Installed in /usr[/local]/share/doc/caspar too, in various formats. caspar version 20030803 - See doc/ChangeLog.2002 for news about caspar 20030803 and earlier # This file is maintained at http://git.mdcc.cx/caspar