podio_schema_evolution module
Provides infrastructure for analyzing schema definitions for schema evolution
- class podio_schema_evolution.AddedComponent(component, name)
Bases:
SchemaChange
Class representing an added component
- class podio_schema_evolution.AddedDatatype(datatype, name)
Bases:
SchemaChange
Class representing an added datatype
- class podio_schema_evolution.AddedMember(member, definition_name)
Bases:
SchemaChange
Class representing an added member
- class podio_schema_evolution.ChangedMember(name, member_name, old_member, new_member)
Bases:
SchemaChange
Class representing a type change in a member
- class podio_schema_evolution.DataModelComparator(yamlfile_new, yamlfile_old, evolution_file=None)
Bases:
object
Compares two datamodels and extracts required schema evolution
- compare() None
execute the comparison on-preloaded datamodel definitions
- get_changed_schemata(schema_filter=None)
return the schemata which actually changed
- heuristics()
make an analysis of the data model changes: - check which can be auto-resolved - check which need extra information from the user - check which one are plain forbidden/impossible
- heuristics_members(added_members, dropped_members, schema_changes)
make analysis of member changes in a given data type
- print_comparison()
print the result of the datamodel comparison
- read() None
read datamodels from yaml files
- read_evolution_file() None
read and parse evolution file
- class podio_schema_evolution.DroppedComponent(component, name)
Bases:
SchemaChange
Class representing a dropped component
- class podio_schema_evolution.DroppedDatatype(datatype, name)
Bases:
SchemaChange
Class representing a dropped datatype
- class podio_schema_evolution.DroppedMember(member, definition_name)
Bases:
SchemaChange
Class representing a dropped member
- class podio_schema_evolution.RenamedDataType(name_old, name_new)
Bases:
SchemaChange
Class representing a renamed datatype
- class podio_schema_evolution.RenamedMember(name, member_name_old, member_name_new)
Bases:
SchemaChange
Class representing a renamed member
- class podio_schema_evolution.RootIoRule
Bases:
object
A placeholder IORule class
- class podio_schema_evolution.SchemaChange(description)
Bases:
object
The base class for all schema changes providing a brief description as representation
- podio_schema_evolution.root_filter(schema_changes)
Checks what is required/supported for the ROOT backend
At this point in time we are only interested in renames. Everything else will be done by ROOT automatically
- podio_schema_evolution.sio_filter(schema_changes)
Checks what is required/supported for the SIO backend
At this point in time all schema changes have to be handled on PODIO side