Skip to main content

A library for basic data persistence in Nuke

Project description

https://img.shields.io/pypi/l/nukedatastore.svg https://img.shields.io/pypi/pyversions/nukedatastore.svg https://img.shields.io/pypi/v/nukedatastore.svg https://img.shields.io/pypi/wheel/nukedatastore.svg https://readthedocs.org/projects/nukedatastore/badge/?version=latest

A library for basic data persistence in Nuke

Full Documentation

Installation

To install nukedatastore, type:

$ pip install nukedatastore

Open Nuke’s init.py file and add:

nuke.pluginAddPath('/path/to/your/local/python/site-packages')

Getting Started

To get started with nukedatastore, type in the Nuke Script Editor:

import nukedatastore

NukeDataStore

To initialise a NukeDataStore, type:

ds = nukedatastore.NukeDataStore('data_store')

To store data in the NukeDataStore, type:

ds['project_data'] = {'id': 1234, 'name': 'project name'}

To list all available keys in the NukeDataStore, type:

ds.list()
# ['project_data']

To retrieve stored data from the NukeDataStore, type:

ds['project_data']
# {'id': 1234, 'name': 'project name'}

A NukeDataStore can be frozen, to freeze, type:

ds.freeze()

Any further attempt to set data on the NukeDataStore will result in an error:

ds['color_data'] = {'id': 'AB-123', 'name': 'White'}
# nukedatastore.NukeDataStoreError: Cannot mutate frozen NukeDataStore

To un-freeze, type:

ds.unfreeze()

NukeAPICache

Working with the NukeAPICache is very similar. To register an API, type:

api_cache = nukedatastore.NukeAPICache('api_cache')
api.cache.register('project_data', 'https://project.your.domain.com')

To read the cached API data, type:

api_cache['project_data']

To update the API data, type:

api_cache.update('project_data')

To diff existing API data with new API data, type:

api_cache.diff('project_data')
# {'project_data': {'values_changed': {"root['headers']['X-Request-Id']": {'new_value': u'f5800c5e-4edb-4509-8339-4bcdf0b32732', 'old_value': u'd8ed6737-e5c8-49aa-b42e-58eb2ba472b9'}}}}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nukedatastore-0.2.0.tar.gz (15.2 kB view details)

Uploaded Source

Built Distribution

nukedatastore-0.2.0-py2-none-any.whl (8.4 kB view details)

Uploaded Python 2

File details

Details for the file nukedatastore-0.2.0.tar.gz.

File metadata

File hashes

Hashes for nukedatastore-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7f8a2880053539435b14faebc8a79aa6a963d1c3837976de3163d7c58ca3c978
MD5 940e5a500cd61c2ad27196516f17ebc0
BLAKE2b-256 b93bcea067ff167bef453c36f7bcf6f68eef19eabf5384cf8963d36638b14166

See more details on using hashes here.

File details

Details for the file nukedatastore-0.2.0-py2-none-any.whl.

File metadata

File hashes

Hashes for nukedatastore-0.2.0-py2-none-any.whl
Algorithm Hash digest
SHA256 d10f0f93cbce34e429e198d0d75471feb08ad3d20c4472d97eddeb522e8ba9b8
MD5 9a5b9d5039485808cd75aac60698111f
BLAKE2b-256 12ea2eaa96893ad6c99cff19b02d19479b43526112deb2dfd9678222b2b1b0ee

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page