ancestor: null
releases:
  0.1.0:
    changes:
      release_summary: Initial release.
    fragments:
    - initial_release.yml
    release_date: '2022-04-06'
  1.0.0:
    changes:
      major_changes:
      - 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 (https://github.com/ansible-community/antsibull-core/pull/2).
      minor_changes:
      - Remove unused code (https://github.com/ansible-community/antsibull-core/pull/1).
      release_summary: First stable release.
      removed_features:
      - Remove package ``antsibull_core.utils.transformations`` (https://github.com/ansible-community/antsibull-core/pull/1).
    fragments:
    - 1-cleanup.yml
    - 1.0.0.yml
    release_date: '2022-04-10'
  1.0.1:
    changes:
      bugfixes:
      - Fix detection of ansible-core devel checkouts (https://github.com/ansible-community/antsibull-core/pull/4).
      release_summary: Bugfix release.
    fragments:
    - 1.0.1.yml
    - 4-devel-detection.yml
    release_date: '2022-06-10'
  1.1.0:
    changes:
      minor_changes:
      - The files in the source repository now follow the `REUSE Specification <https://reuse.software/spec/>`_.
        The only exceptions are changelog fragments in ``changelogs/fragments/`` (https://github.com/ansible-community/antsibull-core/pull/5).
      release_summary: Maintenance release.
    fragments:
    - 1.1.0.yml
    - 5-licenses.yml
    release_date: '2022-07-31'
  1.2.0:
    changes:
      bugfixes:
      - Adjust signature of ``DepsFile.write()`` to work around bug in antsibull (https://github.com/ansible-community/antsibull-core/pull/6).
      deprecated_features:
      - The ``DepsFile.write()`` method will require the first parameter to be a ``packaging.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 (https://github.com/ansible-community/antsibull-core/pull/6).
      minor_changes:
      - Improve typing (https://github.com/ansible-community/antsibull-core/pull/6).
      - Make config file management more flexible to allow project-specific config
        file format extensions for the explicitly passed configuration files (https://github.com/ansible-community/antsibull-core/pull/7).
      release_summary: Feature release.
    fragments:
    - 1.2.0.yml
    - 6-typing.yml
    - 7-config.yml
    release_date: '2022-08-20'
  1.3.0:
    changes:
      bugfixes:
      - Fix async file copying helper (https://github.com/ansible-community/antsibull-core/pull/11).
      minor_changes:
      - Allow to write Python dependencies as ``_python`` key into build and dependency
        files (https://github.com/ansible-community/antsibull-core/pull/10).
      release_summary: Feature and bugfix release.
    fragments:
    - 1.3.0.yml
    - 10-python_requires.yml
    - 11-copy-fix.yml
    release_date: '2022-10-05'
  1.3.0.post0:
    changes:
      release_summary: Erroneously released version.
    release_date: '2022-10-05'
  1.3.1:
    changes:
      release_summary: Maintenance release to fix unwanted ``1.3.0.post0`` release.
    fragments:
    - 1.3.1.yml
    release_date: '2022-10-05'
  1.4.0:
    changes:
      bugfixes:
      - Remove use of blocking IO in an async function (https://github.com/ansible-community/antsibull-core/pull/13/).
      minor_changes:
      - Fix overly restrictive file name type annotations. Use ``StrOrBytesPath``
        type annotation instead of ``str`` for functions that accept a file name (https://github.com/ansible-community/antsibull-core/pull/14).
      release_summary: Bugfix and feature release.
    fragments:
    - 1.4.0.yml
    - 13-no-blocking-io-async.yaml
    - 14-StrOrBytesPath.yaml
    release_date: '2022-11-27'
  2.0.0a1:
    changes:
      breaking_changes:
      - 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 (https://github.com/ansible-community/antsibull-core/pull/16).
      deprecated_features:
      - The ``antsibull_core.compat`` module deprecates the ``metadata`` module. Use
        ``importlib.metadata`` instead, which is available from Python 3.8 on (https://github.com/ansible-community/antsibull-core/pull/16).
      - The ``antsibull_core.compat`` module deprecates the functions ``asyncio_run``,
        ``best_get_loop``, and ``create_task``. Replace ``asyncio_run`` with ``asyncio.run``,
        ``create_task`` with ``asyncio.create_task``, and ``best_get_loop`` with ``asyncio.get_running_loop``
        (https://github.com/ansible-community/antsibull-core/pull/16).
      minor_changes:
      - Add a ``store_yaml_stream`` function to ``antsibull_core.yaml`` to dump YAML
        to an IO stream (https://github.com/ansible-community/antsibull-core/pull/24).
      release_summary: Alpha release of 2.0.0.
    fragments:
    - 16-compat-deprecation.yml
    - 2.0.0a1.yml
    - 24.yaml
    release_date: '2022-12-09'
  2.0.0a2:
    changes:
      breaking_changes:
      - Remove ``breadcrumbs``, ``indexes``, and ``use_html_blobs`` from global antsibull
        config handling. These options are only used by antsibull-docs, which already
        validates them itself (https://github.com/ansible-community/antsibull-core/pull/54).
      - The ``install_package()`` method of ``antsibull_core.venv.VenvRunner`` now
        returns a ``subprocess.CompletedProcess` object instead of an ``sh.RunningCommand``.
        The rest of the function signature remains the same. Most callers should not
        need to access the output to begin with (https://github.com/ansible-community/antsibull-core/pull/50).
      bugfixes:
      - Remove improper usage of ``@functools.cache`` on async functions in the ``antsibull_core.ansible_core``
        module (https://github.com/ansible-community/antsibull-core/pull/67).
      - Restrict the ``pydantic`` dependency to major version 1 (https://github.com/ansible-community/antsibull-core/pull/35).
      - Restrict the ``sh`` dependency to versions before 2.0.0 (https://github.com/ansible-community/antsibull-core/pull/31).
      deprecated_features:
      - Deprecate the ``get_command()`` methods of ``antsibull_core.venv.VenvRunner`
        and ``antsibull_core.venv.FakeVenvRunner``. These methods will be removed
        in antsibull-core 3.0.0. Use the new ``log_run()`` and ``async_run()`` methods
        instead (https://github.com/ansible-community/antsibull-core/pull/50).
      - 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
        (https://github.com/ansible-community/antsibull-core/pull/59).
      minor_changes:
      - Add ``async_log_run()`` and ``log_run()`` methods to ``antsibull_core.venv.VenvRunner`
        and ``antsibull_core.venv.FakeVenvRunner``. These should be used instead of
        ``get_command()`` (https://github.com/ansible-community/antsibull-core/pull/50).
      - Add a new ``antsibull_core.subprocess_util`` module to help run subprocesses
        output and log their output (https://github.com/ansible-community/antsibull-core/pull/40).
      - Allow Galaxy client to communicate with the Galaxy v3 API (https://github.com/ansible-community/antsibull-core/pull/45).
      - Replace internal usage of ``sh`` with the ``antsibull.subprocess_util`` module
        (https://github.com/ansible-community/antsibull-core/pull/51).
      - Use the pypa ``build`` tool instead of directly calling ``setup.py`` which
        is deprecated (https://github.com/ansible-community/antsibull-core/pull/51).
      release_summary: Second alpha release of 2.0.0.
    fragments:
    - 2.0.0a2.yml
    - 31-sh.yml
    - 35-pydantic.yml
    - 40-subprocess.yaml
    - 45-galaxy-v3.yml
    - 50-new-venv.yaml
    - 51-bye-bye-sh.yaml
    - 54-config.yml
    - 67-cache.yaml
    release_date: '2023-04-19'
