Project: Salt Project (Provisioning / Automation & Configuration)
File: 3006.3.md

(release-3006.3)= <! Do not edit this file. This is auto generated. Edit the templates in doc/topics/releases/templates/ for a given release. --> <!-- Add release specific details below --> <!-- Do not edit the changelog below. This is auto generated. --> Fedora 36 support was removed because it reached EOL Handle deprecation warnings: Switch to `FullArgSpec` since Py 3.11 no longer has `ArgSpec`, deprecated since Py 3.0 Stop using the deprecated `cgi` module Stop using the deprecated `pipes` module Stop using the deprecated `imp` module Replace libnacl with PyNaCl Don't hardcode the python version on the Salt Package tests and on the `pkg/debian/salt-cloud.postinst` file Some more deprecated code fixes: Stop using the deprecated `locale.getdefaultlocale()` function Stop accessing deprecated attributes `pathlib.Path.enter()` usage is deprecated and not required, a no-op Bump to `pyyaml==6.0.1` due to https://github.com/yaml/pyyaml/issues/601 and address lint issues Fix for assume role when used salt-cloud to create aws ec2. fixes aptpkg module by checking for blank comps. `wheel.file_roots.find` is now able to find files in subdirectories of the roots. pkg.latest no longer fails when multiple versions are reported to be installed (e.g. updating the kernel) Do not update the credentials dictionary in `utils/aws.py` while iterating over it, and use the correct delete functionality fixed runner not having a proper exit code when runner modules throw an exception. `pip.listallversions` now works with `indexurl` and `extraindex_url` speed up file.recurse by using prefix with cp.listmasterdir and remove an un-needed loop. Preserve test=True condition while running sub states. Job returns are only sent to originating master Fixes an issue with failing subsequent state runs with the lgpo state module. The ``lgpo.get_polcy`` function now returns all boolean settings. Fix SELinux get policy with trailing whitespace Fixes an issue with boolean settings not being reported after being set. The ``lgpo.get_polcy`` function now returns all boolean settings. Ensure body is returned when salt.utils.http returns something other than 200 with tornado backend. Allow long running pillar and file client requests to finish using requestchanneltimeout and requestchanneltries minion config. Fix state_queue type checking to allow int values Call global logger when catching pip.list exceptions in states.pip.installed Rename global logger `log` to `logger` inside pip_state Fixes permissions created by the Debian and RPM packages for the salt user. The salt user created by the Debian and RPM packages to run the salt-master process, was previously given ownership of various directories in a way which compromised the benefits of running the salt-master process as a non-root user. This fix sets the salt user to only have write access to those files and directories required for the salt-master process to run. Fix user.present state when groups is unset to ensure the groups are unchanged, as documented. Fixes issue with MasterMinion class loading configuration from `/etc/salt/minion.d/*.conf. The MasterMinion class (used for running orchestraions on master and other functionality) was incorrectly loading configuration from `/etc/salt/minion.d/.conf`, when it should only load configuration from `/etc/salt/master` and `/etc/salt/master.d/.conf`. Fixed issue in macuser.enableauto_login that caused the user's keychain to be reset at each boot Fixed KeyError in logs when running a state that fails. Fixed x509v2 `createprivatekey`/`createcrl` unknown kwargs: pub_fun... remove the hard coded python version in error. `salt-pip` now properly errors out when being called from a non `onedir` environment. Ensure we return an error when adding the key fails in the pkgrepo state for debian hosts. Fixed file client private attribute reference on `SaltMakoTemplateLookup` Fix pkgrepo.absent failures on apt-based systems when repo either a) contains a trailing slash, or b) there is an arch mismatch. Fix detection of Salt codename by "salt_version" execution module Ensure selinux values are handled lowercase Remove the

it is causing an `Illegal characters in path` exception Update `pkg.group_installed` state to support repo options Fix salt user login shell path in Debian packages Allow for multiple user's keys presented when authenticating, for example: root, salt, etc. Fixed an issue with ``lgpo_reg`` where existing entries for the same key in ``Registry.pol`` were being overwritten in subsequent runs if the value name in the subesequent run was contained in the existing value name. For example, a key named ``SetUpdateNotificationLevel`` would be overwritten by a subsequent run attempting to set ``UpdateNotificationLevel`` Add search for %ProgramData%\Chocolatey\choco.exe to determine if Chocolatey is installed or not Fix regression for user.present on handling groups with dupe GIDs Fix inconsistent use of args in ssh_auth.managed Ensure we raise an error when the name argument is invalid in pkgrepo.managed state for systems using apt. Fix file.symlink will not replace/update existing symlink Fixed salt-ssh state.* commands returning retcode 0 when state/pillar rendering fails Fix pkg.install when using a port in the url. `win_pkg` Fixes an issue runing `pkg.install` with `version=latest` where the new installer would not be cached if there was already an installer present with the same name. Added a `test:full` label in the salt repository, which, when selected, will force a full test run. Syndic's asyncreqchannel uses the asynchornous version of request channel Ensure runners properly save information to job cache. Added salt.ufw to salt-master install on Debian and Ubuntu Added support for Chocolatey 2.0.0+ while maintaining support for older versions Updated semanage fcontext to use --modify if context already exists when adding context Preserve request client socket between requests. Show user friendly message when pillars timeout File client timeouts durring jobs show user friendly errors instead of tracbacks SaltClientError does not log a traceback on minions, we expect these to happen so a user friendly log is shown. Look in location salt is running from, this accounts for running from an unpacked onedir file that has not been installed. Preserve credentials on spawning platforms, minions no longer re-authenticate with every job when using `multiprocessing=True`. Fixed uninstaller to not remove the `salt` directory by default. This allows the `extras-3.##` folder to persist so salt-pip dependencies are not wiped out during an upgrade. fix msteams by adding the missing header that Microsoft is now enforcing. Fix env and improve cache cleaning see more info at pull #65017. Better error message on inconsistent decoded payload Handle permissions access error when calling `lsb_release` with the salt user Allow schedule state module to update schedule when the minion is offline. Fixed creation of wildcard DNS in SAN in `x509_v2` The macOS installer no longer removes the extras directory Added a script to automate setting up a 2nd minion in a user context on Windows Several fixes to the CI workflow: Don't override the `on` Jinja block on the `ci.yaml` template. This enables reacting to labels getting added/removed to/from pull requests. Switch to using `tools` and re-use the event payload available instead of querying the GH API again to get the pull request labels Concentrate test selection by labels to a single place Enable code coverage on pull-requests by setting the `test:coverage` label Upgrade to `cryptography==41.0.3`(and therefor `pyopenssl==23.2.0` due to https://github.com/advisories/GHSA-jm77-qphf-c4w8) This only really impacts pip installs of Salt and the windows onedir since the linux and macos onedir build every package dependency from source, not from pre-existing wheels. Also resolves the following cryptography advisories: Due to: https://github.com/advisories/GHSA-5cpq-8wj7-hf2v https://github.com/advisories/GHSA-x4qr-2fvf-3mr5 https://github.com/advisories/GHSA-w7pp-m8wf-vj6r Bump to `aiohttp==3.8.5` due to https://github.com/advisories/GHSA-45c4-8wx5-qw6w Bump to `certifi==2023.07.22` due to https://github.com/advisories/GHSA-xqr8-7jwr-rhp7 Upgrade `relenv` to `0.13.2` and Python to `3.10.12` Addresses multiple CVEs in Python's dependencies: https://docs.python.org/release/3.10.12/whatsnew/changelog.html#python-3-10-12 Update to `gitpython>=3.1.32` due