bauplan.schema module

class bauplan.schema.APIBranch(*, name: str, hash: str, metadata: RefMetadata | None = None)

Bases: Ref

model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'hash': FieldInfo(annotation=str, required=True), 'metadata': FieldInfo(annotation=Union[RefMetadata, NoneType], required=False, default=None), 'name': FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

class bauplan.schema.APIMetadata(*, error: str | None, pagination_token: str | None, request_id: str | None, request_ts: int | None, request_ms: int | None)

Bases: _BauplanData

error: str | None
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'error': FieldInfo(annotation=Union[str, NoneType], required=True), 'pagination_token': FieldInfo(annotation=Union[str, NoneType], required=True), 'request_id': FieldInfo(annotation=Union[str, NoneType], required=True), 'request_ms': FieldInfo(annotation=Union[int, NoneType], required=True), 'request_ts': FieldInfo(annotation=Union[int, NoneType], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

pagination_token: str | None
request_id: str | None
request_ms: int | None
request_ts: int | None
class bauplan.schema.APIResponse(*, data: Any, metadata: APIMetadata)

Bases: _BauplanData

data: Any
metadata: APIMetadata
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'data': FieldInfo(annotation=Any, required=True), 'metadata': FieldInfo(annotation=APIMetadata, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

class bauplan.schema.Entry(*, name: str, kind: str)

Bases: _BauplanData

kind: str
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'kind': FieldInfo(annotation=str, required=True), 'name': FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

name: str
class bauplan.schema.Namespace(*, name: str)

Bases: _BauplanData

model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'name': FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

name: str
class bauplan.schema.Ref(*, name: str, hash: str, metadata: RefMetadata | None = None)

Bases: _BauplanData

A branch or a tag

classmethod from_dict(data: Dict) Ref
hash: str
metadata: RefMetadata | None
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'hash': FieldInfo(annotation=str, required=True), 'metadata': FieldInfo(annotation=Union[RefMetadata, NoneType], required=False, default=None), 'name': FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

name: str
class bauplan.schema.RefMetadata(*, message: str, committer: str, authors: list[str], commit_time: str, author_time: str, parent_commit_hashes: list[str], num_commits_ahead: int | None, num_commits_behind: int | None, common_ancestor_hash: str | None, num_total_commits: int)

Bases: _BauplanData

Some metadata about a reference.

author_time: str
authors: list[str]
commit_time: str
committer: str
common_ancestor_hash: str | None
classmethod from_dict(metadata: dict | None = None) RefMetadata | None

Convert a dictionary of reference metadata to a DataCatalogRefMetadata object.

message: str
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'author_time': FieldInfo(annotation=str, required=True), 'authors': FieldInfo(annotation=list[str], required=True), 'commit_time': FieldInfo(annotation=str, required=True), 'committer': FieldInfo(annotation=str, required=True), 'common_ancestor_hash': FieldInfo(annotation=Union[str, NoneType], required=True), 'message': FieldInfo(annotation=str, required=True), 'num_commits_ahead': FieldInfo(annotation=Union[int, NoneType], required=True), 'num_commits_behind': FieldInfo(annotation=Union[int, NoneType], required=True), 'num_total_commits': FieldInfo(annotation=int, required=True), 'parent_commit_hashes': FieldInfo(annotation=list[str], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

num_commits_ahead: int | None
num_commits_behind: int | None
num_total_commits: int
parent_commit_hashes: list[str]
class bauplan.schema.Table(*, name: str, kind: str)

Bases: Entry

model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'kind': FieldInfo(annotation=str, required=True), 'name': FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

class bauplan.schema.TableField(*, id: int, name: str, required: bool, type: str)

Bases: _BauplanData

id: int
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=int, required=True), 'name': FieldInfo(annotation=str, required=True), 'required': FieldInfo(annotation=bool, required=True), 'type': FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

name: str
required: bool
type: str
class bauplan.schema.TableMetadata(*, type: str, id: str, metadata_location: str, snapshot_id: int, schema_id: int, spec_id: int, sort_order_id: int)

Bases: _BauplanData

id: str
metadata_location: str
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=str, required=True), 'metadata_location': FieldInfo(annotation=str, required=True), 'schema_id': FieldInfo(annotation=int, required=True), 'snapshot_id': FieldInfo(annotation=int, required=True), 'sort_order_id': FieldInfo(annotation=int, required=True), 'spec_id': FieldInfo(annotation=int, required=True), 'type': FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

schema_id: int
snapshot_id: int
sort_order_id: int
spec_id: int
type: str
class bauplan.schema.TableWithMetadata(*, name: str, kind: str, id: str, records: int | None, size: int | None, last_updated_ms: int, fields: List[TableField], snapshots: int | None, metadata_location: str, raw: Dict | None)

Bases: Entry

fields: List[TableField]
id: str
last_updated_ms: int
metadata_location: str
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'fields': FieldInfo(annotation=List[TableField], required=True), 'id': FieldInfo(annotation=str, required=True), 'kind': FieldInfo(annotation=str, required=True), 'last_updated_ms': FieldInfo(annotation=int, required=True), 'metadata_location': FieldInfo(annotation=str, required=True), 'name': FieldInfo(annotation=str, required=True), 'raw': FieldInfo(annotation=Union[Dict, NoneType], required=True), 'records': FieldInfo(annotation=Union[int, NoneType], required=True), 'size': FieldInfo(annotation=Union[int, NoneType], required=True), 'snapshots': FieldInfo(annotation=Union[int, NoneType], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

name: str
raw: Dict | None
records: int | None
size: int | None
snapshots: int | None