# RCSB_UTILS_EC HISTORY
 10-Mar-2019 V0.10 Initial package version
  6-Apr-2019 V0.11 add mode tree list generation
 10-Apr-2019 V0.12 suppress verbose logging
 17-Apr-2019 V0.13 adjust parent node attributes in node list
 24-Jun-2019 V0.14 update development workflow
 14-Aug-2019 V0.15 improve cache management
 29-Aug-2019 V0.16 add module EnzymeDatabaseProvider()
 23-Nov-2019 V0.17 Move pipeline to py38
 24-Nov-2019 V0.18 add normalize() and exists() methods
  8-Dec-2019 V0.19 parse history records looking for EC replacements
 25-Jan-2020 V0.20 add fallback data resource
  3-Feb-2020 V0.21 update dependencies
 25-Jul-2021 V0.22 Make EnzymeDatabaseProvider a subclass of StashableBase, update instal and pipeline
  4-Jan-2022 V0.23 Update list of missing ecIds to reflect latest version of source data
  9-Jan-2023 V0.24 Configuration changes to support tox 4
  8-May-2024 V0.25 Add additional data quality check to file download
  9-Dec-2024 V0.26 Update Azure pipelines to use latest macOS, Ubuntu, and python 3.10
  8-Dec-2025 V0.27 Switch from setuptools to hatch build system and update pipelines to Python 3.13
 20-Oct-2026 V0.28 Send an identifying User-Agent when fetching the enzyme data (the source now rejects the default
                   python-requests User-Agent); log fallback use as a warning with the data's latest change date;
                   log an error if the fallback fetch also fails; remove an unreachable branch in __reload();
                   require rcsb.utils.io >= 1.56
