Changelog

5.1.2: 2019-06-21

  • Core: Add support for type parameters deprecation (Darko Poljak)
  • Type __acl: Rewrite and improve (Ander Punnar)

5.1.1: 2019-05-28

  • Type __apt_key: Use gpg key, fallback to deprecated apt-key (Ander Punnar)
  • Type __acl: Fix and improve (Ander Punnar)
  • Documentation: Document type stdin inside loop caveats (Darko Poljak)

5.1.0: 2019-05-22

  • Type __consul: Add alpine support (Nico Schottelius)
  • Type __consul: Add version 1.5.0 (Nico Schottelius)
  • Type __consul_agent: Add alpine support (Nico Schottelius)
  • New helper script: cdist-new-type (Steven Armstrong, Darko Poljak)
  • Core: Add support for deprecated type marker (Darko Poljak)

5.0.2: 2019-05-17

  • Type __package_apk: Fix @repo handling in explorer (Nico Schottelius)
  • Type __postfix: Add alpine support (Nico Schottelius)
  • Type __postfix_postconf: Add alpine support (Nico Schottelius)
  • Type __user: Add alpine support (Nico Schottelius)
  • Core: Set __cdist_dry_run env var (Ander Punnar)

5.0.1: 2019-05-09

  • Documentation: Add 'Perils of CDIST_ORDER_DEPENDENCY' sub-section (Darko Poljak)
  • Build: Clean and separate end user targets into Makefile and maintainer targets into build-helper (Darko Poljak)
  • Core: Update residual references to old cdist homepage (Darko Poljak)
  • Documentation: Update residual references to old cdist homepage and git source (Darko Poljak)
  • Type __cdist: Fix non working 'git://' protocol source (Darko Poljak)

5.0.0: 2019-05-05

  • Type __zypper_service: Fix spelling error in manpage (Dmitry Bogatov)
  • Explorer init: Add support for OpenBSD (sideeffect42)
  • Type __postgres_database: Run psql with -w (no-password) (sideeffect42)
  • Type __postgres_role: Run psql with -w (no-password) (sideeffect42)
  • Type __block: Quote prefix/suffix - fix when prefix/suffix contains quotes (sideeffect42)
  • Build: Update due to migration to code.ungleich.ch (Darko Poljak)
  • Documentation: Update due to migration to code.ungleich.ch (Darko Poljak)
  • Core: Detect and report dependency cycle as soon as possible (Darko Poljak)
  • Core, documentation: Release -j/--jobs option, i.e. make it non-beta (Darko Poljak)
  • Documentation: Update due to new cdist website (Darko Poljak)
  • Build: Update due to new cdist website (Darko Poljak)

4.11.1: 2019-04-22

  • Core: Improve explorer error reporting (Darko Poljak)
  • Type __directory: explorer stat: add support for Solaris (Ander Punnar)
  • Type __file: explorer stat: add support for Solaris (Ander Punnar)
  • Type __ssh_authorized_keys: Remove legacy code (Ander Punnar)
  • Explorer disks: Bugfix: do not break config in case of unsupported OS which was introduced in 4.11.0, print message to stderr and empty disk list to stdout instead (Darko Poljak)

4.11.0: 2019-04-20

  • Type __package: Add __package_apk support (Nico Schottelius)
  • Type __directory: Add alpine support (Nico Schottelius)
  • Type __file: Add alpine support (Nico Schottelius)
  • Type __hostname: Add alpine support (Nico Schottelius)
  • Type __locale: Add alpine support (Nico Schottelius)
  • Type __start_on_boot: Add alpine support (Nico Schottelius)
  • Type __timezone: Add alpine support (Nico Schottelius)
  • Type __start_on_boot: gentoo: check all runlevels in explorer (Nico Schottelius)
  • New type: __package_apk (Nico Schottelius)
  • Type __acl: Add support for ACL mask (Dimitrios Apostolou)
  • Core: Fix circular dependency for CDIST_ORDER_DEPENDENCY (Darko Poljak)
  • Type __acl: Improve the type (Ander Punnar)
  • Explorer interfaces: Simplify code, be more compatible (Ander Punnar)
  • Explorer disks: Remove assumable default/fallback, for now explicitly support only Linux and BSDs (Ander Punnar, Darko Poljak)

4.10.11: 2019-04-13

  • Core: Fix broken quiet mode (Darko Poljak)
  • Build: Add version.py into generated raw source archive (Darko Poljak)
  • Explorer disks: Fix detecting disks, fix/add support for BSDs (Ander Punnar)
  • Type __file: Fix stat explorer for BSDs (Ander Punnar)
  • Type __directory: Fix stat explorer for BSDs (Ander Punnar)

4.10.10: 2019-04-11

  • New types: __ufw and __ufw_rule (Mark Polyakov)
  • Type __link: Add messaging (Ander Punnar)
  • Debugging: Rename debug-dump.sh to cdist-dump (Darko Poljak)
  • Documentation: Add cdist-dump man page (Darko Poljak)

4.10.9: 2019-04-09

  • Type __ssh_authorized_keys: Properly handle multiple --option params (Steven Armstrong)
  • Debugging: Add debug dump helper script (Darko Poljak)
  • Type __file: Bugfix: fire onchange for present and exists states if no attribute is changed (Darko Poljak)

4.10.8: 2019-04-06

  • Type __clean_path: Fix list explorer exit code if path not directory or does not exist (Ander Punnar)
  • New type: __check_messages (Ander Punnar)

4.10.7: 2019-03-30

  • Build: Migrate from pep8 to pycodestyle (Darko Poljak)
  • Type __start_on_boot: Implement state absent for OpenBSD (Daniel Néri)
  • Explorers cpu_cores, disks: Add support for OpenBSD (Daniel Néri)
  • Type __staged_file: Use portable -p instead of --tmpdir for mktemp (Silas Silva)
  • Type __line: Add onchange parameter (Ander Punnar)
  • Type __file: Add onchange parameter (Ander Punnar)
  • New type: __clean_path (Ander Punnar)

4.10.6: 2019-02-15

  • Type __prometheus_alertmanager: Add startup flag (Dominique Roux)
  • Types __zypper_repo, __zypper_service: Re-add the use of echo in explorers (Daniel Heule)

4.10.5: 2018-12-21

  • Type __group: Fix/remove '--' from echo command (Dimitrios Apostolou)
  • New type: __ping (Olliver Schinagl)
  • Type __postgres_role: Fix broken syntax (Nico Schottelius, Darko Poljak)
  • Type __consul_agent: Add Debian 9 support (Jin-Guk Kwon)
  • Documentation: Fix broken links (Rage <OxR463>)
  • Type __docker: Add version parameter (Jonas Weber)
  • Type __sysctl: Refactor for better OS support (Takashi Yoshi)
  • Types __package_*: Add messaging upon installation/removal (Takashi Yoshi)
  • Type __package_pkg_openbsd: Reworked (Takashi Yoshi)

4.10.4: 2018-11-03

  • Core: Transfer all files of a directory at once instead of calling copy once per file (myeisha)
  • Core: Add timestamp (optional) to log messages (Darko Poljak)
  • Explorers and types: Fix shellcheck found problems and encountered bugs (Jonas Weber, Thomas Eckert, Darko Poljak)
  • Build: Add shellcheck makefile target and check when doing release (Darko Poljak)
  • Type __consul: Add newest versions (Dominique Roux)
  • Type __user: Remove annoying output, handle state param gracefully, add messages for removal (Thomas Eckert)
  • Core: Fix checking for conflicting parameters for multiple values parameters (Darko Poljak)
  • Documentation: Various fixes (Thomas Eckert)
  • Various types: Improve OpenBSD support (sideeffect42)

4.10.3: 2018-09-23

  • New global explorer: os_release (Ľubomír Kučera)
  • Type __docker: Update type, install docker CE (Ľubomír Kučera)
  • Type __package_apt: Write a message when a package is installed or removed; shellcheck (Jonas Weber)
  • Documentation: Add 'Dive into real world cdist' walkthrough chapter (Darko Poljak)
  • Core: Remove duplicate remote mkdir calls in explorer transfer (myeisha)

4.10.2: 2018-09-06

  • Type __letsencrypt_cert: Add support for devuan ascii (Darko Poljak)
  • Type __systemd_unit: Fix minor issues and add masking unit files support (Adam Dej)
  • Type __grafana_dashboard: Fix devuan ascii support (Dominique Roux)
  • Type __apt_source: Add nonparallel marker (Darko Poljak)
  • Type __package_update_index: Fix error when using OS not using apt (Stu Zhao)
  • Type __package_update_index: Support --maxage for type pacman (Stu Zhao)
  • Type __letsencrypt_cert: Fix explorers: check that certbot exists before using it (Darko Poljak)

4.10.1: 2018-06-21

  • Type __letsencrypt_cert: Fix temp file location and removal (Darko Poljak)
  • Type __line: Handle missing file in __line explorer gracefully (Jonas Weber)
  • Documentation: Add env vars usage idiom for writing types (Darko Poljak)

4.10.0: 2018-06-17

  • New type: __acl (Ander Punnar)
  • Core: Disable config parser interpolation (Darko Poljak)
  • Type __sysctl: Use sysctl.d location if exists (Darko Poljak)
  • Type __line: Rewrite and support --before and --after (Steven Armstrong)

4.9.1: 2018-05-30

  • New type: __install_coreos (Ľubomír Kučera)
  • Type __consul_agent: Add LSB init header (Nico Schottelius)
  • Type __package_yum: Fix explorer when name contains package name with exact version specified (Aleksandr Dinu)
  • Type __letsencrypt_cert: Use object id as domain if domain param is not specified (Darko Poljak)

4.9.0: 2018-05-17

  • Type __docker_stack: Use --with-registry-auth option (Ľubomír Kučera)
  • New type: __docker_config (Ľubomír Kučera)
  • New type: __docker_secret (Ľubomír Kučera)
  • Type __letsencrypt_cert: Rewritten; WARN: breaks backward compatibility (Ľubomír Kučera)
  • Core: Fix NameError: name 'cdist_object' is not defined (Darko Poljak)

4.8.4: 2018-04-20

  • Documentation, type manpages: Fix spelling (Dmitry Bogatov)
  • New explorer: is-freebsd-jail (Kamila Součková)
  • Types __hostname, __start_on_boot, __sysctl: Support FreeBSD (Kamila Součková)
  • Type __install_config: set environment variable to distinguish between install-config and regular config (Steven Armstrong)
  • Core: Improve error reporting (Darko Poljak)

4.8.3: 2018-03-16

  • Type __key_value: Add onchange parameter (Kamila Součková)
  • Types __prometheus_server, __prometheus_alertmanager, __grafana_dashboard: Work with packages instead of go get, remove __daemontools dependency and clean up (Kamila Součková)
  • Documentation: Fix manpage generation (Darko Poljak)
  • New type: __docker_swarm (Ľubomír Kučera)
  • New type: __docker_stack (Ľubomír Kučera)

4.8.2: 2018-03-10

  • Core: Fix quiet argument access for bare cdist command (Darko Poljak)

4.8.1: 2018-03-09

  • Type __consul: Add option for directly downloading on target host (Darko Poljak)
  • Core: Add -4 and -6 params to force IPv4, IPv6 addresses respectively (Darko Poljak)
  • Type __package_update_index: Fix messaging (Thomas Eckert)
  • Type __package_dpkg: Add state parameter and messaging (Thomas Eckert)
  • Core: Fix a case when HOME is set but empty (Darko Poljak)
  • Core: Fix non-existent manifest non graceful handling (Darko Poljak)
  • Core: Fix main and inventory parent argparse options (Darko Poljak)
  • Core: Fix lost error info with parallel jobs (option -j) (Darko Poljak)
  • Core: Fix determining beta value through configuration (Darko Poljak)
  • Core: Fix determining save_output_streams value through configuration (Darko Poljak)
  • Core: Support in-distribution config file (Darko Poljak)
  • New type: __apt_default_release (Matthijs Kooijman)
  • Type __file: Add pre-exists state (Matthijs Kooijman)
  • Type __grafana_dashboard: Add support for stretch + ascii (Nico Schottelius)
  • Core: Fix idna (getaddrinfo) unicode tracebak for invalid host name (Darko Poljak)

4.8.0: 2018-02-14

  • Core: Skip empty lines in parameter files (Darko Poljak)
  • Explorer memory: Support OpenBSD (Philippe Gregoire)
  • Type __install_config: re-export cdist log level during installation (Steven Armstrong)
  • Type __sysctl: Add support for CoreOS (Ľubomír Kučera)
  • Type __systemd_unit: Various improvements (Ľubomír Kučera)
  • Type __line: Support regex beginning with '-' (Philippe Gregoire)
  • Type __letsencrypt_cert: Add nonparallel; make admin-email required (Kamila Součková)
  • Type __package_pkgng_freebsd: Redirect stdout and stderr to /dev/null instead of closing them (michal-hanu-la)
  • Type __daemontools: Make it more robust and clean up the code (Kamila Součková)
  • Core: Save output streams (Steven Armstrong, Darko Poljak)
  • Documentation: Add local cache overview (Darko Poljak)
  • Type __systemd_unit: Fix handling stdin (Jonas Weber)
  • Type __package_apt: Add --purge-if-absent parameter (Jonas Weber)
  • Type __package_update_index: Add --maxage parameter for apt and add message if index was updated(Thomas Eckert)
  • Type __motd: Support reading from stdin (Jonas Weber)
  • Type __issue: Support reading from stdin (Jonas Weber)
  • Type __package_apt: Add support for --version parameter (Darko Poljak)
  • Type __letsencrypt_cert: Add --renew-hook parameter(Darko Poljak)
  • Core: Support disabling saving output streams (Darko Poljak)
  • Type __apt_source: Remove update index dependency; call index update in gencode-remote (Darko Poljak)

4.7.3: 2017-11-10

  • Type __ccollect_source: Add create destination parameter (Dominique Roux)
  • Type __ssh_authorized_key: Add messaging (Thomas Eckert)
  • New type: __letsencrypt_cert (Nico Schottelius, Kamila Součková)
  • Core: Warn about invalid type in conf dir and continue instead of error (Darko Poljak)
  • New type: __systemd_unit (Ľubomír Kučera)
  • Type __letsencrypt_cert: Add support for debian stretch (Daniel Tschada)
  • Type __line: Fix a case for absent when line contains single quotes (Darko Poljak)
  • Type __config_file: Fix onchange command not being executed (Ľubomír Kučera)

4.7.2: 2017-10-22

  • Type __hostname: Add support for CoreOS (Ľubomír Kučera)
  • Type __timezone: Add support for CoreOS (Ľubomír Kučera)
  • Explorer os: Fix for devuan ascii (Kamila Součková)

4.7.1: 2017-10-01

  • Type __line: Add messaging (Thomas Eckert)
  • Documentation: Fix documentation for building custom man-pages from non-standard path (Thomas Eckert)
  • Core: Fix running scripts with execute bit when name without path is specified (Ander Punnar)
  • Type __process: Add messaging (Thomas Eckert)

4.7.0: 2017-09-22

  • Core: Add configuration/config file support (Darko Poljak)
  • Core: Implement simple integration API (unstable) (Darko Poljak)
  • Explorer machine_type: Detect kvm on proxmox (Sven Wick)
  • Types __prometheus_server, __prometheus_alertmanager: Bugfixes (Kamila Součková)
  • New type: __prometheus_exporter (Kamila Součková)
  • Type __daemontools: Improve it on FreeBSD (Kamila Součková)
  • Type __package_pkg_openbsd: Fix use of --name (Philippe Gregoire)
  • Type __package_pkg_openbsd: Fix pkg_version explorer (Philippe Gregoire)
  • Type __prometheus_exporter: Fixes + go version bump (Kamila Součková)
  • Core, types: __cdist_loglevel -> __cdist_log_level (Darko Poljak)
  • Core, types: Add __cdist_log_level_name env var with vlaue of log level name (Darko Poljak)
  • Core: Make cdist honor __cdist_log_level env var (Darko Poljak)
  • Core: Add -l/--log-level option (Darko Poljak)
  • Type __install_stage: Fix __debug -> __cdist_log_level (Darko Poljak)
  • Documentation: Document __cdist_log_level (Darko Poljak)
  • Core: Log ERROR to stderr and rest to stdout (Darko Poljak, Steven Armstrong)
  • Type __ssh_authorized_key: Bugfix the case where invalid key clears a file and add key validation (Darko Poljak)

4.6.1: 2017-08-30

  • Type __user: Explore with /etc files (passwd, group, shadow) (Philippe Gregoire)
  • Explorer init: Use pgrep instead of ps for Linux (Philippe Gregoire)
  • Type __apt_key_uri: Redirect stderr of apt-key to /dev/null (Mark Verboom)
  • Type __package_pkg_openbsd: Support the empty flavor (Philippe Gregoire)
  • Type __package_pkg_openbsd: Support using /etc/installurl (Philippe Gregoire)
  • Type __user_groups: Support OpenBSD (Philippe Gregoire)
  • Type __hostname: Allow hostnamectl to fail silently (Steven Armstrong)
  • Type __install_config: Use default default __remote_{copy,exec} in custom __remote_{copy,exec} scripts (Steven Armstrong)
  • Type __ssh_authorized_key: Fix removing ssh key that is last one in the file (Darko Poljak)

4.6.0: 2017-08-25

  • Core: Add inventory functionality (Darko Poljak)
  • Core: Expose inventory host tags in __target_host_tags env var (Darko Poljak)
  • Type __timezone: Check current timezone before doing anything (Ander Punnar)
  • Core: Add -p HOST_MAX argument (Darko Poljak)
  • Core: Add archiving support for transferring directory - new -R beta option (Darko Poljak)
  • Core: Fix ssh connection multiplexing race condition (Darko Poljak)
  • Core: Fix emulator race conditions with -j option (Darko Poljak)
  • Documentation: Cleanup (Darko Poljak)
  • Explorer os: Get ID from /etc/os-release (Philippe Gregoire)

4.5.0: 2017-07-20

  • Types: Fix install types (Steven Armstrong)
  • Core: Add -r command line option for setting remote base path (Steven Armstrong)
  • Core: Allow manifest and gencode scripts to be written in any language (Darko Poljak)
  • Documentation: Improvements to the english and fix typos (Mesar Hameed)
  • Core: Merge -C custom cache path pattern option from beta branch (Darko Poljak)
  • Core: Improve and cleanup logging (Darko Poljak, Steven Armstrong)
  • Core: Remove deprecated -d option (Darko Poljak)
  • Type __file: If no --source then create only if there is no file (Ander Punnar)
  • Core: Ignore directory entries that begin with dot('.') (Darko Poljak)
  • Core: Fix parallel object prepare and run steps and add nonparallel type marker (Darko Poljak)

4.4.4: 2017-06-16

  • Core: Support -j parallelization for object prepare and object run (Darko Poljak)
  • Type __install_mkfs: mkfs.vfat does not support -q (Nico Schottelius)
  • Types __go_get, __daemontools*, __prometheus*: Fix missing dependencies, fix arguments (Kamila Součková)

4.4.3: 2017-06-13

  • Type __golang_from_vendor: Install golang from https://golang.org/dl/ (Kamila Součková)
  • Type __go_get: Install go packages using go get (Kamila Součková)
  • Explorer kernel_name: uname -s (Kamila Součková)
  • Type __sysctl: Add devuan support (Nico Schottelius)
  • Type __start_on_boot: Add devuan support (Nico Schottelius)
  • Core: Shorten ssh control path (Darko Poljak)
  • Type __consul: Add new version and add http check (Kamila Součková)
  • New types: __daemontools and __daemontools_service (Kamila Součková)
  • New types: __prometheus_server and __prometheus_alertmanager (Kamila Součková)
  • New type: __grafana_dashboard (Kamila Součková)

4.4.2: 2017-03-08

  • Core: Fix suppression of manifests' outputs (Darko Poljak)
  • Type __user_groups: Support FreeBSD (Andres Erbsen)
  • Type __cron: Fix filter for new cron on sles12 sp2 (Daniel Heule)
  • Type __docker: Support absent state (Dominique Roux)
  • Type __docker_compose: Support absent state (Dominique Roux)
  • New type: __hosts (Dmitry Bogatov)
  • New type: __dot_file (Dmitry Bogatov)

4.4.1: 2016-12-17

  • Documentation: Update docs for types that used man.rst as symbolic links (Darko Poljak)
  • Type __cron: Remove '# marker' for raw_command due to cron security (Daniel Heule)
  • New type: __docker_compose (Dominique Roux)
  • Type __apt_mark: Check supported apt version and if package is installed (Ander Punnar)
  • New type: __docker (Steven Armstrong)
  • New type: __package_dpkg (Tomas Pospisek)

4.4.0: 2016-12-03

  • Core: Deprecate -d option and make -v option log level counter (Darko Poljak)
  • New type: __postgres_extension (Tomas Pospisek)
  • Core, types: Support IPv6 (Darko Poljak)
  • Type __consul: Add source and cksum files for Consul 0.7.0 and 0.7.1 (Carlos Ortigoza)
  • Type __user: FreeBSD fix (Kamila Souckova)
  • New type: __apt_mark (Ander Punnar)
  • Type __package_upgrade_all: Do not dist-upgrade by default, add apt-clean and apt-dist-upgrade options (Ander Punnar)
  • Core: Correct target_host var in code.py (Darko Poljak)
  • All: Merge install feature from 4.0-pre-not-stable (Darko Poljak)

4.3.2: 2016-10-13

  • Documentation: Update no longer existing links (Simon Walter)
  • Core: Add warning message for faulty dependencies case (Darko Poljak)
  • Explorer os_version: Use /etc/os-release instead of /etc/SuSE-release (Daniel Heule)
  • Type __package: Call __package_pkg_openbsd on openbsd (Andres Erbsen)
  • Type __package_pkg_openbsd: Support --version (Andres Erbsen)
  • Type __hostname: Support openbsd (Andres Erbsen)
  • New type: __firewalld_start: start/stop firewalld and/or enable/disable start on boot (Darko Poljak)
  • Bugfix __consul_agent: Config option was misnamed 'syslog' instead of 'enable_syslog' (Steven Armstrong)

4.3.1: 2016-08-22

  • Documentation: Spelling fixes (Darko Poljak)
  • Type __filesystem: Spelling fixes (Dmitry Bogatov)
  • Core: Add target_host file to cache since cache dir name can be hash (Darko Poljak)
  • Core: Improve hostfile: support comments, skip empty lines (Darko Poljak)

4.3.0: 2016-08-19

  • Documentation: Add Parallelization chapter (Darko Poljak)
  • Core: Add -b, --enable-beta option for enabling beta functionalities (Darko Poljak)
  • Core: Add -j, --jobs option for parallel execution and add parallel support for global explorers (currently in beta) (Darko Poljak)
  • Core: Add derived env vars for target hostname and fqdn (Darko Poljak)
  • New type: __keyboard: Set keyboard layout (Carlos Ortigoza)
  • Documentation: Re-license types' man pages to GPLV3+ (Dmitry Bogatov, Darko Poljak)
  • New type __filesystem: manage filesystems on devices (Daniel Heule)
  • New type: __locale_system (Steven Armstrong, Carlos Ortigoza, Nico Schottelius)
  • New type: __sysctl (Steven Armstrong)

4.2.2: 2016-07-26

  • Core: Fix ssh ControlPath socket file error (Darko Poljak)
  • Documentation: Update cdist man page and cdist-references (Darko Poljak)
  • Documentation: Change cdist and cdist-type__pyvenv man page licenses to GPLv3+ (Darko Poljak)
  • Documentation: Add FILES to cdist man page (Darko Poljak)

4.2.1: 2016-07-18

  • Build: Fix signed release (Darko Poljak)
  • Build: Fix building docs (Darko Poljak)
  • Documentation: Fix man pages (Dmitry Bogatov)
  • Documentation: Fix spellings (Dmitry Bogatov)

4.2.0: 2016-07-16

  • Build: Make github signed release (Darko Poljak)
  • Core: Fix hostdir: use hash instead of target host (Steven Armstrong)
  • Core: pep8 (Darko Poljak)
  • Documentation: Restructure and fix and improve docs and manpages (Darko Poljak)
  • Core: Add files directory for static files (Darko Poljak)
  • Custom: Add bash and zsh completions (Darko Poljak)
  • Core: Improve error reporting for local and remote run command (Darko Poljak)
  • New type: __jail_freebsd9: Handle jail management on FreeBSD <= 9.X (Jake Guffey)
  • New type: __jail_freebsd10: Handle jail management on FreeBSD >= 10.0 (Jake Guffey)
  • Type __jail: Dynamically select the correct jail subtype based on target host OS (Jake Guffey)
  • Explorer __machine_type: add openvz and lxc
  • Explorer __os __os_version: add scientific
  • Type various: add scientific
  • Explorer __machine_type: add virtualbox (Stu Zhao)

4.1.0: 2016-05-27

  • Documentation: Migrate to reStructuredText format and sphinx (Darko Poljak)
  • Core: Add -f option to read additional hosts from file/stdin (Darko Poljak)
  • Type __apt_key: Use pool.sks-keyservers.net as keyserver (Steven Armstrong)

4.0.0: 2016-05-04

  • Core: Fix bug with parallel hosts operation when output path is specifed (Darko Poljak)
  • Type __package_pip: Add support for running as specified user (useful for pip in venv) (Darko Poljak)
  • New type: __pyvenv: Manage python virtualenv (Darko Poljak)
  • Core: Add CDIST_REMOTE_COPY/EXEC env variables and multiplexing options for default scp/ssh (Darko Poljak)
  • Types: Remove bashisms in scripts (Darko Poljak)
  • Core: Fix bug in remote command with environment (Darko Poljak)
  • Core: Fix bug in local code execution (Darko Poljak)
  • Documentation: Fix spelling in manual pages (Dmitry Bogatov)
  • New type: __pacman_conf: Manage pacman.conf (Dominique Roux)
  • New type: __pacman_conf_integrate: cdist compatible pacman.conf (Dominique Roux)
  • Type __consul: Do not install unused package unzip (Steven Armstrong)
  • Type __consul: Add source & cksum for 0.5.2 (Steven Armstrong)
  • Core: Support object ids '.cdist' (Nico Schottelius)
  • Type __apt_norecommends: Also setup autoremove options (Dmitry Bogatov)
  • Type __user_groups: Add NetBSD support (Jonathan A. Kollasch)
  • Type __timezone: Add NetBSD support (Jonathan A. Kollasch)
  • Type __ccollect_source: Add NetBSD support (Jonathan A. Kollasch)
  • Type __directory: Add NetBSD support (Jonathan A. Kollasch)
  • Type __file: Add NetBSD support (Jonathan A. Kollasch)
  • Type __group: Add NetBSD support (Jonathan A. Kollasch)
  • Type __consul: Add new consul versions (Nico Schottelius)
  • Type __apt_ppa: Do not install legacy package python-software-properties (Steven Armstrong)

3.1.13: 2015-05-16

  • Type __block: Fix support for non stdin blocks (Dominique Roux)
  • Type __consul: Install package unzip (Nico Schottelius)
  • Type __consul: Add source & cksum for 0.5.1 (Nico Schottelius)
  • Type __consul_agent: Use systemd for Debian 8 (Nico Schottelius)
  • Type __firewalld_rule: Ensure firewalld package is present (David Hürlimann)
  • Type __locale: Support CentOS (David Hürlimann)
  • Type __staged_file: Fix comparison operator (Nico Schottelius)
  • Type __user_groups: Support old Linux versions (Daniel Heule)

3.1.12: 2015-03-19

  • Core: Support object ids '.cdist' (Nico Schottelius)
  • New type: __firewalld_rule (Nico Schottelius)
  • Type __consul_agent: add support for acl options (Steven Armstrong)
  • Type __consul_agent: add support for Debian (Nico Schottelius)
  • Type __package_apt: Use default parameters (Antoine Catton)
  • Type __package_luarocks: Use default parameters (Antoine Catton)
  • Type __package_opkg: Use default parameters (Antoine Catton)
  • Type __package_pacman: Use default parameters (Antoine Catton)
  • Type __package_pip: Use default parameters (Antoine Catton)
  • Type __package_pkg_freebsd: Use default parameters (Antoine Catton)
  • Type __package_pkg_openbsd: Use default parameters (Antoine Catton)
  • Type __package_pkgng_openbsd: Use default parameters (Antoine Catton)

3.1.11: 2015-02-27

  • New type: __staged_file: Manage staged files (Steven Armstrong)
  • New type: __config_file: Manage configuration files and run code on change (Steven Armstrong)
  • New type: __consul: install consul (Steven Armstrong)
  • New type: __consul_agent: manage the consul agent (Steven Armstrong)
  • New type: __consul_check: manages consul checks (Steven Armstrong)
  • New type: __consul_reload: reload consul (Steven Armstrong)
  • New type: __consul_service: manages consul services (Steven Armstrong)
  • New type: __consul_template: manage the consul-template service (Steven Armstrong)
  • New type: __consul_template_template: manage consul-template templates (Steven Armstrong)
  • New type: __consul_watch_checks: manages consul checks watches (Steven Armstrong)
  • New type: __consul_watch_event: manages consul event watches (Steven Armstrong)
  • New type: __consul_watch_key: manages consul key watches (Steven Armstrong)
  • New type: __consul_watch_keyprefix: manages consul keyprefix watches (Steven Armstrong)
  • New type: __consul_watch_nodes: manages consul nodes watches (Steven Armstrong)
  • New type: __consul_watch_service: manages consul service watches (Steven Armstrong)
  • New type: __consul_watch_services: manages consul services watches (Steven Armstrong)
  • New Type: __rsync (Nico Schottelius)
  • Type __start_on_boot: Support Ubuntu upstart (Nico Schottelius)
  • Type __timezone: Added support for FreeBSD (Christian Kruse)

3.1.10: 2015-02-10

  • Core: Fix too many open files bug (#343)
  • Type __ssh_authorized_keys: Remove unneeded explorer (Steven Armstrong)
  • Type __ssh_authorized_keys: Fix empty output bug of entry explorer (Steven Armstrong)
  • Type __package_apt: Add support for --target-release (Nico Schottelius)
  • Type __locale: Add support for Ubuntu (Nico Schottelius)
  • Type __group: Rewrite (Steven Armstrong)
  • Documentation: Fix typo in maintainer file (Stephan Kulla)

3.1.9: 2014-10-17

  • Type __package_emerge: Fix handling of slotted packages (Daniel Heule)
  • Type __package_apt: Use --force-confdef (Ricardo Catalinas Jiménez)
  • Type __package_update_index: Decrease verbosity (Ricardo Catalinas Jiménez)
  • Type __package_upgrade_all: Decrease verbosity (Ricardo Catalinas Jiménez)

3.1.8: 2014-10-01

  • New Type: __package_update_index (Ricardo Catalinas Jiménez)
  • New Type: __package_upgrade_all (Ricardo Catalinas Jiménez)

3.1.7: 2014-09-29

  • Type __cdistmarker: Fix typo (Ricardo Catalinas Jiménez)
  • Core: Bugfix: Export messaging to manifests (Ricardo Catalinas Jiménez)
  • Explorer cpu_cores, cpu_sockets, memory: Add Mac OS X support (Manuel Hutter)
  • Type __ssh_authorized_keys: Ensure keys are correctly added (Steven Armstrong)
  • New Type: __ssh_authorized_key (Steven Armstrong)
  • New Type: __package_pkgng_freebsd (Jake Guffey)

3.1.6: 2014-08-18

  • New Type: __ssh_dot_ssh (Nico Schottelius)
  • Type __package_yum: Support retrieving package via URL (Nico Schottelius)
  • Type __hostname: Support SuSE and have CentOS use sysconfig value (Nico Schottelius)
  • Type __locale: Support SuSE (Nico Schottelius)
  • Type __locale: Support Archlinux (Nico Schottelius)
  • Type __timezone: Support SuSE (Nico Schottelius)
  • Type __file: Support MacOS X (Manuel Hutter)
  • Type __iptables_apply: Add "reset" to init.d script of iptables (Nico Schottelius)
  • Type __ssh_authorized_key: Use new type __ssh_dot_ssh (Nico Schottelius)
  • Type __zypper_repo: Bugfix for pattern matching (Daniel Heule)

3.1.5: 2014-05-05

  • Type __zypper_repo: Automatically import gpg keys (Daniel Heule)
  • Type __zypper_service: Automatically import gpg keys (Daniel Heule)

3.1.4: 2014-05-04

  • Core: Ensure all created files end in n (Steven Armstrong)
  • Documentation: Cleanup up, added HTML links (Tomas Pospisek)
  • Explorer interfaces: Remove test output (Daniel Heule)
  • Type __jail: Add messaging support (Jake Guffey)

3.1.3: 2014-04-29

  • New Type: __yum_repo (Steven Armstrong)
  • Type __hostname: Add support for CentOS (Nico Schottelius)

3.1.2: 2014-04-12

  • Documentation: Add missing environment variables to reference (Nico Schottelius)
  • Type __qemu_img: size is optional, if state is not present (Nico Schottelius)
  • Type __key_value: Rewrite using awk (Daniel Heule)
  • New Type: __dog_vdi (Nico Schottelius)

3.1.1: 2014-03-26

  • Core: Make __object and __object_id available to code (Daniel Heule)
  • New explorer: cpu_cores (Daniel Heule/Thomas Oettli)
  • New explorer: cpu_sockets (Daniel Heule/Thomas Oettli)
  • New explorer: machine_type (Daniel Heule/Thomas Oettli)
  • New explorer: memory (Daniel Heule/Thomas Oettli)
  • Type __jail: Fix parameter names in explorer (Jake Guffey)
  • Type __line: Ensure permissions are kept (Steven Armstrong)
  • Type __link: Do not create link in directory, if link exists (Steven Armstrong)
  • Type __package_pkg_openbsd: Improve error handling (og)

3.1.0: 2014-03-19

  • New Type: __rbenv (Nico Schottelius)
  • Type __file: Enhance OpenBSD Support (og)
  • Type __git: Pass onwer/group/mode values to __directory (Nico Schottelius)
  • Type __iptable_rule: Fix example documentation (Antoine Catton)
  • Type __key_value: Add messaging support (Nico Schottelius)
  • Type __package_pkg_openbsd: Allow to change PKG_PATH (og)
  • Type __ssh_authorized_keys: Allow managing existing keys (Steven Armstrong)
  • Type __user: Enhance OpenBSD Support (og)

3.0.9: 2014-02-14

  • Core: Ignore order dependencies if override is set (Daniel Heule)
  • Core: Improve Mac OS X support for unit tests (Steven Armstrong)
  • Type __locale: Error out in case of unsupported OS (Nico Schottelius)
  • Type __jail: Use default parameters for state (Daniel Heule)
  • Type __pf_ruleset: Use default parameters for state (Daniel Heule)
  • Type __postgres_database: Use default parameters for state (Daniel Heule)
  • Type __postgres_role: Use default parameters for state (Daniel Heule)
  • Type __rvm: Use default parameters for state (Daniel Heule)
  • Type __rvm_gem: Use default parameters for state (Daniel Heule)
  • Type __rvm_gemset: Use default parameters for state (Daniel Heule)
  • Type __rvm_ruby: Use default parameters for state (Daniel Heule)

3.0.8: 2014-02-11

  • Core: Enhance object id verification (Daniel Heule)
  • Core: Add unit tests for dependencies based on execution order (Daniel Heule)
  • Core: Add unit tests for dry run (Daniel Heule)

3.0.7: 2014-02-08

  • Core: Allow dependencies to be created based execution order (Daniel Heule)
  • Core: Add tests for override (Daniel Heule)

3.0.6: 2014-02-06

  • New Type: __apt_key (Steven Armstrong)
  • New Type: __apt_key_uri (Steven Armstrong)
  • New Type: __apt_norecommends (Steven Armstrong)
  • New Type: __apt_source (Steven Armstrong)
  • New Type: __ccollect_source (Nico Schottelius)
  • Type __git: Use default parameters (Daniel Heule)
  • Type __jail: Use default parameters (Daniel Heule)
  • Type __package_yum: Use default parameters (Daniel Heule)
  • Type __package_zypper: Use default parameters (Daniel Heule)
  • Type __user_groups: Use default parameters (Daniel Heule)

3.0.5: 2014-02-05

  • Core: Introduce override concept (Daniel Heule)
  • Type __process: Make --state absent work (Steven Armstrong)
  • Documentation: Update documentation for environment variables (Nico Schottelius)

3.0.4: 2014-01-29

  • Core: Ignore install types in config mode (Nico Schottelius)
  • Documentation: Update reference (files path in object space) (Nico Schottelius)
  • Documentation: Update best practise: Replaces templates/ with files/ (Nico Schottelius)
  • Type __apt_ppa: Install required software (Steven Armstrong)
  • Type __debconf_set_selections: Support --file - to read from stdin (Nico Schottelius)
  • Type __jail: Fix jaildir parameter handling (Jake Guffey)

3.0.3: 2014-01-22

  • Core: Enhance error message when requirement is missing object id (Nico Schottelius)
  • Core: Add environment variable to select shell for executing scripts (Daniel Heule)
  • Explorer hostname: Return host name by using uname -n (Nico Schottelius)
  • New Type: __hostname (Steven Armstrong)
  • Type __cdist: Use default paremeters (Daniel Heule)
  • Type __key_value: Use default paremeters (Daniel Heule)
  • Type __line: Use printf instead of echo for printing user input (Nico Schottelius)
  • Type __qemu_img: Use default paremeters (Daniel Heule)
  • Type __zypper_repo: Use default paremeters (Daniel Heule)
  • Type __zypper_service: Use default paremeters (Daniel Heule)

3.0.2: 2014-01-19

  • Documentation: Document all messages sent by types (Daniel Heule)
  • New Type: __block (Steven Armstrong)
  • New Type: __mount (Steven Armstrong)
  • Type __cron: Replace existing entry when changing it (Daniel Heule)
  • Type __ssh_authorized_keys: Use new type __block (Steven Armstrong)

3.0.1: 2014-01-14

  • Core: Copy only files, not directories (Steven Armstrong)
  • Core: Allow hostnames to start with / (Nico Schottelius)
  • Type __line: Remove unnecessary backslash escape (Nico Schottelius)
  • Type __directory: Add messaging support (Daniel Heule)
  • Type __directory: Do not generate code if mode is 0xxx (Daniel Heule)
  • Type __package: Fix typo in optional parameter ptype (Daniel Heule)
  • Type __start_on_boot: Fix for SuSE's chkconfig (Daniel Heule)

3.0.0: 2013-12-24

  • Core: Added messaging support (Nico Schottelius)
  • Core: Removed unused "changed" attribute of objects (Nico Schottelius)
  • Core: Support default values for multiple parameters (Steven Armstrong)
  • Core: Ensure Object Parameter file contains n (Steven Armstrong)
  • New Type: __zypper_repo (Daniel Heule)
  • New Type: __zypper_service (Daniel Heule)
  • New Type: __package_emerge (Daniel Heule)
  • New Type: __package_emerge_dependencies (Daniel Heule)
  • Type __cron: Add support for raw lines (Daniel Heule)
  • Type __cron: Suppress stderr output from crontab (Daniel Heule)
  • Type __cron: Fix quoting issue (Daniel Heule)
  • Type __file: Do not generate code if mode is 0xxx (Nico Schottelius)
  • Type __iptables_rule: Use default parameter (Nico Schottelius)
  • Type __key_value: Fix quoting issue (Steven Armstrong)
  • Type __package: Use state --present by default (Steven Armstrong)
  • Type __package_zypper: Support non packages as well (Daniel Heule)
  • Type __package_zypper: Support package versions (Daniel Heule)
  • Type __postfix_*: Depend on __postfix Type (Steven Armstrong)
  • Type __postfix_postconf: Enable support for SuSE (Daniel Heule)
  • Type __postfix: Enable support for SuSE (Daniel Heule)
  • Type __start_on_boot: Use default parameter state (Nico Schottelius)
  • Type __start_on_boot: Add support for gentoo (Daniel Heule)
  • Type __user: Add support for state parameter (Daniel Heule)
  • Type __user: Add support for system users (Daniel Heule)
  • Type __user: Add messaging support (Steven Armstrong)
  • Type __zypper_service: Support older SuSE releases (Daniel Heule)

2.3.7: 2013-12-02

  • Type __file: Secure the file transfer by using mktemp (Steven Armstrong)
  • Type __file: Only remove file when state is absent (Steven Armstrong)
  • Type __link: Only remove link when state is absent (Steven Armstrong)
  • Type __directory: Only remove directory when state is absent (Steven Armstrong)
  • Type __directory: Fix newly introduced quoting issue (Nico Schottelius)
  • Type __package_zypper: Fix explorer and parameter issue (Daniel Heule)
  • Core: Fix backtrace when cache cannot be deleted (Nico Schottelius)

2.3.6: 2013-11-25

  • New Type: __locale (Nico Schottelius)
  • Type __line: Ensure special characters are not interpreted (Nico Schottelius)

2.3.5: 2013-10-10

  • Core: Unit test fix for remote_copy (Steven Armstrong)
  • Documentation: Updated manpages of __package and __file (Alex Greif)
  • Documentation: Add more examples to cdist-manifest (Dan Levin)
  • Type __package_apt: Do not install recommends by default (Nico Schottelius)

2.3.4: 2013-10-03

  • Core: Add missing bits to support dry run (Steven Armstrong)
  • Core: Make unit test remote copy more compatible with scp (Steven Armstrong)
  • New Type: __postfix (Steven Armstrong)
  • New Type: __postfix_master (Steven Armstrong)
  • New Type: __postfix_postconf (Steven Armstrong)
  • New Type: __postfix_postmap (Steven Armstrong)
  • New Type: __postfix_reload (Steven Armstrong)
  • Type __line: Ensure regex does not contain /
  • Type __ssh_authorized_keys: Bugfix: Preserve ownership (Steven Armstrong)

2.3.3: 2013-09-09

  • Core: Add support for default values of optional parameters (Steven Armstrong)
  • Type __start_on_boot: Bugfix for systemd (Steven Armstrong)

2.3.2: 2013-09-05

  • Build: Ensure tests don't change attributes of non-test files (Nico Schottelius)
  • Core: Fix typo in argument parser (Nico Schottelius)
  • Core: Code cleanup: Remove old install code (Steven Armstrong)
  • Core: Improve error message when using non-existing type in requirement (Nico Schottelius)
  • New Type: __iptables_rule (Nico Schottelius)
  • New Type: __iptables_apply (Nico Schottelius)
  • Type __cdist: Also create home directory (Nico Schottelius)
  • Type __cdist: Add support for --shell parameter (Nico Schottelius)
  • Type __motd: Regenerate motd on Debian and Ubuntu (Nico Schottelius)

2.3.1: 2013-08-28

  • Core: Support relative paths for configuration directories (Nico Schottelius)
  • Core: Code cleanup (removed context class, added log class) (Nico Schottelius)
  • Documentation: Add more best practises (Nico Schottelius)
  • Documentation: Add troubleshooting chapter (Nico Schottelius)
  • Type __key_value: Fix quoting problem (Steven Armstrong)

2.3.0: 2013-08-12

  • Core: Added support for cdist shell (Nico Schottelius)
  • Documentation: Improved some manpages (Nico Schottelius)

2.2.0: 2013-07-12

  • Build: Cleanup the Makefile (Nico Schottelius)
  • Type __package_opkg: Use shortcut version (Nico Schottelius)
  • Core: Remove old pseudo object id "singleton" (Steven Armstrong)

2.1.2: 2013-07-09

  • Build: Change clean-dist target to "distclean" (Nico Schottelius)
  • Build: Moved a lot of build logic into Makefile for dependency resolution
  • Core: Make global explorers available to initial manifest (Arkaitz Jimenez)
  • Core: Change execution order to run object as one unit (Nico Schottelius)
  • Documentation: Improved documentation (Tomáš Pospíšek)
  • New Remote Example: Add support for sudo operations (Chase James)
  • New Type: __update_alternatives (Nico Schottelius)
  • New Type: __cdist (Nico Schottelius)
  • Type __apt_ppa: Fix comparison operator (Tyler Akins)
  • Type __start_on_boot: Archlinux changed to use systemd - adapt type (Nico Schottelius)
  • Type __git: Missing quotes added (Chase James)
  • Type __postgres_database: Make state parameter optional (Chase James)
  • Type __postgres_role: Make state parameter optional, fix password bug (Chase James)
  • Type __process: Make state parameter optional (Nico Schottelius)
  • Type __cron: Simplyfied and syntax change (Nico Schottelius)

2.1.1: 2013-04-08

  • Core: Use dynamic dependency resolver to allow indirect self dependencies (Nico Schottelius)
  • Core: Remove umask call - protect /var/lib/cdist only (Arkaitz Jimenez)
  • Explorer os: Added Slackware support (Eivind Uggedal)
  • Type __git: Support mode and fix owner/group settings (contradict)
  • Type __jail: State absent should implies stopped (Jake Guffey)
  • Type __directory: Make stat call compatible with FreeBSD (Jake Guffey)
  • Type __cron: Allow crontab without entries (Arkaitz Jimenez)
  • Type __user: Add support for creating user home (Arkaitz Jimenez)

2.1.0: 2012-12-09

  • Core: Ensure global explorers are executable (Nico Schottelius)
  • Core: Ensure type explorers are executable (Steven Armstrong)
  • New Type: __git (Nico Schottelius)
  • New Type: __ssh_authorized_keys (Steven Armstrong)
  • New Type: __user_groups (Steven Armstrong)
  • Type __rvm_gemset: Change parameter "default" to be boolean (Nico Schottelius)
  • Type __user: Remove --groups support (now provided by __user_groups)
  • Type __apt_ppa: Bugfix: Installeded ppa detection (Steven Armstrong)
  • Type __jail: Change optional parameter "started" to boolean "stopped" parameter,
    change optional parameter "devfs-enable" to boolean "devfs-disable" parameter and change optional parameter "onboot" to boolean. (Nico Schottelius)
  • Type __package_pip: Bugfix: Installeded the package, not pyro (Nico Schottelius)
  • Remove Type __ssh_authorized_key: Superseeded by __ssh_authorized_keys (Nico Schottelius)
  • Support for CDIST_PATH (Steven Armstrong)

2.1.0pre8: 2012-11-15

  • Type cleanup: __apt_ppa, __apt_ppa_update_index, __file,
    __ssh_authorized_key, __timezone, all install types (Steven Armstrong)
  • Types: Remove all parameter changing code (Nico Schottelius)
  • Type __rvm_ruby: Change parameter "default" to be boolean (Nico Schottelius)
  • Documentation: Web documentation clean up (Nico Schottelius)

2.1.0pre7: 2012-11-07

  • Core: All unit tests restored back to working (Nico Schottelius)
  • Core: Print error message when missing the initial manifest (Nico Schottelius)

2.1.0pre6: 2012-11-05

  • New Example: Turn remote calls into local calls (used for unittesting) (Nico Schottelius)
  • Core: Export PYTHONPATH, it's also needed by emulator (Nico Schottelius)
  • Bugfix Type __rvm_ruby: Add clean package dependencies (Nico Schottelius)
  • Bugfix Type __rvm_gem: Run rvm as user, not as root (Nico Schottelius)
  • Cleanup Type __rvm, __rvm_gemset: Use shortcut version (Nico Schottelius)
  • Bugfix __rvm_gemset: Correctly check for gemsets (Nico Schottelius)
  • Cleanup Type __postgres_database, __postgres_role: Reference each other
    in documentation (Nico Schottelius)
  • Cleanp Type __postgres_role: Use boolean parameters where appropriate (Nico Schottelius)
  • Cleanp Type __postgres_role: Use shortcut version (Nico Schottelius)

2.1.0pre5: 2012-11-01

  • Core: First round of tests updated to work with multiple configuration directories (Nico Schottelius)

2.1.0pre4: 2012-10-31

  • Dist: PyPi: Moved cdist.py to script/cdist to avoid double import (Nico Schottelius)
  • Core: Added support for multiple configuration directories (no documentation) (Nico Schottelius)

2.1.0pre3: 2012-10-30

  • Dist: PyPi: Types and explorer included as package data (Nico Schottelius)

2.1.0pre2: 2012-10-26

  • Dist: PyPi: Add conf/ directory to distribution (Nico Schottelius)
  • Dist: Initial support for archlinux packaging (Nico Schottelius)

2.1.0pre1: 2012-10-26

  • Core: Removed obsolete variable __self (Nico Schottelius)

  • Removed type __addifnosuchline (replaced by __line) (Nico Schottelius)

  • Removed type __removeline (replaced by __line) (Nico Schottelius)

  • Type __directory: Parameter --parents and --recursive are now boolean (Nico Schottelius)

  • Type __package_apt, __package_luarocks, __package_opkg,

    __package_pacman, __package_pkg_freebsd, __package_pkg_openbsd, __package_rubygem, __package_yum, __process:

    Parameter state accepts only "present" and "absent" (Nico Schottelius)

  • Dist: Initial support for pypi packaging (Nico Schottelius)

2.0.15: 2012-11-02

  • Core: Make variable __object_name available in type explorers (Steven Armtrong)
  • New Type: __qemu_img (Nico Schottelius)
  • New Type: __line (Nico Schottelius)
  • New Type: __pf_apply (Jake Guffey)
  • New Type: __pf_ruleset (Jake Guffey)
  • Bugfix Type: __rvm: Make type work if rvm is already installed (Nico Schottelius)

2.0.14: 2012-09-07

  • Bugfix Type: __jail: Use correct variable (Jake Guffey)
  • Change Type: __jail: Parameter jailbase now optional (Jake Guffey)
  • Bugfix Type: __user: Use passwd database on FreeBSD (Jake Guffey)
  • Bugfix Type: __start_on_boot: Do not change parameters (Nico Schottelius)
  • Feature __user: Added support for BSDs (Sébastien Gross)
  • Feature __group: Added support for FreeBSD (Jake Guffey)
  • New Type: __package_zypper (Nico Schottelius)
  • Feature Types: Initial Support for SuSE Linux (Nico Schottelius)

2.0.13: 2012-06-05

  • Bugfix __ssh_authorized_key: Ensure it sets proper group (contradict)
  • Bugfix __addifnosuchline: Fixed quotes/interpolation bug ("a b" became "a b") (Nico Schottelius)
  • New Explorer: interfaces (Sébastien Gross)
  • Feature core: Support reading from stdin in types (Steven Armstrong)
  • Feature core: Support multiple parameters for types (Steven Armstrong)
  • Feature __file: Support reading from stdin with - syntax (Steven Armstrong)

2.0.12: 2012-05-29

  • Core: Correctly raise error on Python < 3.2 (Steven Armtrong)
  • Core: Add support for --remote-exec and --remote-copy parameters (Nico Schottelius)
  • Documentation: Debian Squeeze hints (Sébastien Gross)

2.0.11: 2012-05-23

  • Fix insecure file/directory creation: Use umask 077 (Nico Schottelius)

2.0.10: 2012-05-18

  • Cleanup __group: No getent gshadow in old Redhat, use groupmod -g
    (Matt Coddington)
  • Bugfix __package_yum: Missing cat (Nico Schottelius)
  • Bugfix __start_on_boot: Correctly use sed and quotes (Steven Armstrong)
  • Feature __file: Support for --state exists (Steven Armstrong)
  • Feature core: Make variable __manifest available to type manifests (Nico Schottelius)
  • Feature core: Correct parent dependency handling (Steven Armstrong)
  • Bugfix several types: Fix sed for FreeBSD (Istvan Beregszaszi)
  • New Type: __jail (Jake Guffey)
  • Change Type: __rvm*: --state present/absent not installed/remvoed (Evax Software)
  • Bugfix Type: __cron: Hide error output from crontab (Nico Schottelius)
  • Various smaller bugfixes (Chris Lamb)

2.0.9: 2012-03-12

  • Cleanup documentation: Fix environment variable list to be properly
    displayed (Giel van Schijndel)
  • Cleanup documentation: Some minor corrections
  • New Type: __package_opkg (Giel van Schijndel)
  • New Type: __package_pkg_freebsd (Jake Guffey)
  • New Type: __mysql_database (Benedikt Koeppel)
  • Feature __package: Support for OpenWRT (Giel van Schijndel)
  • Feature __start_on_boot: Support for OpenWRT (Giel van Schijndel)
  • Feature __start_on_boot: Support for Amazon Linux (Matt Coddington)
  • New Example: Use rsync to backup files (Matt Coddington)
  • Feature core: Exit non-zero, if configuration failed (Nico Schottelius)
  • Documentation: Describe how to do templating (Aurélien Bondis)

2.0.8: 2012-02-20

  • Bugfix core: Remove another nasty traceback when sending SIGINT (aka Ctrl-C) (Nico Schottelius)
  • Cleanup: Better hint to source of error (Nico Schottelius)
  • Cleanup: Do not output failing script, but path to script only (Nico Schottelius)
  • Cleanup: Remove support for __debug variable in manifests (Type != Core
    debugging) (Nico Schottelius)
  • Cleanup: Change __package_* to support absent/present (default state
    name now). The values removed/installed will be removed in cdist 2.1. (Nico Schottelius)
  • Cleanup: Change __process to support absent/present (default state
    name now). The values running/stopped will be removed in cdist 2.1. (Nico Schottelius)
  • Feature Core: Support boolean parameters (Steven Armstrong)

2.0.7: 2012-02-13

  • Bugfix __file: Use chmod after chown/chgrp (Matt Coddington)
  • Bugfix __user: Correct shadow field in explorer (Matt Coddington)
  • Bugfix __link: Properly handle existing links (Steven Armstrong)
  • Bugfix __key_value: More robust implementation (Steven Armstrong)
  • Bugfix __user: Fix for changing a user's group by name (Matt Coddington)
  • New Type: __package_pip (Nico Schottelius)
  • Bugfix/Cleanup: Correctly allow Object ID to start and end with /, but
    not contain //. (Nico Schottelius)

2.0.6: 2012-01-28

  • Bugfix __apt_ppa:
    Also remove the [ppa-name].list file, if empty. (Tim Kersten)
  • Bugfix __group:
    Referenced wrong variable name (Matt Coddington)
  • Feature __package_apt:
    Initial support for virtual packages (Evax Software)
  • Feature Core: Added new dependency resolver (Steven Armstrong)
  • Feature Explorer, __package_yum: Support Amazon Linux (Matt Coddington)
  • New Type: __rvm (Evax Software)
  • New Type: __rvm_gem (Evax Software)
  • New Type: __rvm_gemset (Evax Software)
  • New Type: __rvm_ruby (Evax Software)

2.0.5: 2012-01-18

  • Bugfix __key_value: Use correct delimiters
    (Steven Armstrong, Daniel Maher)
  • Cleanup: Explicitly require Python >= 3.2 (do not fail implicitly) (Nico Schottelius)
  • Documentation: (Re)write of the tutorial (Nico Schottelius)
  • Feature: __addifnosuchline supports matching on
    regular expressions (Daniel Maher)
  • Feature: __directory, __file, __link:
    Add --state parameter (Steven Armstrong)
  • New Type: __package_luarocks (Christian G. Warden)
  • New Type: __cdistmarker (Daniel Maher)

2.0.4: 2011-11-18

  • Bugfix core: Remove traceback when sending SIGINT (aka Ctrl-C) (Nico Schottelius)
  • Bugfix core: Accept parameters with - in the name (Steven Armstrong)
  • Cleanup: __object_fq variable removed (never used) (Nico Schottelius)
  • Cleanup: Environment variable __self DEPRECATED, use __object_name instead (Nico Schottelius)
  • Cleanup: Environment variable __self scheduled for removal in cdist 2.1 (Nico Schottelius)
  • Documentation: Many examples for use of __remote_* (Steven Armstrong)
  • Feature: Automatically require all used objects (Steven Armstrong)
  • New Type: __cron (Steven Armstrong)

2.0.3: 2011-10-18

  • Improved logging, added --verbose, by more quiet by default
  • Bugfix __user: Correct quoting (Steven Armstrong)
  • Bugfix __addifnosuchline: Falsely exited (Nico Schottelius)
  • Bugfix requirements: Restore original require="" behaviour (Nico Schottelius)
  • Feature requirements: Check for broken object_ids and abort (Nico Schottelius)
  • Massive refactoring and unittesting introduced (Steven Armstrong)

2.0.2: 2011-09-27

  • Add support for detection of OpenWall Linux (Matthias Teege)
  • Add support for __debug variable in manifests (Nico Schottelius)
  • Bugfix core: Various issues with type emulator (Nico Schottelius)

2.0.1: 2011-09-23

  • Bugfix core: Always print source of error in case of exec errors (Nico Schottelius)
  • Bugfix core: Various smaller bugs in string concatenation (Nico Schottelius)
  • Feature: Add marker "changed" to changed objects (Nico Schottelius)

2.0.0: 2011-09-16

  • New Type: __package_rubygem (Chase Allen James)
  • __self replaced by __object_fq (Nico Schottelius)
  • Rewrote cdist in Python (Nico Schottelius)

1.7.1: 2011-07-26

  • Documentation: Add explorers to reference (Nico Schottelius)
  • Documentation: Typo cleanup (Derek Brost)
  • Type __key_value: Bugfix (Steven Armstrong)
  • New Type: __postgres_role (Steven Armstrong)
  • New Type: __postgres_database (Steven Armstrong)

1.7.0: 2011-05-10

  • Bugfix type __package_yum: Fix redhat support (Ramon Salvadó)
  • Improved type __package_yum: Add centos support (Ramon Salvadó)
  • New Type: __timezone (Ramon Salvadó)
  • Renamed explorer: hardware_type to machine (Nico Schottelius)
  • Core: Do not execute empty code fragments (Nico Schottelius)

1.6.2: 2011-04-19

  • Core: Introduce __cdist_tmp_base_dir (Nico Schottelius)
  • Core: Cleanup and enhance cdist-type-template (Nico Schottelius)
  • Core: cdist-mass-deploy: Report failed cdist-deploy-to instances (Nico Schottelius)
  • New Type: __ssh_authorized_key (Aurélien Bondis)

1.6.1: 2011-04-07

  • Improved logging: Show code responsible for abort (Nico Schottelius)
  • Improved logging: Consistently prefix with current object or core (Nico Schottelius)
  • Bugfix: Type __debconf_set_selections used wrong contens for selection (Nico Schottelius)
  • Bugfix: Don't fail, if cache directory is not existing (Nico Schottelius)
  • Bugfix: __user and __group exited non-zero if no change was necessary (Nico Schottelius)
  • New Explorer: hardware_type (Nico Schottelius)
  • New Type: __package_pkg_openbsd (Andi Brönnimann)
  • New Type: __autofs_map (Steven Armstrong)
  • New Type: __autofs_master (Steven Armstrong)

1.6.0: 2011-04-06

  • New Type: __package_yum (Nico Schottelius)
  • New type: __debconf_set_selections (Nico Schottelius)
  • New explorer: os_version (Nico Schottelius)
  • Bugfix: Type __group failed in case of __group NAME syntax (Nico Schottelius)
  • Bugfix: __package* types: consistently name --state removed instead of
    uninstalled or deinstalled (Nico Schottelius)
  • Type __package: Added Fedora support (Nico Schottelius)
  • Type __package_apt: Removed --preseed support (Nico Schottelius)
  • Explorer os gained Fedora support (Nico Schottelius)
  • Simplified types __user and __group (Nico Schottelius)
  • New helper binary: cdist-mass-deploy (Nico Schottelius)

1.5.0: 2011-04-01

  • Add basic cache functionality (Nico Schottelius)
  • New type: __process (Nico Schottelius)
  • Restructured execution: (Steven Armstrong)
    Orientate processing on objects, resolve dependencies and ensure correct execution order.
  • Documentation: Rewrite stages docs (Steven Armstrong)
  • Documentation: Remove legacy man pages (Steven Armstrong)

1.4.1: 2011-03-25

  • New type: __key_value (Steven Armstrong)
  • New type: __apt_ppa (Steven Armstrong)
  • Documentation: Manpage generation cleanup (Nico Schottelius)
  • Documentation: Manpage fix for __apt_ppa

1.4.0: 2011-03-24

  • Add --recursive to __directory (Nico Schottelius)
  • Move cdist generated stuff to .cdist of an object (Nico Schottelius)
  • Allow objects to be redefined (Nico Schottelius)

1.3.2: 2011-03-21

  • Add --source to __motd (Nico Schottelius)
  • Add --preseed to __package_apt (Nico Schottelius)
  • Include HTML documentation of manpages and publish them (Nico Schottelius)

1.3.1: 2011-03-21

  • Document: cdist-type-build-emulation (Nico Schottelius)
  • Document: cdist-type-emulator (Nico Schottelius)
  • Document: cdist-remote-explorer-run (Nico Schottelius)
  • Fix dependencies in cdist-code-run (Nico Schottelius)
  • Fix dependencies in cdist-manifest-run-all (Nico Schottelius)
  • Add --source to __issue and fix os check (Nico Schottelius)

1.3.0: 2011-03-20

  • Add support for local and remote code generation and execution (Nico Schottelius)
  • Bugfix: Remove obsolete $@ call in cdist-remote-explorer-run (Nico Schottelius)
  • Bugfix: Correct manpage for __removeline (broke manpage generation) (Nico Schottelius)

1.2.0: 2011-03-19

  • Added dependencies (see cdist-type(7)) (Nico Schottelius)
  • New type: __removeline (Daniel Roth)
  • New type: __group (Steven Armstrong)
  • New type: __user (Steven Armstrong)
  • Documentation: cdist-run-remote (Nico Schottelius)
  • Documentation: cdist-code-run-all (Nico Schottelius)
  • Documentation: cdist-object-gencode (Nico Schottelius)
  • Documentation: cdist-explorer-run-global (Nico Schottelius)
  • Documentation: cdist-manifest-run-init (Nico Schottelius)
  • Documentation: cdist-manifest-run-all (Nico Schottelius)
  • Documentation: cdist-object-gencode-all (Nico Schottelius)
  • Documentation: cdist-manifest-run (Nico Schottelius)

1.1.0: 2011-03-16

  • Replace type __file with __file, __directory, __link (Nico Schottelius)
  • Documentation: cdist-env (Nico Schottelius)
  • Documentation: cdist-config (Nico Schottelius)
  • Documentation: cdist-dir (Nico Schottelius)
  • Documentation: cdist-quickstart (Nico Schottelius)

1.0.4: 2011-03-15

  • New type: __motd (Nico Schottelius)
  • New type: __addifnosuchline (Daniel Roth)
  • New type: __user (Nico Schottelius)
  • Document type: __issue (Nico Schottelius)
  • Document type: __package (Nico Schottelius)
  • Document type: __package_pacman (Nico Schottelius)
  • Document type: __package_apt (Nico Schottelius)
  • New parameter for __file: --owner and --group (Nico Schottelius)

1.0.3: 2011-03-11

  • Update regexp used for sane characters (Nico Schottelius)
  • Allow types without parameters (Nico Schottelius)
  • Allow type to be singleton (Nico Schottelius)
  • Type __file learned --type symlink (Nico Schottelius)

1.0.2: 2011-03-09

  • Add manpages: cdist-type, cdist-type__file, cdist-reference, cdist-explorer (Nico Schottelius)
  • Make doc/man/ usable as MANPATH entry (Nico Schottelius)

1.0.1: 2011-03-08

  • Added cdist-type-template including manpage (Nico Schottelius)
  • Fix manpage building (Nico Schottelius)
  • Add new manpages: cdist-stages, cdist-bin-transfer (Nico Schottelius)

1.0.0: 2011-03-07

  • Initial release (Nico Schottelius)