Topics
Feature release.
- Allow information on removed or deprecated collections to be updated. This is needed to generate a consistent changelog (ansible-community#177).
- Declare support for Python 3.13 (ansible-community#176).
Feature release.
- Allow information on removed collections from previous major releases in collection metadata schema (ansible-community#174).
Feature and bugfix release.
- Add pydantic helper for strict linting (ansible-community#169).
- Allow information on removed collections in collection metadata schema (ansible-community#173).
- Collection metadata removal schema valiation: remove bad check that deprecated redirect replacement major version must be in the future (ansible-community#172).
Feature release adding a new dependency.
- Add schema and validation helper for ansible-build-data's collection meta (ansible-community/ansible-build-data#450, ansible-community#168).
- Antsibull-core now depends on the new project antsibull-fileutils. Some code has been moved to that library; that code is re-imported to avoid breaking changes for users of antsibull-core (ansible-community#166).
Bugfix release.
- Adjust the aiohttp retry GET mananger to use
ClientTimeout
instead of afloat
, since that will be removed in aiohttp 4.0.0 (ansible-community#163). - Bump asyncio requirement to >= 3.3.0 instead of 3.0.0. Version 3.0.0 likely never worked with the retry code that has been in here basically since he beginning (ansible-community#163).
- Make sure that app and lib contexts are cleaned up correctly in case of generator exit (ansible-community#161).
- Make sure that the right
TimeoutError
is used in the HTTP retry util.asyncio.TimeoutError
is a deprecated alias ofTimeoutError
since Python 3.11 (ansible-community#160).
Bugfix release.
- Adjusting ansible-core PyPI code to also accept a filename starting with
ansible_core
, which seems to be in use since ansible-core 2.16.6 due to PEP-625 support in setuptools 69.3.0 (ansible-community#158).
New major release.
- Drop support for building Ansible versions less than 6.0.0 (ansible-community#132).
- Remove
GalaxyClient
's andCollectionDownloader
'sgalaxy_server
arguments. You need to explicitly pass in aGalaxyContext
object instead (ansible-community#131). - antsibull-core now requires major version 2 of the
pydantic
library. Version 1 is no longer supported (ansible-community#122).
- If
ansible_base_url
is provided in a config file, butansible_core_repo_url
is not, its value is no longer used foransible_core_repo_url
(ansible-community#128). - Remove dependency on
sh
(ansible-community#119). - Removed the deprecated field
doc_parsing_backend
fromLibContext
(ansible-community#128). - Removed the deprecated fields
ansible_base_url
,galaxy_url
,pypi_url
, andcollection_cache
fromAppContext
(ansible-community#128). ansible_core
- removeget_ansible_core_package_name()
function. This is no longer necessary now that support for ansible-base has been dropped (ansible-community#132).ansible_core
- remove ansible-core/ansible-base normalization inAnsibleCorePyPiClient
. Data retrieval is only supported foransible-core
(ansible-community#132).antsibull_core.compat
- remove deprecatedasyncio_run
,best_get_loop
,create_task
andmetadata
(ansible-community#124, ansible-community#129).dependency_files
- drop support for_ansible_base_version
and_acd_version
in pieces files._ansible_core_version
and_ansible_version
, respectively, should be used instead (ansible-community#132).venv
- removeget_command()
method fromVenvRunner
andFakeVenvRunner
(ansible-community#119).
- Avoid superfluous network request when trusting the ansible-core download cache (ansible-community#135).
Add support for Python 3.12 and improve subprocess_util
- Declare support for Python 3.12 (ansible-community#103).
subprocess_util.async_log_run()
,subprocess_util.log_run()
, and the corresponding functions invenv
now support passing generic callback functions forstdout_loglevel
andstderr_loglevel
(ansible-community#113).
- Fix typing for
antsibull_core.app_context.app_context()
functions (ansible-community#109). subprocess_util.log_run
- use proper string formatting when passing command output to the logger (ansible-community#116).
Feature release.
- Allow to overwrite the version and the program name when using
antsibull_core.args.get_toplevel_parser()
(ansible-community#96).
New major release
- Add
async_log_run()
andlog_run()
methods toantsibull_core.venv.VenvRunner
andantsibull_core.venv.FakeVenvRunner
. These should be used instead ofget_command()
(ansible-community#50). - Add a
store_yaml_stream
function toantsibull_core.yaml
to dump YAML to an IO stream (ansible-community#24). - Add a new
antsibull_core.subprocess_util
module to help run subprocesses output and log their output (ansible-community#40). - Allow Galaxy client to communicate with the Galaxy v3 API (ansible-community#45).
- Allow the Galaxy downloader to trust its collection cache to avoid having to query the Galaxy server if an artifact exists in the cache. This can be set with the new configuration file option
trust_collection_cache
(ansible-community#78). - Allow to cache ansible-core download artifacts with a new config file option
ansible_core_cache
(ansible-community#80). - Allow to fully trust the ansible-core artifacts cache to avoid querying PyPI with a new config file option
trust_ansible_core_cache
(ansible-community#80). - Allow to skip content check when doing async file copying using
antsibull_core.utils.io.copy_file()
(ansible-community#78). - Avoid using the collection artifact filename returned by the Galaxy server. Instead compose it in a uniform way (ansible-community#78).
- Replace internal usage of
sh
with theantsibull.subprocess_util
module (ansible-community#51). - The fields
ansible_core_repo_url
,galaxy_url
, andpypi_url
have been added to the library context. Ifansible_core_repo_url
is not provided, it will be populated from the fieldansible_base_url
if that has been provided (ansible-community#81). - Use the pypa
build
tool instead of directly callingsetup.py
which is deprecated (ansible-community#51).
- Remove
breadcrumbs
,indexes
, anduse_html_blobs
from global antsibull config handling. These options are only used by antsibull-docs, which already validates them itself (ansible-community#54). - Support for Python 3.6, 3.7, and 3.8 has been dropped. antsibull-core 2.x.y needs Python 3.9 or newer. If you need to use Python 3.6 to 3.8, please use antsibull-core 1.x.y (ansible-community#16).
- The
install_package()
method ofantsibull_core.venv.VenvRunner
now returns asubprocess.CompletedProcess
object instead of ansh.RunningCommand
. The rest of the function signature remains the same. Most callers should not need to access the output to begin with (ansible-community#50).
- Deprecate the
get_command()
methods ofantsibull_core.venv.VenvRunner
andantsibull_core.venv.FakeVenvRunner
. These methods will be removed in antsibull-core 3.0.0. Use the newlog_run()
andasync_run()
methods instead (ansible-community#50). - The
antsibull_core.compat
module deprecates themetadata
module. Useimportlib.metadata
instead, which is available from Python 3.8 on (ansible-community#16). - The
antsibull_core.compat
module deprecates the functionsasyncio_run
,best_get_loop
, andcreate_task
. Replaceasyncio_run
withasyncio.run
,create_task
withasyncio.create_task
, andbest_get_loop
withasyncio.get_running_loop
(ansible-community#16). - The
doc_parsing_backend
option from the library context is deprecated and will be removed in antsibull-core 3.0.0. Applications that need it, such as antsibull-docs, must ensure they allow and validate this option themselves (ansible-community#59). - The fields
ansible_base_url
,galaxy_url
, andpypi_url
of the app context have been deprecated. Use the fieldsansible_core_repo_url
,galaxy_url
, andpypi_url
, respectively, of the library context instead (ansible-community#81).
- The unused
antsibull_core.schemas.config.ConfigModel
model and the unusedantsibull_core.config.read_config
function have been removed (ansible-community#82).
- Fix a bug in Galaxy download code when the filename is found in the cache, but the checksum does not match. In that case, the collection was not copied to the destination, and the code did not try to download the correct file (ansible-community#76).
- Remove improper usage of
@functools.cache
on async functions in theantsibull_core.ansible_core
module (ansible-community#67). - Restrict the
pydantic
dependency to major version 1 (ansible-community#35). - Restrict the
sh
dependency to versions before 2.0.0 (ansible-community#31).
Bugfix and feature release.
- Fix overly restrictive file name type annotations. Use
StrOrBytesPath
type annotation instead ofstr
for functions that accept a file name (ansible-community#14).
- Remove use of blocking IO in an async function (ansible-community#13).
Maintenance release to fix unwanted 1.3.0.post0
release.
Erroneously released version.
Feature and bugfix release.
- Allow to write Python dependencies as
_python
key into build and dependency files (ansible-community#10).
- Fix async file copying helper (ansible-community#11).
Feature release.
- Improve typing (ansible-community#6).
- Make config file management more flexible to allow project-specific config file format extensions for the explicitly passed configuration files (ansible-community#7).
- The
DepsFile.write()
method will require the first parameter to be apackaging.version.Version
object, the second parameter to be a string, and the third parameter a mapping of strings to strings, from antsibull-core 2.0.0 on (ansible-community#6).
- Adjust signature of
DepsFile.write()
to work around bug in antsibull (ansible-community#6).
Maintenance release.
- The files in the source repository now follow the REUSE Specification. The only exceptions are changelog fragments in
changelogs/fragments/
(ansible-community#5).
Bugfix release.
- Fix detection of ansible-core devel checkouts (ansible-community#4).
First stable release.
- From version 1.0.0 on, antsibull-core is sticking to semantic versioning and aims at providing no backwards compatibility breaking changes during a major release cycle (ansible-community#2).
- Remove unused code (ansible-community#1).
- Remove package
antsibull_core.utils.transformations
(ansible-community#1).
Initial release.