(release-3006.10)=

Salt 3006.10 release notes

Changelog

Removed

  • Remove psutil_compat.py file, which should have been removed when RHEL 6 EOL #66467

  • Removed dependency on bsdmainutils package for Debian and Ubuntu #67184

Deprecated

  • Drop Arch Linux support #66886

  • Removed support for end of life Python 3.7 and 3.8 from pre-commit and requirements #67729

Fixed

  • Commands on Windows are now prefixed with cmd /c so that compound commands (commands separated by &&) run properly when using runas #44736

  • Issue 58969: Fixes an issue with saltclass.expand_classes_in_order function where it was losing nested classes states during class expansion. The logic now use salt.utils.odict.OrderedDict to keep the inclusion ordering. #58969

  • Fix issue with RunAs on Windows so that usernames of all numeric characters are handled as strings #59344

  • Fixed an issue on Windows where checking success_retcodes when using the runas parameter would fail. Now success_retcodes are checked correctly #59977

  • Fix an issue with cmd.script in Windows so that the exit code from a script will be passed through to the retcode of the state #60884

  • Fixed an issue uninstalling packages on Windows using pkg.removed where there are multiple versions of the same software installed #61001

  • Ensure file clients for runner, wheel, local and caller are available from the client_cache if called upon. #61416

  • Convert stdin string to bytes regardless of stdin_raw_newlines #62501

  • Issue 63933: Fixes an issue with saltclass.expanded_dict_from_minion function where it was passing a reference to minion dict which was overridden by nested classes during class expansion. Copy the node definition with copy.deepcopy instead of passing a reference. #63933

  • Fixed an intermittent issue with file.recurse where the state would report failure even on success. Makes sure symlinks are created after the target file is created #64630

  • The 'profile' outputter does not crash with incorrectly formatted data #65104

  • Updating version comparison for rpm and removed obsolete comparison methods for rpms #65443

  • Fix batch mode hang indefinitely in some scenarios #66249

  • Applying selinux.fcontext_policy_present to a shorter path than an existing entry now works #66252

  • Correct bash-completion for Debian / Ubuntu #66560

  • Fix minion config option startup_states #66592

  • Fixed an issue with cmd.run with requirements when the shell is not the default #66596

  • Fixes an issue when getting account names using the get_name function in the win_dacl.py salt util. Capability SIDs return None. SIDs for deleted accounts return the SID. SIDs for domain accounts where the system is not connected to the domain return the SID. #66637

  • Fixed an issue where status.master wasn't detecting a connection to the specified master properly #66716

  • Fixed win_wua.available when some of the update objects are empty CDispatch objects. The available function no longer crashes #66718

  • Clean up multiprocessing file handles on minion #66726

  • Fixed nacl.keygen for not yet existing sk_file or pk_file #66772

  • fix yaml output #66783

  • Fixed an issue where enabling grain_opts in the minion config would cause some core grains to be overwritten. #66784

  • Fix an issue where files created using salt.utils.atomicile.atomic_open() were created with restrictive permissions instead of respecting the umask. #66786

  • Fix bad async_method name on AsyncPubClient class #66789

  • Ensure Manjaro ARM reports the correct os_family of Arch. #66796

  • Removed salt.utils.data.decode usage from the fileserver. This function was necessary to support Python 2. This speeds up loading the list cache by 80-90x. #66835

  • Issue 66837: Fixes an issue with the network.local_port_tcp function where it was not parsing the IPv4 mapped IPv6 address correctly. The ::ffff: is now removed and only the IP address is returned. #66837

  • Better handling output of systemctl --version with salt.grains.core._systemd #66856

  • Upgrade relenv to 0.17.3. This release includes python 3.10.15, openssl 3.2.3, and fixes for pip 24.2. #66858

  • Remove caching of 'systemctl status' in systemd_service to fix automatic daemon-reload for repeated invocations. #66864

  • Added cryptogrpahy back to base.txt requirements as a dependency #66883

  • Remove "perms" from linux_acl.list_absent() documentation #66891

  • Ensure minion start event coroutines are run #66932

  • Allow for secure-boot efivars directory having SecureBoot-xxx files, not directories with a data file #66955

  • Removed the usage of wmic to get the disk and iscsi grains for Windows. The wmic binary is being deprecated. #66959

  • Fixes an issue with the LGPO module when trying to parse ADMX/ADML files that have a space in the XMLNS url in the policyDefinitionsResources header. #66992

  • Ensured global dunders like env are defined in state module that are run in parallel on spawning platforms #66996

  • Filtered unpicklable objects from the context dict when invoking states in parallel on spawning platforms to avoid a crash #66999

  • Update for deprecation of hex in pygit2 1.15.0 and above #67017

  • Fixed blob path for salt.ufw in the firewall tutorial documentation #67019

  • Update locations for bootstrap scripts, to new infrastructure, GitHub releases for bootstrap #67020

  • Constrained the localfs module to operations inside the specified cachedir #67031

  • Added support for dnf5 (backport from 3007) and update to its new command syntax changes since 2023 #67057

  • Recognise newer AMD GPU devices #67058

  • Fix yumpkg module for Python<3.8 #67091

  • Fixed an issue with making changes to the Windows Firewall when the AllowInboundRules setting is set to True #67122

  • Added support and tests for dnf5 to services_need_restart for yum packages #67177

  • Use os.walk to traverse git branches, and no longer replace slash '/' in git branch names #67722

  • Set correct virtual grain in systemd based Podman containers #67733

  • Corrected option --upgrades for dnf[5] for function list_upgrades #67743

  • Fix salt-ssh for hosts that use password as the SSH password #67754

  • Corrected dnf5 option --downloadonly for dnf5 install #67769

  • Upgrade relenv to 0.18.1. Which includes python 3.10.16 and openssl 3.2.4. Openssl 3.2.4 fixes CVE-2024-12797 and CVE-2024-13176 #67792

  • Update jinja2 to 3.1.5, advisories GHSA-q2x7-8rv6-6q7h and GHSA-gmj6-6f8f-6699 Update urllib3 to 1.26.18 advisories GHSA-34jh-p97f-mpxf #67794

  • Ensure salt-cloud has salt-master dependency on Debian and Ubuntu #67810

  • Fix traceback from _send_req_sync method on minion by raising proper timeout error. #67891

Added

  • Issue #33669: Fixes an issue with the ini_managed execution module where it would always wrap the separator with spaces. Adds a new parameter named no_spaces that will not warp the separator with spaces. #33669

  • Enhance json.find_json to return json even when it contains text on the same line of the last closing parenthesis #67023