stalker.models.version.Version

Inheritance diagram of stalker.models.version.Version
class stalker.models.version.Version(task=None, take_name='Main', inputs=None, outputs=None, parent=None, full_path=None, created_with=None, **kwargs)

Bases: stalker.models.link.Link, stalker.models.mixins.DAGMixin

Holds information about the created versions (files) for a class:.Task

A Version holds information about the created files related to a class:.Task. So if one creates a new version for a file or a sequences of file for a Task then the information is hold in the Version instance.

Parameters:
  • take_name (str) – A short string holding the current take name. Takes in Stalker are used solely for grouping individual versions together. Versions with the same take_name (of the same Task) are numbered together. It can be any alphanumeric value (a-zA-Z0-9_). The default is the string “Main”. When skipped it will use the default value. It can not start with a number. It can not have white spaces.
  • inputs (list of Link) – A list o Link instances, holding the inputs of the current version. It could be a texture for a Maya file or an image sequence for Nuke, or anything those you can think as the input for the current Version.
  • outputs (list of Link instances) – A list of Link instances, holding the outputs of the current version. It could be the rendered image sequences out of Maya or Nuke, or it can be a Targa file which is the output of a Photoshop file (*.psd), or anything that you can think as the output which is created out of this Version.
  • task (Task) – A Task instance showing the owner of this Version.
  • parent (Version) – A Version instance which is the parent of this Version. It is mainly used to see which Version is derived from which in the Version history of a Task.
__init__(task=None, take_name='Main', inputs=None, outputs=None, parent=None, full_path=None, created_with=None, **kwargs)

Methods

__init__([task, take_name, inputs, outputs, …])
is_latest_published_version() returns True if this is the latest published Version False otherwise
update_paths() updates the path variables
walk_hierarchy([method]) Walks the hierarchy of this task.
walk_inputs([method]) Walks the inputs of this version

Attributes

absolute_full_path Returns the absolute full path of this version including the repository path of the related project
absolute_path Returns the absolute path.
children Other Budget instances which are the children of this one.
created_by The User who has created this object.
created_by_id The id of the User who has created this entity.
created_with
date_created A datetime.datetime instance showing the creation date and time of this object.
date_updated A datetime.datetime instance showing the update date and time of this object.
defaults
description Description of this object.
entity_groups
entity_id
entity_type
extension the extension property
filename the filename property
full_path The full path of the url to the link.
generic_data This attribute can hold any kind of data which exists in SOM.
generic_text This attribute can hold any text.
html_class
html_style
id
inputs The inputs of the current version.
is_container Returns True if the Task has children Tasks
is_leaf Returns True if the Task has no children Tasks
is_published
is_root Returns True if the Task has no parent
latest_published_version Returns the last published version.
latest_version returns the Version instance with the highest version number in this series.
link_id
max_version_number returns the maximum version number for this Version :return: int
metadata
name Name of this object
naming_parents returns a list of parents which start from the nearest Asset, Shot or Sequence
nice_name the overridden nice name for Version class
notes All the Notess attached to this entity.
original_filename
outputs The outputs of the current version.
parent A Version instance which is the parent of this Version.
parent_id
parents Returns all of the parents of this mixed in class starting from the root
path the path property
plural_class_name the plural name of this class
query
tags A list of tags attached to this object.
take_name Takes in Versions are used solely for grouping individual versions together.
task The Task instance that this Version is created for.
task_id
thumbnail
thumbnail_id
tjp_id returns TaskJuggler compatible id
to_tjp renders a TaskJuggler compliant string used for TaskJuggler integration.
type The type of the object.
type_id The id of the Type of this entity.
updated_by The User who has updated this object.
updated_by_id The id of the User who has updated this entity.
version_id
version_number The version_number attribute is read-only.
absolute_full_path

Returns the absolute full path of this version including the repository path of the related project

Returns:str
absolute_path

Returns the absolute path.

Due to the changes in the project.repository

Returns:str
children

Other Budget instances which are the children of this one. This attribute along with the parent attribute is used in creating a DAG hierarchy of tasks.

created_by

The User who has created this object.

created_by_id

The id of the User who has created this entity.

date_created

A datetime.datetime instance showing the creation date and time of this object.

date_updated

A datetime.datetime instance showing the update date and time of this object.

description

Description of this object.

extension

the extension property

filename

the filename property

full_path

The full path of the url to the link.

generic_data

This attribute can hold any kind of data which exists in SOM.

generic_text

This attribute can hold any text.

inputs

The inputs of the current version.

It is a list of Link instances.

is_container

Returns True if the Task has children Tasks

is_latest_published_version()

returns True if this is the latest published Version False otherwise

is_leaf

Returns True if the Task has no children Tasks

is_root

Returns True if the Task has no parent

latest_published_version

Returns the last published version.

Returns:Version
latest_version

returns the Version instance with the highest version number in this series.

Returns:Version instance
max_version_number

returns the maximum version number for this Version :return: int

name

Name of this object

naming_parents

returns a list of parents which start from the nearest Asset, Shot or Sequence

nice_name

the overridden nice name for Version class

notes

All the Notess attached to this entity.

It is a list of Note instances or an empty list, setting it to None will raise a TypeError.

outputs

The outputs of the current version.

It is a list of Link instances.

parent

A Version instance which is the parent of this Version. In Stalker it is possible to create a hierarchy of Version.

parents

Returns all of the parents of this mixed in class starting from the root

path

the path property

plural_class_name

the plural name of this class

tags

A list of tags attached to this object.

It is a list of Tag instances which shows the tags of this object

take_name

Takes in Versions are used solely for grouping individual versions together.

task

The Task instance that this Version is created for.

tjp_id

returns TaskJuggler compatible id

to_tjp

renders a TaskJuggler compliant string used for TaskJuggler integration. Needs to be overridden in inherited classes.

type

The type of the object.

It is a Type instance with a proper Type.target_entity_type.

type_id

The id of the Type of this entity. Mainly used by SQLAlchemy to create a Many-to-One relates between SimpleEntities and Types.

update_paths()

updates the path variables

updated_by

The User who has updated this object.

updated_by_id

The id of the User who has updated this entity.

version_number

The version_number attribute is read-only. Trying to change it will produce an AttributeError.

walk_hierarchy(method=0)

Walks the hierarchy of this task.

Parameters:method – The walk method, 0: Depth First, 1: Breadth First
walk_inputs(method=0)

Walks the inputs of this version

Parameters:method – The walk method, 0: Depth First, 1: Breadth First