Skip to content

Releases: CoCo-R38/Rheel_Data_Management

2.3

25 Mar 19:48
0fa4b5b

Choose a tag to compare

2.3 Update (Type Registry + Optional Type)

2.2 was just an internal version for testing that was never published!

In this update, the Type Registry has a lot of issues fixed, while making it easier to use. Read README for more information on the usage.

Also the Optional[T] type is now natively supported and default for RDM files. Means if you store union types like str | NoneType it will be automatically saved as Optional[str]. But don't worry, inside the code it will still be handled as a normal union type for compatibility. Only the RDM file will display it as an Optional[T] type.

Also you can use Optional as a type like any other:

import rheelDM
from typing import Optional

data = rheelDM.Obj()
data.section("user").set("display_name", Optional[str], None)
# IS THE SAME AS
data.section("user").set("display_name", str | None, None)

2.1

06 Mar 15:30
b1075a9

Choose a tag to compare

2.1

Small bug-fix update that fixes some errors with the validator when handeling complex nested dicts.
Other than that no changes and RDM can be used as before.

2.0

04 Mar 19:48
4bddde4

Choose a tag to compare

2.0

Major Update (v2)

This update features the new Rheel Temporary Data (RTD) file system, which stores data similar to RDM but data expires after some time and becomes unusable.

For detailed changes see source code changes or the README file.

1.7

26 Feb 17:49
2bb799b

Choose a tag to compare

1.7

Conversion Update

  • Store datetime, date, time and Path without quotation marks
  • Fix from_dict() function as it expected dict to be stored with tuples containing type and value
    -> now it accepts both normal dicts and the tuple-version
  • from_dict() now gathers values without a predefined section into a default_section
  • added convert_file() which can convert files like json, toml, yaml and ini into RDM files for you using from_dict()

1.6

24 Feb 20:28
55dc0fa

Choose a tag to compare

1.6

Small Update

This update contains bug fixes and extended features, as well as the minimum python requirement changed to 3.9.
If you encounter any problems on this version, please report them, as the lowest version tested is 3.11.

  • Lowered required python version to 3.9+ instead of 3.13+ (due to generic types, this is the lowest possible version)
  • Added option to load()'s default parameter: default can now be of type bool
    -> load() can now return a bool along Obj
  • add(), multiply() and extend() now support generic types as previously dict[str, int] was not treated as dict

Full Changelog: 1.5...1.6

1.5

24 Feb 15:29
6aa299e

Choose a tag to compare

1.5

Hotfix

  • Actually add NoneType as a supported type as it previously was not recognized by the program

1.4

23 Feb 19:12
42c0cc0

Choose a tag to compare

1.4

This may seem like a small update but it's huge in functionality. You can now change Object values dynamically without having to overwrite them every time. Also you can delete key-value-type pairs now.

Full Changelog:

  • Extended Documentations
  • Added overwrite option to set() to prevent accidental key-overrides
  • Create deep-copies of mutable values in set() to prevent modifications to variables
  • Added default option to get() if key isn't found
  • Added delete() to delete keys and their type and value from RDM files
  • Added add() as a math-method for int, float and datetime.datetime
  • Added multiply() as a math-method for int and float
  • Added extend() as a type-dynamic-method to extend the content of str, list, set, dict and pathlib.Path

1.3

22 Feb 15:24
4b3032d

Choose a tag to compare

1.3

Hotfix of version 1.2

  • Default value on load() now returns a copy of default
  • Save no longer has an option for default because it was pointless

Full Changelog: 1.2...1.3

1.2

22 Feb 14:44
ae04d3c

Choose a tag to compare

1.2
  • Added proper documentation with explanation, usage and examples.
  • Made default Obj possible to be used when file/value not found on load(), save() and get().
  • Smaller changes like filenames supporting pathlib.Path along strings

Full Changelog: 1.1...1.2

1.1

21 Feb 21:33
8d1106c

Choose a tag to compare

1.1

Some metadata changes, nothing technical.