Shotgun Engine for Shotgun Desktop

Shotgun Engine for Shotgun Desktop v2

Shotgun Support in Shotgun Desktop v2
Latest Version: v1.3.1 (prod)
For our version numbers, we follow the Semantic Versioning standard.
System Name: tk-desktop2

Please Note: This document describes functionality only available if you have taken control over a Toolkit configuration. Please refer to the Shotgun Integrations User Guide for more details.

The Desktop2 Engine is the engine which runs inside of the Shotgun Create Application. It handles DCC launching from Shotgun Create, as well as from the Shotgun web application via browser integration.

Documentation

The tk-desktop2 engine powers Toolkit's integration with Shotgun Create. The Shotgun Create provides support for features that users of Toolkit are familiar with, including DCC launching.

Installation and Updates

Adding this Engine to the Shotgun Pipeline Toolkit

If you want to add this engine to Project XYZ, and an environment named asset, execute the following command:

> tank Project XYZ install_engine asset tk-desktop2

Updating to the latest version

If you already have this item installed in a project and you want to get the latest version, you can run the update command. You can either navigate to the tank command that comes with that specific project, and run it there:

> cd /my_tank_configs/project_xyz
> ./tank updates

Alternatively, you can run your studio tank command and specify the project name to tell it which project to run the update check for:

> tank Project XYZ updates

Collaboration and Evolution

If you have access to the Shotgun Pipeline Toolkit, you also have access to the source code for all apps, engines and frameworks in Github where we store and manage them. Feel free to evolve these items; use them as a base for further independent development, make changes (and submit pull requests back to us!) or simply tinker with them to see how they have been built and how the toolkit works. You can access this code repository at https://github.com/shotgunsoftware/tk-desktop2.

Special Requirements

  • You need Shotgun Pipeline Toolkit Core API version v0.18.130 or higher to use this.

Configuration

No Configuration Needed!

This item does not have any options to configure!

Release Notes

Welcome to the release notes for this Engine. Below you will find an overview of all the changes we did for each release. We try to be as detailed as possible and include all bugs we have fixed, features we have added and things that may have changed. If you have questions about a particular release, don't hesitate to contact our support team!

v1.3.1

2019-Nov-28

Fixes an issue where Toolkit applications could not be launched from Shotgun Create after a software update.

v1.3.0

2019-Oct-29

Add sgc_open_version_draft in the WebSocket server capabilities

v1.2.5

2019-Oct-16

Adds telemetry to the websockets implementation.

Details:

These changes are for internal Shotgun use and have no impact on client-facing features or tools.

v1.2.4

2019-June-26

Improvements to the websockets protocol.

Details:

  • Adds new websockets interfaces:
  • list_supported_commands enumerates the commands supported by the server
  • sgc_open_task opens a task or version inside SG create.
  • sgc_open_task_board opens the task board inside SG create
  • Refactored the entity path class to be more complete
  • Better factory interfaces for websockets commands
  • engine errors are now reported back to the SGC UI via toasts
  • added exception traps in strategic places so that errors aren't just dissapearing
  • added error checks for things like missing certs
  • added error messages sent on force disconnect on user/site mismatch
  • port preference support
  • lots of refactoring and simplification.

v1.1.0

2019-mar-08

Update payload format exchanged between Python & C++ to JSON.

Details:

Change the format of the payload exchanged from Python to C++ to JSON. The latter can easily be used in C++/Qt whereas a Python pickle is a more opaque type and would require custom parsing from the C++ code. To keep compatibility for now, until more code is updated, the original Python pickle is added as a payload in the JSON string. The whole immediate point is to be able to extract the newly added icon path from C++ code so it can be sent to the front end React code.

Another important change being that the Python code is now reducing sending menu item with messages about whether there are no actions or config etc. This is now left to the UI front end. Sending normal operation strings from the Python was making localization harder on the UI front end.

v1.0.3

2019-Feb-19

Resolves an issue on Windows 7 where user name comparisons could fail due to case sensitivity.

Details:

When comparing the currently-logged-in user against the user requesting menu actions via browser integration, we now make sure we're doing so in a case insensitive manner. Prior to this fix, we saw issues on Windows 7 where a user might accidentally log in with mixed casing and cause a false negative that resulted in browser integration being denied.

v1.0.2

2018-Dec-10

Switched to the official SG icon.

Details:

The decision was made to use the official SG logo for the engine icon instead of the Shotgun Create icon. No other changes have been made to the engine, so it is functionally identical to the previous release.

v1.0.1

2018-Dec-06

Updated icon to align with Shotgun Create.

Details:

This includes the latest icon design from Shotgun Create!

v1.0.0

2018-Dec-06

First full release candidate of the desktop2 engine for Shotgun Create!

Details:

This release contains a minor bug fix related to re-querying configs when Shotgun Create is refreshed, but more importantly it is the first public release of the tk-desktop2 engine! This engine implements Toolkit integration with Shotgun Create, and provides the necessary functionality for DCC launching and browser integration.

v0.3.1

2018-Sep-20

Small fix to a variable name.

v0.3.0

2018-Sep-19

Pre-caches configuration data on project load. Security-related fixes that mimic those implemented in tk-framework-desktopserver for browser integration. Various and sundry bug fixes!

v0.2.12

2018-Aug-07

No longer allows Websockets connections from sites we're not already authenticated with. These connection attempts are rejected and the user is alerted the first time this occurs per tk-desktop2 session.

v0.2.11

2018-Jul-27

Fixes bugs related to multiple PC entities referencing the same config, and fixes multiple-PC support.

v0.2.10

2018-Jul-19

Updates necessary for DCC launching to work in the React-driven VMR.

v0.2.9

2018-Jun-29

Removes an argument to a websocket server call that's no longer needed.

v0.2.8

2018-May-08

Bug fixes to web sockets file selection

v0.2.7

2018-May-03

Bug fixes to file selection dialog.

v0.2.6

2018-May-03

Bug fixes and improvements.

v0.2.5

2018-Apr-27

Polish and bug fixes.

v0.2.4

2018-Apr-25

Changes to logging and bug fixes.

v0.2.3

2018-Apr-24

Fixes console issues on windows.

v0.2.2

2018-Apr-23

Bug fixes. Support for asset and shot specific tasks.

v0.2.1

2018-Apr-14

Polish and fixes. Support for compatibility fallbacks.

v0.2.0

2018-Apr-13

Websockets support and bug fixes.

v0.1.6

2018-Mar-07

Adds pyside2 dark look and feel.

v0.1.5

2018-Mar-06

Init polish and refinements.

v0.1.4

2018-Feb-25

System menu items are now filtered out.

v0.1.3

2018-Feb-25

Polish and fixes.

v0.1.2

2018-Feb-24

Support for icons in remote execution. Better error handling.

v0.1.1

2018-Feb-22

Minor tweaks and bugfixes.

v0.1.0

2018-Feb-22

First draft of context menu support.

v0.0.4

2018-Jan-19

Initial version.

v0.0.0

Placeholder

Follow