Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Version 1.15.0 (2026-10-12)¶
Added: support for Python 3.15
Changed: the
repositoryargument inaudb.publish()is now optional, whenprevious_versionis notNone. The database is then published in the same repository as its previous versionChanged: lock cache with
filelock.FileLockinstead offilelock.SoftFileLock. This has the advantage that the cache can no longer be blocked by leftover lock files. The downside is that we no longer support shared caches across different platformsRemoved: support for Python 3.10
Fixed: missing space character in verbose message of
audb.publish()
Version 1.14.0 (2026-07-22)¶
Changed: improved error message of
audb.load(), when a requested media file cannot be found in the requested tablesRemoved: deprecated flavor sampling rate of 22500 Hz
Fixed: file extensions of non-audio media files, e.g. JSON files, are no longer replaced by the flavor format in table indices, and in the file paths returned by
audb.load_media()andaudb.stream(), when loading a database with a format flavorFixed: databases containing non-audio media files are now marked as complete in the cache, when loaded with a format flavor
Fixed: non-audio media files and table files are no longer downloaded again from the backend, but looked up in the cache, when loading a database with a format flavor
Version 1.13.0 (2026-07-01)¶
Changed: depend on
audbackend[all]>=3.0.0Removed: support for Artifactory backends
Fixed: load/publish animation for terminals that default to bold font
Fixed:
audb.publish(..., previous_version="latest")now also looks for the latest version in the repository the database should be published to when not listed inaudb.config.REPOSITORIES
Version 1.12.1 (2026-06-19)¶
Fixed:
audb.available()on Artifactory backends
Version 1.12.0 (2026-06-08)¶
Added: support for Python 3.14
Added: support for
pandas>=3.0Added: support for the Artifactory backend on Python 3.13
Added:
num_workersargument toaudb.available(). This decreases lookup time on MinIO/S3 backends proportional to the number of workersAdded: extra animation to the database name when loading or publishing data with
verbose=TrueChanged: depend on
audformat>=1.4.2Changed: depend on
audbackend[all]>=2.4.0Changed: speed up looking for missing files in
audb.load_media()Changed: speed up lookups of multiple files in the dependency table
Changed: speed up
import audbby using lazy importsChanged: speed up
audb.versions()andaudb.latest_version()on MinIO/S3 backendsChanged: only acquire lock for cache folder if the stored database is not complete
Changed: exclude
tests/anddocs/folders from the Python packageRemoved: Python 3.9 support
Fixed: error message for missing files in
audb.publish(). It does now state clearly that files are missing and not tablesFixed: ensure we start with a clean temporary folder when downloading files
Fixed: only scan for missing files when we already have some files in the cache
Version 1.11.4 (2025-07-22)¶
Changed: restrict publishing of a new version of a database with dependencies to a previous version to the same repository as the previous version
Changed: skip media files without audio when requesting a flavor, e.g. don’t raise an error for a JSON file
Fixed:
audb.stream()forpyarrow>=21.0.0
Version 1.11.3 (2025-02-20)¶
Changed: reduce the timeout for acquiring a lock for a cache folder from infinity to 24h
Changed: show a user warning if a lock for a cache folder cannot be acquired within 2s. The warning message suggests how to check whether the existing lock file needs to be deleted manually
Version 1.11.2 (2025-02-03)¶
Added: support for Artifactory backend in Python 3.12
Changed: depend on
audbackend>=2.2.2
Version 1.11.1 (2025-01-06)¶
Added:
repositoriesargument toaudb.available()to limit it to selected repositoriesChanged: ensure
audb.Repositoryis hashableFixed: default value for
audb.config.REPOSITORIESin documentation
Version 1.11.0 (2024-12-06)¶
Added: a sampling rate of 24000 Hz as flavor
Added: a sampling rate of 22050 Hz as flavor
Added: support for Python 3.13 (without Artifactory backend)
Added: support for Python 3.12 (without Artifactory backend)
Changed: switch default repository to
audb-public, hosted on S3Changed:
audb.Repository.create_backend_interface()andaudb.publish()now raise aValueErrorfor a repository with non-registered backends, or an Artifactory backend under Python>=3.12Changed: skip non-registered backends without raising an error in all functions with read-only access to repositories
Changed: simplify quickstart section of the documentation
Changed: depend on
audbackend>=2.2.1Changed: depend on
audeer>=2.2.0Deprecated: a sampling rate of 22500 Hz as flavor
Removed: file-system repository from default configuration
Fixed: handle an empty configuration file
Version 1.10.2 (2024-11-18)¶
Fixed: remove extra
"/"at end of dataset names inaudb.available()for S3 and Minio backends
Version 1.10.1 (2024-11-18)¶
Added:
"s3"as a registered backend nameChanged: depend on
audbackend>=2.2.0Changed: make Artifactory backend optional, to allow importing
audbin Python>=3.12Fixed: speedup
audb.available()for S3 and Minio backends
Version 1.10.0 (2024-11-04)¶
Added: support for repositories on S3 and MinIO servers, using the
miniobackend ofaudbackendChanged: depend on
audbackend>=2.1.0
Version 1.9.0 (2024-08-22)¶
Added: pseudo-streaming support with
audb.stream(), which returns the newaudb.DatabaseIteratorobject. In each iteration it will load a few rows from a requested table and downloads corresponding media filesAdded:
mapargument toaudb.load_table(), which behaves identical to themapargument ofaudformat.Database.get()Added:
pickle_tablesargument toaudb.load(),audb.load_to()andaudb.load_table()with default value ofTrue. It can be used to disable storing tables as pickle files in cache/root folderFixed:
audb.load_table()now only loads additional misc tables, that are used as scheme labels inside the requested table, and not in the whole database
Version 1.8.0 (2024-07-10)¶
Added: support for publishing tables as parquet files
Changed: depend on
audeer >=2.1.0Changed: depend on
audformat >=1.2.0Changed: depend on
pandas >=2.1.0Fixed: update progress bar at least every second in
audb.load(),audb.load_attachment(),audb.load_media(),audb.load_tables(),audb.load_to(),audb.publish()Removed: support for Python 3.8
Version 1.7.4 (2024-06-25)¶
Fixed: ensure correct data types in dependency table when loaded from a version in cache, stored by
audb<=1.6.3
Version 1.7.3 (2024-06-04)¶
Fixed: ensure correct data types in dependency table when loaded from cache
Fixed: publishing an update of a database when the previous version was stored in cache by an older version of
audbFixed: loading of database attachments when
audb.config.CACHE_ROOTandaudb.config.SHARED_CACHE_ROOTpoint to the same folderFixed: ensure
audb.versions()does not fail when database is not available in a repositoryFixed: loading of dependency table from cache when the previous version was stored in cache by a different
pandasversion
Version 1.7.2 (2024-05-16)¶
Fixed: loading of dependency table from cache under Python 3.8, when stored by an older version of
audb
Version 1.7.1 (2024-05-14)¶
Fixed: require
pandas>=2.0.1forpyarrowbased data types
Version 1.7.0 (2024-05-10)¶
Added: experimental support for text files as media files
Added: dependency on
pyarrowAdded:
audb.Repository.backend_registrythat maps repository names likeartifactoryto corresponding backend classes, e.g.audbackend.backend.ArtifactoryAdded:
audb.Repository.register()to add an entry toaudb.Repository.backend_registryAdded:
audb.Repository.create_backend_interface()returns a backend interface to access files in the repositoryChanged: improve speed of loading dependency table to the cache. E.g. for version 1.0.0 of the database musan loading time is reduced by 35%
Changed: improve speed of downloading a database to the cache. E.g. for version 1.0.0 of the database musan loading time is reduced by 40% when using 8 threads
Changed: depend on
audbackend>=2.0.0Changed: dependency table dataframe returned by
audb.Dependencies.__call__()now usespyarrowbased data typesChanged: dependency table is now stored as a PARQUET file on the backend, instead as a CSV file
Fixed:
audb.versions()for non-existing repositoriesFixed: documentation of
audb.Repository.__eq__()
Version 1.6.5 (2024-03-28)¶
Added:
audb.Dependencies.__eq__()to compare two dependency tablesFixed: let
audb.available()skip incomplete datasets instead of raising an error
Version 1.6.4 (2024-02-23)¶
Fixed: in
audb.publish()updating of multi-file archives that have been published before the version given by theprevious_versionargumentFixed: speed up most methods of
audb.DependenciesFixed: dtype of the index of the data frame returned by
audb.Dependencies.__call__()is nowstringinstead ofobject
Version 1.6.3 (2024-01-30)¶
Fixed:
audb.versions()whenaudb.config.REPOSITORIESincludes non-existing Artifactory repositories or Artifactory repositories without read access
Version 1.6.2 (2024-01-25)¶
Changed: depend on
audeer>=2.0.0Changed: speed up
audb.versions()Fixed:
pandasdeprecation warningsFixed: make documentation independent of the number of public datasets
Version 1.6.1 (2023-11-16)¶
Fixed: accessing a database in any repository listed after a repository with access restrictions or a non-existing repository in
audb.config.REPOSITORIES
Version 1.6.0 (2023-10-17)¶
Added: support for new backend API
Changed: depend on
audbackend>=1.0.0
Version 1.5.2 (2023-09-26)¶
Added: BibTeX reference to README
Fixed: link to Artifactory anonymous access in the documentation
Fixed: enforce reproducible order of media files entries in dependency table during publication
Version 1.5.1 (2023-05-04)¶
Changed: require
audeer>=1.20.0Fixed:
audb.load(),audb.load_to(),audb.load_media(), andaudb.remove_media()were failing withaudeer==1.20.0under Windows
Version 1.5.0 (2023-04-27)¶
Added: support loading and publishing of database attachments (
audformat.Attachment)Added:
audb.load_attachment()to load a single attachment of a databaseAdded:
audb.info.attachments()to return the attachments entry of a database headerAdded:
attachmentsargument toaudb.load()to load only specific attachments of a databaseChanged: raise
RuntimeErrorinaudb.publish()if the file extension of a media file contains uppercase lettersChanged: raise
RuntimeErrorinaudb.publish()if a table ID or attachment ID contains a character not in[A-Za-z0-9._-]Changed: raise
ValueErrorinaudb.publish()ifversionorprevious_versionare not conform toaudeer.StrictVersionChanged: use emodb v1.4.1 for documentation examples
Changed: require
audbackend<1.0.0asaudbackendwill introduce breaking changesFixed: speed up
audb.load_to()when loading databases with large tables usingonly_metadata=True
Version 1.4.2 (2023-02-13)¶
Added: support for Python 3.10
Added: document optional needed overwrite permissions for
audb.publish()when continuing a canceled publishing commandChanged: require
audbackend>=0.3.17Changed: split API documentation into sub-pages for each function
Version 1.4.1 (2022-10-17)¶
Changed:
audb.load()andaudb.load_to()extract archives in the corresponding database folder inside theaudbcache instead of the system-wide temporary folder
Version 1.4.0 (2022-08-18)¶
Added: support for
audformat’s newly introduced misc tablesAdded:
audb.info.misc_tables()Added:
load_tables=Trueargument toaudb.info.header()andaudb.info.schemes()specifying if misc tables used as labels in a scheme should be downloadedChanged: require
audformat >=0.15.2Changed: use version 1.3.0 of emodb in the documentation examples
Removed: support for Python 3.7
Version 1.3.0 (2022-07-14)¶
Added: lock cache folder with a lock file when modifying it
Added:
verboseargument toaudb.dependencies()Added:
audb.info.files()Added:
mediaandtablesarguments to appropriate functions inaudb.infosub-moduleAdded:
only_metadataargument toaudb.load_to()Added:
audb.publish()raisesValueErrorifprevious_versionis not smaller thanversionChanged:
audb.publish()does not require unchanged media files to exists in database folderChanged:
audb.load()raisesValueErrorif a table or media file is requested that is not part of the databaseFixed: add missing exceptions to docstrings
Version 1.2.6 (2022-04-01)¶
Changed: use emodb v1.2.0 for examples and tests
Changed: depend on
audobject>=0.5.0Changed: depend on
audformat>=0.14.0Changed: depend on
audeer>=1.18.0Fixed: depend on
audbackend>=0.3.15to avoid the possibility of an error when requesting versions of a databaseFixed: add full Windows support and tests
Fixed: only create tmp folder when needed in
audb.load()Removed:
include/excludekeyword argumentsRemoved:
audb.get_default_cache_root()
Version 1.2.5 (2022-02-23)¶
Fixed: make moving of local files Windows compatible
Fixed: create folder tree more efficiently when loading to cache
Version 1.2.4 (2022-02-07)¶
Changed: depend on
audformat>=0.13.3Fixed: conversion of pickle protocol 5 files to pickle protocol 4 in cache
Version 1.2.3 (2022-02-01)¶
Added: more examples to the API docstrings
Changed: depend on
audformat>=0.13.2Changed: use pickle protocol-4 for caching dependencies
Version 1.2.2 (2022-01-03)¶
Fixed: small improvements to API documentation
Fixed: speed up
audb.load_to()storing of CSV files
Version 1.2.1 (2021-11-18)¶
Fixed: build documentation inside the release process with Python 3.8
Version 1.2.0 (2021-11-18)¶
Added: support for Python 3.9
Added: store file duration of the database in the duration cache of
audformat.DatabaseChanged:
audb.publish()now raises an error if a table contains duplicated index entriesFixed: several speed ups when loading or publishing a database
Fixed: the
rootattribute of the returned database object fromaudb.load_to()does now point to the correct folder and not the temporal folderRemoved: support for Python 3.6
Version 1.1.9 (2021-08-05)¶
Added:
nameargument toaudb.cached()to limit search to given database nameChanged: speedup
audb.available()by 100%Changed: use
audiofile.duration(..., sloppy=True)for estimating durations for dependency filesFixed:
audb.cached()for empty or missing shared cache
Version 1.1.8 (2021-08-03)¶
Fixed: set
bit_depthto0instead ofNonefor non SND formats in the dependency table
Version 1.1.7 (2021-08-03)¶
Fixed: store metadata in dependency table for non SND formats like MP3 and MP4 files
Version 1.1.6 (2021-07-29)¶
Added: documentation sub-section on database duration info
Fixed: made compatible with future versions of
pandasFixed: missing
audb.Repositorydocumentation
Version 1.1.5 (2021-05-26)¶
Fixed:
audb.load()raises now error for wrong keyword argumentFixed: look also in shared cache for partial loaded databases
Version 1.1.4 (2021-05-19)¶
Fixed: version number shown in the documentation table of content
Version 1.1.3 (2021-05-18)¶
Added: discussion of needed system packages for handling audio files in the documentation
Changed: allow only to publish portable databases
Fixed: macOS support by relying on new
audresampleversion
Version 1.1.2 (2021-05-06)¶
Added:
audb.load_media()Added:
audb.load_table()Added: documentation on how to configure access rights for shared cache folder
Changed: speedup
audb.DependenciesmethodsChanged: speedup
audb.infofunctionsChanged:
audb.infouses cache as wellChanged: use emodb 1.1.1 in documentation
Changed: depend on
audformat>=0.11.0Fixed: allow
audb.load()to work offline if database is cached
Version 1.1.1 (2021-04-30)¶
Fixed: update removal version of deprecated stuff to 1.2.0
Version 1.1.0 (2021-04-29)¶
Added:
audb.Dependencies._remove()Changed:
audb.Dependenciesinternally usespd.DataFrameinstead ofdictChanged: store dependencies with pickle to speed up loading
Changed: versions of the same flavor share dependency file
Changed: if possible
audb.load()copies tables and media files from other versions in the cacheChanged:
audb.Dependencies._add_media()is now privateChanged:
audb.Dependencies._add_meta()is now privateChanged:
audb.Dependencies.is_removedrenamed toaudb.Dependencies.removedFixed:
audb.load()considers format when searching the cacheFixed:
audb.load()considers format when resolving missing mediaFixed:
audb.available()correctly returns versions of the same database from multiple repositoriesFixed: add missing link to
emodbexample repositoryRemoved:
audb.Dependencies.data
Version 1.0.4 (2021-04-09)¶
Changed:
audb.Dependencies.bit_depth()now always returns an integerChanged:
audb.Dependencies.channels()now always returns an integerChanged:
audb.Dependencies.duration()now always returns a floatChanged:
audb.Dependencies.sampling_rate()now always returns an integerFixed:
audb.info.duration()for databases that contain files with a duration of 0sFixed: remove dependency to
firepackage
Version 1.0.3 (2021-04-08)¶
Fixed: docstring of
audb.exists()falsely claimed that it was not returning a booleanFixed: several typos in documentation
Version 1.0.2 (2021-04-07)¶
Fixed: renamed
latest_onlyargument ofaudb.available()toonly_latestas it was before
Version 1.0.1 (2021-04-07)¶
Fixed: appearance of documentation TOC by requirering
docutils<0.17
Version 1.0.0 (2021-04-07)¶
Added: first public release
Added:
audb.info.author()Added:
audb.info.license()Added:
audb.info.license_url()Added:
audb.info.organization()Added:
audb.Dependencies.archivespropertyAdded: section on publication in the documentation
Added: introduction texts to documentation
Changed: raise error for conversion of non-supported format
Changed:
audb.exists()to return boolChanged: rename
audb.lookup_repository()toaudb.repository()Changed: one combined section on load in the documentation
Fixed: data types in dataframe returned by
audb.cached()Fixed: support files stored in archives with nested folders
Fixed: listing of cache entries
Removed: command line interface
Removed:
audb.cached_databases()Removed:
audb.definemodule
Version 0.93.0 (2021-03-29)¶
Added:
completecolumn inaudb.cached()Added:
previous_versionargument toaudb.publish()Added: backward compatibility with
audb <0.90Changed: cache flavor path to name/version/flavor_id
Changed: use open source releases of
audbackend,audobject, andaudresampleChanged: require
audformat>=0.10.0Changed: rename
audb.load_original_to()toaudb.load_to()Changed: shorten flavor ID in cache
Changed: filter operations and
only_metadatano longer part ofaudb.FlavorDeprecated:
includeandexcldueargumentsFixed: looking for latest version across repositories
Fixed:
Flavor.destinationfor nested pathsFixed: allow for cross-backend dependencies for
audb.publish()Fixed:
audb.remove_media()can now be called several times
Version 0.92.1 (2021-03-19)¶
Changed: enforce
mixdown=Falsefor mono file flavorsFixed: global config file was missing in PyPI package
Version 0.92.0 (2021-03-09)¶
Added: configuration file
Changed: use external package for backend implementations
Version 0.91.0 (2021-02-19)¶
Added:
audb.Backend.latest_version()Added:
audb.Backend.create()Added:
audb.Backend.register()Added:
audb.lookup_repository()Added:
config.REPOSITORY_PUBLISHFixed: update
firedependencyFixed: remove
config.GROUP_IDFixed: use
sphinx>=3.5.1to fix inherited attributes in documentation
Version 0.90.3 (2021-02-01)¶
Changed: define data types when reading dependency file
Version 0.90.2 (2021-01-28)¶
Added:
data-provate-localto the default repositories
Version 0.90.1 (2021-01-25)¶
Fixed: CHANGELOG
Version 0.90.0 (2021-01-22)¶
Added: initial release