Skip to content

Releases: PainterQubits/paramdb

v0.15.2

28 Jun 20:31
e5fb593
Compare
Choose a tag to compare
  • ParamDataFrame now saves and loads DataFrames to and from Pickle files instead of CSV files.

v0.15.1

26 Jun 20:06
e4b175c
Compare
Choose a tag to compare
v0.15.1 Pre-release
Pre-release

Fixed

  • ParamDict treats dunder names (e.g. __init__) as attributes, allowing internal Python functionalities to work.

v0.15.0

22 Jun 02:06
831a420
Compare
Choose a tag to compare
v0.15.0 Pre-release
Pre-release

Added

  • Added ParamDB.__repr__() for better debugging.

Changed

  • ParamDB.commit() now has a raw_json option, allowing a raw JSON string to be committed to the database.
  • Updated the underlying JSON representation to be more self-describing; see ParamDB.load() for the new format specification.

v0.14.0

18 Jun 19:32
97d95ce
Compare
Choose a tag to compare
v0.14.0 Pre-release
Pre-release

Changed

  • The option decode_json in ParamDB.load() was replaced with raw_json, which allows loading the raw JSON string from the database.
  • The order of data for ParamData objects in the underlying JSON representation was changed; see ParamDB.load() for the new order.

Removed

  • ParamDBKey.WRAPPER was removed in favor of encoding these values using ParamDBKey.PARAM with a class name of None.

v0.13.0

14 Jun 19:42
e76d3ea
Compare
Choose a tag to compare
v0.13.0 Pre-release
Pre-release

Added

  • The timestamps of non-ParamData children are now tracked internally and can be accessed via the new method ParamData.child_last_updated().
  • The class ParamDBKey contains the keys used in the JSON representation of a commit.

Changed

  • ParamDict dot notation now treates names of existing attributes and names of class type annotations as attributes (rather than treating all names beginning with underscores as attributes).
  • The JSON format of a commit has been changed, as specified in the docstring for ParamDB.load().
  • ParamData.to_dict() and ParamData.from_dict() have been replaced by ParamData.to_json() and ParamData.from_json().

Removed

  • Parameter primitive classes have been replaced by the new timestamp tracking.

v0.12.0

08 May 18:16
6430d81
Compare
Choose a tag to compare
v0.12.0 Pre-release
Pre-release

Added

  • If Pydantic is installed, parameter data classes automatically have Pydantic type validation enabled.
  • Parameter primitives classes ParamInt, ParamFloat, ParamBool, ParamStr, and ParamNone.
  • Parameter file classes ParamFile and ParamDataFrame.

Changed

  • All ParamData objects now internally track the latest time that they or any of their children were last updated, which is returned by ParamData.last_updated.
  • Param and Struct are combined into a single class ParamDataclass.

v0.11.0

31 Jan 19:05
b9ce3fb
Compare
Choose a tag to compare
v0.11.0 Pre-release
Pre-release

Added

  • ParamDB.load_commit_entry() loads a commit entry by ID or the most recent commit.
  • ParamDB.commit_history_with_data() to retrieve the commit history with data.
  • CommitEntryWithData to store a commit entry containing data.

Changed

  • ParamDB.commit() returns a CommitEntry instead of the commit ID.

Removed

  • ParamDB.latest_commit is replaced by ParamDB.load_commit_entry()

v0.10.2

05 Dec 19:10
a9d8723
Compare
Choose a tag to compare
v0.10.2 Pre-release
Pre-release

Changed

  • Change supported Python versions from >=3.9,<3.13 to ^3.9 for better compatibility
    with other Poetry projects and future versions of Python.

v0.10.1

07 Nov 00:00
1a13e8c
Compare
Choose a tag to compare
v0.10.1 Pre-release
Pre-release

Added

  • Support for Python 3.12

v0.10.0

30 Aug 22:03
18c4bc0
Compare
Choose a tag to compare
v0.10.0 Pre-release
Pre-release

Added

  • Support for Python 3.9

Removed

  • Parameter dataclass bases (Param and Struct) no longer set kw_only to True by
    default (since this feature does not exist in Python 3.9).