neulab/tldr huggingface dataset:
• PR #39116: (terminalmage) Don't abort pillar.get with merge=True if default is None
• PR #39091: (terminalmage) Run test_valid_docs in batches @ 2017-02-01 19:09:05 UTC
• PR #39081: (terminalmage) Move fileclient tests to tests/integration/fileserver/fileclient_test.py
• PR #39067: (rallytime) Bump openstack deprecation notice to Oxygen
• PR #39047: (rallytime) [2016.3] Merge forward from 2015.8 to 2016.3 @ 2017-01-30 23:48:14 UTC
• PR #39045: (rallytime) Add 2016.3.6 release notes file
• PR #39042: (rallytime) [2016.3] Update release numbers for doc build
• PR #39038: (rallytime) Update 2016.3.5 release notes
• PR #39028: (terminalmage) Clarify delimiter argument @ 2017-01-30 18:20:26 UTC
• PR #39030: (rallytime) Back-port #38972 to 2016.3
• ISSUE #38753: (alexbleotu) __proxy__ dunder is not injected when invoking the salt variable in sls files (refs: #38899, #38829)
• ISSUE #38265: (mirceaulinic) __utils__ object not available in proxy module (refs: #38899, #38829)
• PR #38899: (cro) Enable __proxy__ availability in states, highstate, and utils. Enable __utils__ for proxies.
• PR #38829: (cro) MANY dunder variable fixes for proxies + proxy keepalive from @mirceaulinic (refs: #38899)
• ISSUE #37938: (johje349) Memory leak in Reactor (refs: #38951)
• ISSUE #33890: (hvnsweeting) salt memleak when running state.sls (refs: #38951)
• PR #38951: (DmitryKuzmenko) Keep the only one record per module-function in depends decorator.  @ 2017-01-27 17:05:42 UTC
• ISSUE #34780: (joehoyle) S3fs broken in 2016.3.1 (refs: #38982)
• PR #38982: (rallytime) Set response when using "GET" method in s3 utils @ 2017-01-27 17:04:48 UTC
• PR #38989: (anlutro) Documentation: fix SLS in environment variable examples @ 2017-01-27 17:00:08 UTC
• PR #39000: (rallytime) Skip the test_badload test until Jenkins move is complete @ 2017-01-27 16:58:21 UTC
• PR #38995: (terminalmage) Fix pillar.item docstring @ 2017-01-27 16:58:00 UTC
• ISSUE #34551: (mbom2004) salt.engines.logstash not loading (refs: #38950)
• PR #38950: (mbom2004) Fixed Logstash Engine in file logstash.py @ 2017-01-26 19:10:07 UTC
• PR #38973: (rallytime) Handle changing "is_default" value in moto package for boto test mock
• PR #38952: (terminalmage) Make the ext_pillars available to pillar.ext tunable @ 2017-01-26 19:01:56 UTC
• ISSUE #35777: (rallytime) Properly deprecate template context data in Fluorine (refs: #38948)
• PR #38948: (rallytime) Bump the template context deprecation version to Oxygen @ 2017-01-25 19:45:59 UTC
• PR #38946: (rallytime) Back-port #37632 to 2016.3 @ 2017-01-25 19:40:40 UTC
• PR #37632: (twangboy) Fix versions report for Windows Server platforms (refs: #38946)
• PR #38913: (Adaephon-GH) Ignore plist files without Label key @ 2017-01-25 19:07:27 UTC
• PR #38917: (twangboy) Update Jinja2 to 2.9.4 @ 2017-01-25 19:05:38 UTC
• ISSUE #38540: (amendlik) API wheel client throws exception and success=true (refs: #38925)
• ISSUE #38537: (amendlik) API client wheel_async always returns status 500 (refs: #38925)
• PR #38925: (terminalmage) Fix two wheel issues in netapi @ 2017-01-25 18:28:52 UTC
• PR #38926: (gtmanfred) add note about pysss for pam eauth @ 2017-01-25 18:12:20 UTC
• ISSUE #38825: (IshMalik) file.managed multiple sources for redundency failure (refs: #38847)
• PR #38847: (terminalmage) Catch MinionError in file.source_list @ 2017-01-24 16:03:10 UTC
• ISSUE #36121: (Ashald) TemplateNotFound/Unable to cache file (refs: #38875)
• PR #38875: (terminalmage) Reactor: fix traceback when salt:// path is nonexistant @ 2017-01-24 15:23:39 UTC
• ISSUE #37413: (Snarfingcode666) Salt-cloud vmware missing reboot command (refs: #38887, #38890)
• PR #38890: (cro) Backport  #38887 to 2016.3: Enable resetting a VM via salt-cloud & VMware driver @ 2017-01-24 15:15:35 UTC
• PR #38887: (cro) Enable resetting a VM via salt-cloud & VMware driver (refs: #38890)
• PR #38883: (techhat) Don't require text_out path to exist @ 2017-01-23 18:20:42 UTC
• PR #38867: (mchugh19) Touch deploy.sh before use (refs: #38883)
• PR #32026: (techhat) Don't require the decode_out file to already exist (refs: #38883)
• PR #38851: (terminalmage) Support docker-py 2.0 in dockerng @ 2017-01-23 16:48:12 UTC
• PR #38844: (cachedout) Fix memory leak in HTTP client @ 2017-01-20 20:59:14 UTC
• ISSUE #38798: (ripta) match.compound fails to match when pillar data is used (refs: #38823)
• PR #38823: (gtmanfred) pass pillar to compound matcher in match module @ 2017-01-20 19:19:09 UTC
Salt 2016.3.7 Release Notes Version 2016.3.7 is a bugfix release for 2016.3.0.
This release corrects a flaw in minion ID validation which could allow certain minions to authenticate to a master despite not having the correct credentials. To exploit the vulnerability, an attacker must create a salt-minion with an ID containing characters that will cause a directory traversal. Credit for discovering the security flaw goes to: Vernhk@qq.com
Changelog for v2016.3.6..v2016.3.7 Generated at: 2018-05-27 14:09:17 UTC
• 11d176ff1b Add release notes for 2016.3.7 release
• dc649ded51 Add clean_id function to salt.utils.verify.py
Salt 2016.3.8 Release Notes Version 2016.3.8 is a bugfix release for 2016.3.0.
Changelog for v2016.3.7..v2016.3.8 Generated at: 2018-05-27 14:11:36 UTC
• 8cf08bd7be Update 2016.3.7 Release Notes
• 0425defe84 Do not allow IDs with null bytes in decoded payloads
• 31b38f50eb Don't allow path separators in minion ID
Salt 2016.3.9 Release Notes Version 2016.3.9 is a bugfix release for 2016.3.0.
Master Changes The following options have been added to the master config file:
• allow_minion_key_revoke - This option controls whether a minion can request that the master revoke its key. When True, a minion can request a key revocation and the master will comply. If it is False, the key will not be revoked by the msater.
• require_minion_sign_messages - This requires that minions cryptographically sign the messages they publish to the master. If minions are not signing, then log this information at loglevel INFO and drop the message without acting on it.
• drop_messages_signature_fail - Drop messages from minions when their signatures do not validate. Note that when this option is False but require_minion_sign_messages is True, minions MUST sign their messages, but the validity of their signatures is ignored.
• minion_sign_messages - Causes the minion to cryptographically sign the payload of messages it places on the event bus for the master. The payloads are signed with the minion's private key so the master can verify the signature with its public key.
Salt 2015.8.0 Release Notes - Codename Beryllium 2015.8.0 Detailed Change List Extended changelog courtesy of Todd Stansell (‐ https://github.com/tjstansell/salt-changelogs)
Generated at: 2015-09-09T18:15:43Z
This list includes all pull requests merged into the 2015.8 branch between the forking of the branch from develop and the release of 2015.8.0.
• Total Merges: 682
• Total Issue references: 342
• Total PR references: 866
Pull Requests:
• #26993: (whiteinge) Backport #26975
• #26970: (cachedout) Revert "better path query parsing in fileserver"
• #26980: (terminalmage) Use human-readable cachedirs for gitfs-backed winrepo
• #26969: (TheBigBear) URL of salt windows downloads has changed
• #26968: (TheBigBear) URL of salt windows downloads has changed
• #26958: (s0undt3ch) Bradthurber bootstrap command line help doc update
• #26949: (rallytime) Back-port #25148 to 2015.8
• #26914: (cro) Add salt-proxy script and manpage to setup.py so they will get installed.
• #26909: (terminalmage) Don't try to git clone from /tmp on Windows
• #26910: (s0undt3ch) Sometimes the event system is just too fast
• #26905: (s0undt3ch) Exit the loop if run_once is true
• #26897: (msteed) spm file hash part deux
• #26900: (s0undt3ch) If no tag is passed, don't actually subscribe to anything.
• #26880: (s0undt3ch) Restore backwards compatibility to salt.utils.event
• #26896: (msteed) spm remove: use pkgfiles to calculate file hashes
• #26891: (jtand) Fixed an unboundlocalerror
• #26892: (cachedout) Make the testing ioloop the current one
• #26886: (jtand) Gets the azure version correctly on python-azure 1.0.0
• #26870: (rallytime) Back-port #26834 to 2015.8
• #26865: (dmurphy18) Fix apt preferences for apts, repos for pbuilder building for Debian
• #26873: (terminalmage) Properly handle getting local config values in older git versions
• #26869: (rallytime) Fix provider --> driver change for salt-cloud lxc
• #26858: (terminalmage) Fix a couple version checks for git state and execution module
• #26853: (UtahDave) Fix salt-cloud on windows
• #26852: (basepi) [2015.8] Only reference msgpack if it imported successfully
• #26835: (terminalmage) Backport #26572 to 2015.8
• #26836: (jacobhammons) Added rst source for salt-proxy man page, added build and copy lines …
• #26818: (terminalmage) Support empty repositories in git.latest
• #26819: (rallytime) Make sure we're calling _validate_name in the correct place in 2015.8 Linode driver
• #26841: (l2ol33rt) Fix reference before assignment in sqs engine
• #26822: (terminalmage) Add some missing imports for masterless winrepo
• #26831: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26826: (techhat) Pass a package name to unregister_file()
• #26757: (cachedout) Fix various filehandle leaks
• #26816: (gtmanfred) rev defaults to HEAD
• #26801: (jacobhammons) Added doc for dockerng minion configuration options
• #26808: (anlutro) Fix git init argument formatting
• #26807: (terminalmage) Move salt.utils.itersplit() to salt.utils.itertools.split()
• #26796: (jacobhammons) Add doc for __states__
• #26764: (sjorge) salt.utils.is_proxy() is no longer always true on SunOS/Illumos/SmartOS
• #26772: (sjorge) pull in smartos 'virt' module from develop
• #26726: (terminalmage) Redact HTTPS Basic Auth in states/funcs which deal with git remotes
• #26769: (terminalmage) Use --track to set tracking branch on older git versions
• #26765: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26761: (sjorge) fix SPM paths on smartos/illumos esky
• #26751: (terminalmage) Fixes for masterless winrepo
• #26745: (rallytime) Make sure pyrax configs are in place before checking for deps
• #26746: (rallytime) Make sure nova configs are set before checking for dependencies
• #26750: (basepi) [2015.8] Add __utils__ to state modules
• #26752: (cro) Fix typo in some diagram labels
• #26747: (basepi) [2015.8] Add __states__ to state modules, for cross-calling states
• #26744: (basepi) [2015.8] Fix issue from #26717
• #26737: (dmurphy18)  Fix to allow for package naming other than just salt
• #26742: (rallytime) Only warn about vsphere deprecation if vsphere is configured
• #26733: (sjorge) Refactor of smartos_vmadm module
• #26735: (s0undt3ch) Add .hg and .cvs to spm_build_exclude
• #26720: (UtahDave) Updates for winrepo in 2015.8 to support jinja, while maintaining backwards compat
• #26719: (jodv) Backport 26532 to 2015.8
• #26721: (rallytime) Linode Driver Cleanup
• #26707: (techhat) Add top_level_dir to FORMULAs
• #26723: (s0undt3ch) Handle SPM paths in the setup script
• #26717: (basepi) [2015.8] Revert loader changes from #26645
• #26712: (techhat) Move SPM paths around
• #26680: (TheBigBear) add more python libs info in '--versions-report'
• #26716: (terminalmage) Allow git identity to be a list
• #26691: (garethgreenaway) Fixes to ipset module for 2015.8
• #26701: (kev009) Ignore the first element of kern.disks split, which is the sysctl name (new disks grain)
• #26678: (terminalmage) Restructure git.latest rewrite to work better when following HEAD
• #26679: (rallytime) Back-port #26661 to 2015.8
• #26684: (techhat) Add reactor formulas to spm
• #26682: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26671: (rallytime) Warn users if cloud driver dependencies are missing.
• #26674: (rallytime) Back-port #26583 to 2015.8
• #26670: (techhat) Set up SPM to install -conf packages
• #26657: (jfindlay) top file compilation fixes
• #26659: (TheBigBear) minor doc edits - spelling
• #26654: (jfindlay) merge #26650
• #26567: (jtand) Added git version check to git module
• #26649: (twangboy) Fixed Lint for real in win_repo.py
• #26608: (jacobhammons) 2015.8.0 release notes and doc/conf.py updates
• #26646: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26645: (rallytime) Back-port #26390 to 2015.8
• #26642: (twangboy) Added function to render winrepo Jinja
• #26625: (twangboy) Correctly detect packages with no version, docs
• #26575: (msteed) Update spm for integration into raas
• #26635: (cro) Don't report windows as a proxy.
• #26622: (rallytime) [2015.8] Also add -Z to script args for cloud tests
• #26619: (rallytime) Apply cloud test fixes from 2015.5 to 2015.8
• #26603: (terminalmage) Fixes for git.latest, git module integration tests, etc.
• #26577: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26534: (cachedout) Bump required Tornado version to 4.2.1
• #26566: (cachedout) Don't stacktrace trying to publish without a master
• #26541: (terminalmage) Make winrepo execution module use the same code as the runner
• #26530: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26570: (cachedout) Fix haproxy docs to be valid
• #26562: (cachedout) Fix suprious error message with systemd-detect
• #26557: (jfindlay) add docs to #26550
• #26544: (nmadhok) Do not raise KeyError when calling avail_images if VM/template is in disconnected state
• #26501: (terminalmage) Update git_pillar docs, add git.list_worktrees function
• #26521: (terminalmage) Work around upstream git bug when cloning repo as root
• #26518: (krak3n) Fix for #25492
• #26514: (evverx) Unmask a runtime masked services too
• #26529: (mnalt) bugfix: fix service.enable for missing rc.conf
• #26516: (techhat) Move more path operations into SPM loader
• #26533: (cachedout) Fix too aggressive even init check
• #26522: (cro) Do not load package provider if its not a proxy
• #26531: (cachedout) Fix failing event tests and modify event init
• #26433: (cro) Add support for default proxy config options, change default location of proxy config and log to /etc/salt/proxy and /var/log/proxy
• #26504: (nmadhok) [Backport] Adding ability to specify the virtual hardware version when creating VM
• #26517: (cachedout) Better fix for opensuse tornado httpclient
• #26479: (rallytime) Don't allow VMs with duplicate names to be created in EC2/AWS
• #26488: (cachedout) Don't pass unsupported kwarg to tornado
• #26451: (terminalmage) Use 'rpm -qa' instead of repoquery to list installed packages
• #26491: (jacobhammons) doc site css fix for tiny fonts that appeared in code or pre tags in …
• #26442: (rallytime) Hide API Key from debug logs for Linode Driver
• #26441: (rallytime) Refactor a few linode functions to be useful with salt-cloud command
• #26485: (s0undt3ch) One more missed typo
• #26495: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26492: (cachedout) Fix schedule test error on py26
• #26489: (cachedout) Fixing more tarfile tests on py2.6
• #26475: (cachedout) Better object checking on asyncreq cleanup
• #26477: (cachedout) Fix integration.modules.git.GitModuleTest.test_archive on py26
• #26469: (jtand) --annotate and --message aren't valid options in older versions of git.
• #26439: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26464: (rallytime) Back-port #26456 to 2015.8
• #26463: (rallytime) Back-port #26455 to 2015.8
• #26449: (s0undt3ch) The CLI options are not meant to include underscores.
• #26270: (sjorge) salt.modules.network now supports SmartOS and SunOS < Solaris 11
• #26436: (TheBigBear) minor edits
• #26410: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26427: (anlutro) git.latest with no rev: fix concatenation error (NoneType and str)
• #26307: (cachedout) Fix bug in top file ordering
• #26428: (cro) Update docs to reflect new pillar structure
• #26429: (cachedout) Add release note regarding tcp transport on freebsd
• #26418: (driskell) Fix forward-merged caching from 2015.5 into 2015.8 to be compatible with the new match_func
• #26252: (DmitryKuzmenko) Issues/24048 http client 2015.8
• #26413: (evverx) Fix service.{start,restart,reload,force-reload} for masked services
• #26393: (dmurphy18) Added option parameters to make_repo to allow for configuration settings
• #26422: (TheBigBear) no dots in SLS filename __AND__ any directories (incl git repos)
• #26323: (0xf10e) Fix Credentials used in glance Exec Module
• #26341: (terminalmage) Rewrite git state and execution modules
• #26419: (terminalmage) Only use pygit2.errors if it exists
• #26423: (eliasp) doc - Correct function name for peer configuration
• #26401: (cachedout) Adapt proxy minion to tornado (w/lint)
• #26400: (rallytime) Back-port #26318 to 2015.8
• #26397: (s0undt3ch) A single isinstance() check for all types is enough
• #26385: (gtmanfred) don't require volume endpoint in nova driver
• #26287: (techhat) Break out SPM components into loaders
• #26384: (TheBigBear)  Fix shell quoting for cmd.run
• #26391: (rallytime) Back-port #26367 to 2015.8
• #26383: (rallytime) Allow the creation of a VM without a profile
• #26375: (s0undt3ch) [2015.8] Schema DictItem required attribute fixes
• #26363: (garethgreenaway) Fixes to mount state 2015.8
• #26347: (0xf10e) Load 'pkgng' as 'pkg' on FreeBSD 9 when providers:pkg == 'pkgng'
• #26361: (TronPaul) sign security token
• #26346: (TronPaul) Fix s3 using IAM credentials
• #26331: (mnalt) fix bug in sysrc to allow for empty rc variables
• #26334: (rallytime) Call salt.utils.cloud.bootstrap in GCE Driver provisioning
• #26308: (dmurphy18) Support for environment overrides building packages
• #26279: (TheScriptSage) Merge changes for pull`#26083`_ and pull`#25632`_ into 2015.8
• #26224: (cachedout) Cleanup of a few cases to move to salt.utils.fopen
• #26260: (nmadhok) Correct spelling of integration in docs
• #26226: (rallytime) Fix #25463
• #26248: (nmadhok) Initial commit of unit tests for vmware cloud driver
• #26228: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26244: (nmadhok) Backport additions to VMware cloud driver from develop to 2015.8 branch
• #26235: (sjorge) salt.utils.is_smartos_zone, inverse of is_smartos_globalzone
• #26221: (sjorge) SmartOS grain fixes
• #26218: (terminalmage) Add warning about file.recurse unicode errors with vim swap files.
• #26214: (rallytime) Back-port #24878 to 2015.8
• #26211: (techhat) Move SPM to its own directory
• #26197: (TronPaul) Fix GitFS when whitelisting base
• #26200: (anlutro) Make it possible to run salt-cloud as current user
• #26201: (kev009) Avoid VBOX storage emulation bugs in FreeBSD disks grain
• #26188: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26194: (basepi) Allow virtual grains to be generated even if virt-what is not available
• #26176: (rallytime) Back-port #26165 to 2015.8
• #26169: (terminalmage) Fix attribute error in gitfs' find_file functions
• #26170: (nmadhok) [Backport] Make sure variable is a dictionary before popping something from it.
• #26143: (nmadhok) VMware cloud driver fixes [forward port from 2015.5 into 2015.8]
• #26173: (jacobhammons) Updates to cloud docs for the provider > driver change
• #26125: (evverx) Use timedatectl set-timezone to tzsetting if available
• #26145: (sjorge) smartos_imgadm cleanup
• #26148: (terminalmage) Refactor winrepo support
• #26128: (sjorge) imgadm.avail should return multiple results
• #26109: (jfindlay) fix quote indent
• #26089: (anlutro) User state/module: fix coercing of None into string "None" in GECOS
• #26081: (cachedout) Move invocation routine up
• #26086: (rallytime) Back-port #26019 to 2015.8
• #26087: (rallytime) Back-port #26059 to 2015.8
• #26052: (jtand) Rh_ip fix
• #26078: (cachedout) Fix missing key in error return
• #26074: (basepi) [2015.8] Re-apply #25358 in 2015.8
• #26069: (jfindlay) fix win_firewall.delete_rule
• #26066: (s0undt3ch) [2015.8] Update to latest bootstrap stable release v2015.06.08
• #26049: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #26026: (anlutro) Fix httpasswd result false positive in test mode
• #26037: (rallytime) Back-port #25489 to 2015.8
• #26004: (techhat) Allow updating a single SPM repo at a time
• #26012: (cachedout) Merge kwargs into opts for tcp client
• #26007: (anlutro) file.managed: wrap os.remove in if isfile, don't remove on success
• #26009: (terminalmage) Add winrepo and dockerng information to 2015.8.0 release notes
• #26006: (basepi) Revert #25727 in favor of #25645
• #26001: (cachedout) Fix failing tests
• #25978: (anlutro) Correct service state changes in test mode
• #25982: (sjorge) salt.modules.smartos_* limit to global zone only
• #25989: (rallytime) Back-port #25832 to 2015.8
• #25988: (cachedout) Move #25642 to 2015.8
• #25999: (s0undt3ch) Include subschema defaults
• #25997: (s0undt3ch) Allow getting a defaults dictionary from schema defaults
• #25979: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #25902: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #25956: (anlutro) Fix user argument to cron functions
• #25946: (sjorge) Fix for salt.utils.decorators under esky
• #25957: (anlutro) Remove temporary file after file.managed with checkcmd
• #25874: (rallytime) Back-port #25668 to 2015.8
• #25929: (sjorge) salt.module.pkgin's __virtual__() should not return None if pkg_info is not present
• #25952: (garethgreenaway) Log when event.fire and event.fire_master fail 2015.8
• #25944: (sjorge) Smartos libcrypto nonesky fix
• #25906: (dmurphy18) Cherry-pick of pkgbuild changes from develop branch
• #25925: (sjorge) Create default log location in smartos esky buildscript
• #25928: (cachedout) Fix stacktrace for non-existant states
• #25922: (jacksontj) Correct max_wait -> max_auth_wait in MultiMinion
• #25907: (rallytime) Back-port #25892 to 2015.8
• #25910: (terminalmage) Pass osarch to check_32()
• #25849: (basepi) Repress template error for GPG renderer (can't seek an OrderedDict)
• #25868: (rallytime) Back-port #25404 to 2015.8
• #25896: (cachedout) Lint
• #25876: (jacksontj) Fixes for 2015.8
• #25867: (rallytime) Back-port #25370 to 2015.8
• #25845: (jacobhammons) updated versionadded
• #25836: (jacksontj) Keep track of SyncWrapper's IOLoop usage
• #25859: (0xf10e) warn_until(Carbon,...) instead of Boron
• #25505: (0xf10e) Glance state module for 2015.8 "Beryllium"
• #25843: (jtand) Fixed a lint error in parsers.py
• #25835: (techhat) spm update_repo doesn't always require arguments
• #25837: (jacobhammons) regenerated man pages
• #25830: (sjorge) Loading of libcrypto on smartos esky fixed
• #25808: (jfindlay) add highstate opts to config/__init__.py, update docs
• #25820: (sjorge) Prerequisite to fix the smartos libcrypto loading
• #25781: (anlutro) Fix iptables.build_rule
• #25764: (gtmanfred) allow use of cloudnetworks in ssh_interface
• #25736: (jfindlay) insert explicit formatter number
• #25742: (rallytime) Back-port #25731 to 2015.8
• #25741: (rallytime) Back-port #25727 to 2015.8
• #25712: (cachedout) Fix outputter for state.apply
• #25698: (rallytime) Back-port #25659 to 2015.8
• #25690: (anlutro) Fix highstate duration alignment (again)
• #25684: (davidjb) Fix doc around Include/Exclude for states
• #25549: (techhat) Switch Scaleway to salt.utils.cloud.bootstrap()
• #25667: (jfindlay) add 2015.8.0rc2 autogenerated changelog
• #25653: (anlutro) Properly align highstate duration sum
• #25663: (rallytime) Back-port #25638 to 2015.8
• #25639: (terminalmage) Don't do pre-flight check on git_pillar if it is not configured
• #25587: (cachedout) Fix prereq in salt.state
• #25628: (anlutro) Highstate output: show duration in seconds instead of milliseconds when appropriate
• #25631: (basepi) Remove trailing whitespace
• #25627: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #25626: (basepi) Fix the highstate outputter if 'duration' is not present
• #25601: (terminalmage) Fix error message when local bin pkg path is not absolute
• #25595: (terminalmage) Bring git_pillar up to feature parity with gitfs
• #25619: (cachedout) Lint stateconf changes
• #25578: (davidjb) Allow parent relative includes in state files
• #25610: (s0undt3ch) [2015.8] Update the bootstrap script to latest release v2015.07.22
• #25599: (jfindlay) fix transport settings in #25596
• #25596: (jfindlay) Tcp test
• #25591: (garethgreenaway) Return data for scheduled jobs in 2015.8 default to True.
• #25588: (basepi) Fix some of the retcode work from #23105
• #25583: (jtand) Fixed lint error where pprint wasn't imported.
• #25572: (rallytime) Back-port #25570 to 2015.8
• #25575: (rallytime) Make Sure Scaleway driver works with deprecation paths
• #25564: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #25566: (techhat) Fix download process for SPM repo updates
• #25553: (techhat) Switch SoftLayer to salt.utils.cloud.bootstrap()
• #25552: (techhat) Update pricing for SoftlayerHW
• #25547: (techhat) Switch Parallels to salt.utils.cloud.bootstrap()
• #25548: (techhat) Switch Proxmox to salt.utils.cloud.bootstrap()
• #25543: (techhat) Switch GCE to salt.utils.cloud.bootstrap()
• #25546: (techhat) Switch CloudStack to salt.utils.cloud.bootstrap()
• #25558: (cachedout) Lint config_test
• #25515: (s0undt3ch) salt.utils.schema fixes
• #25514: (garethgreenaway) fixes to schedule.add documentation in 2015.8
• #25508: (s0undt3ch) [2015.8] Update bootstrap script to latest stable release, v2015.07.17
• #25501: (basepi) Add optional job end time to the local_cache returner
• #25491: (s0undt3ch) Let's call it for what it is!
• #25462: (rallytime) Wrap is_profile_configrured calls in try/except block
• #25439: (rallytime) Reduce digital_ocean API call frequency
• #25451: (s0undt3ch) Salt-SSH Scan roster bugfixes (And Py3 support)
• #25449: (ruzarowski) Exclude dotfiles and directories from minion key lists (Fixes #25448)
• #25421: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #25412: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #25415: (bechtoldt) [docs] declare YAML as code block
• #25407: (rallytime) Back-port #23236 to 2015.8
• #25409: (rallytime) Back-port #24422 to 2015.8
• #25394: (rallytime) Back-port #25355 to 2015.8
• #25393: (rallytime) Back-port #25289 to 2015.8
• #25387: (cachedout) Lint #25319
• #25319: (ruzarowski) [cloud:EC2] Move SourceDest logic to _update_enis and add  alias for delete_interface_on_terminate
• #25310: (anlutro) Add an "is list" test to the jinja environment
• #25264: (ruzarowski) Fix AttributeError in fileserver update_opts
• #25372: (rallytime) Don't stacktrace when provisioning instances with softlayer* drivers
• #25315: (ruzarowski) [cloud:EC2] Move handling of AssociatePublicIpAddress to associate_eip/allocate_new_eip logic depending on value type
• #25312: (ruzarowski) [cloud:EC2] Introduce eni Name property to set name tag value after its creation
• #25311: (ruzarowski) [cloud:EC2] Add ability to attach an existing eni
• #25280: (rallytime) Remove deprecation warnings for Beryllium
• #25329: (twangboy) Fixed some documentation errors
• #25300: (s0undt3ch) Fix ordering issue & Added requirements support
• #25283: (jfindlay) ensure ret is always defined
• #25252: (jfindlay) make args optional with default values in win_firewall.delete_rule
• #25257: (notpeter) Document SourceDestCheck added in #25242.
• #25298: (twangboy) Continue if profile not found
• #25296: (twangboy) Fixed file.comment for windows
• #25254: (rallytime) Change versionadded/changed references from Beryllium to 2015.8.0
• #25285: (thusoy) Remove error logging of missing victorops keys
• #25266: (ruzarowski) cloud: EC2 eni property SourceDestCheck is a AttributeBooleanValue
• #25216: (jfindlay) replace shell code with native python code
• #25278: (rallytime) Don't require size for all cloud drivers when checking profile configs
• #25271: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #25263: (techhat) Allow non-standard HTTP requests on tornado
• #25253: (s0undt3ch) Remove the deprecation warning. The driver has been renamed.
• #25248: (techhat) Do not resize while iterating
• #25244: (rallytime) Remove parted deprecations and fix failing tests
• #25242: (ruzarowski) Make SourceDestCheck flag available to network interface definition
• #25226: (nmadhok) Backporting fix for issue #25223 on 2015.8 branch
• #25234: (krak3n) Fix: Bug in boto_asg state argument passing to boto_asg module
• #25222: (rallytime) Back-port #25219 to 2015.8
• #25188: (rallytime) Use linode status descriptions instead of ints when logging status to CLI
• #25203: (s0undt3ch) Added DictConfig with tests & More tests
• #25189: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
• #25184: (rallytime) Back-port #25126 to 2015.8
• #25172: (s0undt3ch) Comment out imports while the YAML and RST rendering is not in-place.
• #25158: (s0undt3ch) Comment out not implemented code
• #25145: (s0undt3ch) Implement oneOf, anyOf, allOf and not with unit tests
• #25140: (s0undt3ch) Make the detection code work under Python 3.4
• #25131: (s0undt3ch) Array support in salt.utils.config
• #25130: (basepi) [2015.8] Merge forward from 2015.5 to 2015.8
The 2015.8.0 feature release of Salt contains several major new features. As usual the release notes are not exhaustive and primarily include the most notable additions and improvements. Hundreds of bugs have been fixed and many modules have been substantially updated and added.
New SaltStack Installation Repositories SaltStack now provides installation repositories for several platforms, with more to come.  See the following links for instructions:
• Red Hat / CentOS 5, 6, 7
• Debian 8
Send Event on State Completion A fire_event global state keyword argument was added that allows any state to send an event upon completion. Useful for custom progress bars and checking in on long state runs. See fire_event.
ZeroMQ socket monitoring If zmq_monitor is enabled, log all ZMQ events for socket monitoring purposes. Verbose, but useful.
SPM (Salt Package Manager) Allows Salt formulas to be packaged for ease of deployment. See spm.
NOTE: The spm executable was not included in the Debian or Ubuntu packages for the 2015.8.0 or the 2015.8.1 releases. This executable will be included in an upcoming release. As a workaround, copy the SPM script from the salt library installation into /usr/local/bin or your local equivalent.
Specify a Single Environment for Top Files A new default_top option was added to load the state top file from a single, specific environment, rather than merging top data across all environments. Additionally, new top_file_merge_strategy and env_order options were added for more control over top file merging. See The Top File.
Tornado TCP Transport Implemented a pure-TCP transport, in addition to ZeroMQ and RAET. The new transport uses Tornado, which allows Salt to use a standardized set of libraries for asynchronous behavior, which should greatly improve reliability and performance.
NOTE: Tornado is considered expiremental in this release. The following known issues were being investigated at the time of release:
• TCP tests show performance degredation over time (issue #26051)
• TCP transport stacktrace on windows minion: Future exception was never retrieved (issue #25718)
• [freebsd] TCP transport not working in 2015.8.0rc3 (issue #26364)
Proxy Minion Enhancements Proxy Minions have undergone a significant overhaul in 2015.8, see Proxy Minion Enhancements.
Engines Salt engines are long-running, external processes that leverage Salt. See Salt Engines.
Core Changes • Add system version info to versions_report, which appears in both salt --versions-report and salt '*' test.versions_report. Also added is an alias test.versions to test.versions_report. (issue #21906)
• Add colorized console logging support.  This is activated by using %(colorlevel)s, %(colorname)s, %(colorprocess)s, %(colormsg)s in log_fmt_console in the config file for any of salt-master, salt-minion, and salt-cloud.
Git Pillar The git external pillar has been rewritten to bring it up to feature parity with gitfs. Support for pygit2 has been added, bringing with it the ability to access authenticated repositories.
Using the new features will require updates to the git ext_pillar configuration, further details can be found in the pillar.git_pillar docs.
Salt Cloud Improvements • Pricing data from several cloud providers (GCE, DigitalOcean, SoftLayer_HW, EC2)
• All cloud providers now use standardized bootstrapping code.
• Modified the Linode Salt Cloud driver to use Linode's native API instead of depending on apache-libcloud or linode-python.
Salt Cloud Changes • Changed the default behavior of rename_on_destroy to be set to True in the EC2 and AWS drivers.
• Changed the default behavior of the EC2 and AWS drivers to always check for duplicate names of VMs before trying to create a new VM. Will now throw an error similarly to other salt-cloud drivers when trying to create a VM of the same name, even if the VM is in the terminated state.
• When querying for VMs in digital_ocean.py, the number of VMs to include in a page was changed from 20 (default) to 200 to reduce the number of API calls to Digital Ocean.Ocean.
State and Execution Module Improvements • New and improved Docker state and execution modules (state and execution module).
Git State and Execution Modules Rewritten The git state and execution modules have gone through an extensive overhaul.
Changes in the git.latest State • The branch argument has been added, allowing for a custom branch name to be used in the local checkout maintained by the git.latest state. This can be helpful in avoiding ambiguous refs in the local checkout when a tag is used as the rev argument. If no branch is specified, then the state uses the value of rev as the branch name.
• The always_fetch argument no longer has any effect, and will be removed in a future release. The state now detects whether or not a fetch is needed based on comparisons made between the local and remote repositories.
• The force_fetch argument has been added to force a fetch if the fetch is not a fast-forward (for instance, if someone has done a reset and force-pushed to the remote repository).
• The remote_name argument has been deprecated and renamed to remote.
• The force argument has been deprecated and renamed to force_clone to reduce ambiguity with the other "force" arguments.
• Using SHA1 hashes (full or shortened) in the rev argument is now properly supported.
• Non-fast-forward merges are now detected before the repository is updated, and the state will not update the repository if the change is not a fast-forward. Non-fast-forward updates must be overridden with the force_reset argument. If force_reset is set to True, the state will only reset the repository if it cannot be fast-forwarded. This is in contrast to the earlier behavior, in which a hard-reset would be performed every time the state was run if force_reset was set to True.
• A git pull is no longer performed by this state, dropped in favor of a fetch-and-merge (or fetch-and-reset) workflow.
git.config_unset state added This state allows for configuration values (or entire keys) to be unset. See here for more information and example SLS.
git.config State Renamed to git.config_set To reduce confusion after the addition of git.config_unset, the git.config state has been renamed to git.config_set. The old config.get name will still work for a couple releases, allowing time for SLS files to be updated.
In addition, this state now supports managing multivar git configuration values. See here for more information and example SLS.
Initial Support for Git Worktrees in Execution Module Several functions have been added to the execution module to manage worktrees (a feature new to Git 2.5.0). State support does not exist yet, but will follow soon.
New Functions in Git Execution Module • git.config_get_regexp
• git.config_unset
• git.is_worktree
• git.list_branches
• git.list_tags
• git.list_worktrees
• git.merge_base
• git.merge_tree
• git.rev_parse
• git.version
• git.worktree_rm
• git.worktree_add
• git.worktree_prune
Changes to Functions in Git Execution Module git.add • --verbose is now implied when running the git add command, to provide a list of the files added in the return data.
git.archive • Now returns True when the git archive command was successful, and otherwise raises an error.
• The overwrite argument has been added to prevent an existing archive from being overwritten by this function.
• The fmt argument has been deprecated and renamed to format.
• Trailing slash no longer implied in prefix argument, must be included if this argument is passed.
git.checkout • The rev argument is now optional when using -b or -B in opts, allowing for a branch to be created (or reset) using HEAD as the starting point.
git.clone • The name argument has been added to specify the name of the directory in which to clone the repository. If this option is specified, then the clone will be made within the directory specified by the cwd, instead of at that location.
• The repository argument has been deprecated and renamed to url.
git.config_get • The setting_name argument has been deprecated and renamed to key.
• The global argument has been added, to query the global git configuration
• The all argument has been added to return a list of all values for the specified key, allowing for all values in a multivar to be returned.
• The cwd argument is now optional if global is set to True
git.config_set • The value(s) of the key being set are now returned
• The setting_name argument has been deprecated and renamed to key.
• The setting_value argument has been deprecated and renamed to value.
• The is_global argument has been deprecated and renamed to global.
• The multivar argument has been added to specify a list of values to set for the specified key. The value argument is not compatible with multivar.
• The add argument has been added to add a value to a key (this essentially just adds an --add to the git config command that is run to set the value).
git.fetch • The force argument has been added to force the fetch when it is not a fast-forward. This could have been achieved in previous Salt versions by including --force in the opts argument, this argument is just for convenience and to match the usage of other functions with force arguments.
• The refspecs argument has been added to allow for one or more refspecs to be provided which override the one(s) specified by the remote.remote_name.fetch git configuration option.
git.ls_remote • The repository argument has been deprecated and renamed to remote.
• The branch argument has been deprecated and renamed to ref.
• The opts argument has been added to allow for additional CLI options to be passed to the git ls-remote command.
git.merge • The branch argument has been deprecated and renamed to rev.
git.status • Return data has been changed from a list of lists to a dictionary containing lists of files in the modified, added, deleted, and untracked states.
git.submodule • Added the command argument to allow for operations other than update to be run on submodules, and deprecated the init argument. To do a submodule update with init=True moving forward, use command=update opts='--init'.
• OpenStack Glance API V2 execution module
• Amazon VPC state module
• RallyDev execution module
• BambooHR execution module
• Stormpath execution, state modules
• Remove unused argument timeout in jboss7.status.
• Deprecate enabled argument in pkgrepo.managed in favor of disabled.
• Archive module changes: In the archive.tar and archive.cmd_unzip module functions, remove the arbitrary prefixing of the options string with -. An options string beginning with a --long-option, would have uncharacteristically needed its first - removed under the former scheme.  Also, tar will parse its options differently if short options are used with or without a preceding -, so it is better to not confuse the user into thinking they're using the non- - format, when really they are using the with- - format.
• Added __states__ to state modules, for cross-calling states. This enables using existing states when writing custom states. See cross calling states.
Windows Improvements • Enhanced the windows minion silent installation with command line parameters to configure the salt master and minion name. See Silent Installer Options.
• Improved user management with additional capabilities in the user module for Windows.
• Improved patch management with a new module for managing windows updates (win_wua).
• Turned on multi-processing by default for windows in minion configuration.
Windows Software Repo Changes A next-generation (ng) windows software repo is available for 2015.8.0 and later minions. When using this new repository, the repo cache is compiled on the Salt Minion, which enables pillar, grains and other things to be available during compilation time.
See the Windows Software Repository documentation for more information.
Changes to legacy Windows repository If you have pre 2015.8 Windows minions connecting to your 2015.8 Salt master, you can continue to use the legacy Windows repository for these Salt minions.
If you were previously using this repository and have customized settings, be aware that several config options have been renamed to make their naming more consistent.
Win System Module The unit of the timeout parameter in the system.halt, system.poweroff, system.reboot,  and system.shutdown functions has been changed from seconds to minutes in order to be consistent with the linux timeout setting. (issue #24411)  Optionally, the unit can be reverted to seconds by specifying in_seconds=True.
Other Improvements • Sanitize sensitive fields in http.query
• Allow authorization to be read from Django and eauth
• Add templating to SMTP returner
• New REST module for SDB
• Added rest_timeout config option and timeout argument to jobs api call
• Provide config options for Raet lane and road buffer count. (Useful for BSD kernels)
• Implemented ZeroMQ socket monitor for master and minion
• Add end time to master job cache for jobs (optional, off by default)
• Tornado is now the default backend for http.request
• Support pillarenv selection as it's done for saltenv
• salt was updated to use python-crypto version 2.6.1, which removes the dependency on python-m2crypto.
Deprecations • The digital_ocean.py Salt Cloud driver was removed in favor of the digital_ocean_v2.py driver as DigitalOcean has removed support for APIv1.  The digital_ocean_v2.py was renamed to digital_ocean.py and supports DigitalOcean's APIv2.
• The vsphere.py Salt Cloud driver has been deprecated in favor of the vmware.py driver.
• The openstack.py Salt Cloud driver has been deprecated in favor of the nova.py driver.
• The use of provider in Salt Cloud provider files to define cloud drivers has been deprecated in favor of using driver. Both terms will work until the 2017.7.0 release of Salt. Example provider file:
my-ec2-cloud-config: id: 'HJGRYCILJLKJYG' key: 'kdjgfsgm;woormgl/aserigjksjdhasdfgn' private_key: /etc/salt/my_test_key.pem keyname: my_test_key securitygroup: default driver: ec2
• The use of lock has been deprecated and from salt.utils.fopen. salt.utils.flopen should be used instead.
• The following args have been deprecated from the rabbitmq_vhost.present state: user, owner, conf, write, read, and runas.
• The use of runas has been deprecated from the rabbitmq_vhost.absent state.
• Support for output in mine.get was removed. --out should be used instead.
• The use of delim was removed from the following functions in the match execution module: pillar_pcre, pillar, grain_pcre,
Security Fixes CVE-2015-6918 - Git modules leaking HTTPS auth credentials to debug log
Updated the Git state and execution modules to no longer display HTTPS basic authentication credentials in loglevel debug output on the Salt master. These credentials are now replaced with REDACTED in the debug output. Thanks to Andreas Stieger <asteiger@suse.com> for bringing this to our attention.
Major Bug Fixes • Fixed minion failover to next master on DNS errors (issue #21082)
• Fixed memory consumption in SaltEvents (issue #25557)
• Don't lookup outside system path in which() util (issue #24085)
• Fixed broken jobs rest api call (issue #23408)
• Fixed stale grains data using in modules (issue #24073)
• Added ssh_identities_only config flag for ssh-agent configured environments (issue #24096)
• Fixed "object has no attribute" errors for Raet transport (issue #21640)
• Flush event returners before master exit (issue #22814)
• Fix CommandExecutionError in grains generation with lspci missing (‐ issue #23342)
• Fix salt-ssh against CentOS 7 when python-zmq not installed (issue #23503)
• Fix salt-ssh issues related to out-of-date six module (issue #20949)
• Fix salt-ssh thin generation after previous run was interrupted (issue #24376)
• Use proper line endings on Windows with "file.managed" w/contents (‐ issue #25675)
• Fixed broken comment/uncomment functions in file.py (issue #24620)
• Fixed problem with unicode when changing computer description (issue #12255)
• Fixed problem with chocolatey module not loading (issue #25717)
• Fixed problem adding users to groups with spaces in the name (issue #25144)
• Fixed problem adding full name to user account (issue #25206)
• Fixed gem module stack trace (issue #21041)
• Fixed problem with file.managed when test=True (issue #20441)
• Fixed problem with powershell hanging while waiting for user input (‐ issue #13943)
• Fixed problem where the salt-minion service would not consistently start (issue #25272)
• Fixed problem where pkg.refresh_db would return True even when winrepo.p was not found (issue #18919)
• Could someone please provide end to end example for Proxy Minion with REST (issue #25500)
• Proxy minions stopped working between 2014.7 and 2015.5 (issue #25053)
• Proxy minion documentation includes outdated code sample (issue #24018)
• Proxy Minion documentation missing grains example (issue #18273)
• Improve process management in proxy minion (issue #12024)
• Proxy minion never comes up with message ' I am XXX and I am not supposed to start any proxies.' (issue #25908)
• Fixed an issue that caused an exception when using Salt mine from pillar. (issue #11509)
Salt 2015.8.1 Release Notes Version 2015.8.1 is a bugfix release for 2015.8.0.
Statistics • Total Merges: 201
• Total Issue References: 39
• Total PR References: 135
• Contributors: 40 (DmitryKuzmenko, The-Loeki, TheBigBear, basepi, bechtoldt, bernieke, blueyed, cachedout, cedwards, clinta, cro, deuscapturus, dmurphy18, dsumsky, eliasp, flowhamster, isbm, jacksontj, jacobhammons, jfindlay, justinta, l2ol33rt, macgyver13, meggiebot, msteed, multani, nasenbaer13, perfinion, pprkut, rallytime, rhealitycheck, ruzarowski, ryan-lane, s0undt3ch, systembell, techhat, terminalmage, ticosax, twangboy, whiteinge)
Security Fixes CVE-2015-6941 The Windows user module and salt-cloud display passwords in log when log level is set to debug or more verbose.
For the Windows user module, the password is now replaced with the string XXX-REDACTED-XXX.
For salt-cloud, debug logging no longer displays win_password and sudo_password authentication credentials.
CVE-2015-6918 Git state/execution modules log HTTPS auth credentials when log level is set to debug or more verbose.
These credentials are now replaced with REDACTED in the debug output. Thanks to Andreas Stieger <asteiger@suse.com> for bringing this to our attention.
Major Bug Fixes • Add support for spm.d/*.conf configuration of SPM (issue #27010)
• Fix proxy grains breakage for non-proxy minions (issue #27039)
• Fix global key management for git state
• Fix passing http auth to util.http from state.file (issue #21917)
• Fix multiprocessing: True in windows (on by default`)
• Add pkg.info to pkg modules
• Fix name of serial grain (this was accidentally renamed in 2015.8.0`)
• Merge config values from master.d/minion.d conf files (rather than flat update`)
• Clean grains cache on grains sync (issue #19853)
• Remove streamed response for fileclient to avoid HTTP redirection problems (issue #27093)
• Fixed incorrect warning about osrelease grain (issue #27065)
• Fix authentication via Salt-API with tokens (issue #27270)
• Fix winrepo downloads from https locations (issue #27081)
• Fix potential error with salt-call as non-root user (issue #26889)
• Fix global minion provider overrides (issue #27209)
• Fix backward compatibility issues for pecl modules
• Fix Windows uninstaller to only remove ./bin, salt*, nssm.exe, uninst.exe (issue #27383)
• Fix misc issues with mongo returner.
• Add sudo option to cloud config files (issue #27398)
• Fix regression in RunnerClient argument handling (issue #25107)
• Fix dockerng.running replacing creation hostconfig with runtime hostconfig (issue #27265)
• Increased performance on boto asg/elb states due to __states__ integration