# Boilerplate for Ansible release announcements This example of a [recent Ansible release announcement](https://groups.google.com/g/ansible-devel/c/GFgeFOxKgaA) is the basis for this boilerplate. **NOTE**: Annoucements go to the devel mailing list only for alphas and betas. Most of this is boilerplate, but the What's New section at the top includes: * a list of what is added in the matching core release - We can gather this from the porting guide entries for core. * links to the relevent changelogs. ## Crafting What's New Using [Ansible 7](https://github.com/ansible/ansible/blob/devel/docs/docsite/rst/porting_guides/porting_guide_7.rst) as an example: 1. Find the porting guide, and copy the top section, and trim down to a set of bullet points that are most important. We don't have to repeat everything but focus on what seems like a Big Deal (tm). The following is the result of this that should be in the release announcement: * Variables are now evaluated lazily; only when they are actually used. For example, in ansible-core 2.14 an expression ``{{ defined_variable or undefined_variable }}`` does not fail on ``undefined_variable`` if the first part of ``or`` is evaluated to ``True`` as it is not needed to evaluate the second part. * Python 3.9 on the controller node is a hard requirement for this release. 2. Find the list of added or removed collections from the porting guide. - ibm.spectrum_virtualize (version 1.9.0) - inspur.ispim (version 1.0.1) - purestorage.fusion (version 1.1.1) - vultr.cloud (version 1.1.0) 3. Scan the porting guide for any other noteworthy items. Focus on Breaking Changes. Ansible 7 so far has none listed. 4. Find links to the updated changelogs for the core and Ansible release (2.14 and 7 in this example). ## Ansible 7 What's New Draft What's New in `ansible-core` 2.14: * Variables are now evaluated lazily; only when they are actually used. For example, in ansible-core 2.14 an expression ``{{ defined_variable or undefined_variable }}`` does not fail on ``undefined_variable`` if the first part of ``or`` is evaluated to ``True`` as it is not needed to evaluate the second part. * Python 3.9 on the controller node is a hard requirement for this release. * At startup the filesystem encoding and locale are checked to verify they are UTF-8. If not, the process exits with an error reporting the errant encoding. If you were previously using the ``C`` or ``POSIX`` locale, you may be able to use ``C.UTF-8``. If you were previously using a locale such as ``en_US.ISO-8859-1``, you may be able to use ``en_US.UTF-8``. Collections added to Ansible 7: - ibm.spectrum_virtualize (version 1.9.0) - inspur.ispim (version 1.0.1) - purestorage.fusion (version 1.1.1) - vultr.cloud (version 1.1.0) Other new or notworthy changes: (this section is blank so far so can be ignored.)