:param metadata: distutils metadata object.
    :param with_release_notes: if true, will create the release notes.
    :type with_release_notes: bool
    :param with_authors: if true, will create the authors file.
    :type with_authors: bool
    :param with_changelog: if true, will create the release notes file.
    :type with_changelog: bool
    :param bugtracker_url: URL for the bugtracker of the project.
    :type bugtracker_url: str
    :returns metadata: the updated distutils metadata.

def distutils_autosemver_case(
    metadata, with_release_notes=False, with_authors=True, with_changelog=True,
    bugtracker_url=None,
):
    """
    :param metadata: distutils metadata object.
    :param with_release_notes: if true, will create the release notes.
    :type with_release_notes: bool
    :param with_authors: if true, will create the authors file.
    :type with_authors: bool
    :param with_changelog: if true, will create the release notes file.
    :type with_changelog: bool
    :param bugtracker_url: URL for the bugtracker of the project.
    :type bugtracker_url: str
    :returns metadata: the updated distutils metadata.
    """
    metadata.version = pkg_version()
    if with_authors:
        create_authors()

    if with_release_notes:
        create_releasenotes()

    if with_changelog:
        create_changelog()

    metadata._autosmever = True

    return metadata