Switch branches/tags
Find file Copy path
2068 lines (1887 sloc) 184 KB

v14.3.45 (2018-07-15)

Merged Pull Requests

  • Remove require json_compat where not used #7472 (tas50)

Changes since 14.3.37 release

Merged Pull Requests

  • Remove require json_compat where not used #7472 (tas50)
  • Improve the error message when knife bootstrap windows isn't installed #7470 (tas50)
  • Move all knife cookbook site plugin logic into knife supermarket #7466 (tas50)
  • Fix duplicated query parameters to resolve Chef::HTTP::Simple regression #7465 (lamont-granquist)
  • Fixing array args in some unix providers #7379 (lamont-granquist)
  • Add knife config get/use-profile commands #7455 (coderanger)
  • Remove require mixlib/shellouts where not necessary #7457 (tas50)
  • Add proper yard deprecated tags on methods #7452 (tas50)
  • [MSYS-843] - Add remove_account_right function to win32/security #7445 (Nimesh-Msys)

v14.3.37 (2018-07-11)

Merged Pull Requests

v14.2.0 (2018-06-07)

Merged Pull Requests

v14.1.12 (2018-05-16)

Merged Pull Requests

  • Remove redundant "?" in knife configure #7235 (alexymik)
  • Switch Node#role? to use the attributes expansion instead of the run list #7234 (coderanger)
  • fix git provider: -prune-tags is not available with old git versions, fixes #7233 #7247 (rmoriz)
  • repo_name property should be part of new_resource object #7252 (tj-anderson)
  • remote_directory: restore overwrite default #7254 (rmoriz)
  • apt_repository: Use the repo_name name property #7244 (tas50)
  • Update Habitat plan to correctly build #6111 (elliott-davis)
  • Update Ohai to 14.1.3 #7258 (tas50)
  • Fix windows_task resource not handling commands with arguments #7250 (Vasu1105)
  • Update win32-taskscheduler gem to fix creating tasks as the SYSTEM user #7265 (tas50)
  • Use some unique task names for windows_task functional tests #7267 (btm)

v14.1.1 (2018-05-08)

Merged Pull Requests

v14.0.202 (2018-04-16)

Merged Pull Requests

v14.0.190 (2018-04-03)

Merged Pull Requests

  • Remove erl_call and deploy resources #6753 (tas50)
  • Remove knife index rebuild command that requires Chef < 11 #6728 (tas50)
  • Remove deprecated -r option for Solo mode #6719 (tas50)
  • Chef 14: Remove deprecated knife ssh csshx command #6444 (tas50)
  • Add dhparam, rsa_private_key and rsa_public_key resources #6736 (tas50)
  • Remove deprecated knife ssh --identity-file option #6445 (tas50)
  • Prevent knife search --id-only from outputting IDs in the same format… #6742 (zanecodes)
  • Remove update-rc.d -n (dryrun) option. #6723 (vinsonlee)
  • Remove unused chef_server_fqdn argument: run_status #6670 (jasonwbarnett)
  • Fixing missing and/or inconsistent quoting in knife search documentation #6607 (andyfeller)
  • add create and delete actions for windows_service #6595 (jasonwbarnett)
  • Convert actions in Chef::Resource::Notification to symbols to prevent double notification #6515 (dimsh99)
  • Revert "add create and delete actions for windows_service" #6763 (lamont-granquist)
  • Rename the OpenSSL mixin to avoid name conflicts #6764 (tas50)
  • Remove node.set and node.set_unless attribute levels #6762 (lamont-granquist)
  • Convert node map to last-writer-wins for ties #6765 (lamont-granquist)
  • [MSYS-727] Added support for setting node policy name and group from knife #6656 (piyushawasthi)
  • Fail on interval runs on windows #6766 (lamont-granquist)
  • Bump to ruby 2.5.0 #6770 (thommay)
  • Fix the changelog for the 13.7 release #6772 (tas50)
  • Revert "Fail on interval runs on windows" #6776 (lamont-granquist)
  • speed up http func tests #6775 (lamont-granquist)
  • Fix regression where message isn't an identity property in log resource #6779 (tas50)
  • update immutable API blacklist and whitelist #6778 (lamont-granquist)
  • Added idempotent checks to windows_task_spec #6761 (NAshwini)
  • [MSYS-724] Chef::Util::Windows::LogonSession should allow having only the prescribed users permissions #6687 (NimishaS)
  • allow uninstall of bundler to fail #6789 (lamont-granquist)
  • fix node assignment of ImmutableArrays to VividMashes/AttrArrays #6790 (lamont-granquist)
  • use a relative link so that docker does not drop our ca bundle link #6796 (thommay)
  • Force the creation of a relative link for cacerts #6798 (thommay)
  • Nillable properties are the default now #6800 (thommay)
  • Remove epic_fail alias to ignore_failure #6801 (tas50)
  • Use attempt or attempts in the retries logging #6802 (tas50)
  • Add MSIFASTINSTALL property, supported by Windows Installer 5.0 #6806 (stuartpreston)
  • Add create, delete and configure actions to windows_service #6804 (jasonwbarnett)
  • Update error handling for "knife status" #3287 #6756 (cramaechi)
  • use a stricter comparison so knife ssh only fails if --exit-on-error #6582 (sarkis)
  • Ensure package (un)locking is idempotent #6494 (Rarian)
  • Fix Appveyor testing: the format of this flametest doesn't matter #6808 (lamont-granquist)
  • Remove the spec for epic_fail #6809 (tas50)
  • Update /etc/fstab on FreeBSD #4959 #6782 (cramaechi)
  • Avoid dpkg prompts for modified config files #6810 (thommay)
  • guard against somehow being called by the package resource #6820 (thommay)
  • Remove testing of Debian 7 as it's going EOL #6826 (tas50)
  • Fix windows_task idle_time validation #6807 (algaut)
  • Grammar fixes in windows_task #6828 (Happycoil)
  • Link to the knife docs when the knife config file is missing #6364 (tas50)
  • Don't rely on the Passwd Ohai plugin in resources #6833 (thommay)
  • Simplify powershell_out calls in powershell_package #6837 (Happycoil)
  • Use the license_scout that comes with Omnibus gem #6839 (tduffield)
  • add additional systemd_unit actions #6835 (nathwill)
  • Implement resource enhancement RFCs #6818 (thommay)
  • invites_sort_fail: Clean the invites array before sorting it #6463 (MarkGibbons)
  • Fix issue #2351, chef-client doesn't make /etc/chef if the directory … #6429 (jseely)
  • [MSYS-726] Allow setting environment variables at the user level #6612 (harikesh-kolekar)
  • RemoteFile: unlink tempfile when using cache control shows unchanged #6822 (lamont-granquist)
  • only run windows env specs on windows #6850 (thommay)
  • add Chef::NodeMap#delete_class API #6846 (lamont-granquist)
  • Use the updated inspec gem - 1.51.18 #6845 (tas50)
  • registry_key: Add sensitive property support for suppressing output (fixes #5695) #6496 (shoekstra)
  • Add hostname resource from chef_hostname cookbook #6795 (tas50)
  • fix ohai tests after require_plugin removal #6867 (thommay)
  • Add new Redhat Subscription Manager resources #6827 (tas50)
  • Add powershell_package source param #6843 (Happycoil)
  • Add ohai_hint resource from ohai cookbook #6793 (tas50)
  • check identifier to resolve exported cookbooks by chef export #6859 (sawanoboly)
  • fix chefstyle #6874 (thommay)
  • make sure all proxy settings are dealt with #6875 (thommay)
  • updating paranoid to verify_host_key #6869 (tarcinil)
  • Add macos_user_defaults resource from mac_os_x cookbook #6878 (tas50)
  • Disable sudo on unit tests #6879 (lamont-granquist)
  • Update libxml2 to 2.9.7 #6885 (tas50)
  • Allow tarballs generated by chef export to be used #6871 (thommay)
  • Add new introduced and description resource properties to many resources #6854 (tas50)
  • The end of our long travis unit testing nightmare #6888 (lamont-granquist)
  • Add chef_handler resource from chef_handler cookbook #6895 (tas50)
  • Modernize macosx_service #6908 (tas50)
  • Modernize mdadm #6905 (tas50)
  • Simplify how we define the powershell_package resource_name #6901 (tas50)
  • revert lazy attributes #6911 (lamont-granquist)
  • Convert parts of cron resource to use properties #6904 (tas50)
  • Add more introduced and description fields to resources #6899 (tas50)
  • surface default guard interpreter errors #5972 (nathwill)
  • Add windows auto_run, font, pagefile, printer, printer_port, and shortcut resources #6767 (tas50)
  • Add description, validation_message, and introduced fields into openssl resources #6855 (tas50)
  • Added Flag to distinguish between gateway and host key to fix issue #6210 #6514 (erikparra)
  • Don't use .eql? in the aix mount provider #6915 (tas50)
  • [knife] Don't crash when a deprecated cookbook has no replacement #6853 (rlyders)
  • Add support for knife bootstrap-preinstall-command #6861 (smcavallo)
  • Raise fatal error If FQDN duplicated #6781 (linyows)
  • Stop mixlib-cli default clobbering mixlib-config settings #6916 (lamont-granquist)
  • fix for master of chefstyle #6919 (lamont-granquist)
  • fixing red omnibus builds #6921 (lamont-granquist)
  • Revert appbundler to 0.10.0 #6922 (lamont-granquist)
  • need to pin appbundler in omnibus #6924 (lamont-granquist)
  • Remove git ref on bundler-audit #6925 (lamont-granquist)
  • this really needs to be turned into a yml file... #6926 (lamont-granquist)
  • Remove the :uninstall action from chocolatey_package - CHEF-21 #6920 (tas50)
  • use appbundler 0.11.1 for omnibus builds #6930 (lamont-granquist)
  • bump appbundler again, again #6931 (lamont-granquist)
  • Allow specifying a comment for routes #6929 (tomdoherty)
  • Update our tests based on new resources we ship #6939 (tas50)
  • Add Ubuntu 18.04 Testing in Travis #6937 (tas50)
  • Apt repo cleanup and testing expansion #6498 (tas50)
  • Use the existing helper method for package resource classes that don't support allow_downgrade #6942 (coderanger)
  • Set properties in git resource using our resource DSL #6902 (tas50)
  • Modernize provides in the portage_package resource #6903 (tas50)
  • registry_key: Properly limit allowed values for architecture #6947 (tas50)
  • Add more description fields, style fixes, add missing requires #6943 (tas50)
  • Add attribute hoisting into core #6927 (jonlives)
  • Don't use supervisor process for one-shot / command-line runs #6914 (lamont-granquist)
  • add a utility to dump info about resources #6896 (thommay)
  • Remove support for Windows 2003 #6923 (tas50)
  • Avoid compile time error in apt_repository #6953 (tas50)
  • Added source_file to FromFile #6938 (zfjagann)
  • remove deprecated property namespace collisions #6952 (lamont-granquist)
  • Remove explicit setting of @provider and depend on ProviderResolver #6958 (jasonwbarnett)
  • Convert more set_or_returns to proper properties #6950 (tas50)
  • Rename bff provider to match its resource #6956 (tas50)
  • New interop between Chef and PowerShell 4.0 (or higher) #6941 (stuartpreston)
  • Remove the manpages #6974 (tas50)
  • RFC 106: expose name and chef_environment as attrs #6967 (thommay)
  • Use node.override not node.normal in the windows_feature_dism resource #6962 (tas50)
  • Remove platfom restrictions in provides and don't require providers #6957 (tas50)
  • Properly validate reboot_action in dsc_resource #6951 (tas50)
  • Don't use in the cron provider #6976 (tas50)
  • Knife should give a useful error when the chef_server_url isn't a chef server API #6253 (jeunito)
  • Bump to ruby 2.5.0 #6838 (thommay)
  • Add output_locations functionality to data collector #6873 (jonlives)
  • Require Ruby 2.4+ #6983 (tas50)
  • Pass pointer to LsaFreeMemory, not FFI::MemoryPointer #6980 (btm)
  • Stripping out Authorization header on redirect to a different host #6985 (bugok)
  • Remove knife help which used the manpages #6982 (tas50)
  • update mount to use properties and fix 6851 #6969 (thommay)
  • Yum refactor #6540 (lamont-granquist)
  • Use Chef omnibus def that includes libarchive #6993 (tas50)
  • Revert "Stripping out Authorization header on redirect to a different host #6996 (tas50)
  • Add the sudo resource from the sudo resource #6979 (tas50)
  • Add more resource descriptions and convert resources to use properties #6994 (tas50)
  • Lazy eval empty Hash/Array resource properties. #6997 (tas50)
  • Detect new "automatically" installed string in Zypper #7009 (tas50)
  • Fail with a warning if users specify apt/yum/zypper repos with slashes #7000 (tas50)
  • Remove Chef 12-isms from the apt_repository resource #6998 (tas50)
  • Add dmg_package, homebrew_cask, and homebrew_tap resources #6963 (tas50)
  • Add missing installed logic for macos in build_essential #7005 (tas50)
  • memoize some work in the package class #6661 (lamont-granquist)
  • Pagefile sizes are in megabytes not bytes #7019 (tas50)
  • Support installing removed windows features from source #7015 (tas50)
  • Save the node's UUID as an attribute #7016 (thommay)
  • rubocop fixes from engine bump to 0.54.0 #7023 (lamont-granquist)
  • remove dead code from property declaration #7025 (lamont-granquist)
  • sudo: Don't fail on FreeBSD. Turns out there's a .d directory #7033 (tas50)
  • Add sysctl_param resource from the sysctl cookbook #7022 (tas50)
  • Suppress nested causes for sensitive exceptions #7032 (thommay)
  • Use the latest libarchive/bzip2 defs in omnibus #7035 (tas50)
  • Add windows_adjoin resource #6981 (tas50)
  • Fix a few bugs in the sudo resource #7038 (tas50)
  • Upgrade to openssl 1.1 #7044 (tas50)
  • Revert "Upgrade to openssl 1.1" #7045 (tas50)
  • Add swap_file resource from the swap cookbook #6990 (tas50)
  • Parser was yanked #7055 (tas50)
  • Ensure that we pass the correct options to mount #7030 (thommay)
  • RFC-102: Deprecation warning in resources #7050 (thommay)
  • Ship InSpec 2 #7051 (thommay)
  • Update information on updating gems / Expeditor #7057 (tas50)
  • Update openssl to 1.0.2o #7075 (tas50)
  • Add / update resource descriptions #7073 (tas50)
  • Sudo resource: specify ruby type for visudo_binary #7076 (brewn)
  • Add Chef 13.8 and 14.0 release notes #7074 (tas50)
  • Fix array parsing in windows_feature_dism / windows_feature_powershell #7078 (tas50)
  • Setting nil to properties with implicit nil sets default value #7037 (lamont-granquist)
  • windows_feature_dism: Be case insensitive with feature names #7079 (tas50)
  • Add basic hostname validation on Windows #7087 (tas50)
  • [windows_ad_join] add description for :join action #7082 (brewn)
  • [windows_font] get rid of "remove" in description #7089 (brewn)
  • Fix method missing error in dmg_package #7091 (tas50)
  • Avoid lookups for rights of 'LocalSystem' in windows service #7083 (btm)
  • macos_userdefaults: Fix 2 failures #7095 (tas50)
  • Bump Ruby to 2.5.1 #7090 (tas50)
  • homebrew_tap / homebrew_cask: Fix compile time errors with the user mixin #7097 (tas50)
  • scrub tempfile names #7104 (lamont-granquist)
  • Address possible gem installs between interval runs that are then used in the config #7106 (coderanger)
  • Bring in the windows_feature_powershell improvements from the cookbook #7098 (tas50)
  • Stripping Authorization header upon redirects (second try) #7006 (bugok)
  • [CHEF-7026] Rewrite portage package provider candidate_version determination and fix tests #7027 (gengor)
  • Don't fail on every hostname with windows #7107 (tas50)
  • [windows_printer_port] fix typo + add action descriptions #7093 (brewn)

v13.8.3 (2018-03-05)

Merged Pull Requests

  • Link to the knife.rb docs when the knife.rb file is missing #6892 (tas50)
  • Revert "Revert "fixup some unit tests"" #6912 (lamont-granquist)
  • Bump depenencies to pull in Ohai 13.8 / InSpec 1.51.21 #6934 (tas50)

v13.8.0 (2018-02-27)

Merged Pull Requests

  • Fix regression where message isn't an identity property in log resource #6780 (tas50)
  • fix node assignment of ImmutableArrays to VividMashes/AttrArrays (Chef-13 backport) #6791 (lamont-granquist)
  • Ensure that we create a docker compatible ca-certs symlink #6799 (thommay)
  • Backport the powershell spec fix to get Appveyor green again #6813 (tas50)
  • Use the version of LicenseScout that comes with the Omnibus gem. #6841 (tduffield)
  • RemoteFile: unlink tempfile when using cache control shows unchanged (Chef-13 backport) #6849 (lamont-granquist)
  • add Chef::NodeMap#delete_class API (Chef 13 backport) #6848 (lamont-granquist)
  • Fix windows_task idle_time validation #6856 (tas50)
  • Update libxml2 to 2.9.7 #6886 (tas50)
  • use a stricter comparison so knife ssh only fails if --exit-on-error #6894 (tas50)
  • Prevent knife search --id-only from outputting IDs in the same format as an empty hash #6893 (tas50)
  • Chef-13 revert lazy attributes #6898 (lamont-granquist)

v13.7.16 (2018-01-23)

Merged Pull Requests

  • Update release notes for 13.7 #6751 (thommay)
  • Revert deprecation of use_inline_resources #6754 (tas50)
  • fix double-logging bug #6752 (lamont-granquist)
  • Add a warning that Chef 11 server support in knife user is deprecated #6725 (tas50)
  • fix non-daemonized umask #6745 (lamont-granquist)
  • simplify node_map logic #6637 (lamont-granquist)
  • Fix knife status to show seconds when needed #5055 #6738 (cramaechi)
  • Enable the deprecation for use_inline_resource #6732 (tas50)
  • Fix dscl group provider gid_used? #6703 (get9)
  • Fix windows_task resource not being idempotent for random_delay and execution_time_limit #6688 (Vasu1105)
  • Update to Ruby 2.4.3 #6737 (tas50)
  • DSCL: Check for set home property before file existence (fixes #5777) #6735 (get9)
  • Modernize windows_path resource #6699 (tas50)
  • Don't check both platform_family / os in provides when platform_family will do #6711 (tas50)
  • Update the knife editor error message to point to the correct document #6726 (tas50)
  • Remove a useless regex in zypper_repository resource #6710 (tas50)
  • Deprecate erl_call resource #6720 (tas50)
  • Improve property warnings in resources #6717 (tas50)
  • Remove lock files and test github masters in Kitchen Tests #6709 (tas50)
  • [MSYS-692] Fix issue with PowerShell function buffer #6664 (TheLunaticScripter)
  • Escape single-quoted strings from the context in knife bootstrap #6695 (aespinosa)
  • Allow injecting tempfiles into Chef::HTTP #6701 (lamont-granquist)
  • Modernize launchd resource #6698 (tas50)
  • Add an 's' for quantity of 0 cookbooks. #6552 (anoadragon453)
  • Fix yum_repository allowing priority of 0 and remove string regexes #6697 (tas50)
  • Add descriptions and yard @since comments to all resources #6696 (tas50)
  • Cleanup to some of the resource specs #6692 (tas50)
  • fix for data bag names partially matching search reserved words #6652 (sandratiffin)
  • Modernize directory resource #6693 (tas50)
  • Modernize the ifconfig resource #6684 (tas50)
  • Slight improvements to validation failures #6690 (thommay)
  • Modernize osx_profile resource #6685 (tas50)
  • Modernize cookbook_file resource and expand specs #6689 (tas50)
  • implement credential management #6660 (thommay)
  • Modernize reboot resource and add spec #6683 (tas50)
  • Fix bugs in handling 'source' in msu_package and cab_package #6686 (tas50)
  • Move docker and git top cookbook tests to travis #6673 (scotthain)
  • Modernize the log resource #6676 (tas50)
  • Avoid a few initializers in resources by using the DSL we have #6671 (tas50)
  • Don't use .match? which is Ruby 2.4+ only in windows_task #6675 (tas50)
  • windows_task: Fix resource isn't fully idempotent due to command property #6654 (Vasu1105)
  • Invalid date error on windows_task with frequency :on_logon #6618 (NimishaS)
  • Fix sneaky chefstyle violations #6655 (thommay)
  • Ensure data bags names can contain reserved words #6636 (EmFl)
  • windows_task: Add additional input validation to properties #6628 (tas50)
  • Solaris: Fix svcadm clear to only run in maintenance state #6631 (jaymalasinha)
  • speedup node_map get and set operations #6632 (lamont-granquist)
  • Update for openssl 1.0.2n and inspec 1.48 #6630 (tas50)
  • Improved windows_task logging #6617 (tas50)
  • Update InSpec to 1.47 and Ohai to 13.7 #6616 (tas50)
  • Add openSUSE testing in Travis & expand cookbooks we test #6614 (tas50)
  • Knife SSH prefix option #6590 (mal)
  • Add Amazon Linux testing to PRs in Travis #6611 (tas50)
  • Hide sensitive properties in converge_if_changed. #6576 (cma-arnold)
  • Bump dependencies to pick up InSpec v1.46.2 #6609 (adamleff)
  • Fix windows_path converging on every run #6541 (tas50)
  • add unit_name name_property to systemd_unit (fixes #6542) #6546 (nathwill)
  • fix NodeMap to not throw exceptions on platform_versions #6608 (lamont-granquist)
  • Enable Fedora integration testing in Travis #6523 (tas50)
  • Only warn if a secret was actually given #6605 (coderanger)
  • Makes life easier for hook authors switching from the older report handler syntax #6574 (coderanger)
  • [MSYS-688] Fixed invalid date and Invalid starttime error #6544 (NimishaS)
  • Selinux shellout fix (#6346) #6567 (deltamualpha)
  • Switch from the Travis container to the VM #6600 (btm)
  • Don't try to uninstall bundler on appveyor #6597 (btm)
  • Fix variable name in solaris service provider #6596 (jaymalasinha)
  • Revert "add missing functional tests for users" #6588 (lamont-granquist)
  • Filter out periods from tmux session name #6593 (afn)
  • Fix mount test, also update ifconfig to work with both common versions. #6587 (scotthain)
  • Change a useradd_spec test for RHEL >= 6.8 and >= 7.3 #6555 (jeremiahsnapp)
  • replace deprecated Dir.exists? with Dir.exist? #6583 (thomasdziedzic)
  • Add ohai_time to minimal_ohai filter #6584 (btm)

v13.6.4 (2017-11-06)

Merged Pull Requests

v13.6.0 (2017-10-30)

Merged Pull Requests

v13.5.3 (2017-10-03)

Merged Pull Requests

  • Fix password property is sensitive for mount resource #6442 (dimsh99)
  • Only accept MM/DD/YYYY for windows_task start_day #6434 (jaym)
  • Update dependencies to pull in InSpec v1.39.1 #6440 (adamleff)
  • Fix Knife search ID only option to actually filter result set #6438 (dimsh99)
  • Add throttle and metalink options to yum_repository #6431 (tas50)
  • Don't catch SIGCHLD from #6416 (nemith)
  • Open apt resources up to prevent breaking change #6417 (tas50)
  • Remove unused requires in yum_repository #6413 (tas50)
  • Quiet the output of the zypper refresh and add force #6408 (tas50)
  • Replace which apt-get check with simple debian check in apt resources #6409 (tas50)

v12.21.14 (2017-09-27)

v13.4.24 (2017-09-14)

Merged Pull Requests

v13.4.19 (2017-09-13)

Bug Fixes

  • Ignore validation errors in Resource#to_text #6331 (coderanger)
  • Auto import gpg keys in zypper_repository #6348 (tas50)
  • Handle apple's git in the git resource #6359 (kzw)
  • Launchd should not load launchagents as root. #6353 (mikedodge04)
  • Pass json configuration to ShellSession class #6314 (btm)

Merged Pull Requests

v13.3.42 (2017-08-16)

Merged Pull Requests

v13.3.27 (2017-07-26)

Full Changelog

v13.0.118 (2017-04-12)

  • Fix Gems won't install on Windows with Chef 13
  • Fix yum_package options option broken in Chef 13
  • Fix cookbooks uploaded by Chef 13 can't be used by Chef 12
  • Update Ohai to 13.0.1 to fix the OpenStack and Eucalyptus plugins

v13.0.113 (2017-04-06)

  • Use Ohai 13.0
  • Add new server enforced required recipe feature
  • shell_out PATH fixes and path_sanity changes
  • Remove magic from the logger/formatter settings
  • Add new windows_task resource
  • Better solution to gem_package source issues
  • Remove the knife cookbook create command in favor of Chef-DK
  • Remove need to define use_inline_resources and always enable inline resources
  • RFC 59 - Load ohai plugins
  • Use new lzma lib
  • Have knife cookbook generate use SPDX standard license strings
  • Implement RFC033: Root aliases
  • Ensure DataBagItems are a Mash
  • Add InSpec to chef omnibus builds
  • Remove knife cookbook site vendor
  • Make Standardized Exit Codes The Default Behavior
  • Tweaks to rubygems source option for urls
  • Allow lazy{} to be used in template resource variables.
  • Freeze property defaults
  • fix knife ssh --exit-on-error
  • Add -u param to usermod in linux_user resource when using non_unique
  • Launchd limit_load_to_session_type accepts Array or String
  • Remove the consts for DSL-based resources/providers
  • Add real support for rb files (at least roles) in knife-serve
  • Adding restart action to launchd resource
  • systemd_unit verifier escape hatch
  • Ensure we check all required fields
  • V2 Cookbook Manifests
  • Fix and simplify rake bundle:* commands
  • Expand the system info displayed on error to give us some more data to work with when helping users
  • Add policy_name and policy_group indexes to converge message sent to ...
  • Turn on zypper gpg checks by default
  • Knife search exit 1 when no results
  • Remove deprecated knife subcommand APIs
  • Coerce package options property to an Array
  • Fix cookbook gem installer
  • Remove iconv from the chef build
  • Remove deprecated Chef::ResourceResolver.resource API
  • Fix notifying array resources
  • Remove deprecated run_command API entirely
  • Apply knife search node fuzzifier to knife ssh
  • Remove Chef::Resource.updated=
  • Remove deprecated launchd resource hash property
  • Remove more deprecated method_missing access
  • Support nameless resources and remove deprecated multi-arg resources
  • bumping acceptance gems
  • Set default guard_interpreter to powershell_script on Windows
  • Remove more deprecated provider_resolver code
  • Make ActionClass a class
  • Don't include nokogiri gem as it doesn't compile on Windows right now
  • Retry API requests if using an unsupported version
  • Bump _XOPEN_SOURCE to 600 for ruby 2.4 on Solaris
  • Upgrade Ruby to the 2.4.1 release
  • Fix action class weirdness in Chef-13
  • Make ResourceReporter smarter to get resource identity and state
  • Don't rescue Exception in retryable resources
  • Simplify DSL creation
  • Remove deprecated Chef::Client attrs
  • Remove method_missing from the DSL
  • Remove support for the sort option to searches.
  • smf_recursive_dependencies: Allow solaris services to start recursively.
  • Fix for creating users in non english windows machines
  • Remove node_map back-compat
  • Fix chef-shell option name and help message
  • Remove Chef::ShellOut
  • Remove deprecated run_context methods
  • Remove old platform mapping code
  • Remove the old rake tasks
  • Properly use chef-shell in SoloSession by deprecating old behavior into SoloLegacySession
  • Raise on properties redefining inherited methods
  • Optimize cheffs
  • Remove Chef::REST
  • Fix node#debug_value access through arrays
  • Nillable properties
  • Freeze merged node attribute
  • Properly deep dup Node#to_hash
  • Add release policy badge to README
  • Remove the deprecated easy_install resource
  • Remove declare_resource create_if_missing API
  • Kill JSON auto inflate with fire
  • Remove method_missing access to node object.
  • Cleanup of Chef::Resource
  • Add attribute blacklist
  • Enable why-run by default in resources
  • Ensure that there are no pesky // in our paths
  • Compress debs and rpms with xz
  • Fix apt_repository for Ubuntu 16.10+
  • Remove all Chef 11 era deprecations
  • Remove partial_search methods
  • Use v3 data bag encryption
  • Remove %{file} from verify interpolation
  • Revert "Remove all 11 era deprecations"
  • Convert additional resource methods to properties
  • Remove backcompat classes
  • Remove provisioning from the downstream tests
  • Remove supports API from Chef::Resource
  • Be a bit less keen to help properties
  • Add an option for gateway_identity_file that will allow key-based authentication on the gateway.
  • Mac: Validate that a machine has a computer level profile
  • Verify data bag exists before trying to create it in knife
  • Remove resource cloning and 3694 warnings
  • HTTP: add debug long for non-JSON response

v12.21.4 (2017-08-14)

Full Changelog

Fixed bugs:

  • Backport #5941 (Make ResourceReporter smarter to get resource identity and state) #6308

Tech cleanup:

  • Bump omnibus-software to fix early Rubygems segfaults on Windows #6329
  • Upgrade Ruby from 2.3.1 to 2.3.4
  • Upgrade libiconv from 1.14 to 1.15
  • Upgrade Rubygems from 2.6.10 to 2.6.12

v12.21.3 (2017-06-23)

Full Changelog

Fixed bugs:

  • Properly send expanded run list event for policy file nodes #6229 / #6233

v12.21.1 (2017-06-20)

Full Changelog

  • Handle the supports pseudo-property more gracefully #6222 (coderanger)
  • Provide better system information when Chef crashes #6173 (coderanger)
  • On Debian based systems, correctly prefer Systemd to Upstart #6157 (shortdudey123)
  • Don't crash if we downgrade from Chef 13 to Chef 12 #6129 (akitada)
  • Update zlib to 1.2.11 to resolve CVEs #6219 (thommay)
  • Update Ohai to 8.24 with improved EC2 metadata handling, dmi code fixes, and scala/lua detection fixes

v12.20.3 (2017-04-30)

  • Add the ability to define a server enforced required recipe#6032(sdelano)
  • Fix apt_repository key fingerprint for Ubuntu 16.10+
  • Verify if a databag exists before we try to create it with knife
  • Bump json, winrm, plist, and net-ssh gems to the latest #6106 (rhass)

v12.19.36 (2017-02-23)

  • Use shellsplit for apt_package options #5838 (mivok)

v12.19.33 (2017-02-16)

Full Changelog

v12.18.31 (2017-01-11)

Full Changelog

Implemented enhancements:

Fixed bugs:

Merged pull requests:

v12.17.44 (2016-12-07)

Full Changelog

Implemented enhancements:

  • Action :umount for mount resource is an obtuse anachronism #5595
  • Core: Update ohai resource to new style, stop overwriting name property #5607 (adamleff)
  • Linux: mount provider - skip device detection for zfs #5603 (ttr)
  • Core: Ensure chef-solo creates node files w/ correct permissions #5601 (scottopherson)
  • Resources: Add unmount as an alias to umount in the mount resource #5599 (shortdudey123)
  • Core: Update Data Collector to use Chef::JSONCompat #5590 (adamleff)
  • Knife: Add ability to pass multiple nodes to knife node/client delete #5572 (jeunito)
  • Core: Data Collector debug log should output JSON #5570 (adamleff)
  • Yum: Purge yum cache before deleting repo config #5509 (iancward)
  • Knife Bootstrap: Passing config_log_level and config_log_location from config.rb #5502 (dheerajd-msys)

Fixed bugs:

  • Custom Resources: Undefined method up_to_date thrown by Chef 12.16.42 #5593
  • Core: Ensure deprecation messages are always included #5618 (thommay)
  • Core: Fix bug where Access Controls on existing symlink resources would be ignored on first chef-client run #5616 (tduffield)
  • The suggested fix for the manage_home deprecation is incorrect #5615 (tas50)
  • change choco -version to choco --version #5613 (spuder)
  • Knife: Correct example chef\_server\_url in knife configure #5602 (jerryaldrichiii)
  • Windows: Ensure correct version of shutdown is called when using the reboot resource #5596 (Xoph)
  • Windows: Support for running cab_package on non-English system locales #5591 (jugatsu)
  • Core: Ensure Data Collector resource report exists before updating #5571 (adamleff)
  • Windows: Use the full path to expand.exe for msu_package #5564 (NimishaS)
  • Unset http[s]_proxy in the subversion spec #5562 (stefanor)
  • Core: fix Lint/UnifiedInteger cop #5547 (lamont-granquist)
  • Core: fix ImmutableArray slices #5541 (lamont-granquist)
  • Prevent apt_update failures on non-Linux platforms #5524 (tas50)
  • Core: Ensure that the sensitive property is correctly accessed #5508 (axos88)

Closed issues:

  • cab_package doesn't support running on non-English system locales #5592
  • Support restarting/stopping/ the service from state paused on windows #5586

v12.16.42 (2016-11-04)

Full Changelog

Implemented enhancements:

  • Core: improve readability of property-resource namespace collision exception message #5500 (lamont-granquist)
  • Omnibus: Pull in Ohai 8.21.0 and other new deps #5499 (tas50)
  • Core: Add deprecations to Data Collector run completion messages #5496 (adamleff)
  • Core: add attribute_changed hook to event handlers #5495 (lamont-granquist)
  • Knife: Add the --field-separator flag to knife show commands #5489 (tduffield)
  • Core: Enable Signed Header Auth for Data Collector, and Configure the Data Collector Automatically #5487 (danielsdeleo)
  • Core: set use_inline_resources in package superclass #5483 (lamont-granquist)
  • Package: Add new "lock" action for apt, yum and zypper packages #5395 (yeoldegrove)

Fixed bugs:

  • Enable data collector w/o token for solo, but require explicit URL #5511 (danielsdeleo)
  • Core: Include chef/chef_class in Chef::REST for method log_deprecation #5504 (smalltown)
  • Knife: Updating knife ssl fetch to correctly store certificate when it does not have a CN #5498 (tyler-ball)
  • Knife: Fixed knife download cookbooks issue which used to corrupt the certificate files each time the command was fired. #5494 (Aliasgar16)
  • Solaris: Properly check lock status of users on solaris2 #5486 (tduffield)
  • Solaris: Fix IPS package must create symlinks to package commands #5485 (jaymalasinha)

v12.15.19 (2016-10-07)

Full Changelog


  • Adding support for rfc 62 exit code 213 (Chef upgrades) #5428 (jeremymv2)
  • Allow raw_key to override the configured signing_key #5314 (thommay)
  • Set yum_repository gpgcheck default to true #5398 (shortdudey123)
  • Allow deletion of registry_key without the need for users to pass data key in values hash. #5359 (Aliasgar16)
  • Adding support for cab files to Chef package provider on windows #5285 (Vasu1105)
  • Ignore unknown metadata fields in metadata.rb #5299 (lamont-granquist)

Fixed Bugs:

v12.14.89 (2016-09-22)

Full Changelog

Fixed Bugs:

  • Revert "Verify systemd_unit file during create" #5326 (mwrock)
  • Fix method_access and array handling in node presenter #5351 (lamont-granquist)
  • Fixed undefined short_cksum method issue and checksum in uppercase issue for windows_package resource. #5332 (Aliasgar16)
  • Fix makecache action name in yum_repository #5348 (tas50)

v12.14.77 (2016-09-19)

Full Changelog

Fixed Bugs:

v12.14.60 (2016-09-09)

Full Changelog


Fixed Bugs:

v12.13.37 (2016-08-12)

Full Changelog


v12.13.30 (2016-08-05)

Full Changelog


Fixed Bugs:

v12.12.15 (2016-07-08)

Full Changelog

Fixed Bugs:

v12.12.13 (2016-07-01)

Full Changelog

Implemented Enhancements:

Fixed Bugs:

  • Fixes windows_package uninstall scenarios by calling uninstall string directly #5050 (mwrock)
  • Fix gem_package idempotency #5046 (thommay)
  • Undefined local variable lookup in multiplexed_dir.rb #5027 (robdimarco)
  • Correctly write out data collector metadata file #5019 (adamleff)
  • Eliminate missing constant errors for LWRP class #5000 (PrajaktaPurohit)
  • Updated_resource_count to data collector should only include updated resources #5006 (adamleff)
  • Don't mask directory deletion errors #4991 (jaymzh)

v12.11.18 (2016-06-02)

Full Changelog

Implemented Enhancements:

Fixed Bugs:

v12.10.24 (2016-04-27)

Full Changelog

Fixed Bugs:

  • Removing non-existent members from group should not fail #4812 (chefsalim)
  • The easy_install provider and resource are deprecated and will be removed in Chef 13 #4860 (coderanger)

Tech cleanup:

  • Refactor ChefFS files to be files #4837 (thommay)
  • Rename and add backcompat requires for ChefFS dirs #4830 (thommay)
  • Refactor ChefFS directories to be directories #4826 (thommay)
  • Move all ChefFS exceptions into a single file #4822 (thommay)


v12.9 (2016-04-09)

Full Changelog

Implemented enhancements:

  • Sftp remote file support #4750 (jkerry)
  • Setting init_command should be accepted instead of specific command overrides #4709 (coderanger)
  • Add a NoOp provider #4798 (thommay)
  • Add ability to notify from inside LWRP to wrapping resource_collections #4017
  • Notifications from LWRPS/sub-resources can trigger resources in outer run_context scopes #4741 (lamont-granquist)
  • Improve the docs generated by knife cookbook create #4757 (tas50)
  • Need Config/CLI options to move interval+splay sleep to end of client loop #3305
  • Add optional integer argument for --daemonize option #4759 (jrunning)
  • Add shorthand :syslog and :win_evt for log_location config #4751 (jrunning)

Fixed bugs:

  • chef_gem and gem metadata don't play well #4710
  • Fix cookbook metadata 'gem' command to make it useful #4809 (lamont-granquist)
  • Convert timeout config to integer #4787 (chefsalim)
  • The mount resource is not idempotent on windows #3861
  • fix for #4715 - unset TMPDIR in homebrew package provider #4716 (gips0n)
  • tons of "Deprecation class overwrites LWRP resource" WARNING SPAM with chefspec #4668

Merged pull requests:

Closed issues:

  • Uploading an encrypted data bag to Chef server fails #4815
  • powershell_script does not have PSCredential capability #4589
  • Documentation don't include how to setup mail server during deployment of Chef server #4807
  • Resource 'mount' and chef 12.5.1 #4056
  • Incorrect $TMPDIR environment variable on OS X #4715
  • group provider on suse Linux adds user multiple times #4689
  • Unexpected error when using "knife cookbook show ...." #4659

12.8.1 (2016-03-07)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Chef::DataBagItem.to_hash is modifying Chef::DataBagItem.raw_data #4614
  • Chef 12 seeing a ton of these in debug mode #2396
  • Data bag item hash can have name key #4664 (chefsalim)
  • Clearer exception for loading non-existent data bag items in solo mode. #4655 (coderanger)
  • Always rehash from gem source and not existing hash file #4651 (tyler-ball)
  • Handle negative content length headers too. #4646 (coderanger)
  • if no module name is found for a valid dsc resource default to PSDesiredStateConfiguration #4638 (mwrock)
  • removing disabling of readline in chef-shell #4635 (mwrock)
  • Fix a bug that was causing DataBagItem.to_hash to mutate the data bag item #4631 (itmustbejj)
  • ensure paths maintain utf-8ness in non ascii encodings #4626 (mwrock)
  • Fix the Chocolatey-missing error again #4621 (randomcamel)
  • fixes exe package downloads #4612 (mwrock)
  • fallback to netmsg.dll error table if error message is not found in system errors #4600 (mwrock)
  • zypper multipackage performance fix #4591 (lamont-granquist)
  • bugfix #2865 check for validation_key #4581 (thommay)
  • remove bogus recalculation of cookbook upload failures #4580 (thommay)
  • Make sure we have a valid object before calling close! #4579 (thommay)
  • Fix policyfile_zero provisioner in 12.7 #4571 (andy-dufour)
  • do not include source parameter when removing a chocolatey package and ensure source is used on all functional tests #4570 (mwrock)
  • Fix databag globbing issues for chef-solo on windows #4569 (jaym)
  • remove Chef::Mixin::Command use #4566 (lamont-granquist)


  • pr#4559 Remove learnchef acceptance tests until we make them more reliable
  • pr#4545 Removing rm -rf in chef-solo recipe_url


  • Daniel Steen

    • pr#3183 Provide more helpful error message when accidentally using --secret instead of --secret-file
  • pr#4532 Bump Bundler + Rubygems

  • pr#4550 Use a streaming request to download cookbook


  • Nate Walck

    • pr#4078 Add osx_profile resource for OS X
  • Timothy Cyrus

    • pr#4420 Update code climate badge and code climate blocks in
  • Jordan Running

    • pr#4399 Correctly save policy_name and policy_group with knife node edit
  • Brian Goad

    • pr#4315 Add extra tests around whether to skip with multiple guards
  • pr#4516 Return propper error messages when using windows based mount, user and group resources

  • pr#4500 Explicitly declare directory permissions of chef install on windows to restrict rights on Windows client versions

  • pr#4498 Correct major and minor OS versions for Windows 10 and add versions for Windows 2016 Server

  • pr#4375 No longer try to auto discover package version of exe based windows packages

  • pr#4369 Import omnibus-chef chef project definition and history

  • pr#4399 Correctly save policy_name and policy_group with knife node edit

  • pr#4278 make file resource use properties

  • pr#4479 Remove incorrect cookbook artifact normalization

  • pr#4470 Fix sh spacing issues

  • pr#4434 adds EOFError message to handlers

  • pr#4422 Add an apt_update resource

  • pr#4287 Default Chef with FIPS OpenSSL to use sign v1.3

  • pr#4461 debian-6 is EOL next month

  • pr#4460 Set range of system user/group id to max of 200

  • pr#4231 zypper multipackage patch

  • pr#4459 use require_paths and not path so bundler grabs all paths from a git reference

  • pr#4450 don't warn about ambiguous property usage

  • pr#4445 Add CBGB to the repository

  • pr#4423 Add deprecation warnings to Chef::REST and all json_creates

  • pr#4439 Sometimes chocolately doesn't appear on the path

  • pr#4432 add get_rest etc calls to ServerAPI

  • pr#4435 add nokogiri to omnibus-chef

  • pr#4419 explicitly adding .bat to service executable called by service in case users remove .bat from PATHEXT

  • pr#4413 configure chef client windows service to the correct chef directory

  • pr#4377 fixing candidate filtering and adding functional tests for chocolatey_package

  • pr#4406 Updating to the latest release of net-ssh to consume

  • pr#4405 ServerAPI will return a raw hash, so do that

  • pr#4400 inflate an environment after loading it

  • pr#4396 Remove duplicate initialization of @password in user_v1

  • pr#4344 Warn (v. info) when reloading resources

  • pr#4369 Migrate omnibus-chef project/software definitions for chef in here

  • pr#4106 add chocolatey_package to core chef

  • pr#4321 fix run_as_user of windows_service

  • pr#4333 no longer wait on node search to refresh vault but pass created ApiCient instead

  • pr#4325 Pin win32-eventlog to 0.6.3 to avoid clashing CreateEvent definition

  • pr#4312 Updates the template to use

  • pr#4277 non msi packages must explicitly provide a source attribute on install

  • pr#4309 tags always an array; fix set_unless

  • pr#4278 make file resource use properties

  • pr#4288 Fix no_proxy setting in chef-config

  • pr#4273 Use signing protocol 1.1 by default

  • pr#4520 Fix a few dsc_resource bugs


  • Dave Eddy pr#3187 overhaul solaris SMF service provider

  • Mikhail Zholobov

    • pr#3192 provider/user/dscl: Set default gid to 20
    • pr#3193 provider/user/dscl: Set "comment" default value
  • Jordan Evans

    • pr#3263 value_for_platform should use Chef::VersionConstraint::Platform
    • pr#3633 add the word group to converge_by call for group provider
  • Scott McGillivray pr#3450 Fix 'knife cookbook show' to work on root files

  • Aubrey Holland pr#3986 fix errors when files go away during chown

  • James Michael DuPont pr#3973 better error reporting

  • Michael Pereira pr#3968 Fix cookbook installation from supermarket on windows

  • Yukihiko SAWANOBORI

    • pr#3941 allow reboot by reboot resource with chef-apply
    • pr#3900 Add new option json attributes file to bootstraping
  • permyakovsv pr#3901 Add tmux-split parameter to knife ssh

  • Evan Gilman pr#3864 Knife bootstrap_environment should use Explicit config before Implicit

  • Ranjib Dey pr#3834 Dont spit out stdout and stderr for execute resource failure, if its declared sensitive

  • Jeff Blaine

    • pr#3776 Changes --hide-healthy to --hide-by-mins MINS
    • pr#3848 Migrate to --ssh-identity-file instead of --identity-file
  • dbresson pr#3650 Define == for node objects

  • Patrick Connolly pr#3529 Allow user@hostname format for knife-bootstrap

  • Justin Seubert pr#4160 Correcting regex for upstart_state

  • Sarah Michaelson pr#3810 GH-1909 Add validation for chef_server_url

  • Maxime Brugidou pr#4052 Add make_child_entry in ChefFS CookbookSubdir

  • Nathan Williams pr#3836 simplify service helpers

  • Paul Welch pr#4066 Fix chef-apply usage banner

  • Mat Schaffer pr#4153 Require ShellOut before Knife::SSH definition

  • Donald Guy pr#4158 Allow named_run_list to be loaded from config

  • Jos Backus pr#4064 Ensure that tags are properly initialized

  • John Bellone pr#4101 Adds alias method upgrade_package for solaris package

  • Nolan Davidson pr#4014 Adding ksh resource

  • pr#4193 support for inno, nsis, wise and installshield installer types in windows_package resource

  • pr#4196 multipackage dpkg_package and bonus fixes

  • pr#4185 dpkg provider cleanup

  • pr#4165 Multipackage internal API improvements

  • pr#4081 RFC-037: add chef_version and ohai_version metadata

  • pr#3530 Allow using --sudo option with user's home folder in knife bootstrap

  • pr#3858 Remove duplicate 'Accept' header in spec

  • pr#3911 Avoid subclassing

  • pr#3990 Use SHA256 instead of MD5 for registry_key when data is not displayable

  • pr#4034 add optional ruby-profiling with --profile-ruby

  • pr#3119 allow removing user, even if their GID isn't resolvable

  • pr#4068 update messaging from LWRP to Custom Resource in logging and spec

  • pr#4021 add missing requires for Chef::DSL::Recipe to LWRPBase

  • pr#3597 print STDOUT from the powershell_script

  • pr#4091 Allow downloading of root_files in a chef repository

  • pr#4112 Update knife bootstrap command to honor --no-color flag in chef-client run that is part of the bootstrap process.

  • pr#4090 Improve detection of ChefFS-based commands in knife rehash

  • pr#3991 Modify remote_file cache_control_data to use sha256 for its name

  • pr#4079 add logger to windows service shellout

  • pr#3966 Report expanded run list json tree to reporting

  • pr#4080 Make property modules possible

  • pr#4069 Improvements to log messages

  • pr#4049 Add gemspec files to allow bundler to run from the gem

  • pr#4029 Fix search result pagination

  • pr#4048 Accept coercion as a way to accept nil values

  • pr#4046 ignore gid in the user resource on windows

  • pr#4118 Make Property.derive create derived properties of the same type

  • pr#4133 Add retries to Chef::HTTP for transient SSL errors

  • pr#4135 Windows service uses log file location from config if none is given on commandline

  • pr#4142 Use the proper python interpretor for on Fedora 21

  • pr#4149 Handle nil run list option in knife bootstrap

  • pr#4040 Implement live streaming for execute resources

  • pr#4167 Add reboot_action to dsc_resource

  • pr#4167 Allow dsc_resource to run with the LCM enabled

  • pr#4188 Update dsc_resource to use verbose stream output

  • pr#4200 Prevent inspect of PsCredential from printing out plain text password

  • pr#4237 Enabling 'knife ssl check/fetch' commands to respect proxy environment variables and moving proxy environment variables export to Chef::Config


  • Ranjib Dey: pr#3588 Count skipped resources among total resources in doc formatter

  • John Kerry: pr#3539 Fix issue: registry_key resource is case sensitive in chef but not on windows

  • David Eddy:

    • pr#3443 remove extraneous space
    • pr#3091 fix locking/unlocking users on SmartOS
  • margueritepd: pr#3693 Interpolate %{path} in verify command

  • Jeremy Fleischman: pr#3383 gem_package should install to the systemwide Ruby when using ChefDK

  • Stefano Rivera: pr#3657 fix upstart status_commands

  • ABE Satoru: pr#3764 uniquify chef_repo_path

  • Renan Vicente: pr#3771 add depth property for deploy resource

  • James Belchamber: pr#1796: make mount options aware

  • Nate Walck:

    • pr#3594: Update service provider for OSX 10.11
    • pr#3704: Add SIP (OS X 10.11) support
  • Phil Dibowitz: pr#3805 LWRP parameter validators should use truthiness

  • Igor Shpakov: pr#3743 speed improvement for remote_directory resource

  • James FitzGibbon: pr#3027 Add warnings to 'knife node run list remove ...'

  • Backslasher: pr#3172 Migrated deploy resource to use shell_out instead of run_command

  • Sean Walberg: pr#3190 Allow tags to be set on a node during bootstrap

  • ckaushik and Sam Dunne: pr#3510 Fix broken rendering of partial templates.

  • Simon Detheridge: pr#3806 Replace output_of_command with shell_out! in subversion provider

  • Joel Handwell: pr#3821 Human friendly elapsed time in log

  • pr#3985 Simplify the regex which determines the rpm version to resolve issue #3671

  • pr#3928 Add named run list support when using policyfiles

  • pr#3913 Add policy_nameand policy_group fields to the node object

  • pr#3875 Patch Win32::Registry#delete_key, #delete_value to use wide (W) APIs

  • pr#3850 Patch Win32::Registry#write to fix encoding errors

  • pr#3837 refactor remote_directory provider for mem+perf improvement

  • pr#3799 fix supports hash issues in service providers

  • pr#3797 Fix dsc_script spec failure on 64-bit Ruby

  • pr#3817 Remove now-useless forcing of ruby Garbage Collector run

  • pr#3775 Enable 64-bit support for Powershell and Batch scripts

  • pr#3774 Add support for yum-deprecated in yum provider

  • pr#3793 CHEF-5372: Support specific run_levels for RedHat service

  • pr#2460 add privacy flag

  • pr#1259 CHEF-5012: add methods for template breadcrumbs

  • pr#3656 remove use of self.provides?

  • pr#3455 powershell_script: do not allow suppression of syntax errors

  • pr#3519 The wording seemed odd.

  • pr#3208 Missing require (require what you use).

  • pr#3449 correcting minor typo in user_edit knife action

  • pr#3572 Use windows paths without case-sensitivity.

  • pr#3666 Support SNI in knife ssl check.

  • pr#3667 Change chef service to start as 'Automatic delayed start'.

  • pr#3683 Correct Windows reboot command to delay in minutes, per the property.

  • pr#3698 Add ability to specify dependencies in chef-service-manager.

  • pr#3728 Rewrite NetLocalGroup things to use FFI

  • pr#3754 Fix functional tests for group resource - fix #3728

  • pr#3498 Use dpkg-deb directly rather than regex

  • pr#3759 Repair service convergence test on AIX

  • pr#3329 Use ifconfig target property

  • pr#3652 Fix explanation for configuring audit mode in client.rb

  • pr#3687 Add formatter and force-logger/formatter options to chef-apply

  • pr#3768 Make reboot_pending? look for CBS RebootPending

  • pr#3815 Fix powershell_script validation to use correct architecture

  • pr#3772 Add ps_credential dsl method to dsc_script

  • pr#3462 Fix issue where ps_credential does not work over winrm


  • Noah Kantrowitz: pr#3605 Rework Resource#action to match 12.3 API

  • pr#3586 Fix bug preventing light weight resources from being used with heavy weight providers

  • Issue #3593 Fix bug where provider priority map did not take into consideration a provided block

  • pr#3630 Restore Chef::User and Chef::ApiClient namespace to API V0 functionality and move new functionality into Chef::UserV1 and Chef::ApiClientV1 until Chef 13.

  • pr#3611 Call provides? even if provides is not called

  • pr#3589 Fix errant bashisms

  • pr#3620 Fix issue where recipe names in run list mutate when version constaints are present

  • pr#3623 Allow LWRPs to access the real class when accessed through Chef::Resource and Chef::Provider

  • pr#3627 Separate priority map and DSL handler map so that provides has veto power over priority

  • pr#3638 Deprecate passing more than 1 argument to create a resource


  • Phil Dibowitz: Fix multipackage and architectures

  • Igor Shpakov: Always run exception handlers Prioritise manual ssh attribute over automatic ones for knife

  • Noah Kantrowitz: Cache service_resource_providers for the duration of the run. #2953

  • Slava Kardakov: Fix installation of yum packages with version constraints #3155

  • Dave Eddy: fix smartos_package for new "pkgin" output, fixes #3112 #3165

  • Yukihiko SAWANOBORI: Show Chef version on chef shell prompt

  • Jacob Minshall: Ensure suid bit is preserved if group or owner changes

  • Tim Smith: Convert wiki links to point to

  • SAWANOBORI Yukihiko: Add Chef::Log::Syslog class for integrating sending logs to syslog

  • Pavel Yudin: Ensure LWRP and HWRP @action variable is consistent #3156

  • Dan Bjorge: Fix bad Windows securable_resource functional spec assumptions for default file owners/groups #3266

  • Yukihiko SAWANOBORI: Pass name by knife cil attribute pr#3195

  • Torben Knerr: Allow knife sub-command loader to match platform specific gems. pr#3281

  • Steve Lowe: Fix copying ntfs dacl and sacl when they are nil. pr#3066

  • pr#3339: Powershell command wrappers to make argument passing to knife/chef-client etc. easier.

  • pr#3720: Extract chef's configuration to a separate gem. Code stays in the Chef git repo.

  • pr#3321: Add an integration test of chef-client with empty ENV.

  • pr#3278: Switch over Windows builds to universal builds.

  • pr#2877: Convert bootstrap template to use sh.

  • Issue #3316: Fix idempotency issues with the windows_package resource

  • pr#3295: Stop mutating new_resource.checksum in file providers. Fixes some ChecksumMismatch exceptions like issue#3168

  • pr#3320: Sanitize non-UTF8 characters in the node data before doing Works around many UTF8 exception issues reported on

  • Implemented X-Ops-Server-API-Version with a API version of 0, as well as error handling when the Chef server does not support the API version that the client supports.

  • pr#3327: Fix unreliable AIX service group parsing mechanism.

  • pr#3333: Fix SSL errors when connecting to private Supermarkets

  • pr#3340: Allow Event dispatch subscribers to be inspected.

  • Issue #3055: Fix regex parsing for recipe failures on Windows

  • pr#3345: Windows Event log logger

  • pr#3336: Remote file understands UNC paths

  • pr#3269: Deprecate automatic recipe DSL for classes in Chef::Resource

  • pr#3360: Add check_resource_semantics! lifecycle method to provider

  • pr#3344: Rewrite Windows user resouce code to use ffi instead of win32-api

  • pr#3318: Modify Windows package provider to allow for url source

  • pr#3381: warn on cookbook self-deps

  • pr#2312: fix node[:recipes] duplication, add node[:cookbooks] and node[:expanded_run_list]

  • pr#3325: enforce passing a node name with validatorless bootstrapping

  • pr#3398: Allow spaces in files for the remote_file resource

  • Issue #3010 Fixed knife user for use with current and future versions of Chef Server 12, with continued backwards compatible support for use with Open Source Server 11.

  • pr#3438 Server API V1 support. Vast improvements to and testing expansion for Chef::User, Chef::ApiClient, and related knife commands. Deprecated Open Source Server 11 user support to the Chef::OscUser and knife osc_user namespace, but with backwards compatible support via knife user.

  • Issue #2247: powershell_script returns 0 for scripts with syntax errors

  • pr#3080: Issue 2247: powershell_script exit status should be nonzero for syntax errors

  • pr#3441: Add powershell_out mixin to core chef

  • pr#3448: Fix dsc_resource to work with wmf5 april preview

  • pr#3392: Comment up Chef::Client and privatize/deprecate unused things

  • pr#3419: Fix cli issue with chef_repo_path when ENV variable is unset

  • pr#3358: Separate audit and converge failures

  • pr#3431: Fix backups on windows for the file resource

  • pr#3397: Validate owner exists in directory resources

  • pr#3418: Add shell_out mixin to Chef::Resource class for use in not_if/only_if conditionals, etc.

  • pr#3406: Add wide-char 'Environment' to broadcast_env_change mixin for setting windows environment variables

  • pr#3442: Add resource_name to top-level Resource class to make defining resources easier.

  • pr#3447: Add allowed_actions and default_action to top-level Resource class.

  • pr#3475: Fix shell_out timeouts in all package providers to respect timeout property on the resource.

  • pr#3477: Update zypper_package to look like the rest of our package classes.

  • pr#3483: Allow include_recipe from LWRP providers.

  • pr#3495: Make resource name automatically determined from class name, and provide DSL for it.

  • pr#3497: Issue 3485: Corruption of node's run_context when non-default guard_interpreter is evaluated

  • pr#3299: Remove experimental warning on audit mode


  • pr#3160: Use Chef Zero in socketless mode for local mode, add --no-listen flag to disable port binding

  • Nolan Davidson: Removed after_created and added test to recipe_spec

  • Tim Sogard: Reset $HOME to user running chef-client when running via sudo

  • Torben Knerr: Allow for the chef gem installation to succeed without elevated privileges #3126

  • Mike Dodge MacOSX services: Load LaunchAgents as console user, adding plist and session_type options.

  • Eric Herot Ensure knife ssh doesn't use a non-existant field for hostname #3131

  • Tom Hughes Ensure searches progress in the face of incomplete responses #3135

  • pr#3162: Add --minimal-ohai flag to client/solo/apply; restricts ohai to only the bare minimum of plugins.

  • Ensure link's path attribute works with delayed #3130

  • gem_package, chef_gem should not shell out to using #2867

  • Add dynamic resource resolution similar to dynamic provider resolution

  • Add Chef class fascade to internal structures

  • Fix nil pointer for windows event logger #3200

  • Use partial search for knife status

  • Ensure chef/knife properly honours proxy config


  • Issue 3153: Fix bug where unset HOME would cause chef to crash


  • Update policyfile API usage to match forthcoming Chef Server release
  • knife ssh now has an --exit-on-error option that allows users to fail-fast rather than moving on to the next machine.
  • migrate macosx, windows, openbsd, and netbsd resources to dynamic resolution
  • migrate cron and mdadm resources to dynamic resolution
  • Issue 3096 Fix OpenBSD package provider installation issues
  • New dsc_resource resource to invoke Powershell DSC resources


  • Issue 3022: Homebrew Cask install fails FIXME (remove on 12.2.0 release): 3022 was only merged to 12-stable and #3077 or its descendant should fix this
  • Issue 3059: Chef 12.1.1 yum_package silently fails
  • Issue 3078: Compat break in audit-mode changes



Chef Contributions

  • ruby 1.9.3 support is dropped
  • Update Chef to use RSpec 3.2
  • Cleaned up script and execute provider + specs
  • Added deprecation warnings around the use of command attribute in script resources
  • Audit mode feature added - see the RELEASE_NOTES for details
  • shell_out now sets LANGUAGE and LANG to the Chef::Config[:internal_locale] in addition to LC_ALL forcing
  • chef_gem supports a compile_time flag and will warn if it is not set (behavior will change in the future)
  • suppress CHEF-3694 warnings on the most trivial resource cloning
  • fixed bugs in the deep_merge_cache logic introduced in 12.0.0 around node['foo'] vs node[:foo] vs.
  • add include_recipe "::recipe" sugar to reference a recipe in the current cookbook
  • Add --proxy-auth option to knife raw
  • added Chef::Org model class for Chef Organizations in Chef 12 Server
  • powershell_script should now correctly get the exit code for scripts that it runs. See Issue 2348
  • Useradd functional tests fail randomly
  • Add comments to trusted_certs_content
  • fixes a bug where providers would not get defined if a top-level ruby constant with the same name was already defined (ark cookbook, chrome cookbook)
  • Fix a bug in reboot, ips_package, paludis_package, windows_package resources where action :nothing was not permitted
  • Use Chef::ApiClient#from_hash in knife client create to avoid json_class requirement. Issue 2542
  • Add support for policyfile native API (preview). These APIs are unstable, and you may be forced to delete data uploaded to them in a future release, so only use them for demonstration purposes.
  • Deprecation warning for 'knife cookbook test'
  • dsc_script should now correctly honor timeout. See Issue 2831
  • Added an imports attribute to dsc_script. This attribute allows you to specify DSC resources that need to be imported for your script.
  • Fixed error where guard resources (using :guard_interpreter) were not ran in why_run mode Issue 2694
  • Add verify method to File resource per RFC027
  • Move to
  • Check with AccessCheck for permission to write to directory on Windows
  • Add declare_resource/build_resource comments, fix faulty ||=
  • Knife bootstrap creates a client and ships it to the node to implement validatorless bootstraps
  • Knife bootstrap can use the client it creates to setup chef-vault items for the node
  • windows service now has a configurable timeout



  • Issue 2578 Check that installed is not empty for keg_only formula in Homebrew provider
  • Issue 2609 Resolve the circular dependency between ProviderResolver and Resource.
  • Issue 2596 Fix nodes not writing to disk
  • Issue 2580 Make sure the relative paths are preserved when using link resource.
  • Pull 2630 Improve knife's SSL error messaging
  • Issue 2606 chef 12 ignores default_release for apt_package
  • Issue 2602 Fix subscribes resource notifications.
  • Issue 2578 Check that installed is not empty for keg_only formula in Homebrew provider.
  • gh2k: Issue 2625 Fix missing shell_out! for windows_package resource
  • BackSlasher: Issue 2634 Fix option ':command' is not a valid option error in subversion provider.
  • Seth Vargo: Issue 2345 Allow knife to install cookbooks with metadata.json.


  • Issue 2552 Create constant for LWRP before calling provides
  • Issue 2545 path attribute of execute resource is restored to provide backwards compatibility with Chef 11.
  • Issue 2565 Fix Chef::Knife::Core::BootstrapContext constructor for knife-windows compat.
  • Issue 2566 Make sure Client doesn't raise error when interval is set on Windows.
  • Issue 2560 Fix uninitialized constant Windows::Constants in windows_eventlog.
  • Issue 2563 Make sure the Chef Client rpm packages are signed with GPG keys correctly.


  • Jesse Hu: retry on HTTP 50X Error when calling Chef REST API
  • Nolan Davidson: The chef-apply command now prints usage information when called without arguments
  • Kazuki Saito: CHEF-4933: idempotency fixes for ifconfig provider
  • Kirill Shirinkin: The knife bootstrap command expands the path of the secret-file
  • Malte Swart: [CHEF-4101] DeepMerge - support overwriting hash values with nil
  • James Belchamber: Mount provider remount action now honours options
  • Mark Gibbons: Fix noauto support in Solaris Mount Provider
  • Jordan Evans: support version constraints in value_for_platform
  • Yukihiko Sawanobori: Add environment resource attribute to scm resources
  • Grzesiek Kolodziejczyk: Use thread-safe OpenSSL::Digest instead of Digest
  • Grzesiek Kolodziejczyk: Chef::Digester converted to thread-safe Singleton mixin.
  • Vasiliy Tolstov: Reload systemd service only if it's running, otherwise start.
  • Chris Jerdonek: knife diagnostic messages sent to stdout instead of stderr
  • Xabier de Zuazo: Remove the unused StreamingCookbookUploader class (CHEF-4586)
  • Jacob Vosmaer: Fix creation of non-empty FreeBSD groups (#1698)
  • Nathan Huff: Check local repository for ips package installs (#1703)
  • Sean Clemmer: Fix "cron" resource handling of special strings (e.g. @reboot, @yearly) (#1708)
  • Phil Dibowitz: 'group' provider on OSX properly uses 'dscl' to determine existing groups
  • Hugo Lopes Tavares: Catch StandardError in Chef::ResourceReporter#post_reporting_data (Issue 1550).
  • Daniel O'Connor: Fix regex causing DuplicateRole error (Issue 1739).
  • Xeron: Ability to specify an array for data_bag_path. (CHEF-3399, CHEF-4753)
  • Jordan: Use Systemd for recent Fedora and RHEL 7.
  • Xabier de Zuazo: Encrypted data bags should use different HMAC key and include the IV in the HMAC (CHEF-5356).
  • Pierre Ynard: Don't modify variable passed to env resource when updating.
  • Chris Aumann: Add "force" attribute to resource/user, pass "-f" to userdel. (Issue 1601)
  • Brian Cobb: Chef::VersionConstraint#to_s should accurately reflect constraint's behavior.
  • Kevin Graham: Do not override ShellOut:live_stream if already set.
  • Mike Heijmans: Change knife option --force to --delete-validators. (Issue 1652)
  • Pavel Yudin: Add Parallels Cloud Server (PCS) platform support.
  • tbe: Minor fixes for the Paludis package provider:
    • only search for non-masked packages,
    • increase command timeout length for package installation.
  • sawanoboly: Use shared_path for deploy resource.
  • Victor Hahn: Add template syntax check to files in the templates/ dir only.
  • Jordan: Allow git provider to checkout existing branch names.
  • Eric Herot: Add whitespace boundaries to some mount point references in mount provider.
  • Dave Eddy: Improve the regex for /etc/rc.conf for the FreeBSD service provider
  • Stanislav Bogatyrev: Fetch recipe_url before loading json_attribs in chef-solo (CHEF-5075)
  • Mal Graty: Workaround for a breaking change in git's shallow-clone behavior. (Issue 1563)
  • Dave Eddy: Fix version detection in FreeBSD pkgng provider. (PR 1980)
  • Dan Rathbone: Fixed gem_package resource to be able to upgrade gems when version is not set.
  • Jean Mertz: Made Chef Client load library folder recursively.
  • Eric Saxby: Made Chef Client read the non-root crontab entries as the user specified in the resource.
  • sawanoboly: Added --dry-run option to knife cookbook site share which displays the files that are to be uploaded to Supermarket.
  • Sander van Harmelen: Fixed Chef::HTTP to be able to follow relative redirects.
  • Cory Stephenson: Fixed FreeBSD port package provider to interpret FreeBSD version 10 correctly.
  • Brett Chalupa: Added source_url and issues_url options to metadata to be used by Supermarket.
  • Anshul Sharma: Fixed Chef Client to use the :client_name instead of :node_name during initial client registration.
  • tbe: Fixed Paludis package provider to be able to interpret the package category.
  • David Workman: Added a more clear error message to chef-apply when no recipe is given.
  • Joe Nuspl: Added support for sensitive property to the execute resource.
  • Nolan Davidson: Added an error message to prevent unintentional running of exec() in recipes.
  • wacky612: Fixed a bug in pacman package provider that was preventing the installation of bind package.
  • Ionuț Arțăriși: Changed the default service provider to systemd on SLES versions 12 and higher.
  • Ionuț Arțăriși: Changed the default group provider to gpasswd on SLES versions 12 and higher.
  • Noah Kantrowitz: Implemented RFC017 - File Specificity Overhaul.
  • James Bence: Improved the reliability of Git provider by making it to be more specific when selecting tags.
  • Jean Mertz: Changed knife upload not to validate the ruby files under files & templates directories.
  • Alex Pop: Made knife cookbook create to display the directory of the cookbook that is being created.
  • Alex Pop: Fixed the information debug output for the configuration file being used when running knife.
  • Martin Smith: Changed knife cookbook site share to make category an optional parameter when uploading cookbooks. It is still required when the cookbook is being uploaded for the first time but on the consequent uploads existing category of the cookbook will be used.
  • Nicolas DUPEUX: Added JSON output to knife status command. --medium and --long output formatting parameters are now supported in knife status.
  • Trevor North: Removed dead code from knife ssh.
  • Nicolas Szalay: Fixed a bug preventing mounting of cgroup type devices in the mount provider.
  • Anshul Sharma: Fixed inconsistent globbing in knife from file command.
  • Nicolas Szalay: Made user prompts in knife more beautiful by adding a space after Y/N prompts.
  • Ivan Larionov: Made empty run_list to produce an empty array when using node.to_hash.
  • Siddheshwar More: Fixed a bug in knife bootstrap that caused config options to override command line options.
  • Thiago Oliveira: Fixed a bug in Mac OSX group provider and made it idempotent.
  • liseki: Fixed a bug in why-run mode for freebsd service resources without configured init scripts.
  • liseki: Fixed a bug in freebsd service providers to load the status correctly.

Chef Contributions

  • ruby 1.9.3 support is dropped
  • Added RFC-023 Chef 12 Attribute Changes (
  • Added os/platform_family options to provides syntax on the Chef::Resource DSL
  • Added provides methods to the Chef::Provider DSL
  • Added supported?(resource, action) class method to all Providers for late-evaluation if a provider can handle a resource
  • Added ProviderResolver feature to handle late resolution of providers based on what kinds of support is in the base operating system.
  • Partial Deprecation of Chef::Platform provider mapping. The static mapping will be removed as Chef-12 progresses and the hooks will be completely dropped in Chef-13.
  • Default guard_interpreter for powershell_script resource set to :powershell_script, for batch to :batch
  • Recipe definition now returns the retval of the definition
  • Add support for Windows 10 to version helper.
  • dsc_script resource should honor configuration parameters when configuration_data_script is not set (Issue #2209)
  • Ruby has been updated to 2.1.3 along with rubygems update to 2.4.2
  • Removed shelling out to erubis/ruby for syntax checks (>= 1.9 has been able to do this in the ruby vm itself for awhile now and we've dropped 1.8.7 which could not do this and had to shell_out)
  • Report the request and response when a non-200 error code happens
  • [FEATURE] Upgrade knife upload and knife download to download everything in an organization, now including the organization definition itself (knife download /org.json) and the invitations and member list (knife download /invitations.json and knife download /members.json). Should be compatible with knife-ec-backup.
  • Make default Windows paths more backslashy
  • knife now prefers to load config.rb in preference to knife.rb; knife.rb will be used if config.rb is not found.
  • Fixed Config[:cache_path] to use path_join()
  • Updated chef-zero to 3.0, so that client tests can be run against Enterprise Chef as well as Open Source.
  • knife cookbook site download/list/search/share/show/unshare now uses urls
  • added Chef::ResourceCollection#insert_at API to the ResourceCollection
  • http_proxy and related config vars no longer clobber already set ENV vars
  • all http_proxy configs now set lowercase + uppercase versions of ENV vars
  • https_proxy/ftp_proxy support setting http:// URLs (and whatever mix and match makes sense)
  • End-to-end tests for Ubuntu 12.04
  • Only run end-to-end tests when secure environment variables are present.
  • Remove recipe DSL from base provisioner (Issue 1446).
  • Enable client-side key generation by default. (Issue 1711)
  • CookbookSiteStreamingUploader now uses ssl_verify_mode config option (Issue 1518).
  • chef/json_compat now throws its own exceptions not JSON gem exceptions
  • Modify action for env raises Chef::Exceptions::Env exception on Windows (Chef Issues 1754)
  • Fix a bug in the experimental Policyfile mode that caused errors when using templates.
  • Disable JSON encoding of request body when non-JSON content type is specified.
  • Clean up FileVendor and CookbookUploader internal APIs
  • log resource now marks itself as supporting why-run
  • http_request no longer appends "?message=" query string to GET and HEAD requests
  • added shell_out commands directly to the recipe DSL
  • cookbook synchronizer deletes old files from cookbooks
  • do not clear file cache when override run list is set (CHEF-3684)
  • ruby 1.8.7/1.9.1/1.9.2 support is dropped
  • set no_lazy_load to true (CHEF-4961)
  • set file_stating_uses_destdir config option default to true (CHEF-5040)
  • remove dependency on rest-client gem
  • Add method shell_out_with_systems_locale to ShellOut.
  • chef-repo rake tasks are deprecated; print relevant information for each one.
  • Fix RPM package version detection (Issue 1554)
  • Don't override :default provider map if :default passed as platform (OC-11667).
  • Fix SuSE package removal failure (Issue 1732).
  • Enable Travis to run Test Kitchen with Kitchen EC2.
  • Fix a bug in reporting not to post negative duration values.
  • Add password setting support for Mac 10.7, 10.8 and 10.9 to the dscl user provider.
  • ChefSpec can find freebsd_package resource correctly when a package resource is declared on Freebsd.
  • Autodetect/decrypt encrypted data bag items with data_bag_item dsl method. (Issue 1837, Issue 1849)
  • windows_user: look up username instead of resource name (Issue #1705)
  • Remove the unused bootstrap templates that install chef from rubygems
  • Remove the Chef 10 functionality from bootstrap.
  • Deprecate --distro / --template_file options in favor of --boostrap-template
  • Add :node_ssl_verify_mode & :node_verify_api_cert options to bootstrap to be able to configure these settings on the bootstrapped node.
  • Add partial_search dsl method to Chef::Search::Query, add result filtering to search.
  • Transfer trusted certificates under :trusted_certs_dir during bootstrap.
  • Set :ssl_verify_mode to :verify_peer by default.
  • Add homebrew provider for package resource, use it by default on OS X (Issue #1709)
  • Add escape_glob method to PathHelper, update glob operations.
  • Verify x509 properties of certificates in the :trusted_certs_dir during knife ssl check.
  • Disable unforked interval chef-client runs.
  • Removed dependencies on the 'json' gem, replaced with ffi-yajl. Use Chef::JSONCompat library for parsing and printing.
  • Restore the deprecation logic of #valid_actions in LWRPs until Chef 13.
  • Now that we don't allow unforked chef-client interval runs, remove the reloading of previously defined LWRPs.
  • Use shell_out to determine Chef::Config[:internal_locale], fix CentOS locale detection bug.
  • only_if and not_if attributes of execute resource now inherits the parent resource's attributes when set to a String.
  • Retain the original value of retries for resources and display the original value when the run fails.
  • Added service provider for AIX.
  • The Windows env provider will delete elements even if they are only in ENV (and not in the registry)
  • Allow events to be logged to Windows Event Log
  • Fixed bug in env resource where a value containing the delimiter could never correctly match the existing values
  • More intelligent service check for systemd on Ubuntu 14.10.


  • Windows omnibus installer security updates for redistributed bash.exe / sh.exe vulnerabilities ("Shellshock") CVE-2014-6271, CVE-2014-6271, CVE-2014-6278, CVE-2014-7186, CVE-2014-7187.
  • Fix bug on Windows where using the env resource on path could render the path unusable.
  • Chef Client now retries when it gets 50X from Chef Server.
  • Chef Client 11.16.4 can use the policyfiles generated with Chef DK 0.3.0.



  • Fix a bug in user dscl provider to enable managing password and other properties at the same time.
  • Add dsc_script resource to Chef for PowerShell DSC support on Windows


  • Modify action for env raises Chef::Exceptions::Env exception on Windows (Chef Issues 1754)
  • Fix RPM package version detection (Issue 1554)
  • Fix a bug in reporting not to post negative duration values.
  • Add password setting support for Mac 10.7, 10.8 and 10.9 to the dscl user provider.
  • ChefSpec can find freebsd_package resource correctly when a package resource is declared on Freebsd.
  • http_proxy and related config vars no longer clobber already set ENV vars
  • all http_proxy configs now set lowercase + uppercase versions of ENV vars
  • https_proxy/ftp_proxy support setting http:// URLs (and whatever mix and match makes sense)


  • Jess Mink: Symlinks to directories should be swingable on windows (CHEF-3960)

  • Phil Dibowitz: SIGTERM will once-more kill a non-daemonized chef-client (CHEF-5172)

  • Pierre Ynard: chef-service-manager should run as a non-interactive service (CHEF-5150)

  • Tensibai Zhaoying: Fix file:// URI support in remote_file on windows (CHEF-4472)

  • John Dyer: Catch HTTPServerException for 404 in remote_file retry (CHEF-5116)

  • Pavel Yudin: Providers are now set correctly on CloudLinux. (CHEF-5182)

  • Joe Richards: Made -E option to work with single lettered environments. (CHEF-3075)

  • Jimmy McCrory: Added a 'knife node environment set' command. (CHEF-1910)

  • Hongbin Lu: Made bootstrap report authentication exceptions. (CHEF-5161)

  • Richard Manyanza: Made freebsd_package resource use the brand new "pkgng" package manager when available.(CHEF-4637)

  • Nikhil Benesch: Implemented a threaded download queue for synchronizing cookbooks. (CHEF-4423)

  • Chulki Lee: Raise an error when source is accidentally passed to apt_package (CHEF-5113)

  • Cam Cope: Add an open_timeout when opening an http connection (CHEF-5152)

  • Sander van Harmelen: Allow environment variables set on Windows to be used immediately (CHEF-5174)

  • Luke Amdor: Add an option to configure the chef-zero port (CHEF-5228)

  • Ricardo Signes: Added support for the usermod provider on OmniOS

  • Anand Suresh: Only modify password when one has been specified. (CHEF-5327)

  • Stephan Renatus: Add exception when JSON parsing fails. (CHEF-5309)

  • Xabier de Zuazo: OK to exclude space in dependencies in metadata.rb. (CHEF-4298)

  • Łukasz Jagiełło: Allow cookbook names with leading underscores. (CHEF-4562)

  • Michael Bernstein: Add Code Climate badge to README.

  • Phil Sturgeon: Documentation that -E is not respected by knife ssh [search]. (CHEF-4778)

  • Stephan Renatus: Fix resource_spec.rb.

  • Sander van Harmelen: Ensure URI compliant urls. (CHEF-5261)

  • Robby Dyer: Correctly detect when rpm_package does not exist in upgrade action. (CHEF-5273)

  • Sergey Sergeev: Hide sensitive data output on chef-client error (CHEF-5098)

  • Mark Vanderwiel: Add config option :yum-lock-timeout for

  • Peter Fern: Convert APT package resource to use provides :package, add timeout parameter.

  • Xabier de Zuazo: Fix Chef::User#list API error when inflate=true. (CHEF-5328)

  • Raphaël Valyi: Use git resource status checking to reduce shell_out system calls.

  • Eric Krupnik: Added .project to git ignore list.

  • Ryan Cragun: Support override_runlist CLI option in shef/chef-shell. (CHEF-5314)

  • Cam Cope: Fix updating user passwords on Solaris. (CHEF-5247)

  • Ben Somers: Enable storage of roles in subdirectories for chef-solo. (CHEF-4193)

  • Robert Tarrall: Fix Upstart provider with parameters. (CHEF-5265)

  • Klaas Jan Wierenga: Don't pass on default HTTP port(80) in Host header. (CHEF-5355)

  • MarkGibbons: Allow for undefined solaris services in the service resource. (CHEF-5347)

  • Allan Espinosa: Properly knife bootstrap on ArchLinux. (CHEF-5366)

  • Matt Hoyle: Made windows service resource to handle transitory states. (CHEF-5319, CHEF-4791)

  • Brett cave: Add Dir.pwd as fallback for default user_home if home directory is not set. (CHEF-5365)

  • Caleb Tennis: Add support for automatically using the Systemd service provider when available. (CHEF-3637)

  • Matt Hoyle: Add timeout for Chef::Provider::Service::Windows. (CHEF-1165)

  • Jesse Hu: knife[:attribute] in knife.rb should not override --attribute (CHEF-5158)

  • Vasiliy Tolstov: Added the initial exherbo linux support for Chef providers.

  • Fix knife cookbook site share on windows (CHEF-4994)

  • YAJL Allows Invalid JSON File Sending To The Server (CHEF-4899)

  • YAJL Silently Ingesting Invalid JSON and "Normalizing" Incorrectly (CHEF-4565)

  • Update rpm provider checking regex to allow for special characters (CHEF-4893)

  • Allow for spaces in selinux controlled directories (CHEF-5095)

  • Windows batch resource run action fails: " TypeError: can't convert nil into String" (CHEF-5287)

  • Log resource always triggers notifications (CHEF-4028)

  • Prevent tracing? from throwing an exception when first starting chef-shell.

  • Use Upstart provider on Ubuntu 13.10+. (CHEF-5276)

  • Cleaned up mount provider superclass

  • Added "knife serve" to bring up local mode as a server

  • Print nested LWRPs with indentation in doc formatter output

  • Make local mode stable enough to run chef-pedant

  • Wrap code in block context when syntax checking so return is valid (CHEF-5199)

  • Quote git resource rev_pattern to prevent glob matching files (CHEF-4940)

  • User resource now only prints the name during why-run runs. (CHEF-5180)

  • Set --run-lock-timeout to wait/bail if another client has the runlock (CHEF-5074)

  • remote_file's source attribute does not support DelayedEvaluators (CHEF-5162)

  • option attribute of mount resource now supports lazy evaluation. (CHEF-5163)

  • force_unlink now only unlinks if the file already exists. (CHEF-5015)

  • chef_gem resource now uses omnibus gem binary. (CHEF-5092)

  • chef-full template gets knife options to override install script url, add wget/curl cli options, and custom install commands (CHEF-4697)

  • knife now bootstraps node with the latest current version of chef-client. (CHEF-4911)

  • Add config options for attribute whitelisting in (CHEF-3811)

  • Use user's .chef as a fallback cache path if /var/chef is not accessible. (CHEF-5259)

  • Fixed Ruby 2.0 Windows compatibility issues around ruby-wmi gem by replacing it with wmi-lite gem.

  • Set proxy environment variables if preset in config. (CHEF-4712)

  • Automatically enable verify_api_cert when running chef-client in local-mode. (Chef Issues 1464)

  • Add helper to warn for broken [windows] paths. (CHEF-5322)

  • Send md5 checksummed data for registry key if data type is binary, dword, or qword. (Chef-5323)

  • Add warning if host resembles winrm command and knife-windows is not present.

  • Use FFI binders to attach :SendMessageTimeout to avoid DL deprecation warning. (ChefDK Issues 69)

  • Use 'guest' user on AIX for RSpec tests. (OC-9954)

  • Added DelayedEvaluator support in LWRP using the lazy {} key

  • Fixed a bug where nested resources that inherited from Resource::LWRPBase would not share the same actions/default_action as their parent

  • Raise error if a guard_interpreter is specified and a block is passed to a guard (conditional)

  • Allow specifying a guard_interpreter after a conditional on a resource (Fixes #1943)