Skip to content

v0.2.0

Compare
Choose a tag to compare
@rezib rezib released this 25 Oct 12:05
· 255 commits to main since this release
v0.2.0

Added

  • core:
    • Add dumper for JSON format (#3).
    • Add possibility to keep expandable objects folded in dumpers.
    • Support loading sequence of objects with key property as a mapping whose keys are the key property of the contained objects.
    • Add examples for some properties in schema.
    • Add native class property on all SchemaDefinedTypes to declare the native type returned by the defined type after parsing.
    • Report defined type native type in schema dumps.
  • cli:
    • Add format option for datacenters, nodes, racks and infrastructures subcommands to control output format.
    • Add fold option to control folding of expandable objects in outputs of datacenters, nodes, racks and infrastructures subcommands.
    • Add possibility to select output format of the list of datacenters, infrastructures, nodes and racks names.
  • web: New executable racksdb-web to serve HTTP REST API.
  • lib:
    • Add RacksDB.racks property to get the full list of racks.
    • Add possibility to filter list Racks by name.
    • Add RacksDBRack.fillrate computed property.
    • Add support for len(DBList).
    • Add RacksDBRacksRow.nbracks computed property.
  • docs:
    • Add installation method from sources intended to software developers in the quickstart guide.
    • Add the « Release notes » page based on the content of CHANGELOG.md.
    • Mention --format and --fold options in manpage.
    • Update splitted database examples to demonstrate the possibility to declare sequence of objects with key property as mappings.
    • Mention sequence/mapping equivalence for list of objects with keys in concepts page.
    • Mention new racks attribute on RacksDB class specialization in library API reference.
    • Mention nodes, fillrate computed property and filtering capability on RacksDBRack class specialization in library API reference.
    • Mention nbracks computed property on RacksDBRacksRow class specialization in library API reference.
    • Mention available examples in database files page.
    • Add REST API reference documentation based on OpenAPI specification.
    • Add manpage for racksdb-web(1).
    • Add Data Visibility section to illustrate custom data in extension page.

Changed

  • schema:
    • Rename objects:
      • DatacenterRoomRackRack
      • DatacenterRoomRowRacksRow
      • DatacenterRoomPositionRacksRowPosition
  • core:
    • Introduce DBDict objects that inherit from standard Python dict to handle list of objects with keys (#15).
    • New schema format with properties specifications as mapping/hash
    • Schema dumps are now the raw data loaded in schema YAML files and defined types instead of an interpreted output.
  • lib:
    • RacksDB.nodes and RacksDBInfrastructure.nodes attributes are now DBDict of unexpanded nodes.
    • Store datacenters, infrastructures and nodes tags in DBList objects.
  • docs:
    • Present the supported Linux distributions with tabs in the quickstart guide.
    • Mention key attribute on {Network,Storage}Equipment.name property in structure reference.
    • Move database concepts in a dedicated page.
    • Update library API reference and examples with new DBDict class and changes on DBList class.
    • Load of extension example due to missing rack type.
    • Update quickstart guide to mention Python library and REST API.
    • Update schema and extensions pages to document new schema file format.

Fixed

  • core: Rename module that contains defined types definitions dtypes to avoid potential conflict with Python standard library types module (#18).
  • cli: Catch RacksDB internal errors to report in command output and exit with return code 1.
  • schema: Add key attribute on {Network,Storage}Equipment.name property.
  • docs: Fix spelling in schema extension page.

Removed

  • core: Drop support optional [] attribute suffix for expandable properties.
  • docs: Mention of tags attributes in library API reference on RacksDBDatacenter, RacksDBDatacenter and RacksDBNode classes specializations.