Skip to content

Releases: PainterQubits/paramdb

v0.9.1

09 Aug 18:25
43e8ba1
Compare
Choose a tag to compare
v0.9.1 Pre-release
Pre-release

Changed

  • Custom ParamData subclasses have an improved error message if extra keyword arguments are passed.

v0.9.0

29 Jun 19:01
7b85ca3
Compare
Choose a tag to compare
v0.9.0 Pre-release
Pre-release

Added

  • ParamDB.path to retrieve the database path.
  • ParamDB.latest_commit to retrieve the latest commit entry.

v0.8.0

10 Jun 00:17
a677eb4
Compare
Choose a tag to compare
v0.8.0 Pre-release
Pre-release

Changed

  • Documentation website moved to Read the Docs.

Added

  • Badges for latest PyPI version, license, CI status, Codecov, and docs website build.

v0.7.0

19 May 20:13
Compare
Choose a tag to compare
v0.7.0 Pre-release
Pre-release

Changed

  • ParamDB.commit() returns the ID of the newly created commit.
  • ParamDB.load() converts datetime objects to local time regardless of the timezone
    stored internally in the database.

v0.6.0

03 May 18:05
Compare
Choose a tag to compare
v0.6.0 Pre-release
Pre-release

Added

  • ParamDB.dispose() function for cases where it is required to fully clean up the
    database before the program ends, such as in testing suites.

Changed

  • Commits get the current time in a way that can be mocked in tests where we
    want to control the time.

v0.5.0

11 Apr 18:27
Compare
Choose a tag to compare
v0.5.0 Pre-release
Pre-release

Changed

  • datetime objects (currently used in CommitEntry.timestamp and
    ParamData.last_updated) are timezone-aware.
  • If ParamDB load_classes parameter is False, datetime and Astropy Quantity
    objects are not loaded either.

v0.4.0

28 Mar 18:30
Compare
Choose a tag to compare
v0.4.0 Pre-release
Pre-release

Added

  • ParamDB load_classes parameter can be set to False to load parameter data classes as
    dictionaries (created to allow ParamView to access data)
  • Keys for special properties in dictionary representations of parameter data can be
    imported
  • ParamDict returns keys in __dir__() so that they are suggested by interactive prompts
    like IPython.

Changed

  • ParamDict uses dict_keys, dict_values, and dict_items instead of default KeysView,
    ValuesView, and ItemsView since they print nicely

v0.3.0

14 Mar 18:22
Compare
Choose a tag to compare
v0.3.0 Pre-release
Pre-release

Added

  • Ability to specify start and end indices in ParamDB.commit_history()
  • Support for scalar astropy.units.Quantity objects
  • Parameter dataclass bases (Param and Struct) automatically convert subclasses into
    dataclasses kw_only as True by default

Changed

  • ParamDict can be initialized from keyword arguments in addition to dictionaries

v0.2.0

08 Mar 22:23
Compare
Choose a tag to compare
v0.2.0 Pre-release
Pre-release

Added

  • Ability to specify commit ID in ParamDB.load()
  • ParamData.parent and ParamData.root properties
  • Mixins ParentType[PT] and RootType[PT] to type cast parent and root
  • Parameter collection classes ParamList and ParamDict
  • Database now ignores dataclass fields where init is False

Removed

  • CommitNotFoundError (replaced with built-in IndexError)
  • Private _last_updated dataclass field in parameter dataclasses

v0.1.0

24 Feb 19:16
Compare
Choose a tag to compare
v0.1.0 Pre-release
Pre-release

Added

  • Parameter data base class ParamData
  • Parameter dataclass bases (Param and Struct)
  • Database class ParamDB to store parameters in a SQLite file
  • Ability to retrieve the commit history as CommitEntry objects