From b429f846740064035463c7919d80db7c95e14458 Mon Sep 17 00:00:00 2001 From: Matt Davis <6775756+nitzmahone@users.noreply.github.com> Date: Tue, 8 Jul 2025 16:35:22 -0700 Subject: [PATCH] New release v2.19.0rc2 (#85456) --- changelogs/CHANGELOG-v2.19.rst | 25 +++++++++++ changelogs/changelog.yaml | 49 +++++++++++++++++++++ changelogs/fragments/2.19.0rc2_summary.yaml | 3 ++ lib/ansible/release.py | 2 +- 4 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 changelogs/fragments/2.19.0rc2_summary.yaml diff --git a/changelogs/CHANGELOG-v2.19.rst b/changelogs/CHANGELOG-v2.19.rst index dc76df68c57..ab6e2189b5a 100644 --- a/changelogs/CHANGELOG-v2.19.rst +++ b/changelogs/CHANGELOG-v2.19.rst @@ -4,6 +4,31 @@ ansible-core 2.19 "What Is and What Should Never Be" Release Notes .. contents:: Topics +v2.19.0rc2 +========== + +Release Summary +--------------- + +| Release Date: 2025-07-08 +| `Porting Guide `__ + +Deprecated Features +------------------- + +- Jinja test plugins - Returning a non-boolean result from a Jinja test plugin is deprecated. +- YAML parsing - Usage of the YAML 1.1 ``!!omap`` and ``!!pairs`` tags is deprecated. Use standard mappings instead. +- YAML parsing - Usage of the undocumented ``!vault-encrypted`` YAML tag is deprecated. Use ``!vault`` instead. +- config - The ``DEFAULT_ALLOW_UNSAFE_LOOKUPS`` configuration option is deprecated and no longer has any effect. Ansible templating no longer encounters situations where use of lookup plugins is considered "unsafe". +- config - The ``DEFAULT_UNDEFINED_VAR_BEHAVIOR`` configuration option is deprecated and no longer has any effect. Attempting to use an undefined variable where undefined values are unexpected is now always an error. This behavior was enabled by default in previous versions, and disabling it yielded inconsistent results. +- config - The ``STRING_TYPE_FILTERS`` configuration option is deprecated and no longer has any effect. Since the template engine now always preserves native types, there is no longer a risk of unintended conversion from strings to native types. +- config - Using the ``DEFAULT_JINJA2_EXTENSIONS`` configuration option to enable Jinja2 extensions is deprecated. Previously, custom Jinja extensions were disabled by default, as they can destabilize the Ansible templating environment. Templates should only make use of filter, test and lookup plugins. +- config - Using the ``DEFAULT_MANAGED_STR`` configuration option to customize the value of the ``ansible_managed`` variable is deprecated. The ``ansible_managed`` variable can now be set the same as any other variable. +- playbook - The ``timedout.frame`` task result value (injected when a task timeout occurs) is deprecated. Include ``error`` in the ``DISPLAY_TRACEBACK`` config value to capture a full Python traceback for timed out actions. +- public API - The ``ansible.errors.AnsibleFilterTypeError`` exception type has been deprecated. Use ``AnsibleTypeError`` instead. +- public API - The ``ansible.errors._AnsibleActionDone`` exception type has been deprecated. Action plugins should return a task result dictionary in success cases instead of raising. +- public API - The ``ansible.module_utils.common.json.json_dump`` function is deprecated. Call Python stdlib ``json.dumps`` instead, with ``cls`` set to an Ansible profile encoder type from ``ansible.module_utils.common.json.get_encoder``. + v2.19.0rc1 ========== diff --git a/changelogs/changelog.yaml b/changelogs/changelog.yaml index 510d1a469de..6cd2f3d6e38 100644 --- a/changelogs/changelog.yaml +++ b/changelogs/changelog.yaml @@ -1138,3 +1138,52 @@ releases: - fix-auto-role-spec-validation-deprecation.yml - template-sandbox.yml release_date: '2025-06-30' + 2.19.0rc2: + changes: + deprecated_features: + - Jinja test plugins - Returning a non-boolean result from a Jinja test plugin + is deprecated. + - YAML parsing - Usage of the YAML 1.1 ``!!omap`` and ``!!pairs`` tags is deprecated. + Use standard mappings instead. + - YAML parsing - Usage of the undocumented ``!vault-encrypted`` YAML tag is + deprecated. Use ``!vault`` instead. + - config - The ``DEFAULT_ALLOW_UNSAFE_LOOKUPS`` configuration option is deprecated + and no longer has any effect. Ansible templating no longer encounters situations + where use of lookup plugins is considered "unsafe". + - config - The ``DEFAULT_UNDEFINED_VAR_BEHAVIOR`` configuration option is deprecated + and no longer has any effect. Attempting to use an undefined variable where + undefined values are unexpected is now always an error. This behavior was + enabled by default in previous versions, and disabling it yielded inconsistent + results. + - config - The ``STRING_TYPE_FILTERS`` configuration option is deprecated and + no longer has any effect. Since the template engine now always preserves native + types, there is no longer a risk of unintended conversion from strings to + native types. + - config - Using the ``DEFAULT_JINJA2_EXTENSIONS`` configuration option to enable + Jinja2 extensions is deprecated. Previously, custom Jinja extensions were + disabled by default, as they can destabilize the Ansible templating environment. + Templates should only make use of filter, test and lookup plugins. + - config - Using the ``DEFAULT_MANAGED_STR`` configuration option to customize + the value of the ``ansible_managed`` variable is deprecated. The ``ansible_managed`` + variable can now be set the same as any other variable. + - playbook - The ``timedout.frame`` task result value (injected when a task + timeout occurs) is deprecated. Include ``error`` in the ``DISPLAY_TRACEBACK`` + config value to capture a full Python traceback for timed out actions. + - public API - The ``ansible.errors.AnsibleFilterTypeError`` exception type + has been deprecated. Use ``AnsibleTypeError`` instead. + - public API - The ``ansible.errors._AnsibleActionDone`` exception type has + been deprecated. Action plugins should return a task result dictionary in + success cases instead of raising. + - public API - The ``ansible.module_utils.common.json.json_dump`` function is + deprecated. Call Python stdlib ``json.dumps`` instead, with ``cls`` set to + an Ansible profile encoder type from ``ansible.module_utils.common.json.get_encoder``. + release_summary: '| Release Date: 2025-07-08 + + | `Porting Guide `__ + + ' + codename: What Is and What Should Never Be + fragments: + - 2.19.0rc2_summary.yaml + - 219_catchall.yml + release_date: '2025-07-08' diff --git a/changelogs/fragments/2.19.0rc2_summary.yaml b/changelogs/fragments/2.19.0rc2_summary.yaml new file mode 100644 index 00000000000..e0ea3b8f6c1 --- /dev/null +++ b/changelogs/fragments/2.19.0rc2_summary.yaml @@ -0,0 +1,3 @@ +release_summary: | + | Release Date: 2025-07-08 + | `Porting Guide `__ diff --git a/lib/ansible/release.py b/lib/ansible/release.py index 00b8fbd5c35..eae3434ce3b 100644 --- a/lib/ansible/release.py +++ b/lib/ansible/release.py @@ -17,6 +17,6 @@ from __future__ import annotations -__version__ = '2.19.0rc1.post0' +__version__ = '2.19.0rc2' __author__ = 'Ansible, Inc.' __codename__ = "What Is and What Should Never Be"