Skip to content

Latest commit

 

History

History
5834 lines (3864 loc) · 329 KB

CHANGELOG.md

File metadata and controls

5834 lines (3864 loc) · 329 KB

Changelog

Full Changelog

🆕 New features

maya gltf texture convertor and validator #4261

Continuity of the gltf extractor implementation

Continuity of the gltf extractor https://github.com/pypeclub/OpenPype/pull/4192UPDATE:**Validator for GLSL Shader**: Validate whether the mesh uses GLSL Shader. If not it will error out. The user can choose to perform the repair action and it will help to assign glsl shader. If the mesh with Stringray PBS, the repair action will also check to see if there is any linked texture such as Color, Occulsion, and Normal Map. If yes, it will help to relink the related textures to the glsl shader.*****If the mesh uses the PBS Shader,


Unreal: New Publisher #4370

Implementation of the new publisher for Unreal.

The implementation of the new publisher for Unreal. This PR includes the changes for all the existing creators to be compatible with the new publisher.The basic creator has been split in two distinct creators:

  • UnrealAssetCreator, works with assets in the Content Browser.
  • UnrealActorCreator that works with actors in the scene.

Implementation of a new splash screen #4592

Implemented a new splash screen widget to reflect a process running in the background. This widget can be used for other tasks than UE. Also fixed the compilation error of the AssetContainer.cpp when trying to build the plugin in UE 5.0


Deadline for 3dsMax #4439

Setting up deadline for 3dsmax

Setting up deadline for 3dsmax by setting render outputs and viewport camera


Nuke: adding nukeassist #4494

Adding support for NukeAssist

For support of NukeAssist we had to limit some Nuke features since NukeAssist itself Nuke with limitations. We do not support Creator and Publisher. User can only Load versions with version control. User can also set Framerange and Colorspace.


🚀 Enhancements

Maya: OP-2630 acescg maya #4340

Resolves #2712

___
Default Ftrack Family on RenderLayer #4458

With default settings, renderlayers in Maya were not being tagged with the Ftrack family leading to confusion when doing reviews.

___
Maya: Maya Playblast Options - OP-3783 #4487

Replacement PR for #3912. Adds more options for playblasts to preferences/settings.

Adds the following as options in generating playblasts, matching viewport settings.

  • Use default material
  • Wireframe on shaded
  • X-ray
  • X-ray Joints
  • X-ray active component

Maya: Passing custom attributes to alembic - OP-4111 #4516

Passing custom attributes to alembic

This PR makes it possible to pass all user defined attributes along to the alembic representation.


Maya: Options for VrayProxy output - OP-2010 #4525

Options for output of VrayProxy.

Client requested more granular control of output from VrayProxy instance. Exposed options on the instance and settings for vrmesh and alembic.


Maya: Validate missing instance attributes #4559

Validate missing instance attributes.

New attributes can be introduced as new features come in. Old instances will need to be updated with these attributes for the documentation to make sense, and users do not have to recreate the instances.


Refactored Generation of UE Projects, installation of plugins moved to the engine #4369

Improved the way how OpenPype works with generation of UE projects. Also the installation of the plugin has been altered to install into the engine

OpenPype now uses the appropriate tools to generate UE projects. Unreal Build Tool (UBT) and a "Commandlet Project" is needed to properly generate a BP project, or C++ code in case that dev_mode = True, folders, the .uproject file and many other resources.On the plugin's side, it is built seperately with the UnrealAutomationTool (UAT) and then it's contents are moved under the Engine/Plugins/Marketplace/OpenPype directory.


Unreal: Use client functions in Layout loader #4578

Use 'get_representations' instead of 'legacy_io' query in layout loader.

This is removing usage of find_one called on legacy_io and use rather client functions as preparation for AYON connection. Also all representations are queried at once instead of one by one.


General: Support for extensions filtering in loaders #4492

Added extensions filtering support to loader plugins.

To avoid possible backwards compatibility break is filtering exactly the same and filtering by extensions is enabled only if class attribute 'extensions' is set.


Nuke: multiple reformat in baking review profiles #4514

Added support for multiple reformat nodes in baking profiles.

Old settings for single reformat node is supported and prioritised just in case studios are using it and backward compatibility is needed. Warnings in Nuke terminal are notifying users to switch settings to new workflow. Settings are also explaining the migration way.


Nuke: Add option to use new creating system in workfile template builder #4545

Nuke workfile template builder can use new creators instead of legacy creators.

Modified workfile template builder to have option to say if legacy creators should be used or new creators. Legacy creators are disabled by default, so Maya has changed the value.


Global, Nuke: Workfile first version with template processing #4579

Supporting new template workfile builder with toggle for creation of first version of workfile in case there is none yet.

___
Fusion: New Publisher #4523

This is an updated PR for @BigRoy 's old PR (ynput#3892 have merged it with code from OP 3.15.1-nightly.6 and made sure it works as expected.This converts the old publishing system to the new one. It implements Fusion as a new host addon.

- Create button removed in OpenPype menu in favor of the new Publisher - Draft refactor validations to raise PublishValidationError - Implement Creator for New Publisher - Implement Fusion as Host addon
TVPaint: Use Publisher tool #4471

Use Publisher tool and new creation system in TVPaint integration.

Using new creation system makes TVPaint integration a little bit easier to maintain for artists. Removed unneeded tools Creator and Subset Manager tools. Goal is to keep the integration work as close as possible to previous integration. Some changes were made but primarilly because they were not right using previous system.All creators create instance with final family instead of changing the family during extraction. Render passes are not related to group id but to render layer instance. Render layer is still related to group. Workfile, review and scene render instances are created using autocreators instead of auto-collection during publishing. Subset names are fully filled during publishing but instance labels are filled on refresh with the last known right value. Implemented basic of legacy convertor which should convert render layers and render passes.


TVPaint: Auto-detect render creation #4496

Create plugin which will create Render Layer and Render Pass instances based on information in the scene.

Added new creator that must be triggered by artist. The create plugin will first create Render Layer instances if were not created yet. For variant is used color group name. The creator has option to rename color groups by template defined in settings -> Template may use index of group by it's usage in scene (from bottom to top). After Render Layers will create Render Passes. Render Pass is created for each individual TVPaint layer in any group that had created Render Layer. It's name is used as variant (pass).


TVPaint: Small enhancements #4501

Small enhancements in TVPaint integration which did not get to ynput#4471.

It was found out that opacity returned from tv_layerinfo is always empty and is dangerous to add it to layer information. Added information about "current" layer to layers information. Disable review of Render Layer and Render Pass instances by default. In most of productions is used only "scene review". Skip usage of "enabled" key from settings in automated layer/pass creation.


Global: color v3 global oiio transcoder plugin #4291

Implements possibility to use oiiotool to transcode image sequences from one color space to another(s).

Uses collected colorspaceData information about source color spaces, these information needs to be collected previously in each DCC interested in color management.Uses profiles configured in Settings to create single or multiple new representations (and file extensions) with different color spaces.New representations might replace existing one, each new representation might contain different tags and custom tags to control its integration step.


Deadline: Added support for multiple install dirs in Deadline #4451

SearchDirectoryList returns FIRST existing so if you would have multiple OP install dirs, it won't search for appropriate version in later ones.

___
Ftrack: Upload reviewables with original name #4483

Ftrack can integrate reviewables with original filenames.

As ftrack have restrictions about names of components the only way how to achieve the result was to upload the same file twice, one with required name and one with origin name.


TVPaint: Ignore transparency in Render Pass #4499

It is possible to ignore layers transparency during Render Pass extraction.

Render pass extraction does not respect opacity of TVPaint layers set in scene during extraction. It can be enabled/disabled in settings.


Anatomy: Preparation for different root overrides #4521

Prepare Anatomy to handle only 'studio' site override on it's own.

Change how Anatomy fill root overrides based on requested site name. The logic which decide what is active site was moved to sync server addon and the same for receiving root overrides of local site. The Anatomy resolve only studio site overrides anything else is handled by sync server. BaseAnatomy only expect root overrides value and does not need site name. Validation of site name happens in sync server same as resolving if site name is local or not.


Nuke | Global: colormanaged plugin in collection #4556

Colormanaged extractor had changed to Mixin class so it can be added to any stage of publishing rather then just to Exctracting.Nuke is no collecting colorspaceData to representation collected on already rendered images.

Mixin class can no be used as secondary parent in publishing plugins.


🐛 Bug fixes

look publishing and srgb colorspace in maya #4276

Check the OCIO color management is enabled before doing linearize colorspace for converting the texture maps into tx files.

Check whether the OCIO color management is enabled before the condition of converting the texture to tx extension.


Maya: extract Thumbnail "No active model panel found" - OP-3849 #4421

Error when extracting playblast with no model panel.

If project_settings/maya/publish/ExtractPlayblast/capture_preset/Viewport Options/override_viewport_options were off and publishing without showing any model panel, the extraction would fail.


Maya: Fix setting scene fps with float input #4488

Returned value of float fps on integer values would return float.

This PR fixes the case when switching between integer fps values for example 24 > 25. Issue was when setting the scene fps, the original float value was used which makes it unpredictable whether the value is float or integer when mapping the fps values.


Maya: Multipart fix #4497

Fix multipart logic in render products.

Each renderer has a different way of defining whether output images is multipart, so we need to define it for each renderer. Also before the multipart class variable was defined multiple times in several places, which made it tricky to debug where multipart was defined. Now its created on initialization and referenced as self.multipart


Maya: Set pool on tile assembly - OP-2012 #4520

Set pool on tile assembly

Pool for publishing and tiling jobs, need to use the settings (project_settings/deadline/publish/ProcessSubmittedJobOnFarm/deadline_pool) else fallback on primary pool (project_settings/deadline/publish/CollectDeadlinePools/primary_pool)


Maya: Extract review with handles #4527

Review was not extracting properly with/without handles.

Review instance was not created properly resulting in the frame range on the instance including handles.


Maya: Fix broken lib. #4529

Fix broken lib.

This commit from this PR broke the Maya lib module.


Maya: Validate model name - OP-4983 #4539

Validate model name issues.

Couple of issues with validate model name;

  • missing platform extraction from settings
  • map function should be list comprehension
  • code cosmetics

Maya: SkeletalMesh family loadable as reference #4573

In Maya, fix the SkeletalMesh family not loadable as reference.

___
Unreal: fix loaders because of missing AssetContainer #4536

Fixing Unreal loaders, where changes in OpenPype Unreal integration plugin deleted AssetContainer.

AssetContainer and AssetContainerFactory are still used to mark loaded instances. Because of optimizations in Integration plugin we've accidentally removed them but that broke loader.


3dsmax unable to delete loaded asset in the scene inventory #4507

Fix the bug of being unable to delete loaded asset in the Scene Inventory

Fix the bug of being unable to delete loaded asset in the Scene Inventory


Hiero/Nuke: originalBasename editorial publishing and loading #4453

Publishing and loading originalBasename is working as expected

Frame-ranges on version document is now correctly defined to fit original media frame range which is published. It means loading is now correctly identifying frame start and end on clip loader in Nuke.


Nuke: Fix workfile template placeholder creation #4512

Template placeholder creation was erroring out in Nuke due to the Workfile template builder not being able to find any of the plugins for the Nuke host.

Move get_workfile_build_placeholder_plugins function to NukeHost class as workfile template builder expects.


Nuke: creator farm attributes from deadline submit plugin settings #4519

Defaults in farm attributes are sourced from settings.

Settings for deadline nuke submitter are now used during nuke render and prerender creator plugins.


Nuke: fix clip sequence loading #4574

Nuke is loading correctly clip from image sequence created without "{originalBasename}" token in anatomy template.

___
Fusion: Fix files collection and small bug-fixes #4423

Fixed Fusion review-representation and small bug-fixes

This fixes the problem with review-file generation that stopped the publishing on second publish before the fix.The problem was that Fusion simply looked at all the files in the render-folder instead of only gathering the needed frames for the review.Also includes a fix to get the handle start/end that before throw an error if the data didn't exist (like from a kitsu sync).


Fusion: Updated render_local.py to not only process the first instance #4522

Moved the __hasRun to render_once() so the check only happens with the rendering. Currently only the first render node gets the representations added.Critical PR


Fusion: Load sequence fix filepath resolving from representation #4580

Resolves issue mentioned on discord by @movalex:The loader was incorrectly trying to find the file in the publish folder which resulted in just picking 'any first file'.

This gets the filepath from representation instead of taking the first file from listing files from publish folder.


Fusion: Fix review burnin start and end frame #4590

Fix the burnin start and end frame for reviews. Without this the asset document's start and end handle would've been added to the burnin frame range even though that would've been incorrect since the handles are based on the comp saver's render range instead.


Harmony: missing set of frame range when opening scene #4485

Frame range gets set from DB everytime scene is opened.

Added also check for not up-to-date loaded containers.


Photoshop: context is not changed in publisher #4570

When PS is already open and artists launch new task, it should keep only opened PS open, but change context.

Problem were occurring in Workfile app where under new task files from old task were shown. This fixes this and adds opening of last workfile for new context if workfile exists.


hiero: fix effect item node class #4543

Collected effect name after renaming is saving correct class name.

___
Bugfix/OP-4616 vray multipart #4297

This fixes a bug where multipart vray renders would not make a review in Ftrack.

___
Maya: Fix changed location of reset_frame_range #4491

Location in commands caused cyclic import

___
global: source template fixed frame duplication #4503

Duplication is not happening.

Template is using originalBasename which already assume all necessary elements are part of the file name so there was no need for additional optional name elements.


Deadline: Hint to use Python 3 #4518

Added shebank to give deadline hint which python should be used.

Deadline has issues with Python 2 (especially with os.scandir). When a shebank is added to file header deadline will use python 3 mode instead of python 2 which fix the issue.


Publisher: Prevent access to create tab after publish start #4528

Prevent access to create tab after publish start.

Disable create button in instance view on publish start and enable it again on reset. Even with that make sure that it is not possible to go to create tab if the tab is disabled.


Color Transcoding: store target_colorspace as new colorspace #4544

When transcoding into new colorspace, representation must carry this information instead original color space.

___
Deadline: fix submit_publish_job #4552

Fix submit_publish_job

Resolves #4541


Kitsu: Fix task itteration in update-op-with-zou #4577

From the last PR (ynput#4425) a comment-commit last second messed up the code and resulted in two lines being the same, crashing the script. This PR fixes that.


AttrDefs: Fix type for PySide6 #4584

Use right type in signal emit for value change of attribute definitions.

Changed UUID type to str. This is not an issue with PySide2 but it is with PySide6.


🔀 Refactored code

Scene Inventory: Avoid using ObjectId #4524

Avoid using conversion to ObjectId type in scene inventory tool.

Preparation for AYON compatibility where ObjectId won't be used for ids. Representation ids from loaded containers are not converted to ObjectId but kept as strings which also required some changes when working with representation documents.


Merged pull requests

SiteSync: host dirmap is not working properly #4563

If artists uses SiteSync with real remote (gdrive, dropbox, sftp) drive, Local Settings were throwing error string indices must be integers.

Logic was reworked to provide only local_drive values to be overrriden by Local Settings. If remote site is gdrive etc. mapping to studio is provided as it is expected that workfiles will have imported from studio location and not from gdrive folder.Also Nuke dirmap was reworked to be less verbose and much faster.


General: Input representation ids are not ObjectIds #4576

Don't use ObjectId as representation ids during publishing.

Representation ids are kept as strings during publishing instead of converting them to ObjectId. This change is pre-requirement for AYON connection.Inputs are used for integration of links and for farm publishing (or at least it looks like).


Shotgrid: Fixes on Deadline submissions #4498

A few other bug fixes for getting Nuke submission to Deadline work smoothly using Shotgrid integration.

Continuing on the work done on this other PR this fixes a few other bugs I came across with further tests.


Fusion: New Publisher #3892

This converts the old publishing system to the new one. It implements Fusion as a new host addon.

- Create button removed in OpenPype menu in favor of the new Publisher - Draft refactor validations to raise `PublishValidationError` - Implement Creator for New Publisher - Implement Fusion as Host addon
Make Kitsu work with Tray Publisher, added kitsureview tag, fixed sync-problems. #4425

Make Kitsu work with Tray Publisher, added kitsureview tag, fixed sync-problems.

This PR updates the way the module gather info for the current publish so it now works with Tray Publisher.It fixes the data that gets synced from Kitsu to OP so all needed data gets registered even if it doesn't exist on Kitsus side.It also adds the tag "Add review to Kitsu" and adds it to Burn In so previews gets generated by default to Kitsu.


Maya: V-Ray Set Image Format from settings #4566

Resolves #4565

Set V-Ray Image Format using settings.


Full Changelog

🆕 New features

Maya: Xgen (3d / maya ) - #4256

Brief description

Initial Xgen implementation.

Description

Client request of Xgen pipeline.


Data exchange cameras for 3d Studio Max (3d / 3dsmax ) - #4376

Brief description

Add Camera Family into the 3d Studio Max

Description

Adding Camera Extractors(extract abc camera and extract fbx camera) and validators(for camera contents) into 3dMaxAlso add the extractor for exporting 3d max raw scene (which is also related to 3dMax Scene Family) for camera family


🚀 Enhancements

Adding path validator for non-maya nodes (3d / maya ) - #4271

Brief description

Adding a path validator for filepaths from non-maya nodes, which are created by plugins such as Renderman, Yeti and abcImport.

Description

As File Path Editor cannot catch the wrong filenpaths from non-maya nodes such as AlembicNodes, It is neccessary to have a new validator to ensure the existence of the filepaths from the nodes.


Deadline: Allow disabling strict error check in Maya submissions (3d / maya / deadline ) - #4420

Brief description

DL by default has Strict error checking, but some errors are not fatal.

Description

This allows to set profile based on Task and Subset values to temporarily disable Strict Error Checks.Subset and task names should support regular expressions. (not wildcard notation though).


Houdini: New publisher code tweak (3d / houdini ) - #4374

Brief description

This is cosmetics only - the previous code to me felt quite unreadable due to the lengthy strings being used.

Description

Code should do roughly the same, but just be reformatted.


3dsmax: enhance alembic loader update function (3d / 3dsmax ) - #4387

Enhancement

This PR is adding update/switch ability to pointcache/alembic loader in 3dsmax and fixing wrong tool shown when clicking on "Manage" item on OpenPype menu, that is now correctly Scene Inventory (but was Subset Manager).

Alembic update has still one caveat - it doesn't cope with changed number of object inside alembic, since loading alembic in max involves creating all those objects as first class nodes. So it will keep the objects in scene, just update path to alembic file on them.


Global: supporting `OPENPYPE_TMPDIR` in staging dir maker (editorial / hiero ) - #4398

Brief description

Productions can use OPENPYPE_TMPDIR for staging temp publishing directory

Description

Studios were demanding to be able to configure their own shared storages as temporary staging directories. Template formatting is also supported with optional keys formatting and following anatomy keys: - root[work | ] - project[name | code]


General: Functions for current context (other ) - #4324

Brief description

Defined more functions to receive current context information and added the methods to host integration so host can affect the result.

Description

This is one of steps to reduce usage of legacy_io.Session. This change define how to receive current context information -> call functions instead of accessing legacy_io.Session or os.environ directly. Plus, direct access on session or environments is unfortunatelly not enough for some DCCs where multiple workfiles can be opened at one time which can heavily affect the context but host integration sometimes can't affect that at all.HostBase already had implemented get_current_context, that was enhanced by adding more specific methods get_current_project_name, get_current_asset_name and get_current_task_name. The same functions were added to ~/openpype/pipeline/cotext_tools.py. The functions in context tools are calling host integration methods (if are available) otherwise are using environent variables as default implementation does. Also was added get_current_host_name to receive host name from registered host if is available or from environment variable.


Houdini: Do not visualize the hidden OpenPypeContext node (other / houdini ) - #4382

Brief description

Using the new publisher UI would generate a visible 'null' locator at the origin. It's confusing to the user since it's supposed to be 'hidden'.

Description

Before this PR the user would see a locator/null at the origin which was the 'hidden' /obj/OpenPypeContext node. This null would suddenly appear if the user would've ever opened the Publisher UI once.After this PR it will not show:Nice and tidy.


Maya + Blender: Pyblish plugins removed unused `version` and `category` attributes (other ) - #4402

Brief description

Once upon a time in a land far far away there lived a few plug-ins who felt like they didn't belong in generic boxes and felt they needed to be versioned well above others. They tried, but with no success.

Description

Even though they now lived in a universe with elaborate version and category attributes embedded into their tiny little plug-in DNA this particular deviation has been greatly unused. There is nothing special about the version, nothing special about the category.It does nothing.


General: Fix original basename frame issues (other ) - #4452

Brief description

Treat {originalBasename} in different way then standard files processing. In case template should use {originalBasename} the transfers will use them as they are without any changes or handling of frames.

Description

Frames handling is problematic with original basename because their padding can't be defined to match padding in source filenames. Also it limits the usage of functionality to "must have frame at end of fiename". This is proposal how that could be solved by simply ignoring frame handling and using filenames as are on representation. First frame is still stored to representation context but is not used in formatting part. This way we don't have to care about padding of frames at all.


Publisher: Report also crashed creators and convertors (other ) - #4473

Brief description

Added crashes of creators and convertos discovery (lazy solution).

Description

Report in Publisher also contains information about crashed files caused during creator plugin discovery and convertor plugin discovery. They're not separated into categroies and there is no other information in the report about them, but this helps a lot during development. This change does not need to change format/schema of the report nor UI logic.


🐛 Bug fixes

Maya: Fix Validate Attributes plugin (3d / maya ) - #4401

Brief description

Code was broken. So either plug-in was unused or it had gone unnoticed.

Description

Looking at the commit history of the plug-in itself it seems this might have been broken somewhere between two to three years. I think it's broken since two years since this commit.Should this plug-in be removed completely?@tokejepsen Is there still a use case where we should have this plug-in? (You created the original one)


Maya: Ignore workfile lock in Untitled scene (3d / maya ) - #4414

Brief description

Skip workfile lock check if current scene is 'Untitled'.


Maya: fps rounding - OP-2549 (3d / maya ) - #4424

Brief description

When FPS is registered in for example Ftrack and round either down or up (floor/ceil), comparing to Maya FPS can fail. Example:23.97 (Ftrack/Mongo) != 23.976023976023978 (Maya)

Description

Since Maya only has a select number of supported framerates, I've taken the approach of converting any fps to supported framerates in Maya. We validate the input fps to make sure they are supported in Maya in two ways:Whole Numbers - are validated straight against the supported framerates in Maya.Demical Numbers - we find the closest supported framerate in Maya. If the difference to the closest supported framerate, is more than 0.5 we'll throw an error.If Maya ever supports arbitrary framerates, then we might have a problem but I'm not holding my breath...


Strict Error Checking Default (3d / maya ) - #4457

Brief description

Provide default of strict error checking for instances created prior to PR.


Create: Enhance instance & context changes (3d / houdini,after effects,3dsmax ) - #4375

Brief description

Changes of instances and context have complex, hard to get structure. The structure did not change but instead of complex dictionaries are used objected data.

Description

This is poposal of changes data improvement for creators. Implemented TrackChangesItem which handles the changes for us. The item is creating changes based on old and new value and can provide information about changed keys or access to full old or new value. Can give the values on any "sub-dictionary".Used this new approach to fix change in houdini and 3ds max and also modified one aftereffects plugin using changes.


Houdini: hotfix condition (3d / houdini ) - #4391

Hotfix

This is fixing bug introduced int #4374


Houdini: Houdini shelf tools fixes (3d / houdini ) - #4428

Brief description

Fix Houdini shelf tools.

Description

Use label as mandatory key instead of name. Changed how shelves are created. If the script is empty it is gracefully skipping it instead of crashing.


3dsmax: startup fixes (3d / 3dsmax ) - #4412

Brief description

This is fixing various issues that can occur on some of the 3dsmax versions.

Description

On displays with +4K resolution UI was broken, some 3dsmax versions couldn't process PYTHONPATH correctly. This PR is forcing sys.path and disabling QT_AUTO_SCREEN_SCALE_FACTOR


Fix features for gizmo menu (2d / nuke ) - #4280

Brief description

Fix features for the Gizmo Menu project settings (shortcut for python type of usage and file type of usage functionality)


Photoshop: fix missing legacy io for legacy instances (2d / photoshop,after effects ) - #4467

Brief description

legacy_io import was removed, but usage stayed.

Description

Usage of legacy_io should be eradicated, in creators it should be replaced by self.create_context.get_current_project_name/asset_name/task_name.


Fix - addSite loader handles hero version (other / sitesync ) - #4359

Brief description

If adding site to representation presence of hero version is checked, if found hero version is marked to be donwloaded too.Replacing ynput#4191


Remove OIIO build for macos (other ) - #4381

Fix

Since we are not able to provide OpenImageIO tools binaries for macos, we should remove the item from th pyproject.toml. This PR is taking care of it.

It is also changing the way fetch_thirdparty_libs script works in that it doesn't crash when lib cannot be processed, it only issue warning.

Resolves #3858


General: Attribute definitions fixes (other ) - #4392

Brief description

Fix possible issues with attribute definitions in publisher if there is unknown attribute on an instance.

Description

Source of the issue is that attribute definitions from creator plugin could be "expanded" during CreatedInstance initialization. Which would affect all other instances using the same list of attributes -> literally object of list. If the same list object is used in "BaseClass" for other creators it would affect all instances (because of 1 instance). There had to be implemented other changes to fix the issue and keep behavior the same.Object of CreatedInstance can be created without reference to creator object. CreatedInstance is responsible to give UI attribute definitions (technically is prepared for cases when each instance may have different attribute definitions -> not yet).Attribute definition has added more conditions for __eq__ method and have implemented __ne__ method (which is required for Py 2 compatibility). Renamed AbtractAttrDef to AbstractAttrDef (fix typo).


Ftrack: Don't force ftrackapp endpoint (other / ftrack ) - #4411

Brief description

Auto-fill of ftrack url don't break custom urls. Custom urls couldn't be used as ftrackapp.com is added if is not in the url.

Description

The code was changed in a way that auto-fill is still supported but before ftrackapp is added it will try to use url as is. If the connection works as is it is used.


Fix: DL on MacOS (other ) - #4418

Brief description

This works if DL Openpype plugin Installation Directories is set to level of app bundle (eg. '/Applications/OpenPype 3.15.0.app')


Photoshop: make usage of layer name in subset name more controllable (other ) - #4432

Brief description

Layer name was previously used in subset name only if multiple instances were being created in single step. This adds explicit toggle.

Description

Toggling this button allows to use layer name in created subset name even if single instance is being created.This follows more closely implementation if AE.


SiteSync: fix dirmap (other ) - #4436

Brief description

Fixed issue in dirmap in Maya and Nuke

Description

Loads of error were thrown in Nuke console about dictionary value.AttributeError: 'dict' object has no attribute 'lower'


General: Ignore decode error of stdout/stderr in run_subprocess (other ) - #4446

Brief description

Ignore decode errors and replace invalid character (byte) with escaped byte character.

Description

Calling of run_subprocess may cause crashes if output contains some unicode character which (for example Polish name of encoder handler).


Publisher: Fix reopen bug (other ) - #4463

Brief description

Use right name of constant 'ActiveWindow' -> 'WindowActive'.


Publisher: Fix compatibility of QAction in Publisher (other ) - #4474

Brief description

Fix QAction for older version of Qt bindings where QAction requires a parent on initialization.

Description

This bug was discovered in Nuke 11. Fixed by creating QAction when QMenu is already available and can be used as parent.


🔀 Refactored code

General: Remove 'openpype.api' (other ) - #4413

Brief description

PR is removing openpype/api.py file which is causing a lot of troubles and cross-imports.

Description

I wanted to remove the file slowly function by function but it always reappear somewhere in codebase even if most of the functionality imported from there is triggering deprecation warnings. This is small change which may have huge impact.There shouldn't be anything in openpype codebase which is using openpype.api anymore so only possible issues are in customized repositories or custom addons.


📃 Documentation

docs-user-Getting Started adjustments (other ) - #4365

Brief description

Small typo fixes here and there, additional info on install/ running OP.


Merged pull requests

Renderman support for sample and display filters (3d / maya ) - #4003

Brief description

User can set up both sample and display filters in Openpype settings if they are using Renderman as renderer.

Description

You can preset which sample and display filters for renderman , including the cryptomatte renderpass, in Openpype settings. Once you select which filters to be included in openpype settings and then create render instance for your camera in maya, it would automatically tell the system to generate your selected filters in render settings.The place you can find for setting up the filters: Maya > Render Settings > Renderman Renderer > Display Filters/ Sample Filters


Maya: Create Arnold options on repair. (3d / maya ) - #4448

Brief description

When validating/repairing we previously required users to open render settings to create the Arnold options. This is done through code now.


Update Asset field of creator Instances in Maya Template Builder (3d / maya ) - #4470

Brief description

When we build a template with Maya Template Builder, it will update the asset field of the sets (creator instances) that are imported from the template.

Description

When building a template, we also want to define the publishable content in advance: create an instance of a model, or look, etc., to speed up the workflow and reduce the number of questions we are asked. After building a work file from a saved template that contains pre-created instances, the template builder should update the asset field to the current asset.


Blender: fix import workfile all families (3d / blender ) - #4405

Brief description

Having this feature related to workfile available for any family is absurd.


Nuke: update rendered frames in latest version (2d / nuke ) - #4362

Brief description

Introduced new field to insert frame(s) to rerender only.

Description

Rendering is expensive, sometimes it is helpful only to re-render changed frames and reuse existing.Artists can in Publisher fill which frame(s) should be re-rendered.If there is already published version of currently publishing subset, all representation files are collected (currently for render family only) and then when Nuke is rendering (locally only for now), old published files are copied into into temporary render folder where will be rewritten only by frames explicitly set in new field.That way review/burnin process could also reuse old files and recreate reviews/burnins.New version is produced during this process!


Feature: Keep synced hero representations up-to-date. (other ) - #4343

Brief description

Keep previously synchronized sites up-to-date by comparing old and new sites and adding old sites if missing in new ones.Fix #4331


Maya: Fix template builder bug where assets are not put in the right hierarchy (other ) - #4367

Brief description

When buiding scene from template, the assets loaded from the placeholders are not put in the hierarchy. Plus, the assets are loaded in double.


Bump ua-parser-js from 0.7.31 to 0.7.33 in /website (other ) - #4371

Bumps ua-parser-js from 0.7.31 to 0.7.33.

Changelog

Sourced from ua-parser-js's changelog.

Version 0.7.31 / 1.0.2

  • Fix OPPO Reno A5 incorrect detection
  • Fix TypeError Bug
  • Use AST to extract regexes and verify them with safe-regex

Version 0.7.32 / 1.0.32

  • Add new browser : DuckDuckGo, Huawei Browser, LinkedIn
  • Add new OS : HarmonyOS
  • Add some Huawei models
  • Add Sharp Aquos TV
  • Improve detection Xiaomi Mi CC9
  • Fix Sony Xperia 1 III misidentified as Acer tablet
  • Fix Detect Sony BRAVIA as SmartTV
  • Fix Detect Xiaomi Mi TV as SmartTV
  • Fix Detect Galaxy Tab S8 as tablet
  • Fix WeGame mistakenly identified as WeChat
  • Fix included commas in Safari / Mobile Safari version
  • Increase UA_MAX_LENGTH to 350

Version 0.7.33 / 1.0.33

  • Add new browser : Cobalt
  • Identify Macintosh as an Apple device
  • Fix ReDoS vulnerability

Version 0.8

Version 0.8 was created by accident. This version is now deprecated and no longer maintained, please update to version 0.7 / 1.0.

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the Security Alerts page.

___
Docs: Question about renaming in Kitsu (other ) - #4384

Brief description

To keep memory of this discussion: https://discord.com/channels/517362899170230292/563751989075378201/1068112668491255818


New Publisher: Fix Creator error typo (other ) - #4396

Brief description

Fixes typo in error message.


Chore: pyproject.toml version because of Poetry (other ) - #4408

Brief description

Automatization injects wrong format


Fix - remove minor part in toml (other ) - #4437

Brief description

Causes issue in create_env and new Poetry


General: Add project code to anatomy (other ) - #4445

Brief description

Added attribute project_code to Anatomy object.

Description

Anatomy already have access to almost all attributes from project anatomy except project code. This PR changing it. Technically Anatomy is everything what would be needed to get fill data of project.


{

    "project": {

        "name": anatomy.project_name,

        "code": anatomy.project_code

    }

}


Maya: Arnold Scene Source overhaul - OP-4865 (other / maya ) - #4449

Brief description

General overhaul of the Arnold Scene Source (ASS) workflow.

Description

This originally was to support static files (non-sequencial) ASS publishing, but digging deeper whole workflow needed an update to get ready for further issues. During this overhaul the following changes were made:

  • Generalized Arnold Standin workflow to a single loader.

  • Support multiple nodes as proxies.

  • Support proxies for pointcache family.

  • Generalized approach to proxies as resources, so they can be the same file format as the original.This workflow should allow further expansion to utilize operators and eventually USD.


Full Changelog

Deprecated:

  • General: Fill default values of new publish template profiles #4245

📖 Documentation

  • documentation: Split tools into separate entries #4342
  • Documentation: Fix harmony docs #4301
  • Remove staging logic set by OpenPype version #3979

🆕 New features

  • General: Push to studio library #4284
  • Colorspace Management and Distribution #4195
  • Nuke: refactor to latest publisher workfow #4006
  • Update to Python 3.9 #3546

🚀 Enhancements

  • Unreal: Don't use mongo queries in 'ExistingLayoutLoader' #4356
  • General: Loader and Creator plugins can be disabled #4310
  • General: Unbind poetry version #4306
  • General: Enhanced enum def items #4295
  • Git: add pre-commit hooks #4289
  • Tray Publisher: Improve Online family functionality #4263
  • General: Update MacOs to PySide6 #4255
  • Build: update to Gazu in toml #4208
  • Global: adding imageio to settings #4158
  • Blender: added project settings for validator no colons in name #4149
  • Dockerfile for Debian Bullseye #4108
  • AfterEffects: publish multiple compositions #4092
  • AfterEffects: make new publisher default #4056
  • Photoshop: make new publisher default #4051
  • Feature/multiverse #4046
  • Tests: add support for deadline for automatic tests #3989
  • Add version to shortcut name #3906
  • TrayPublisher: Removed from experimental tools #3667

🐛 Bug fixes

  • change 3.7 to 3.9 in folder name #4354
  • PushToProject: Fix hierarchy of project change #4350
  • Fix photoshop workfile save-as #4347
  • Nuke Input process node sourcing improvements #4341
  • New publisher: Some validation plugin tweaks #4339
  • Harmony: fix unable to change workfile on Mac #4334
  • Global: fixing in-place source publishing for editorial #4333
  • General: Use class constants of QMessageBox #4332
  • TVPaint: Fix plugin for TVPaint 11.7 #4328
  • Exctract OTIO review has improved quality #4325
  • Ftrack: fix typos causing bugs in sync #4322
  • General: Python 2 compatibility of instance collector #4320
  • Slack: user groups speedup #4318
  • Maya: Bug - Multiverse extractor executed on plain animation family #4315
  • Fix run_documentation.ps1 #4312
  • Nuke: new creators fixes #4308
  • General: missing comment on standalone and tray publisher #4303
  • AfterEffects: Fix for audio from mp4 layer #4296
  • General: Update gazu in poetry lock #4247
  • Bug: Fixing version detection and filtering in Igniter #3914
  • Bug: Create missing version dir #3903

🔀 Refactored code

  • Remove redundant export_alembic method. #4293
  • Igniter: Use qtpy modules instead of Qt #4237

Merged pull requests:

  • Sort families by alphabetical order in the Create plugin #4346
  • Global: Validate unique subsets #4336
  • Maya: Collect instances preserve handles even if frameStart + frameEnd matches context #3437

Full Changelog

🆕 New features

  • Global | Nuke: Creator placeholders in workfile template builder #4266
  • Slack: Added dynamic message #4265
  • Blender: Workfile Loader #4234
  • Unreal: Publishing and Loading for UAssets #4198
  • Publish: register publishes without copying them #4157

🚀 Enhancements

  • General: Added install method with docstring to HostBase #4298
  • Traypublisher: simple editorial multiple edl #4248
  • General: Extend 'IPluginPaths' to have more available methods #4214
  • Refactorization of folder coloring #4211
  • Flame - loading multilayer with controlled layer names #4204

🐛 Bug fixes

  • Unreal: fix missing maintained_selection call #4300
  • Ftrack: Fix receive of host ip on MacOs #4288
  • SiteSync: sftp connection failing when shouldnt be tested #4278
  • Deadline: fix default value for passing mongo url #4275
  • Scene Manager: Fix variable name #4268
  • Slack: notification fails because of missing published path #4264
  • hiero: creator gui with min max #4257
  • NiceCheckbox: Fix checker positioning in Python 2 #4253
  • Publisher: Fix 'CreatorType' not equal for Python 2 DCCs #4249
  • Deadline: fix dependencies #4242
  • Houdini: hotfix instance data access #4236
  • bugfix/image plane load error #4222
  • Hiero: thumbnail from multilayer exr #4209

🔀 Refactored code

  • Resolve: Use qtpy in Resolve #4254
  • Houdini: Use qtpy in Houdini #4252
  • Max: Use qtpy in Max #4251
  • Maya: Use qtpy in Maya #4250
  • Hiero: Use qtpy in Hiero #4240
  • Nuke: Use qtpy in Nuke #4239
  • Flame: Use qtpy in flame #4238
  • General: Legacy io not used in global plugins #4134

Merged pull requests:

  • Bump json5 from 1.0.1 to 1.0.2 in /website #4292
  • Maya: Fix validate frame range repair + fix create render with deadline disabled #4279

Full Changelog

📖 Documentation

  • Documentation: Testing on Deadline #4185
  • Consistent Python version #4160

🆕 New features

  • Feature/op 4397 gl tf extractor for maya #4192
  • Maya: Extractor for Unreal SkeletalMesh #4174
  • 3dsmax: integration #4168
  • Blender: Extract Alembic Animations #4128
  • Unreal: Load Alembic Animations #4127

🚀 Enhancements

  • Houdini: Use new interface class name for publish host #4220
  • General: Default command for headless mode is interactive #4203
  • Maya: Enhanced ASS publishing #4196
  • Feature/op 3924 implement ass extractor #4188
  • File transactions: Source path is destination path #4184
  • Deadline: improve environment processing #4182
  • General: Comment per instance in Publisher #4178
  • Ensure Mongo database directory exists in Windows. #4166
  • Note about unrestricted execution on Windows. #4161
  • Maya: Enable thumbnail transparency on extraction. #4147
  • Maya: Disable viewport Pan/Zoom on playblast extraction. #4146
  • Maya: Optional viewport refresh on pointcache extraction #4144
  • CelAction: refactory integration to current openpype #4140
  • Maya: create and publish bounding box geometry #4131
  • Changed the UOpenPypePublishInstance to use the UDataAsset class #4124
  • General: Collection Audio speed up #4110
  • Maya: keep existing AOVs when creating render instance #4087
  • General: Oiio conversion multipart fix #4060

🐛 Bug fixes

  • Publisher: Signal type issues in Python 2 DCCs #4230
  • Blender: Fix Layout Family Versioning #4228
  • Blender: Fix Create Camera "Use selection" #4226
  • TrayPublisher - join needs list #4224
  • General: Event callbacks pass event to callbacks as expected #4210
  • Build:Revert .toml update of Gazu #4207
  • Nuke: fixed imageio node overrides subset filter #4202
  • Maya: pointcache #4201
  • Unreal: Support for Unreal Engine 5.1 #4199
  • General: Integrate thumbnail looks for thumbnail to multiple places #4181
  • Various minor bugfixes #4172
  • Nuke/Hiero: Remove tkinter library paths before launch #4171
  • Flame: vertical alignment of layers #4169
  • Nuke: correct detection of viewer and display #4165
  • Settings UI: Don't create QApplication if already exists #4156
  • General: Extract review handle start offset of sequences #4152
  • Maya: Maintain time connections on Alembic update. #4143

🔀 Refactored code

  • General: Use qtpy in modules and hosts UIs which are running in OpenPype process #4225
  • Tools: Use qtpy instead of Qt in standalone tools #4223
  • General: Use qtpy in settings UI #4215

Merged pull requests:

  • layout publish more than one container issue #4098

Full Changelog

🚀 Enhancements

  • General: Refactored extract hierarchy plugin #4139
  • General: Find executable enhancement #4137
  • Ftrack: Reset session before instance processing #4129
  • Ftrack: Editorial asset sync issue #4126
  • Deadline: Build version resolving #4115
  • Houdini: New Publisher #3046
  • Fix: Standalone Publish Directories #4148

🐛 Bug fixes

  • Ftrack: Fix occational double parents issue #4153
  • General: Maketx executable issue #4136
  • Maya: Looks - add all connections #4135
  • General: Fix variable check in collect anatomy instance data #4117

Full Changelog

🆕 New features

  • Hiero: loading effect family to timeline #4055

🚀 Enhancements

  • Photoshop: bug with pop-up window on Instance Creator #4121
  • Publisher: Open on specific tab #4120
  • Publisher: Hide unknown publish values #4116
  • Ftrack: Event server status give more information about version locations #4112
  • General: Allow higher numbers in frames and clips #4101
  • Publisher: Settings for validate frame range #4097
  • Publisher: Ignore escape button #4090
  • Flame: Loading clip with native colorspace resolved from mapping #4079
  • General: Extract review single frame output #4064
  • Publisher: Prepared common function for instance data cache #4063
  • Publisher: Easy access to publish page from create page #4058
  • General/TVPaint: Attribute defs dialog #4052
  • Publisher: Better reset defer #4048
  • Publisher: Add thumbnail sources #4042

🐛 Bug fixes

  • General: Move default settings for template name #4119
  • Slack: notification fail in new tray publisher #4118
  • Nuke: loaded nodes set to first tab #4114
  • Nuke: load image first frame #4113
  • Files Widget: Ignore case sensitivity of extensions #4096
  • Webpublisher: extension is lowercased in Setting and in uploaded files #4095
  • Publish Report Viewer: Fix small bugs #4086
  • Igniter: fix regex to match semver better #4085
  • Maya: aov filtering #4083
  • Flame/Flare: Loading to multiple batches #4080
  • hiero: creator from settings with set maximum #4077
  • Nuke: resolve hashes in file name only for frame token #4074
  • Publisher: Fix cache of asset docs #4070
  • Webpublisher: cleanup wp extract thumbnail #4067
  • Settings UI: Locked setting can't bypass lock #4066
  • Loader: Fix comparison of repre name #4053
  • Deadline: Extract environment subprocess failure #4050

🔀 Refactored code

  • General: Collect entities plugin minor changes #4089
  • General: Direct interfaces import #4065

Merged pull requests:

  • Bump loader-utils from 1.4.1 to 1.4.2 in /website #4100
  • Online family for Tray Publisher #4093
  • Bump loader-utils from 1.4.0 to 1.4.1 in /website #4081
  • remove underscore from subset name #4059
  • Alembic Loader as Arnold Standin #4047

Full Changelog

📖 Documentation

  • Documentation: Minor updates to dev_requirements.md #4025

🆕 New features

  • Nuke: add 13.2 variant #4041

🚀 Enhancements

  • Publish Report Viewer: Store reports locally on machine #4040
  • General: More specific error in burnins script #4026
  • General: Extract review does not crash with old settings overrides #4023
  • Publisher: Convertors for legacy instances #4020
  • workflows: adding milestone creator and assigner #4018
  • Publisher: Catch creator errors #4015

🐛 Bug fixes

  • Hiero - effect collection fixes #4038
  • Nuke - loader clip correct hash conversion in path #4037
  • Maya: Soft fail when applying capture preset #4034
  • Igniter: handle missing directory #4032
  • StandalonePublisher: Fix thumbnail publishing #4029
  • Experimental Tools: Fix publisher import #4027
  • Houdini: fix wrong path in ASS loader #4016

🔀 Refactored code

  • General: Import lib functions from lib #4017

3.14.5 (2022-10-24)

Full Changelog

🚀 Enhancements

  • Maya: add OBJ extractor to model family #4021
  • Publish report viewer tool #4010
  • Nuke | Global: adding custom tags representation filtering #4009
  • Publisher: Create context has shared data for collection phase #3995
  • Resolve: updating to v18 compatibility #3986

🐛 Bug fixes

  • TrayPublisher: Fix missing argument #4019
  • General: Fix python 2 compatibility of ffmpeg and oiio tools discovery #4011

🔀 Refactored code

  • Maya: Removed unused imports #4008
  • Unreal: Fix import of moved function #4007
  • Houdini: Change import of RepairAction #4005
  • Nuke/Hiero: Refactor openpype.api imports #4000
  • TVPaint: Defined with HostBase #3994

Merged pull requests:

  • Unreal: Remove redundant Creator stub #4012
  • Unreal: add uproject extension to Unreal project template #4004
  • Unreal: fix order of includes #4002
  • Fusion: Implement backwards compatibility (+/- Fusion 17.2) #3958

3.14.4 (2022-10-19)

Full Changelog

🆕 New features

  • Webpublisher: use max next published version number for all items in batch #3961
  • General: Control Thumbnail integration via explicit configuration profiles #3951

🚀 Enhancements

  • Publisher: Multiselection in card view #3993
  • TrayPublisher: Original Basename cause crash too early #3990
  • Tray Publisher: add originalBasename data to simple creators #3988
  • General: Custom paths to ffmpeg and OpenImageIO tools #3982
  • Integrate: Preserve existing subset group if instance does not set it for new version #3976
  • Publisher: Prepare publisher controller for remote publishing #3972
  • Maya: new style dataclasses in maya deadline submitter plugin #3968
  • Maya: Define preffered Qt bindings for Qt.py and qtpy #3963
  • Settings: Move imageio from project anatomy to project settings [pypeclub] #3959
  • TrayPublisher: Extract thumbnail for other families #3952
  • Publisher: Pass instance to subset name method on update #3949
  • General: Set root environments before DCC launch #3947
  • Refactor: changed legacy way to update database for Hero version integrate #3941
  • Maya: Moved plugin from global to maya #3939
  • Publisher: Create dialog is part of main window #3936
  • Fusion: Implement Alembic and FBX mesh loader #3927

🐛 Bug fixes

  • TrayPublisher: Disable sequences in batch mov creator #3996
  • Fix - tags might be missing on representation #3985
  • Resolve: Fix usage of functions from lib #3983
  • Maya: remove invalid prefix token for non-multipart outputs #3981
  • Ftrack: Fix schema cache for Python 2 #3980
  • Maya: add object to attr.s declaration #3973
  • Maya: Deadline OutputFilePath hack regression for Renderman #3950
  • Houdini: Fix validate workfile paths for non-parm file references #3948
  • Photoshop: missed sync published version of workfile with workfile #3946
  • Maya: Set default value for RenderSetupIncludeLights option #3944
  • Maya: fix regression of Renderman Deadline hack #3943
  • Kitsu: 2 fixes, nb_frames and Shot type error #3940
  • Tray: Change order of attribute changes #3938
  • AttributeDefs: Fix crashing multivalue of files widget #3937
  • General: Fix links query on hero version #3900
  • Publisher: Files Drag n Drop cleanup #3888

🔀 Refactored code

  • Flame: Import lib functions from lib #3992
  • General: Fix deprecated warning in legacy creator #3978
  • Blender: Remove openpype api imports #3977
  • General: Use direct import of resources #3964
  • General: Direct settings imports #3934
  • General: import 'Logger' from 'openpype.lib' #3926
  • General: Remove deprecated functions from lib #3907

Merged pull requests:

  • Maya + Yeti: Load Yeti Cache fix frame number recognition #3942
  • Fusion: Implement callbacks to Fusion's event system thread #3928
  • Photoshop: create single frame image in Ftrack as review #3908

3.14.3 (2022-10-03)

Full Changelog

🚀 Enhancements

  • Publisher: Enhancement proposals #3897

🐛 Bug fixes

  • Maya: Fix Render single camera validator #3929
  • Flame: loading multilayer exr to batch/reel is working #3901
  • Hiero: Fix inventory check on launch #3895
  • WebPublisher: Fix import after refactor #3891

🔀 Refactored code

  • Maya: Remove unused 'openpype.api' imports in plugins #3925
  • Resolve: Use new Extractor location #3918
  • Unreal: Use new Extractor location #3917
  • Flame: Use new Extractor location #3916
  • Houdini: Use new Extractor location #3894
  • Harmony: Use new Extractor location #3893

Merged pull requests:

  • Maya: Fix Scene Inventory possibly starting off-screen due to maya preferences #3923

3.14.2 (2022-09-12)

Full Changelog

📖 Documentation

  • Documentation: Anatomy templates #3618

🆕 New features

  • Nuke: Build workfile by template #3763
  • Houdini: Publishing workfiles #3697
  • Global: making collect audio plugin global #3679

🚀 Enhancements

  • Flame: Adding Creator's retimed shot and handles switch #3826
  • Flame: OpenPype submenu to batch and media manager #3825
  • General: Better pixmap scaling #3809
  • Photoshop: attempt to speed up ExtractImage #3793
  • SyncServer: Added cli commands for sync server #3765
  • Kitsu: Drop 'entities root' setting. #3739
  • git: update gitignore #3722
  • Blender: Publisher collect workfile representation #3670
  • Maya: move set render settings menu entry #3669
  • Scene Inventory: Maya add actions to select from or to scene #3659
  • Scene Inventory: Add subsetGroup column #3658

🐛 Bug fixes

  • General: Fix Pattern access in client code #3828
  • Launcher: Skip opening last work file works for groups #3822
  • Maya: Publishing data key change #3811
  • Igniter: Fix status handling when version is already installed #3804
  • Resolve: Addon import is Python 2 compatible #3798
  • Hiero: retimed clip publishing is working #3792
  • nuke: validate write node is not failing due wrong type #3780
  • Fix - changed format of version string in pyproject.toml #3777
  • Ftrack status fix typo prgoress -> progress #3761
  • Fix version resolution #3757
  • Maya: containerise dont skip empty values #3674

🔀 Refactored code

  • Photoshop: Use new Extractor location #3789
  • Blender: Use new Extractor location #3787
  • AfterEffects: Use new Extractor location #3784
  • General: Remove unused teshost #3773
  • General: Copied 'Extractor' plugin to publish pipeline #3771
  • General: Move queries of asset and representation links #3770
  • General: Move create project folders to pipeline #3768
  • General: Create project function moved to client code #3766
  • Maya: Refactor submit deadline to use AbstractSubmitDeadline #3759
  • General: Change publish template settings location #3755
  • General: Move hostdirname functionality into host #3749
  • General: Move publish utils to pipeline #3745
  • Houdini: Define houdini as addon #3735
  • Fusion: Defined fusion as addon #3733
  • Flame: Defined flame as addon #3732
  • Resolve: Define resolve as addon #3727

Merged pull requests:

  • Standalone Publisher: Ignore empty labels, then still use name like other asset models #3779
  • Kitsu - sync_all_project - add list ignore_projects #3776

3.14.1 (2022-08-30)

Full Changelog

📖 Documentation

  • Documentation: Few updates #3698
  • Documentation: Settings development #3660

🆕 New features

  • Webpublisher:change create flatten image into tri state #3678
  • Blender: validators code correction with settings and defaults #3662

🚀 Enhancements

  • General: Thumbnail can use project roots #3750
  • Settings: Remove settings lock on tray exit #3720
  • General: Added helper getters to modules manager #3712
  • Unreal: Define unreal as module and use host class #3701
  • Settings: Lock settings UI session #3700
  • General: Benevolent context label collector #3686
  • Ftrack: Store ftrack entities on hierarchy integration to instances #3677
  • Ftrack: More logs related to auto sync value change #3671
  • Blender: ops refresh manager after process events #3663

🐛 Bug fixes

  • Maya: Fix typo in getPanel argument with_focus -> withFocus #3753
  • General: Smaller fixes of imports #3748
  • General: Logger tweaks #3741
  • Nuke: missing job dependency if multiple bake streams #3737
  • Nuke: color-space settings from anatomy is working #3721
  • Settings: Fix studio default anatomy save #3716
  • Maya: Use project name instead of project code #3709
  • Settings: Fix project overrides save #3708
  • Workfiles tool: Fix published workfile filtering #3704
  • PS, AE: Provide default variant value for workfile subset #3703
  • RoyalRender: handle host name that is not set #3695
  • Flame: retime is working on clip publishing #3684
  • Webpublisher: added check for empty context #3682

🔀 Refactored code

  • General: Move delivery logic to pipeline #3751
  • General: Host addons cleanup #3744
  • Webpublisher: Webpublisher is used as addon #3740
  • Photoshop: Defined photoshop as addon #3736
  • Harmony: Defined harmony as addon #3734
  • General: Module interfaces cleanup #3731
  • AfterEffects: Move AE functions from general lib #3730
  • Blender: Define blender as module #3729
  • AfterEffects: Define AfterEffects as module #3728
  • General: Replace PypeLogger with Logger #3725
  • Nuke: Define nuke as module #3724
  • General: Move subset name functionality #3723
  • General: Move creators plugin getter #3714
  • General: Move constants from lib to client #3713
  • Loader: Subset groups using client operations #3710
  • TVPaint: Defined as module #3707
  • StandalonePublisher: Define StandalonePublisher as module #3706
  • TrayPublisher: Define TrayPublisher as module #3705
  • General: Move context specific functions to context tools #3702

Merged pull requests:

  • Hiero: Define hiero as module #3717
  • Deadline: better logging for DL webservice failures #3694
  • Photoshop: resize saved images in ExtractReview for ffmpeg #3676
  • Nuke: Validation refactory to new publisher #3567

3.14.0 (2022-08-18)

Full Changelog

🆕 New features

  • Maya: Build workfile by template #3578
  • Maya: Implementation of JSON layout for Unreal workflow #3353
  • Maya: Build workfile by template #3315

🚀 Enhancements

  • Ftrack: Addiotional component metadata #3685
  • Ftrack: Set task status on farm publishing #3680
  • Ftrack: Set task status on task creation in integrate hierarchy #3675
  • Maya: Disable rendering of all lights for render instances submitted through Deadline. #3661
  • General: Optimized OCIO configs #3650

🐛 Bug fixes

  • General: Switch from hero version to versioned works #3691
  • General: Fix finding of last version #3656
  • General: Extract Review can scale with pixel aspect ratio #3644
  • Maya: Refactor moved usage of CreateRender settings #3643
  • General: Hero version representations have full context #3638
  • Nuke: color settings for render write node is working now #3632
  • Maya: FBX support for update in reference loader #3631

🔀 Refactored code

  • General: Use client projects getter #3673
  • Resolve: Match folder structure to other hosts #3653
  • Maya: Hosts as modules #3647
  • TimersManager: Plugins are in timers manager module #3639
  • General: Move workfiles functions into pipeline #3637
  • General: Workfiles builder using query functions #3598

Merged pull requests:

  • Deadline: Global job pre load is not Pype 2 compatible #3666
  • Maya: Remove unused get current renderer logic #3645
  • Kitsu|Fix: Movie project type fails & first loop children names #3636
  • fix the bug of failing to extract look when UDIMs format used in AiImage #3628

3.13.0 (2022-08-09)

Full Changelog

🆕 New features

  • Support for mutliple installed versions - 3.13 #3605
  • Traypublisher: simple editorial publishing #3492

🚀 Enhancements

  • Editorial: Mix audio use side file for ffmpeg filters #3630
  • Ftrack: Comment template can contain optional keys #3615
  • Ftrack: Add more metadata to ftrack components #3612
  • General: Add context to pyblish context #3594
  • Kitsu: Shot&Sequence name with prefix over appends #3593
  • Photoshop: implemented {layer} placeholder in subset template #3591
  • General: Python module appdirs from git #3589
  • Ftrack: Update ftrack api to 2.3.3 #3588
  • General: New Integrator small fixes #3583
  • Maya: Render Creator has configurable options. #3097

🐛 Bug fixes

  • Maya: fix aov separator in Redshift #3625
  • Fix for multi-version build on Mac #3622
  • Ftrack: Sync hierarchical attributes can handle new created entities #3621
  • General: Extract review aspect ratio scale is calculated by ffmpeg #3620
  • Maya: Fix types of default settings #3617
  • Integrator: Don't force to have dot before frame #3611
  • AfterEffects: refactored integrate doesnt work formulti frame publishes #3610
  • Maya look data contents fails with custom attribute on group #3607
  • TrayPublisher: Fix wrong conflict merge #3600
  • Bugfix: Add OCIO as submodule to prepare for handling maketx color space conversion. #3590
  • Fix general settings environment variables resolution #3587
  • Editorial publishing workflow improvements #3580
  • General: Update imports in start script #3579
  • Nuke: render family integration consistency #3576
  • Ftrack: Handle missing published path in integrator #3570
  • Nuke: publish existing frames with slate with correct range #3555

🔀 Refactored code

  • General: Plugin settings handled by plugins #3623
  • General: Naive implementation of document create, update, delete #3601
  • General: Use query functions in general code #3596
  • General: Separate extraction of template data into more functions #3574
  • General: Lib cleanup #3571

Merged pull requests:

  • Webpublisher: timeout for PS studio processing #3619
  • Core: translated validate_containers.py into New publisher style #3614
  • Enable write color sets on animation publish automatically #3582

3.12.2 (2022-07-27)

Full Changelog

📖 Documentation

  • Update website with more studios #3554
  • Documentation: Update publishing dev docs #3549

🚀 Enhancements

  • General: Global thumbnail extractor is ready for more cases #3561
  • Maya: add additional validators to Settings #3540
  • General: Interactive console in cli #3526
  • Ftrack: Automatic daily review session creation can define trigger hour #3516
  • Ftrack: add source into Note #3509
  • Ftrack: Trigger custom ftrack topic of project structure creation #3506
  • Settings UI: Add extract to file action on project view #3505
  • Add pack and unpack convenience scripts #3502
  • General: Event system #3499
  • NewPublisher: Keep plugins with mismatch target in report #3498
  • Nuke: load clip with options from settings #3497
  • TrayPublisher: implemented render_mov_batch #3486
  • Migrate basic families to the new Tray Publisher #3469
  • Enhance powershell build scripts #1827

🐛 Bug fixes

  • Maya: fix Review image plane attribute #3569
  • Maya: Fix animated attributes (ie. overscan) on loaded cameras breaking review publishing. #3562
  • NewPublisher: Python 2 compatible html escape #3559
  • Remove invalid submodules from /vendor #3557
  • General: Remove hosts filter on integrator plugins #3556
  • Settings: Clean default values of environments #3550
  • Module interfaces: Fix import error #3547
  • Workfiles tool: Show of tool and it's flags #3539
  • General: Create workfile documents works again #3538
  • Additional fixes for powershell scripts #3525
  • Maya: Added wrapper around cmds.setAttr #3523
  • Nuke: double slate #3521
  • General: Fix hash of centos oiio archive #3519
  • Maya: Renderman display output fix #3514
  • TrayPublisher: Simple creation enhancements and fixes #3513
  • NewPublisher: Publish attributes are properly collected #3510
  • TrayPublisher: Make sure host name is filled #3504
  • NewPublisher: Groups work and enum multivalue #3501

🔀 Refactored code

  • General: Use query functions in integrator #3563
  • General: Mongo core connection moved to client #3531
  • Refactor Integrate Asset #3530
  • General: Client docstrings cleanup #3529
  • General: Move load related functions into pipeline #3527
  • General: Get current context document functions #3522
  • Kitsu: Use query function from client #3496
  • TimersManager: Use query functions #3495
  • Deadline: Use query functions #3466
  • Refactor Integrate Asset #2898

Merged pull requests:

  • Maya: fix active pane loss #3566

3.12.1 (2022-07-13)

Full Changelog

📖 Documentation

  • Docs: Added minimal permissions for MongoDB #3441

🆕 New features

  • Maya: Add VDB to Arnold loader #3433

🚀 Enhancements

  • TrayPublisher: Added more options for grouping of instances #3494
  • NewPublisher: Align creator attributes from top to bottom #3487
  • NewPublisher: Added ability to use label of instance #3484
  • General: Creator Plugins have access to project #3476
  • General: Better arguments order in creator init #3475
  • Ftrack: Trigger custom ftrack events on project creation and preparation #3465
  • Windows installer: Clean old files and add version subfolder #3445
  • Blender: Bugfix - Set fps properly on open #3426
  • Hiero: Add custom scripts menu #3425
  • Blender: pre pyside install for all platforms #3400
  • Maya: Add additional playblast options to review Extractor. #3384
  • Maya: Ability to set resolution for playblasts from asset, and override through review instance. #3360
  • Maya: Redshift Volume Loader Implement update, remove, switch + fix vdb sequence support #3197
  • Maya: Implement iter_visible_nodes_in_range for extracting Alembics #3100

🐛 Bug fixes

  • TrayPublisher: Keep use instance label in list view #3493
  • General: Extract review use first frame of input sequence #3491
  • General: Fix Plist loading for application launch #3485
  • Nuke: Workfile tools open on start #3479
  • New Publisher: Disabled context change allows creation #3478
  • General: thumbnail extractor fix #3474
  • Kitsu: bugfix with sync-service ans publish plugins #3473
  • Flame: solved problem with multi-selected loading #3470
  • General: Fix query function in update logic #3468
  • Resolve: removed few bugs #3464
  • General: Delete old versions is safer when ftrack is disabled #3462
  • Nuke: fixing metadata slate TC difference #3455
  • Nuke: prerender reviewable fails #3450
  • Maya: fix hashing in Python 3 for tile rendering #3447
  • LogViewer: Escape html characters in log message #3443
  • Nuke: Slate frame is integrated #3427
  • Maya: Camera extra data - additional fix for #3304 #3386
  • Maya: Handle excluding model family from frame range validator. #3370

🔀 Refactored code

  • Maya: Merge animation + pointcache extractor logic #3461
  • Maya: Re-use maintained_time from lib #3460
  • General: Use query functions in global plugins #3459
  • Clockify: Use query functions in clockify actions #3458
  • General: Use query functions in rest api calls #3457
  • General: Use query functions in openpype lib functions #3454
  • General: Use query functions in load utils #3446
  • General: Move publish plugin and publish render abstractions #3442
  • General: Use Anatomy after move to pipeline #3436
  • General: Anatomy moved to pipeline #3435
  • Fusion: Use client query functions #3380
  • Resolve: Use client query functions #3379
  • General: Host implementation defined with class #3337

3.12.0 (2022-06-28)

Full Changelog

📖 Documentation

  • Fix typo in documentation: pyenv on mac #3417
  • Linux: update OIIO package #3401

🆕 New features

  • Shotgrid: Add production beta of shotgrid integration #2921

🚀 Enhancements

  • Webserver: Added CORS middleware #3422
  • Attribute Defs UI: Files widget show what is allowed to drop in #3411
  • General: Add ability to change user value for templates #3366
  • Hosts: More options for in-host callbacks #3357
  • Multiverse: expose some settings to GUI #3350
  • Maya: Allow more data to be published along camera 🎥 #3304
  • Add root keys and project keys to create starting folder #2755

🐛 Bug fixes

  • NewPublisher: Fix subset name change on change of creator plugin #3420
  • Bug: fix invalid avalon import #3418
  • Nuke: Fix keyword argument in query function #3414
  • Houdini: fix loading and updating vbd/bgeo sequences #3408
  • Nuke: Collect representation files based on Write #3407
  • General: Filter representations before integration start #3398
  • Maya: look collector typo #3392
  • TVPaint: Make sure exit code is set to not None #3382
  • Maya: vray device aspect ratio fix #3381
  • Flame: bunch of publishing issues #3377
  • Harmony: added unc path to zifile command in Harmony #3372
  • Standalone: settings improvements #3355
  • Nuke: Load full model hierarchy by default #3328
  • Nuke: multiple baking streams with correct slate #3245
  • Maya: fix image prefix warning in validator #3128

🔀 Refactored code

  • Unreal: Use client query functions #3421
  • General: Move editorial lib to pipeline #3419
  • Kitsu: renaming to plural func sync_all_projects #3397
  • Houdini: Use client query functions #3395
  • Hiero: Use client query functions #3393
  • Nuke: Use client query functions #3391
  • Maya: Use client query functions #3385
  • Harmony: Use client query functions #3378
  • Celaction: Use client query functions #3376
  • Photoshop: Use client query functions #3375
  • AfterEffects: Use client query functions #3374
  • TVPaint: Use client query functions #3340
  • Ftrack: Use client query functions #3339
  • Standalone Publisher: Use client query functions #3330

Merged pull requests:

  • Sync Queue: Added far future value for null values for dates #3371
  • Maya - added support for single frame playblast review #3369
  • Houdini: Implement Redshift Proxy Export #3196

3.11.1 (2022-06-20)

Full Changelog

🆕 New features

  • Flame: custom export temp folder #3346
  • Nuke: removing third-party plugins #3344

🚀 Enhancements

  • Pyblish Pype: Hiding/Close issues #3367
  • Ftrack: Removed requirement of pypeclub role from default settings #3354
  • Kitsu: Prevent crash on missing frames information #3352
  • Ftrack: Open browser from tray #3320
  • Enhancement: More control over thumbnail processing. #3259

🐛 Bug fixes

  • Nuke: bake streams with slate on farm #3368
  • Harmony: audio validator has wrong logic #3364
  • Nuke: Fix missing variable in extract thumbnail #3363
  • Nuke: Fix precollect writes #3361
  • AE- fix validate_scene_settings and renderLocal #3358
  • deadline: fixing misidentification of revieables #3356
  • General: Create only one thumbnail per instance #3351
  • nuke: adding extract thumbnail settings 3.10 #3347
  • General: Fix last version function #3345
  • Deadline: added OPENPYPE_MONGO to filter #3336
  • Nuke: fixing farm publishing if review is disabled #3306
  • Maya: Fix Yeti errors on Create, Publish and Load #3198

🔀 Refactored code

  • Webpublisher: Use client query functions #3333

3.11.0 (2022-06-17)

Full Changelog

📖 Documentation

  • Documentation: Add app key to template documentation #3299
  • doc: adding royal render and multiverse to the web site #3285
  • Module: Kitsu module #2650

🆕 New features

  • Multiverse: fixed composition write, full docs, cosmetics #3178

🚀 Enhancements

  • Settings: Settings can be extracted from UI #3323
  • updated poetry installation source #3316
  • Ftrack: Action to easily create daily review session #3310
  • TVPaint: Extractor use mark in/out range to render #3309
  • Ftrack: Delivery action can work on ReviewSessions #3307
  • Maya: Look assigner UI improvements #3298
  • Ftrack: Action to transfer values of hierarchical attributes #3284
  • Maya: better handling of legacy review subsets names #3269
  • General: Updated windows oiio tool #3268
  • Unreal: add support for skeletalMesh and staticMesh to loaders #3267
  • Maya: reference loaders could store placeholder in referenced url #3264
  • TVPaint: Init file for TVPaint worker also handle guideline images #3250
  • Nuke: Change default icon path in settings #3247
  • Maya: publishing of animation and pointcache on a farm #3225
  • Maya: Look assigner UI improvements #3208
  • Nuke: add pointcache and animation to loader #3186
  • Nuke: Add a gizmo menu #3172
  • Support for Unreal 5 #3122

🐛 Bug fixes

  • General: Handle empty source key on instance #3342
  • Houdini: Fix Houdini VDB manage update wrong file attribute name #3322
  • Nuke: anatomy compatibility issue hacks #3321
  • hiero: otio p3 compatibility issue - metadata on effect use update 3.11 #3314
  • General: Vendorized modules for Python 2 and update poetry lock #3305
  • Fix - added local targets to install host #3303
  • Settings: Add missing default settings for nuke gizmo #3301
  • Maya: Fix swaped width and height in reviews #3300
  • Maya: point cache publish handles Maya instances #3297
  • Global: extract review slate issues #3286
  • Webpublisher: return only active projects in ProjectsEndpoint #3281
  • Hiero: add support for task tags 3.10.x #3279
  • General: Fix Oiio tool path resolving #3278
  • Maya: Fix udim support for e.g. uppercase <UDIM> tag #3266
  • Nuke: bake reformat was failing on string type #3261
  • Maya: hotfix Pxr multitexture in looks #3260
  • Unreal: Fix Camera Loading if Layout is missing #3255
  • Unreal: Fixed Animation loading in UE5 #3240
  • Unreal: Fixed Render creation in UE5 #3239
  • Unreal: Fixed Camera loading in UE5 #3238
  • Flame: debugging #3224
  • add silent audio to slate #3162
  • Add timecode to slate #2929

🔀 Refactored code

  • Blender: Use client query functions #3331
  • General: Define query functions #3288

Merged pull requests:

  • Maya: add pointcache family to gpu cache loader #3318
  • Maya look: skip empty file attributes #3274

3.10.0 (2022-05-26)

Full Changelog

📖 Documentation

  • Docs: add all-contributors config and initial list #3094
  • Nuke docs with videos #3052

🆕 New features

  • General: OpenPype modules publish plugins are registered in host #3180
  • General: Creator plugins from addons can be registered #3179
  • Ftrack: Single image reviewable #3157
  • Nuke: Expose write attributes to settings #3123
  • Hiero: Initial frame publish support #3106
  • Unreal: Render Publishing #2917
  • AfterEffects: Implemented New Publisher #2838
  • Unreal: Rendering implementation #2410

🚀 Enhancements

  • Maya: FBX camera export #3253
  • General: updating common vendor scriptmenu to 1.5.2 #3246
  • Project Manager: Allow to paste Tasks into multiple assets at the same time #3226
  • Project manager: Sped up project load #3216
  • Loader UI: Speed issues of loader with sync server #3199
  • Looks: add basic support for Renderman #3190
  • Maya: added clean_import option to Import loader #3181
  • Add the scripts menu definition to nuke #3168
  • Maya: add maya 2023 to default applications #3167
  • Compressed bgeo publishing in SAP and Houdini loader #3153
  • General: Add 'dataclasses' to required python modules #3149
  • Hooks: Tweak logging grammar #3147
  • Nuke: settings for reformat node in CreateWriteRender node #3143
  • Houdini: Add loader for alembic through Alembic Archive node #3140
  • Publisher: UI Modifications and fixes #3139
  • General: Simplified OP modules/addons import #3137
  • Terminal: Tweak coloring of TrayModuleManager logging enabled states #3133
  • General: Cleanup some Loader docstrings #3131
  • Nuke: render instance with subset name filtered overrides #3117
  • Unreal: Layout and Camera update and remove functions reimplemented and improvements #3116
  • Settings: Remove environment groups from settings #3115
  • TVPaint: Match renderlayer key with other hosts #3110
  • Ftrack: AssetVersion status on publish #3108
  • Tray publisher: Simple families from settings #3105
  • Local Settings UI: Overlay messages on save and reset #3104
  • General: Remove repos related logic #3087
  • Standalone publisher: add support for bgeo and vdb #3080
  • Houdini: Fix FPS + outdated content pop-ups #3079
  • General: Add global log verbose arguments #3070
  • Flame: extract presets distribution #3063
  • Update collect_render.py #3055
  • SiteSync: Added compute_resource_sync_sites to sync_server_module #2983
  • Maya: Implement Hardware Renderer 2.0 support for Render Products #2611

🐛 Bug fixes

  • nuke: use framerange issue #3254
  • Ftrack: Chunk sizes for queries has minimal condition #3244
  • Maya: renderman displays needs to be filtered #3242
  • Ftrack: Validate that the user exists on ftrack #3237
  • Maya: Fix support for multiple resolutions #3236
  • TVPaint: Look for more groups than 12 #3228
  • Hiero: debugging frame range and other 3.10 #3222
  • Project Manager: Fix persistent editors on project change #3218
  • Deadline: instance data overwrite fix #3214
  • Ftrack: Push hierarchical attributes action works #3210
  • Standalone Publisher: Always create new representation for thumbnail #3203
  • Photoshop: skip collector when automatic testing #3202
  • Nuke: render/workfile version sync doesn't work on farm #3185
  • Ftrack: Review image only if there are no mp4 reviews #3183
  • Ftrack: Locations deepcopy issue #3177
  • General: Avoid creating multiple thumbnails #3176
  • General/Hiero: better clip duration calculation #3169
  • General: Oiio conversion for ffmpeg checks for invalid characters #3166
  • Fix for attaching render to subset #3164
  • Harmony: fixed missing task name in render instance #3163
  • Ftrack: Action delete old versions formatting works #3152
  • Deadline: fix the output directory #3144
  • General: New Session schema #3141
  • General: Missing version on headless mode crash properly #3136
  • TVPaint: Composite layers in reversed order #3135
  • Nuke: fixing default settings for workfile builder loaders #3120
  • Nuke: fix anatomy imageio regex default #3119
  • General: Python 3 compatibility in queries #3112
  • General: TemplateResult can be copied #3099
  • General: Collect loaded versions skips not existing representations #3095
  • RoyalRender Control Submission - AVALON_APP_NAME default #3091
  • Ftrack: Update Create Folders action #3089
  • Maya: Collect Render fix any render cameras check #3088
  • Project Manager: Avoid unnecessary updates of asset documents #3083
  • Standalone publisher: Fix plugins install #3077
  • General: Extract review sequence is not converted with same names #3076
  • Webpublisher: Use variant value #3068
  • Nuke: Add aov matching even for remainder and prerender #3060
  • Fix support for Renderman in Maya #3006

🔀 Refactored code

  • Avalon repo removed from Jobs workflow #3193
  • General: Remove remaining imports from avalon #3130
  • General: Move mongo db logic and remove avalon repository #3066
  • General: Move host install #3009

Merged pull requests:

  • Harmony: message length in 21.1 #3257
  • Harmony: 21.1 fix #3249
  • Maya: added jpg to filter for Image Plane Loader #3223
  • Webpublisher: replace space by underscore in subset names #3160
  • StandalonePublisher: removed Extract Background plugins #3093
  • Nuke: added suspend_publish knob #3078
  • Bump async from 2.6.3 to 2.6.4 in /website #3065
  • SiteSync: Download all workfile inputs #2966
  • Photoshop: New Publisher #2933
  • Bump pillow from 9.0.0 to 9.0.1 #2880
  • AfterEffects: Allow configuration of default variant via Settings #2856

3.9.8 (2022-05-19)

Full Changelog

3.9.7 (2022-05-11)

Full Changelog

3.9.6 (2022-05-03)

Full Changelog

3.9.5 (2022-04-25)

Full Changelog

3.9.4 (2022-04-15)

Full Changelog

📖 Documentation

  • Documentation: more info about Tasks #3062
  • Documentation: Python requirements to 3.7.9 #3035
  • Website Docs: Remove unused pages #2974

🆕 New features

  • General: Local overrides for environment variables #3045
  • Flame: Flare integration preparation #2928

🚀 Enhancements

  • TVPaint: Added init file for worker to triggers missing sound file dialog #3053
  • Ftrack: Custom attributes can be filled in slate values #3036
  • Resolve environment variable in google drive credential path #3008

🐛 Bug fixes

  • GitHub: Updated push-protected action in github workflow #3064
  • Nuke: Typos in imports from Nuke implementation #3061
  • Hotfix: fixing deadline job publishing #3059
  • General: Extract Review handle invalid characters for ffmpeg #3050
  • Slate Review: Support to keep format on slate concatenation #3049
  • Webpublisher: fix processing of workfile #3048
  • Ftrack: Integrate ftrack api fix #3044
  • Webpublisher - removed wrong hardcoded family #3043
  • LibraryLoader: Use current project for asset query in families filter #3042
  • SiteSync: Providers ignore that site is disabled #3041
  • Unreal: Creator import fixes #3040
  • SiteSync: fix transitive alternate sites, fix dropdown in Local Settings #3018
  • Maya: invalid review flag on rendered AOVs #2915

Merged pull requests:

  • Deadline: reworked pools assignment #3051
  • Houdini: Avoid ImportError on hdefereval when Houdini runs without UI #2987

3.9.3 (2022-04-07)

Full Changelog

📖 Documentation

  • Documentation: Added mention of adding My Drive as a root #2999
  • Website Docs: Manager Ftrack fix broken links #2979
  • Docs: Added MongoDB requirements #2951
  • Documentation: New publisher develop docs #2896

🆕 New features

  • Ftrack: Add description integrator #3027
  • nuke: bypass baking #2992
  • Publishing textures for Unreal #2988
  • Maya to Unreal: Static and Skeletal Meshes #2978
  • Multiverse: Initial Support #2908

🚀 Enhancements

  • General: default workfile subset name for workfile #3011
  • Ftrack: Add more options for note text of integrate ftrack note #3025
  • Console Interpreter: Changed how console splitter size are reused on show #3016
  • Deadline: Use more suitable name for sequence review logic #3015
  • Nuke: add concurrency attr to deadline job #3005
  • Photoshop: create image without instance #3001
  • TVPaint: Render scene family #3000
  • Deadline: priority configurable in Maya jobs #2995
  • Nuke: ReviewDataMov Read RAW attribute #2985
  • General: METADATA_KEYS constant as frozenset for optimal immutable lookup #2980
  • General: Tools with host filters #2975
  • Hero versions: Use custom templates #2967
  • Slack: Added configurable maximum file size of review upload to Slack #2945
  • NewPublisher: Prepared implementation of optional pyblish plugin #2943
  • TVPaint: Extractor to convert PNG into EXR #2942
  • Workfiles tool: Save as published workfiles #2937
  • Workfiles: Open published workfiles #2925
  • General: Default modules loaded dynamically #2923
  • CI: change the version bump logic #2919
  • Deadline: Add headless argument #2916
  • Nuke: Add no-audio Tag #2911
  • Ftrack: Fill workfile in custom attribute #2906
  • Nuke: improving readability #2903
  • Settings UI: Add simple tooltips for settings entities #2901

🐛 Bug fixes

  • General: Fix validate asset docs plug-in filename and class name #3029
  • Deadline: Fixed default value of use sequence for review #3033
  • Settings UI: Version column can be extended so version are visible #3032
  • General: Fix import after movements #3028
  • Harmony: Added creating subset name for workfile from template #3024
  • AfterEffects: Added creating subset name for workfile from template #3023
  • General: Add example addons to ignored #3022
  • Maya: Remove missing import #3017
  • Ftrack: multiple reviewable componets #3012
  • Tray publisher: Fixes after code movement #3010
  • Hosts: Remove path existence checks in 'add_implementation_envs' #3004
  • Nuke: fixing unicode type detection in effect loaders #3002
  • Fix - remove doubled dot in workfile created from template #2998
  • Nuke: removing redundant Ftrack asset when farm publishing #2996
  • PS: fix renaming subset incorrectly in PS #2991
  • Fix: Disable setuptools auto discovery #2990
  • AEL: fix opening existing workfile if no scene opened #2989
  • Maya: Don't do hardlinks on windows for look publishing #2986
  • Settings UI: Fix version completer on linux #2981
  • Photoshop: Fix creation of subset names in PS review and workfile #2969
  • Slack: Added default for review_upload_limit for Slack #2965
  • General: OIIO conversion for ffmeg can handle sequences #2958
  • Settings: Conditional dictionary avoid invalid logs #2956
  • General: Smaller fixes and typos #2950
  • LogViewer: Don't refresh on initialization #2949
  • nuke: python3 compatibility issue with iteritems #2948
  • General: anatomy data with correct task short key #2947
  • SceneInventory: Fix imports in UI #2944
  • Slack: add generic exception #2941
  • General: Python specific vendor paths on env injection #2939
  • General: More fail safe delete old versions #2936
  • Settings UI: Collapsed of collapsible wrapper works as expected #2934
  • Maya: Do not pass set to maya commands (fixes support for older maya versions) #2932
  • General: Don't print log record on OSError #2926
  • Hiero: Fix import of 'register_event_callback' #2924
  • Flame: centos related debugging #2922
  • Ftrack: Missing Ftrack id after editorial publish #2905
  • AfterEffects: Fix rendering for single frame in DL #2875

🔀 Refactored code

  • General: Move plugins register and discover #2935
  • General: Move Attribute Definitions from pipeline #2931
  • General: Removed silo references and terminal splash #2927
  • General: Move pipeline constants to OpenPype #2918
  • General: Move formatting and workfile functions #2914
  • General: Move remaining plugins from avalon #2912

Merged pull requests:

  • Maya: Allow to select invalid camera contents if no cameras found #3030
  • Bump paramiko from 2.9.2 to 2.10.1 #2973
  • Bump minimist from 1.2.5 to 1.2.6 in /website #2954
  • Bump node-forge from 1.2.1 to 1.3.0 in /website #2953
  • Maya - added transparency into review creator #2952

3.9.2 (2022-04-04)

Full Changelog

3.9.1 (2022-03-18)

Full Changelog

🚀 Enhancements

  • General: Change how OPENPYPE_DEBUG value is handled #2907
  • nuke: imageio adding ocio config version 1.2 #2897
  • Flame: support for comment with xml attribute overrides #2892
  • Nuke: ExtractReviewSlate can handle more codes and profiles #2879
  • Flame: sequence used for reference video #2869

🐛 Bug fixes

  • General: Fix use of Anatomy roots #2904
  • Fixing gap detection in extract review #2902
  • Pyblish Pype - ensure current state is correct when entering new group order #2899
  • SceneInventory: Fix import of load function #2894
  • Harmony - fixed creator issue #2891
  • General: Remove forgotten use of avalon Creator #2885
  • General: Avoid circular import #2884
  • Fixes for attaching loaded containers (#2837) #2874
  • Maya: Deformer node ids validation plugin #2826
  • Flame Babypublisher optimalization #2806
  • hotfix: OIIO tool path - add extension on windows #2618

🔀 Refactored code

  • General: Reduce style usage to OpenPype repository #2889
  • General: Move loader logic from avalon to openpype #2886

3.9.0 (2022-03-14)

Full Changelog

Deprecated:

  • Houdini: Remove unused code #2779
  • Loader: Remove default family states for hosts from code #2706
  • AssetCreator: Remove the tool #2845

📖 Documentation

  • Documentation: fixed broken links #2799
  • Documentation: broken link fix #2785
  • Documentation: link fixes #2772
  • Update docusaurus to latest version #2760
  • Various testing updates #2726
  • documentation: add example to repack-version command #2669
  • Update docusaurus #2639
  • Documentation: Fixed relative links #2621
  • Documentation: Change Photoshop & AfterEffects plugin path #2878

🆕 New features

  • Flame: loading clips to reels #2622
  • General: Store settings by OpenPype version #2570

🚀 Enhancements

  • New: Validation exceptions #2841
  • General: Set context environments for non host applications #2803
  • Houdini: Remove duplicate ValidateOutputNode plug-in #2780
  • Tray publisher: New Tray Publisher host (beta) #2778
  • Slack: Added regex for filtering on subset names #2775
  • Houdini: Implement Reset Frame Range #2770
  • Pyblish Pype: Remove redundant new line in installed fonts printing #2758
  • Flame: use Shot Name on segment for asset name #2751
  • Flame: adding validator source clip #2746
  • Work Files: Preserve subversion comment of current filename by default #2734
  • Maya: set Deadline job/batch name to original source workfile name instead of published workfile #2733
  • Ftrack: Disable ftrack module by default #2732
  • Project Manager: Disable add task, add asset and save button when not in a project #2727
  • dropbox handle big file #2718
  • Fusion Move PR: Minor tweaks to Fusion integration #2716
  • RoyalRender: Minor enhancements #2700
  • Nuke: prerender with review knob #2691
  • Maya configurable unit validator #2680
  • General: Add settings for CleanUpFarm and disable the plugin by default #2679
  • Project Manager: Only allow scroll wheel edits when spinbox is active #2678
  • Ftrack: Sync description to assets #2670
  • Houdini: Moved to OpenPype #2658
  • Maya: Move implementation to OpenPype #2649
  • General: FFmpeg conversion also check attribute string length #2635
  • Houdini: Load Arnold .ass procedurals into Houdini #2606
  • Deadline: Simplify GlobalJobPreLoad logic #2605
  • Houdini: Implement Arnold .ass standin extraction from Houdini (also support .ass.gz) #2603
  • New Publisher: New features and preparations for new standalone publisher #2556
  • Fix Maya 2022 Python 3 compatibility #2445
  • TVPaint: Use new publisher exceptions in validators #2435
  • Harmony: Added new style validations for New Publisher #2434
  • Aftereffects: New style validations for New publisher #2430
  • Farm publishing: New cleanup plugin for Maya renders on farm #2390
  • General: Subset name filtering in ExtractReview outpus #2872
  • NewPublisher: Descriptions and Icons in creator dialog #2867
  • NewPublisher: Changing task on publishing instance #2863
  • TrayPublisher: Choose project widget is more clear #2859
  • Maya: add loaded containers to published instance #2837
  • Ftrack: Can sync fps as string #2836
  • General: Custom function for find executable #2822
  • General: Color dialog UI fixes #2817
  • global: letter box calculated on output as last process #2812
  • Nuke: adding Reformat to baking mov plugin #2811
  • Manager: Update all to latest button #2805
  • Houdini: Move Houdini Save Current File to beginning of ExtractorOrder #2747
  • Global: adding studio name/code to anatomy template formatting data #2630

🐛 Bug fixes

  • Settings UI: Search case sensitivity #2810
  • resolve: fixing fusion module loading #2802
  • Ftrack: Unset task ids from asset versions before tasks are removed #2800
  • Slack: fail gracefully if slack exception #2798
  • Flame: Fix version string in default settings #2783
  • After Effects: Fix typo in name afftereffects -> aftereffects #2768
  • Houdini: Fix open last workfile #2767
  • Avoid renaming udim indexes #2765
  • Maya: Fix unique_namespace when in an namespace that is empty #2759
  • Loader UI: Fix right click in representation widget #2757
  • Harmony: Rendering in Deadline didn't work in other machines than submitter #2754
  • Aftereffects 2022 and Deadline #2748
  • Flame: bunch of bugs #2745
  • Maya: Save current scene on workfile publish #2744
  • Version Up: Preserve parts of filename after version number (like subversion) on version_up #2741
  • Loader UI: Multiple asset selection and underline colors fixed #2731
  • General: Fix loading of unused chars in xml format #2729
  • TVPaint: Set objectName with members #2725
  • General: Don't use 'objectName' from loaded references #2715
  • Settings: Studio Project anatomy is queried using right keys #2711
  • Local Settings: Additional applications don't break UI #2710
  • Maya: Remove some unused code #2709
  • Houdini: Fix refactor of Houdini host move for CreateArnoldAss #2704
  • LookAssigner: Fix imports after moving code to OpenPype repository #2701
  • Multiple hosts: unify menu style across hosts #2693
  • Maya Redshift fixes #2692
  • Maya: fix fps validation popup #2685
  • Houdini Explicitly collect correct frame name even in case of single frame render when frameStart is provided #2676
  • hiero: fix effect collector name and order #2673
  • Maya: Fix menu callbacks #2671
  • hiero: removing obsolete unsupported plugin #2667
  • Launcher: Fix access to 'data' attribute on actions #2659
  • Maya vrscene loader fixes #2633
  • Houdini: fix usd family in loader and integrators #2631
  • Maya: Add only reference node to look family container like with other families #2508
  • General: Missing time function #2877
  • Deadline: Fix plugin name for tile assemble #2868
  • Nuke: gizmo precollect fix #2866
  • General: Fix hardlink for windows #2864
  • General: ffmpeg was crashing on slate merge #2860
  • WebPublisher: Video file was published with one too many frame #2858
  • New Publisher: Error dialog got right styles #2857
  • General: Fix getattr clalback on dynamic modules #2855
  • Nuke: slate resolution to input video resolution #2853
  • WebPublisher: Fix username stored in DB #2852
  • WebPublisher: Fix wrong number of frames for video file #2851
  • Nuke: Fix family test in validate_write_legacy to work with stillImage #2847
  • Nuke: fix multiple baking profile farm publishing #2842
  • Blender: Fixed parameters for FBX export of the camera #2840
  • Maya: Stop creation of reviews for Cryptomattes #2832
  • Deadline: Remove recreated event #2828
  • Deadline: Added missing events folder #2827
  • Settings: Missing document with OP versions may break start of OpenPype #2825
  • Deadline: more detailed temp file name for environment json #2824
  • General: Host name was formed from obsolete code #2821
  • Settings UI: Fix "Apply from" action #2820
  • Ftrack: Job killer with missing user #2819
  • Nuke: Use AVALON_APP to get value for "app" key #2818
  • StandalonePublisher: use dynamic groups in subset names #2816

🔀 Refactored code

  • Ftrack: Moved module one hierarchy level higher #2792
  • SyncServer: Moved module one hierarchy level higher #2791
  • Royal render: Move module one hierarchy level higher #2790
  • Deadline: Move module one hierarchy level higher #2789
  • Refactor: move webserver tool to openpype #2876
  • General: Move create logic from avalon to OpenPype #2854
  • General: Add vendors from avalon #2848
  • General: Basic event system #2846
  • General: Move change context functions #2839
  • Tools: Don't use avalon tools code #2829
  • Move Unreal Implementation to OpenPype #2823
  • General: Extract template formatting from anatomy #2766

Merged pull requests:

  • Fusion: Moved implementation into OpenPype #2713
  • TVPaint: Plugin build without dependencies #2705
  • Webpublisher: Photoshop create a beauty png #2689
  • Ftrack: Hierarchical attributes are queried properly #2682
  • Maya: Add Validate Frame Range settings #2661
  • Harmony: move to Openpype #2657
  • Maya: cleanup duplicate rendersetup code #2642
  • Deadline: Be able to pass Mongo url to job #2616

3.8.2 (2022-02-07)

Full Changelog

📖 Documentation

  • Cosmetics: Fix common typos in openpype/website #2617

🚀 Enhancements

  • TVPaint: Image loaders also work on review family #2638
  • General: Project backup tools #2629
  • nuke: adding clear button to write nodes #2627
  • Ftrack: Family to Asset type mapping is in settings #2602
  • Nuke: load color space from representation data #2576

🐛 Bug fixes

  • Fix pulling of cx_freeze 6.10 #2628
  • Global: fix broken otio review extractor #2590

Merged pull requests:

  • WebPublisher: fix instance duplicates #2641
  • Fix - safer pulling of task name for webpublishing from PS #2613

3.8.1 (2022-02-01)

Full Changelog

🚀 Enhancements

  • Webpublisher: Thumbnail extractor #2600
  • Loader: Allow to toggle default family filters between "include" or "exclude" filtering #2541
  • Launcher: Added context menu to to skip opening last workfile #2536
  • Unreal: JSON Layout Loading support #2066

🐛 Bug fixes

  • Release/3.8.0 #2619
  • Settings: Enum does not store empty string if has single item to select #2615
  • switch distutils to sysconfig for get_platform() #2594
  • Fix poetry index and speedcopy update #2589
  • Webpublisher: Fix - subset names from processed .psd used wrong value for task #2586
  • vrscene creator Deadline webservice URL handling #2580
  • global: track name was failing if duplicated root word in name #2568
  • Validate Maya Rig produces no cycle errors #2484

Merged pull requests:

  • Bump pillow from 8.4.0 to 9.0.0 #2595
  • Webpublisher: Skip version collect #2591
  • build(deps): bump pillow from 8.4.0 to 9.0.0 #2523

3.8.0 (2022-01-24)

Full Changelog

📖 Documentation

  • Variable in docs renamed to proper name #2546

🆕 New features

  • Flame: extracting segments with trans-coding #2547
  • Maya : V-Ray Proxy - load all ABC files via proxy #2544
  • Maya to Unreal: Extended static mesh workflow #2537
  • Flame: collecting publishable instances #2519
  • Flame: create publishable clips #2495
  • Flame: OpenTimelineIO Export Modul #2398

🚀 Enhancements

  • Webpublisher: Moved error at the beginning of the log #2559
  • Ftrack: Use ApplicationManager to get DJV path #2558
  • Webpublisher: Added endpoint to reprocess batch through UI #2555
  • Settings: PathInput strip passed string #2550
  • Global: Exctract Review anatomy fill data with output name #2548
  • Cosmetics: Clean up some cosmetics / typos #2542
  • General: Validate if current process OpenPype version is requested version #2529
  • General: Be able to use anatomy data in ffmpeg output arguments #2525
  • Expose toggle publish plug-in settings for Maya Look Shading Engine Naming #2521
  • Photoshop: Move implementation to OpenPype #2510
  • TimersManager: Move module one hierarchy higher #2501
  • Slack: notifications are sent with Openpype logo and bot name #2499
  • Slack: Add review to notification message #2498
  • Ftrack: Event handlers settings #2496
  • Tools: Fix style and modality of errors in loader and creator #2489
  • Maya: Collect 'fps' animation data only for "review" instances #2486
  • Project Manager: Remove project button cleanup #2482
  • Tools: Be able to change models of tasks and assets widgets #2475
  • Publish pype: Reduce publish process defering #2464
  • Maya: Improve speed of Collect History logic #2460
  • Maya: Validate Rig Controllers - fix Error: in script editor #2459
  • Maya: Validate NGONs simplify and speed-up #2458
  • Maya: Optimize Validate Locked Normals speed for dense polymeshes #2457
  • Maya: Refactor missing _get_reference_node method #2455
  • Houdini: Remove broken unique name counter #2450
  • Maya: Improve lib.polyConstraint performance when Select tool is not the active tool context #2447
  • General: Validate third party before build #2425
  • Maya : add option to not group reference in ReferenceLoader #2383

🐛 Bug fixes

  • AfterEffects: Fix - removed obsolete import #2577
  • General: OpenPype version updates #2575
  • Ftrack: Delete action revision #2563
  • Webpublisher: ftrack shows incorrect user names #2560
  • General: Do not validate version if build does not support it #2557
  • Webpublisher: Fixed progress reporting #2553
  • Fix Maya AssProxyLoader version switch #2551
  • General: Fix install thread in igniter #2549
  • Houdini: vdbcache family preserve frame numbers on publish integration + enable validate version for Houdini #2535
  • Maya: Fix Load VDB to V-Ray #2533
  • Maya: ReferenceLoader fix not unique group name error for attach to root #2532
  • Maya: namespaced context go back to original namespace when started from inside a namespace #2531
  • Fix create zip tool - path argument #2522
  • Maya: Fix Extract Look with space in names #2518
  • Fix published frame content for sequence starting with 0 #2513
  • Maya: reset empty string attributes correctly to "" instead of "None" #2506
  • Improve FusionPreLaunch hook errors #2505
  • General: Settings work if OpenPypeVersion is available #2494
  • General: PYTHONPATH may break OpenPype dependencies #2493
  • General: Modules import function output fix #2492
  • AE: fix hiding of alert window below Publish #2491
  • Workfiles tool: Files widget show files on first show #2488
  • General: Custom template paths filter fix #2483
  • Loader: Remove always on top flag in tray #2480
  • General: Anatomy does not return root envs as unicode #2465
  • Maya: Validate Shape Zero do not keep fixed geometry vertices selected/active after repair #2456

Merged pull requests:

  • AfterEffects: Move implementation to OpenPype #2543
  • Maya: Remove Maya Look Assigner check on startup #2540
  • build(deps): bump shelljs from 0.8.4 to 0.8.5 in /website #2538
  • build(deps): bump follow-redirects from 1.14.4 to 1.14.7 in /website #2534
  • Nuke: Merge avalon's implementation into OpenPype #2514
  • Maya: Vray fix proxies look assignment #2392
  • Bump algoliasearch-helper from 3.4.4 to 3.6.2 in /website #2297

3.7.0 (2022-01-04)

Full Changelog

Deprecated:

  • General: Default modules hierarchy n2 #2368

📖 Documentation

  • docs[website]: Add Ellipse Studio (logo) as an OpenPype contributor #2324

🆕 New features

  • Settings UI use OpenPype styles #2296
  • Store typed version dependencies for workfiles #2192
  • OpenPypeV3: add key task type, task shortname and user to path templating construction #2157
  • Nuke: Alembic model workflow #2140
  • TVPaint: Load workfile from published. #1980

🚀 Enhancements

  • General: Workdir extra folders #2462
  • Photoshop: New style validations for New publisher #2429
  • General: Environment variables groups #2424
  • Unreal: Dynamic menu created in Python #2422
  • Settings UI: Hyperlinks to settings #2420
  • Modules: JobQueue module moved one hierarchy level higher #2419
  • TimersManager: Start timer post launch hook #2418
  • General: Run applications as separate processes under linux #2408
  • Ftrack: Check existence of object type on recreation #2404
  • Enhancement: Global cleanup plugin that explicitly remove paths from context #2402
  • General: MongoDB ability to specify replica set groups #2401
  • Flame: moving utility_scripts to api folder also with scripts #2385
  • Centos 7 dependency compatibility #2384
  • Enhancement: Settings: Use project settings values from another project #2382
  • Blender 3: Support auto install for new blender version #2377
  • Maya add render image path to settings #2375
  • Settings: Webpublisher in hosts enum #2367
  • Hiero: python3 compatibility #2365
  • Burnins: Be able recognize mxf OPAtom format #2361
  • Maya: Add is_static_image_plane and is_in_all_views option in imagePlaneLoader #2356
  • Local settings: Copyable studio paths #2349
  • Assets Widget: Clear model on project change #2345
  • General: OpenPype default modules hierarchy #2338
  • TVPaint: Move implementation to OpenPype #2336
  • General: FFprobe error exception contain original error message #2328
  • Resolve: Add experimental button to menu #2325
  • Hiero: Add experimental tools action #2323
  • Input links: Cleanup and unification of differences #2322
  • General: Don't validate vendor bin with executing them #2317
  • General: Multilayer EXRs support #2315
  • General: Run process log stderr as info log level #2309
  • General: Reduce vendor imports #2305
  • Tools: Cleanup of unused classes #2304
  • Project Manager: Added ability to delete project #2298
  • Ftrack: Synchronize input links #2287
  • StandalonePublisher: Remove unused plugin ExtractHarmonyZip #2277
  • Ftrack: Support multiple reviews #2271
  • Ftrack: Remove unused clean component plugin #2269
  • Royal Render: Support for rr channels in separate dirs #2268
  • Houdini: Add experimental tools action #2267
  • Nuke: extract baked review videos presets #2248
  • TVPaint: Workers rendering #2209
  • OpenPypeV3: Add key parent asset to path templating construction #2186

🐛 Bug fixes

  • TVPaint: Create render layer dialog is in front #2471
  • Short Pyblish plugin path #2428
  • PS: Introduced settings for invalid characters to use in ValidateNaming plugin #2417
  • Settings UI: Breadcrumbs path does not create new entities #2416
  • AfterEffects: Variant 2022 is in defaults but missing in schemas #2412
  • Nuke: baking representations was not additive #2406
  • General: Fix access to environments from default settings #2403
  • Fix: Placeholder Input color set fix #2399
  • Settings: Fix state change of wrapper label #2396
  • Flame: fix ftrack publisher #2381
  • hiero: solve custom ocio path #2379
  • hiero: fix workio and flatten #2378
  • Nuke: fixing menu re-drawing during context change #2374
  • Webpublisher: Fix assignment of families of TVpaint instances #2373
  • Nuke: fixing node name based on switched asset name #2369
  • JobQueue: Fix loading of settings #2362
  • Tools: Placeholder color #2359
  • Launcher: Minimize button on MacOs #2355
  • StandalonePublisher: Fix import of constant #2354
  • Houdini: Fix HDA creation #2350
  • Adobe products show issue #2347
  • Maya Look Assigner: Fix Python 3 compatibility #2343
  • Remove wrongly used host for hook #2342
  • Tools: Use Qt context on tools show #2340
  • Flame: Fix default argument value in custom dictionary #2339
  • Timers Manager: Disable auto stop timer on linux platform #2334
  • nuke: bake preset single input exception #2331
  • Hiero: fixing multiple templates at a hierarchy parent #2330
  • Fix - provider icons are pulled from a folder #2326
  • InputLinks: Typo in "inputLinks" key #2314
  • Deadline timeout and logging #2312
  • nuke: do not multiply representation on class method #2311
  • Workfiles tool: Fix task formatting #2306
  • Delivery: Fix delivery paths created on windows #2302
  • Maya: Deadline - fix limit groups #2295
  • Royal Render: Fix plugin order and OpenPype auto-detection #2291
  • New Publisher: Fix mapping of indexes #2285
  • Alternate site for site sync doesnt work for sequences #2284
  • FFmpeg: Execute ffprobe using list of arguments instead of string command #2281
  • Nuke: Anatomy fill data use task as dictionary #2278
  • Bug: fix variable name _asset_id in workfiles application #2274
  • Version handling fixes #2272

Merged pull requests:

  • Maya: Replaced PATH usage with vendored oiio path for maketx utility #2405
  • [Fix][MAYA] Handle message type attribute within CollectLook #2394
  • Add validator to check correct version of extension for PS and AE #2387
  • Maya: configurable model top level validation #2321
  • Create test publish class for After Effects #2270

3.6.4 (2021-11-23)

Full Changelog

🐛 Bug fixes

  • Nuke: inventory update removes all loaded read nodes #2294

3.6.3 (2021-11-19)

Full Changelog

🐛 Bug fixes

  • Deadline: Fix publish targets #2280

3.6.2 (2021-11-18)

Full Changelog

🚀 Enhancements

  • Tools: Assets widget #2265
  • SceneInventory: Choose loader in asset switcher #2262
  • Style: New fonts in OpenPype style #2256
  • Tools: SceneInventory in OpenPype #2255
  • Tools: Tasks widget #2251
  • Tools: Creator in OpenPype #2244
  • Added endpoint for configured extensions #2221

🐛 Bug fixes

  • Tools: Parenting of tools in Nuke and Hiero #2266
  • limiting validator to specific editorial hosts #2264
  • Tools: Select Context dialog attribute fix #2261
  • Maya: Render publishing fails on linux #2260
  • LookAssigner: Fix tool reopen #2259
  • Standalone: editorial not publishing thumbnails on all subsets #2258
  • Burnins: Support mxf metadata #2247
  • Maya: Support for configurable AOV separator characters #2197
  • Maya: texture colorspace modes in looks #2195

3.6.1 (2021-11-16)

Full Changelog

🐛 Bug fixes

  • Loader doesn't allow changing of version before loading #2254

3.6.0 (2021-11-15)

Full Changelog

📖 Documentation

  • Add alternative sites for Site Sync #2206
  • Add command line way of running site sync server #2188

🆕 New features

  • Add validate active site button to sync queue on a project #2176
  • Maya : Colorspace configuration #2170
  • Blender: Added support for audio #2168
  • Flame: a host basic integration #2165
  • Houdini: simple HDA workflow #2072
  • Basic Royal Render Integration ✨ #2061
  • Camera handling between Blender and Unreal #1988
  • switch PyQt5 for PySide2 #1744

🚀 Enhancements

  • Tools: Subset manager in OpenPype #2243
  • General: Skip module directories without init file #2239
  • General: Static interfaces #2238
  • Style: Fix transparent image in style #2235
  • Add a "following workfile versioning" option on publish #2225
  • Modules: Module can add cli commands #2224
  • Webpublisher: Separate webpublisher logic #2222
  • Add both side availability on Site Sync sites to Loader #2220
  • Tools: Center loader and library loader on show #2219
  • Maya : Validate shape zero #2212
  • Maya : validate unique names #2211
  • Tools: OpenPype stylesheet in workfiles tool #2208
  • Ftrack: Replace Queue with deque in event handlers logic #2204
  • Tools: New select context dialog #2200
  • Maya : Validate mesh ngons #2199
  • Dirmap in Nuke #2198
  • Delivery: Check 'frame' key in template for sequence delivery #2196
  • Settings: Site sync project settings improvement #2193
  • Usage of tools code #2185
  • Settings: Dictionary based on project roots #2184
  • Subset name: Be able to pass asset document to get subset name #2179
  • Tools: Experimental tools #2167
  • Loader: Refactor and use OpenPype stylesheets #2166
  • Add loader for linked smart objects in photoshop #2149
  • Burnins: DNxHD profiles handling #2142
  • Tools: Single access point for host tools #2139

🐛 Bug fixes

  • Ftrack: Sync project ftrack id cache issue #2250
  • Ftrack: Session creation and Prepare project #2245
  • Added queue for studio processing in PS #2237
  • Python 2: Unicode to string conversion #2236
  • Fix - enum for color coding in PS #2234
  • Pyblish Tool: Fix targets handling #2232
  • Ftrack: Base event fix of 'get_project_from_entity' method #2214
  • Maya : multiple subsets review broken #2210
  • Fix - different command used for Linux and Mac OS #2207
  • Tools: Workfiles tool don't use avalon widgets #2205
  • Ftrack: Fill missing ftrack id on mongo project #2203
  • Project Manager: Fix copying of tasks #2191
  • StandalonePublisher: Source validator don't expect representations #2190
  • Blender: Fix trying to pack an image when the shader node has no texture #2183
  • Maya: review viewport settings #2177
  • MacOS: Launching of applications may cause Permissions error #2175
  • Maya: Aspect ratio #2174
  • Blender: Fix 'Deselect All' with object not in 'Object Mode' #2163
  • Tools: Stylesheets are applied after tool show #2161
  • Maya: Collect render - fix UNC path support 🐛 #2158
  • Maya: Fix hotbox broken by scriptsmenu #2151
  • Ftrack: Ignore save warnings exception in Prepare project action #2150
  • Loader thumbnails with smooth edges #2147
  • Added validator for source files for Standalone Publisher #2138

Merged pull requests:

  • Bump pillow from 8.2.0 to 8.3.2 #2162
  • Bump axios from 0.21.1 to 0.21.4 in /website #2059

3.5.0 (2021-10-17)

Full Changelog

Deprecated:

  • Maya: Change mayaAscii family to mayaScene #2106

🆕 New features

  • Added project and task into context change message in Maya #2131
  • Add ExtractBurnin to photoshop review #2124
  • PYPE-1218 - changed namespace to contain subset name in Maya #2114
  • Added running configurable disk mapping command before start of OP #2091
  • SFTP provider #2073
  • Maya: Validate setdress top group #2068
  • Maya: Enable publishing render attrib sets (e.g. V-Ray Displacement) with model #1955

🚀 Enhancements

  • Maya: make rig validators configurable in settings #2137
  • Settings: Updated readme for entity types in settings #2132
  • Nuke: unified clip loader #2128
  • Settings UI: Project model refreshing and sorting #2104
  • Create Read From Rendered - Disable Relative paths by default #2093
  • Added choosing different dirmap mapping if workfile synched locally #2088
  • General: Remove IdleManager module #2084
  • Tray UI: Message box about missing settings defaults #2080
  • Tray UI: Show menu where first click happened #2079
  • Global: add global validators to settings #2078
  • Use CRF for burnin when available #2070
  • Project manager: Filter first item after selection of project #2069
  • Nuke: Adding still image family workflow #2064
  • Maya: validate authorized loaded plugins #2062
  • Tools: add support for pyenv on windows #2051
  • SyncServer: Dropbox Provider #1979
  • Burnin: Get data from context with defined keys. #1897
  • Timers manager: Get task time #1896
  • TVPaint: Option to stop timer on application exit. #1887

🐛 Bug fixes

  • Maya: fix model publishing #2130
  • Fix - oiiotool wasn't recognized even if present #2129
  • General: Disk mapping group #2120
  • Hiero: publishing effect first time makes wrong resources path #2115
  • Add startup script for Houdini Core. #2110
  • TVPaint: Behavior name of loop also accept repeat #2109
  • Ftrack: Project settings save custom attributes skip unknown attributes #2103
  • Blender: Fix NoneType error when animation_data is missing for a rig #2101
  • Fix broken import in sftp provider #2100
  • Global: Fix docstring on publish plugin extract review #2097
  • Delivery Action Files Sequence fix #2096
  • General: Cloud mongo ca certificate issue #2095
  • TVPaint: Creator use context from workfile #2087
  • Blender: fix texture missing when publishing blend files #2085
  • General: Startup validations oiio tool path fix on linux #2083
  • Deadline: Collect deadline server does not check existence of deadline key #2082
  • Blender: fixed Curves with modifiers in Rigs #2081
  • Nuke UI scaling #2077
  • Maya: Fix multi-camera renders #2065
  • Fix Sync Queue when project disabled #2063

Merged pull requests:

  • Bump pywin32 from 300 to 301 #2086

3.4.1 (2021-09-23)

Full Changelog

🆕 New features

  • Settings: Flag project as deactivated and hide from tools' view #2008

🚀 Enhancements

  • General: Startup validations #2054
  • Nuke: proxy mode validator #2052
  • Ftrack: Removed ftrack interface #2049
  • Settings UI: Deffered set value on entity #2044
  • Loader: Families filtering #2043
  • Settings UI: Project view enhancements #2042
  • Settings for Nuke IncrementScriptVersion #2039
  • Loader & Library loader: Use tools from OpenPype #2038
  • Adding predefined project folders creation in PM #2030
  • WebserverModule: Removed interface of webserver module #2028
  • TimersManager: Removed interface of timers manager #2024
  • Feature Maya import asset from scene inventory #2018

🐛 Bug fixes

  • Timers manger: Typo fix #2058
  • Hiero: Editorial fixes #2057
  • Differentiate jpg sequences from thumbnail #2056
  • FFmpeg: Split command to list does not work #2046
  • Removed shell flag in subprocess call #2045

Merged pull requests:

  • Bump prismjs from 1.24.0 to 1.25.0 in /website #2050

3.4.0 (2021-09-17)

Full Changelog

📖 Documentation

  • Documentation: Ftrack launch argsuments update #2014
  • Nuke Quick Start / Tutorial #1952
  • Houdini: add Camera, Point Cache, Composite, Redshift ROP and VDB Cache support #1821

🆕 New features

  • Nuke: Compatibility with Nuke 13 #2003
  • Maya: Add Xgen family support #1947
  • Feature/webpublisher backend #1876
  • Blender: Improved assets handling #1615

🚀 Enhancements

  • Added possibility to configure of synchronization of workfile version… #2041
  • General: Task types in profiles #2036
  • Console interpreter: Handle invalid sizes on initialization #2022
  • Ftrack: Show OpenPype versions in event server status #2019
  • General: Staging icon #2017
  • Ftrack: Sync to avalon actions have jobs #2015
  • Modules: Connect method is not required #2009
  • Settings UI: Number with configurable steps #2001
  • Moving project folder structure creation out of ftrack module #1989 #1996
  • Configurable items for providers without Settings #1987
  • Global: Example addons #1986
  • Standalone Publisher: Extract harmony zip handle workfile template #1982
  • Settings UI: Number sliders #1978
  • Workfiles: Support more workfile templates #1966
  • Launcher: Fix crashes on action click #1964
  • Settings: Minor fixes in UI and missing default values #1963
  • Blender: Toggle system console works on windows #1962
  • Global: Settings defined by Addons/Modules #1959
  • CI: change release numbering triggers #1954
  • Global: Avalon Host name collector #1949
  • Global: Define hosts in CollectSceneVersion #1948
  • Add face sets to exported alembics #1942
  • OpenPype: Add version validation and --headless mode and update progress 🔄 #1939
  • #1894 - adds host to template_name_profiles for filtering #1915
  • Environments: Tool environments in alphabetical order #1910
  • Disregard publishing time. #1888
  • Dynamic modules #1872

🐛 Bug fixes

  • Workfiles tool: Task selection #2040
  • Ftrack: Delete old versions missing settings key #2037
  • Nuke: typo on a button #2034
  • Hiero: Fix "none" named tags #2033
  • FFmpeg: Subprocess arguments as list #2032
  • General: Fix Python 2 breaking line #2016
  • Bugfix/webpublisher task type #2006
  • Nuke thumbnails generated from middle of the sequence #1992
  • Nuke: last version from path gets correct version #1990
  • nuke, resolve, hiero: precollector order lest then 0.5 #1984
  • Last workfile with multiple work templates #1981
  • Collectors order #1977
  • Stop timer was within validator order range. #1975
  • Ftrack: arrow submodule has https url source #1974
  • Ftrack: Fix hosts attribute in collect ftrack username #1972
  • Deadline: Houdini plugins in different hierarchy #1970
  • Removed deprecated submodules #1967
  • Global: ExtractJpeg can handle filepaths with spaces #1961
  • Resolve path when adding to zip #1960

Merged pull requests:

  • Bump url-parse from 1.5.1 to 1.5.3 in /website #1958
  • Bump path-parse from 1.0.6 to 1.0.7 in /website #1933

3.3.1 (2021-08-20)

Full Changelog

🐛 Bug fixes

  • TVPaint: Fixed rendered frame indexes #1946
  • Maya: Menu actions fix #1945
  • standalone: editorial shared object problem #1941
  • Bugfix nuke deadline app name #1928

3.3.0 (2021-08-17)

Full Changelog

📖 Documentation

  • Standalone Publish of textures family #1834

🆕 New features

  • Settings UI: Breadcrumbs in settings #1932
  • Maya: Scene patching 🩹on submission to Deadline #1923
  • Feature AE local render #1901

🚀 Enhancements

  • Python console interpreter #1940
  • Global: Updated logos and Default settings #1927
  • Check for missing ✨ Python when using pyenv #1925
  • Settings: Default values for enum #1920
  • Settings UI: Modifiable dict view enhance #1919
  • submodules: avalon-core update #1911
  • Ftrack: Where I run action enhancement #1900
  • Ftrack: Private project server actions #1899
  • Support nested studio plugins paths. #1898
  • Settings: global validators with options #1892
  • Settings: Conditional dict enum positioning #1891
  • Expose stop timer through rest api. #1886
  • TVPaint: Increment workfile #1885
  • Allow Multiple Notes to run on tasks. #1882
  • Prepare for pyside2 #1869
  • Filter hosts in settings host-enum #1868
  • Local actions with process identifier #1867
  • Workfile tool start at host launch support #1865
  • Anatomy schema validation #1864
  • Ftrack prepare project structure #1861
  • Maya: support for configurable dirmap 🗺️ #1859
  • Independent general environments #1853
  • TVPaint Start Frame #1844
  • Ftrack push attributes action adds traceback to job #1843
  • Prepare project action enhance #1838
  • nuke: settings create missing default subsets #1829
  • Update poetry lock #1823
  • Settings: settings for plugins #1819
  • Settings list can use template or schema as object type #1815
  • Maya: Deadline custom settings #1797
  • Maya: Shader name validation #1762

🐛 Bug fixes

  • Fix - ftrack family was added incorrectly in some cases #1935
  • Fix - Deadline publish on Linux started Tray instead of headless publishing #1930
  • Maya: Validate Model Name - repair accident deletion in settings defaults #1929
  • Nuke: submit to farm failed due ftrack family remove #1926
  • Fix - validate takes repre["files"] as list all the time #1922
  • standalone: validator asset parents #1917
  • Nuke: update video file crassing #1916
  • Fix - texture validators for workfiles triggers only for textures workfiles #1914
  • Settings UI: List order works as expected #1906
  • Hiero: loaded clip was not set colorspace from version data #1904
  • Pyblish UI: Fix collecting stage processing #1903
  • Burnins: Use input's bitrate in h624 #1902
  • Bug: fixed python detection #1893
  • global: integrate name missing default template #1890
  • publisher: editorial plugins fixes #1889
  • Normalize path returned from Workfiles. #1880
  • Workfiles tool event arguments fix #1862
  • imageio: fix grouping #1856
  • Maya: don't add reference members as connections to the container set 📦 #1855
  • publisher: missing version in subset prop #1849
  • Ftrack type error fix in sync to avalon event handler #1845
  • Nuke: updating effects subset fail #1841
  • nuke: write render node skipped with crop #1836
  • Project folder structure overrides #1813
  • Maya: fix yeti settings path in extractor #1809
  • Failsafe for cross project containers. #1806
  • Houdini colector formatting keys fix #1802
  • Settings error dialog on show #1798
  • Application launch stdout/stderr in GUI build #1684
  • Nuke: re-use instance nodes output path #1577

Merged pull requests:

  • Fix - make AE workfile publish to Ftrack configurable #1937
  • Add support for multiple Deadline ☠️➖ servers #1905
  • Maya: add support for RedshiftNormalMap node, fix tx linear space 🚀 #1863
  • Maya: expected files -> render products ⚙️ overhaul #1812
  • PS, AE - send actual context when another webserver is running #1811

3.2.0 (2021-07-13)

Full Changelog

📖 Documentation

  • Fix: staging and --use-version option #1786
  • Subset template and TVPaint subset template docs #1717
  • Overscan color extract review #1701

🚀 Enhancements

  • Nuke: ftrack family plugin settings preset #1805
  • Standalone publisher last project #1799
  • Ftrack Multiple notes as server action #1795
  • Settings conditional dict #1777
  • Settings application use python 2 only where needed #1776
  • Settings UI copy/paste #1769
  • Workfile tool widths #1766
  • Push hierarchical attributes care about task parent changes #1763
  • Application executables with environment variables #1757
  • Deadline: Nuke submission additional attributes #1756
  • Settings schema without prefill #1753
  • Settings Hosts enum #1739
  • Validate containers settings #1736
  • PS - added loader from sequence #1726
  • Autoupdate launcher #1725
  • Toggle Ftrack upload in StandalonePublisher #1708
  • Nuke: Prerender Frame Range by default #1699
  • Smoother edges of color triangle #1695

🐛 Bug fixes

  • nuke: fixing wrong name of family folder when used existing frames #1803
  • Collect ftrack family bugs #1801
  • Invitee email can be None which break the Ftrack commit. #1788
  • Otio unrelated error on import #1782
  • FFprobe streams order #1775
  • Fix - single file files are str only, cast it to list to count properly #1772
  • Environments in app executable for MacOS #1768
  • Project specific environments #1767
  • Settings UI with refresh button #1764
  • Standalone publisher thumbnail extractor fix #1761
  • Anatomy others templates don't cause crash #1758
  • Backend acre module commit update #1745
  • hiero: precollect instances failing when audio selected #1743
  • Hiero: creator instance error #1742
  • Nuke: fixing render creator for no selection format failing #1741
  • StandalonePublisher: failing collector for editorial #1738
  • Local settings UI crash on missing defaults #1737
  • TVPaint white background on thumbnail #1735
  • Ftrack missing custom attribute message #1734
  • Launcher project changes #1733
  • Ftrack sync status #1732
  • TVPaint use layer name for default variant #1724
  • Default subset template for TVPaint review and workfile families #1716
  • Maya: Extract review hotfix #1714
  • Settings: Imageio improving granularity #1711
  • Application without executables #1679
  • Unreal: launching on Linux #1672

Merged pull requests:

  • Bump prismjs from 1.23.0 to 1.24.0 in /website #1773
  • TVPaint ftrack family #1755

2.18.4 (2021-06-24)

Full Changelog

2.18.3 (2021-06-23)

Full Changelog

2.18.2 (2021-06-16)

Full Changelog

3.1.0 (2021-06-15)

Full Changelog

📖 Documentation

  • Feature Slack integration #1657

🚀 Enhancements

  • Log Viewer with OpenPype style #1703
  • Scrolling in OpenPype info widget #1702
  • OpenPype style in modules #1694
  • Sort applications and tools alphabetically in Settings UI #1689
  • #683 - Validate Frame Range in Standalone Publisher #1683
  • Hiero: old container versions identify with red color #1682
  • Project Manger: Default name column width #1669
  • Remove outline in stylesheet #1667
  • TVPaint: Creator take layer name as default value for subset variant #1663
  • TVPaint custom subset template #1662
  • Editorial: conform assets validator #1659
  • Nuke - Publish simplification #1653
  • #1333 - added tooltip hints to Pyblish buttons #1649

🐛 Bug fixes

  • Nuke: broken publishing rendered frames #1707
  • Standalone publisher Thumbnail export args #1705
  • Bad zip can break OpenPype start #1691
  • Hiero: published whole edit mov #1687
  • Ftrack subprocess handle of stdout/stderr #1675
  • Settings list race condifiton and mutable dict list conversion #1671
  • Mac launch arguments fix #1660
  • Fix missing dbm python module #1652
  • Transparent branches in view on Mac #1648
  • Add asset on task item #1646
  • Project manager save and queue #1645
  • New project anatomy values #1644
  • Farm publishing: check if published items do exist #1573

Merged pull requests:

  • Bump normalize-url from 4.5.0 to 4.5.1 in /website #1686

Full Changelog

Configuration

  • Studio Settings GUI: no more json configuration files.
  • OpenPype Modules can be turned on and off.
  • Easy to add Application versions.
  • Per Project Environment and plugin management.
  • Robust profile system for creating reviewables and burnins, with filtering based on Application, Task and data family.
  • Configurable publish plugins.
  • Options to make any validator or extractor, optional or disabled.
  • Color Management is now unified under anatomy settings.
  • Subset naming and grouping is fully configurable.
  • All project attributes can now be set directly in OpenPype settings.
  • Studio Setting can be locked to prevent unwanted artist changes.
  • You can now add per project and per task type templates for workfile initialization in most hosts.
  • Too many other individual configurable option to list in this changelog :)

Local Settings

  • Local Settings GUI where users can change certain option on individual basis.
    • Application executables.
    • Project roots.
    • Project site sync settings.

Build, Installation and Deployments

  • No requirements on artist machine.
  • Fully distributed workflow possible.
  • Self-contained installation.
  • Available on all three major platforms.
  • Automatic artist OpenPype updates.
  • Studio OpenPype repository for updates distribution.
  • Robust Build system.
  • Safe studio update versioning with staging and production options.
  • MacOS build generates .app and .dmg installer.
  • Windows build with installer creation script.

Misc

  • System and diagnostic info tool in the tray.
  • Launching application from Launcher indicates activity.
  • All project roots are now named. Single root project are now achieved by having a single named root in the project anatomy.
  • Every project root is cast into environment variable as well, so it can be used in DCC instead of absolute path (depends on DCC support for env vars).
  • Basic support for task types, on top of task names.
  • Timer now change automatically when the context is switched inside running application.
  • 'Master" versions have been renamed to "Hero".
  • Extract Burnins now supports file sequences and color settings.
  • Extract Review support overscan cropping, better letterboxes and background colour fill.
  • Delivery tool for copying and renaming any published assets in bulk.
  • Harmony, Photoshop and After Effects now connect directly with OpenPype tray instead of spawning their own terminal.

Project Manager GUI

  • Create Projects.
  • Create Shots and Assets.
  • Create Tasks and assign task types.
  • Fill required asset attributes.
  • Validations for duplicated or unsupported names.
  • Archive Assets.
  • Move Asset within hierarchy.

Site Sync (beta)

  • Synchronization of published files between workstations and central storage.
  • Ability to add arbitrary storage providers to the Site Sync system.
  • Default setup includes Disk and Google Drive providers as examples.
  • Access to availability information from Loader and Scene Manager.
  • Sync queue GUI with filtering, error and status reporting.
  • Site sync can be configured on a per-project basis.
  • Bulk upload and download from the loader.

Ftrack

  • Actions have customisable roles.
  • Settings on all actions are updated live and don't need openpype restart.
  • Ftrack module can now be turned off completely.
  • It is enough to specify ftrack server name and the URL will be formed correctly. So instead of mystudio.ftrackapp.com, it's possible to use simply: "mystudio".

Editorial

  • Fully OTIO based editorial publishing.
  • Completely re-done Hiero publishing to be a lot simpler and faster.
  • Consistent conforming from Resolve, Hiero and Standalone Publisher.

Backend

  • OpenPype and Avalon now always share the same database (in 2.x is was possible to split them).
  • Major codebase refactoring to allow for better CI, versioning and control of individual integrations.
  • OTIO is bundled with build.
  • OIIO is bundled with build.
  • FFMPEG is bundled with build.
  • Rest API and host WebSocket servers have been unified into a single local webserver.
  • Maya look assigner has been integrated into the main codebase.
  • Publish GUI has been integrated into the main codebase.
  • Studio and Project settings overrides are now stored in Mongo.
  • Too many other backend fixes and tweaks to list :), you can see full changelog on github for those.
  • OpenPype uses Poetry to manage it's virtual environment when running from code.
  • all applications can be marked as python 2 or 3 compatible to make the switch a bit easier.

Pull Requests since 3.0.0-rc.6

Implemented enhancements:

Fixed bugs:

  • Library loader load asset documents on OpenPype start #1603
  • Resolve: unable to load the same footage twice #1317
  • Resolve: unable to load footage #1316
  • Add required Python 2 modules #1291
  • GUi scaling with hires displays #705
  • Maya: non unicode string in publish validation #673
  • Nuke: Rendered Frame validation is triggered by multiple collections #156
  • avalon-core debugging failing #80
  • Only check arnold shading group if arnold is used #72
  • Sync server Qt layout fix #1621 (iLLiCiTiT)
  • Console Listener on Python 2 fix #1620 (iLLiCiTiT)
  • Bug: Initialize blessed term only in console mode #1619 (antirotor)
  • Settings template skip paths support wrappers #1618 (iLLiCiTiT)
  • Maya capture 'isolate_view' fix + minor corrections #1617 (2-REC)
  • MacOs Fix launch of standalone publisher #1616 (iLLiCiTiT)
  • 'Delivery action' report fix + typos #1612 (2-REC)
  • List append fix in mutable dict settings #1599 (iLLiCiTiT)
  • Documentation: Maya: fix review #1598 (antirotor)
  • Bugfix: Set certifi CA bundle for all platforms #1596 (antirotor)

Merged pull requests:

2.18.1 (2021-06-03)

Full Changelog

Enhancements:

  • Faster hierarchical values push #1626
  • Feature Delivery in library loader #1549
  • Hiero: Initial frame publish support. #1172

Fixed bugs:

  • Maya capture 'isolate_view' fix + minor corrections #1614
  • 'Delivery action' report fix +typos #1613
  • Delivery in LibraryLoader - fixed sequence issue #1590
  • FFmpeg filters in quote marks #1588
  • Ftrack delete action cause circular error #1581
  • Fix Maya playblast. #1566
  • More failsafes prevent errored runs. #1554
  • Celaction publishing #1539
  • celaction: app not starting #1533

Merged pull requests:

  • Maya: Render workflow fixes - 2.0 backport #1609
  • Maya Hardware support #1553

CI/3.0.0-rc.6 (2021-05-27)

Full Changelog

Implemented enhancements:

Fixed bugs:

Merged pull requests:

CI/3.0.0-rc.5 (2021-05-19)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Unified schema definition #874
  • Maya: fix look assignment #1526 (antirotor)
  • Bugfix Sync server local site issues #1523 (kalisp)
  • Store as list dictionary check initial value with right type #1520 (iLLiCiTiT)
  • Maya: wrong collection of playblasted frames #1515 (mkolar)
  • Convert pyblish logs to string at the moment of logging #1512 (iLLiCiTiT)
  • 3.0 | nuke: fixing start_at with option gui #1509 (jezscha)
  • Tests: fix pype -> openpype to make tests work again #1508 (antirotor)

Merged pull requests:

2.18.0 (2021-05-18)

Full Changelog

Implemented enhancements:

  • Default environments per host imlementation #1405
  • Blender: publish layout json #1346
  • Ftrack without autosync in Pype 3 #1128
  • Launcher: started action indicator #1102
  • Launch arguments of applications #1094
  • Publish: instance info #724
  • Review: ability to control review length #482
  • Colorized recognition of creator result #394
  • event assign user to started task #49
  • rebuild containers from reference in maya #55
  • nuke Load metadata #66
  • Maya: Safer handling of expected render output names #1496 (create-issue-branch[bot])
  • TVPaint: Increment workfile version on successfull publish. #1489 (tokejepsen)
  • Use SubsetLoader and multiple contexts for delete_old_versions #1484 (tokejepsen)
  • Maya: Use of multiple deadline servers #1483 (antirotor)

Fixed bugs:

  • Igniter version resolution doesn't consider it's own version #1505
  • Maya: Safer handling of expected render output names #1159
  • Harmony: Invalid render output from non-conventionally named instance #871
  • Existing subsets hints in creator #1503 (iLLiCiTiT)
  • nuke: space in node name breaking process #1494 (jezscha)
  • Maya: wrong collection of playblasted frames #1517 (mkolar)
  • Existing subsets hints in creator #1502 (iLLiCiTiT)
  • Use instance frame start instead of timeline. #1486 (tokejepsen)
  • Maya: Redshift - set proper start frame on proxy #1480 (antirotor)

Closed issues:

  • Nuke: wrong "star at" value on render load #1352
  • DV Resolve - loading/updating - image video #915

Merged pull requests:

CI/3.0.0-rc.4 (2021-05-12)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Harmony: palettes publishing #1439
  • Photoshop: validation for already created images #1435
  • Nuke Extracts Thumbnail from frame out of shot range #963
  • Instance in same Context repairing #390
  • User Inactivity - Start timers sets wrong time #91
  • Use instance frame start instead of timeline #1499 (mkolar)
  • Various smaller fixes #1498 (mkolar)
  • nuke: space in node name breaking process #1495 (jezscha)
  • Codec determination in extract burnin #1492 (iLLiCiTiT)
  • Undefined constant in subprocess module #1485 (iLLiCiTiT)
  • List entity catch add/remove item changes properly #1482 (iLLiCiTiT)
  • Resolve: additional fixes of publishing workflow #1481 (jezscha)
  • Photoshop: validation for already created images #1436 (create-issue-branch[bot])

Merged pull requests:

2.17.3 (2021-05-06)

Full Changelog

Fixed bugs:

  • Nuke: workfile version synced to db version always #1479 (jezscha)

CI/3.0.0-rc.3 (2021-05-05)

Full Changelog

Implemented enhancements:

Fixed bugs:

CI/3.0.0-rc.2 (2021-05-04)

Full Changelog

Implemented enhancements:

Fixed bugs:

2.17.2 (2021-05-04)

Full Changelog

Implemented enhancements:

  • Forward/Backward compatible apps and tools with OpenPype 3 #1463 (iLLiCiTiT)

CI/3.0.0-rc.1 (2021-05-04)

Full Changelog

Implemented enhancements:

Fixed bugs:

Closed issues:

Merged pull requests:

2.17.1 (2021-04-30)

Full Changelog

Enhancements:

  • Nuke: deadline submission with gpu #1414
  • TVPaint frame range definition #1424
  • PS - group all published instances #1415
  • Add task name to context pop up. #1383
  • Enhance review letterbox feature. #1371

Fixed bugs:

  • Houdini menu filename #1417
  • AE - validation for duration was 1 frame shorter #1426

Merged pull requests:

  • Maya: Vray - problem getting all file nodes for look publishing #1399
  • Maya: Support for Redshift proxies #1360

2.17.0 (2021-04-20)

Full Changelog

Enhancements:

  • Forward compatible ftrack group #1243
  • Settings in mongo as dict #1221
  • Maya: Make tx option configurable with presets #1328
  • TVPaint asset name validation #1302
  • TV Paint: Set initial project settings. #1299
  • TV Paint: Validate mark in and out. #1298
  • Validate project settings #1297
  • After Effects: added SubsetManager #1234
  • Show error message in pyblish UI #1206

Fixed bugs:

  • Hiero: fixing source frame from correct object #1362
  • Nuke: fix colourspace, prerenders and nuke panes opening #1308
  • AE remove orphaned instance from workfile - fix self.stub #1282
  • Nuke: deadline submission with search replaced env values from preset #1194
  • Ftrack custom attributes in bulks #1312
  • Ftrack optional pypclub role #1303
  • After Effects: remove orphaned instances #1275
  • Avalon schema names #1242
  • Handle duplication of Task name #1226
  • Modified path of plugin loads for Harmony and TVPaint #1217
  • Regex checks in profiles filtering #1214
  • Bulk mov strict task #1204
  • Update custom ftrack session attributes #1202
  • Nuke: write node colorspace ignore default\(\) label #1199
  • Nuke: reverse search to make it more versatile #1178

2.16.0 (2021-03-22)

Full Changelog

Enhancements:

  • Nuke: deadline submit limit group filter #1167
  • Maya: support for Deadline Group and Limit Groups - backport 2.x #1156
  • Maya: fixes for Redshift support #1152
  • Nuke: adding preset for a Read node name to all img and mov Loaders #1146
  • nuke deadline submit with environ var from presets overrides #1142
  • Change timers after task change #1138
  • Nuke: shortcuts for Pype menu #1127
  • Nuke: workfile template #1124
  • Sites local settings by site name #1117
  • Reset loader's asset selection on context change #1106
  • Bulk mov render publishing #1101
  • Photoshop: mark publishable instances #1093
  • Added ability to define BG color for extract review #1088
  • TVPaint extractor enhancement #1080
  • Photoshop: added support for .psb in workfiles #1078
  • Optionally add task to subset name #1072
  • Only extend clip range when collecting. #1008
  • Collect audio for farm reviews. #1073

Fixed bugs:

  • Fix path spaces in jpeg extractor #1174
  • Maya: Bugfix: superclass for CreateCameraRig #1166
  • Maya: Submit to Deadline - fix typo in condition #1163
  • Avoid dot in repre extension #1125
  • Fix versions variable usage in standalone publisher #1090
  • Collect instance data fix subset query #1082
  • Fix getting the camera name. #1067
  • Nuke: Ensure "NUKE_TEMP_DIR" is not part of the Deadline job environment. #1064

2.15.3 (2021-02-26)

Full Changelog

Enhancements:

  • Maya: speedup renderable camera collection #1053
  • Harmony - add regex search to filter allowed task names for collectin… #1047

Fixed bugs:

  • Ftrack integrate hierarchy fix #1085
  • Explicit subset filter in anatomy instance data #1059
  • TVPaint frame offset #1057
  • Auto fix unicode strings #1046

2.15.2 (2021-02-19)

Full Changelog

Enhancements:

  • Maya: Vray scene publishing #1013

Fixed bugs:

  • Fix entity move under project #1040
  • smaller nuke fixes from production #1036
  • TVPaint thumbnail extract fix #1031

2.15.1 (2021-02-12)

Full Changelog

Enhancements:

  • Delete version as loader action #1011
  • Delete old versions #445

Fixed bugs:

  • PS - remove obsolete functions from pywin32 #1006
  • Clone description of review session objects. #922

2.15.0 (2021-02-09)

Full Changelog

Enhancements:

  • Resolve - loading and updating clips #932
  • Release/2.15.0 #926
  • Photoshop: add option for template.psd and prelaunch hook #894
  • Nuke: deadline presets #993
  • Maya: Alembic only set attributes that exists. #986
  • Harmony: render local and handle fixes #981
  • PSD Bulk export of ANIM group #965
  • AE - added prelaunch hook for opening last or workfile from template #944
  • PS - safer handling of loading of workfile #941
  • Maya: Handling Arnold referenced AOVs #938
  • TVPaint: switch layer IDs for layer names during identification #903
  • TVPaint audio/sound loader #893
  • Clone review session with children. #891
  • Simple compositing data packager for freelancers #884
  • Harmony deadline submission #881
  • Maya: Optionally hide image planes from reviews. #840
  • Maya: handle referenced AOVs for Vray #824
  • DWAA/DWAB support on windows #795
  • Unreal: animation, layout and setdress updates #695

Fixed bugs:

  • Maya: Looks - disable hardlinks #995
  • Fix Ftrack custom attribute update #982
  • Prores ks in burnin script #960
  • terminal.py crash on import #839
  • Extract review handle bizarre pixel aspect ratio #990
  • Nuke: add nuke related env var to sumbission #988
  • Nuke: missing preset's variable #984
  • Get creator by name fix #979
  • Fix update of project's tasks on Ftrack sync #972
  • nuke: wrong frame offset in mov loader #971
  • Create project structure action fix multiroot #967
  • PS: remove pywin installation from hook #964
  • Prores ks in burnin script #959
  • Subset family is now stored in subset document #956
  • DJV new version arguments #954
  • TV Paint: Fix single frame Sequence #953
  • nuke: missing file knob update #933
  • Photoshop: Create from single layer was failing #920
  • Nuke: baking mov with correct colorspace inherited from write #909
  • Launcher fix actions discover #896
  • Get the correct file path for the updated mov. #889
  • Maya: Deadline submitter - shared data access violation #831
  • Maya: Take into account vray master AOV switch #822

Merged pull requests:

  • Refactor blender to 3.0 format #934

2.14.6 (2021-01-15)

Full Changelog

Fixed bugs:

  • Nuke: improving of hashing path #885

Merged pull requests:

  • Hiero: cut videos with correct secons #892
  • Faster sync to avalon preparation #869

2.14.5 (2021-01-06)

Full Changelog

Merged pull requests:

  • Pype logger refactor #866

2.14.4 (2020-12-18)

Full Changelog

Merged pull requests:

  • Fix - AE - added explicit cast to int #837

2.14.3 (2020-12-16)

Full Changelog

Fixed bugs:

  • TVPaint repair invalid metadata #809
  • Feature/push hier value to nonhier action #807
  • Harmony: fix palette and image sequence loader #806

Merged pull requests:

  • respecting space in path #823

2.14.2 (2020-12-04)

Full Changelog

Enhancements:

  • Collapsible wrapper in settings #767

Fixed bugs:

  • Harmony: template extraction and palettes thumbnails on mac #768
  • TVPaint store context to workfile metadata (764) #766
  • Extract review audio cut fix #763

Merged pull requests:

  • AE: fix publish after background load #781
  • TVPaint store members key #769

2.14.1 (2020-11-27)

Full Changelog

Enhancements:

  • Settings required keys in modifiable dict #770
  • Extract review may not add audio to output #761

Fixed bugs:

  • After Effects: frame range, file format and render source scene fixes #760
  • Hiero: trimming review with clip event number #754
  • TVPaint: fix updating of loaded subsets #752
  • Maya: Vray handling of default aov #748
  • Maya: multiple renderable cameras in layer didn't work #744
  • Ftrack integrate custom attributes fix #742

2.14.0 (2020-11-23)

Full Changelog

Enhancements:

  • Render publish plugins abstraction #687
  • Shot asset build trigger status #736
  • Maya: add camera rig publishing option #721
  • Sort instances by label in pyblish gui #719
  • Synchronize ftrack hierarchical and shot attributes #716
  • 686 standalonepublisher editorial from image sequences #699
  • Ask user to select non-default camera from scene or create a new. #678
  • TVPaint: image loader with options #675
  • Maya: Camera name can be added to burnins. #674
  • After Effects: base integration with loaders #667
  • Harmony: Javascript refactoring and overall stability improvements #666

Fixed bugs:

  • Bugfix Hiero Review / Plate representation publish #743
  • Asset fetch second fix #726
  • TVPaint extract review fix #740
  • After Effects: Review were not being sent to ftrack #738
  • Maya: vray proxy was not loading #722
  • Maya: Vray expected file fixes #682
  • Missing audio on farm submission. #639

Deprecated:

  • Removed artist view from pyblish gui #717
  • Maya: disable legacy override check for cameras #715

Merged pull requests:

  • Application manager #728
  • Feature #664 3.0 lib refactor #706
  • Lib from illicit part 2 #700
  • 3.0 lib refactor - path tools #697

2.13.7 (2020-11-19)

Full Changelog

Fixed bugs:

  • Standalone Publisher: getting fps from context instead of nonexistent entity #729

2.13.6 (2020-11-15)

Full Changelog

Fixed bugs:

  • Maya workfile version wasn't syncing with renders properly #711
  • Maya: Fix for publishing multiple cameras with review from the same scene #710

2.13.5 (2020-11-12)

Full Changelog

Enhancements:

  • 3.0 lib refactor #664

Fixed bugs:

  • Wrong thumbnail file was picked when publishing sequence in standalone publisher #703
  • Fix: Burnin data pass and FFmpeg tool check #701

2.13.4 (2020-11-09)

Full Changelog

Enhancements:

  • AfterEffects integration with Websocket #663

Fixed bugs:

  • Photoshop uhiding hidden layers #688
  • #688 - Fix publishing hidden layers #692

Closed issues:

  • Nuke Favorite directories "shot dir" "project dir" - not working #684

Merged pull requests:

  • Nuke Favorite directories "shot dir" "project dir" - not working #684 #685

2.13.3 (2020-11-03)

Full Changelog

Enhancements:

  • TV paint base integration #612

Fixed bugs:

  • Fix ffmpeg executable path with spaces #680
  • Hotfix: Added default version number #679

2.13.2 (2020-10-28)

Full Changelog

Fixed bugs:

  • Nuke: wrong conditions when fixing legacy write nodes #665

2.13.1 (2020-10-23)

Full Changelog

Enhancements:

  • move maya look assigner to pype menu #292

Fixed bugs:

  • Layer name is not propagating to metadata in Photoshop #654
  • Loader in Photoshop fails with "can't set attribute" #650
  • Nuke Load mp4 wrong frame range #661
  • Hiero: Review video file adding one frame to the end #659

2.13.0 (2020-10-18)

Full Changelog

Enhancements:

  • Deadline Output Folder #636
  • Nuke Camera Loader #565
  • Deadline publish job shows publishing output folder #649
  • Get latest version in lib #642
  • Improved publishing of multiple representation from SP #638
  • Launch TvPaint shot work file from within Ftrack #631
  • Add mp4 support for RV action. #628
  • Maya: allow renders to have version synced with workfile #618
  • Renaming nukestudio host folder to hiero #617
  • Harmony: More efficient publishing #615
  • Ftrack server action improvement #608
  • Deadline user defaults to pype username if present #607
  • Standalone publisher now has icon #606
  • Nuke render write targeting knob improvement #603
  • Animated pyblish gui #602
  • Maya: Deadline - make use of asset dependencies optional #591
  • Nuke: Publishing, loading and updating alembic cameras #575
  • Maya: add look assigner to pype menu even if scriptsmenu is not available #573
  • Store task types in the database #572
  • Maya: Tiled EXRs to scanline EXRs render option #512
  • Fusion basic integration #452

Fixed bugs:

  • Burnin script did not propagate ffmpeg output #640
  • Pyblish-pype spacer in terminal wasn't transparent #646
  • Lib subprocess without logger #645
  • Nuke: prevent crash if we only have single frame in sequence #644
  • Burnin script logs better output #641
  • Missing audio on farm submission. #639
  • review from imagesequence error #633
  • Hiero: wrong order of fps clip instance data collecting #627
  • Add source for review instances. #625
  • Task processing in event sync #623
  • sync to avalon doesn t remove renamed task #619
  • Intent publish setting wasn't working with default value #562
  • Maya: Updating a look where the shader name changed, leaves the geo without a shader #514

Merged pull requests:

  • Avalon module without Qt #581
  • Ftrack module without Qt #577

2.12.5 (2020-10-14)

Full Changelog

Enhancements:

  • Launch TvPaint shot work file from within Ftrack #629

Merged pull requests:

  • Harmony: Disable application launch logic #637

2.12.4 (2020-10-08)

Full Changelog

Enhancements:

  • convert nukestudio to hiero host #616
  • Fusion basic integration #451

Fixed bugs:

  • Sync to avalon doesn't remove renamed task #605
  • NukeStudio: FPS collecting into clip instances #624

Merged pull requests:

  • NukeStudio: small fixes #622
  • NukeStudio: broken order of plugins #620

2.12.3 (2020-10-06)

Full Changelog

Enhancements:

  • Nuke Publish Camera #567
  • Harmony: open xstage file no matter of its name #526
  • Stop integration of unwanted data #387
  • Move avalon-launcher functionality to pype #229
  • avalon workfiles api #214
  • Store task types #180
  • Avalon Mongo Connection split #136
  • nk camera workflow #71
  • Hiero integration added #590
  • Anatomy instance data collection is substantially faster for many instances #560

Fixed bugs:

  • test issue #596
  • Harmony: empty scene contamination #583
  • Edit publishing in SP doesn't respect shot selection for publishing #542
  • Pathlib breaks compatibility with python2 hosts #281
  • Updating a look where the shader name changed leaves the geo without a shader #237
  • Better error handling #84
  • Harmony: function signature #609
  • Nuke: gizmo publishing error #594
  • Harmony: fix clashing namespace of called js functions #584
  • Maya: fix maya scene type preset exception #569

Closed issues:

  • Nuke Gizmo publishing #597
  • nuke gizmo publishing error #592
  • Publish EDL #579
  • Publish render from SP #576
  • rename ftrack custom attribute group to pype #184

Merged pull requests:

  • Audio file existence check #614
  • NKS small fixes #587
  • Standalone publisher editorial plugins interfering #580

2.12.2 (2020-09-25)

Full Changelog

Enhancements:

  • pype config GUI #241

Fixed bugs:

  • Harmony: Saving heavy scenes will crash #507
  • Extract review a representation name with \*\_burnin #388
  • Hierarchy data was not considering active isntances #551

2.12.1 (2020-09-15)

Full Changelog

Fixed bugs:

  • Pype: changelog.md is outdated #503
  • dependency security alert ! #484
  • Maya: RenderSetup is missing update #106
  • <pyblish plugin> extract effects creates new instance #78

2.12.0 (2020-09-10)

Full Changelog

Enhancements:

  • Less mongo connections #509
  • Nuke: adding image loader #499
  • Move launcher window to top if launcher action is clicked #450
  • Maya: better tile rendering support in Pype #446
  • Implementation of non QML launcher #443
  • Optional skip review on renders. #441
  • Ftrack: Option to push status from task to latest version #440
  • Properly containerize image plane loads. #434
  • Option to keep the review files. #426
  • Isolate view on instance members. #425
  • Maya: Publishing of tile renderings on Deadline #398
  • Feature/little bit better logging gui #383

Fixed bugs:

  • Maya: Fix tile order for Draft Tile Assembler #511
  • Remove extra dash #501
  • Fix: strip dot from repre names in single frame renders #498
  • Better handling of destination during integrating #485
  • Fix: allow thumbnail creation for single frame renders #460
  • added missing argument to launch_application in ftrack app handler #453
  • Burnins: Copy bit rate of input video to match quality. #448
  • Standalone publisher is now independent from tray #442
  • Bugfix/empty enumerator attributes #436
  • Fixed wrong order of "other" category collapssing in publisher #435
  • Multiple reviews where being overwritten to one. #424
  • Cleanup plugin fail on instances without staging dir #420
  • deprecated -intra parameter in ffmpeg to new -g #417
  • Delivery action can now work with entered path #397

Merged pull requests:

  • Review on instance.data #473

2.11.8 (2020-08-27)

Full Changelog

Enhancements:

  • DWAA support for Maya #382
  • Isolate View on Playblast #367
  • Maya: Tile rendering #297
  • single pype instance running #47
  • PYPE-649: projects don't guarantee backwards compatible environment #8
  • PYPE-663: separate venv for each deployed version #7

Fixed bugs:

  • pyblish pype - other group is collapsed before plugins are done #431
  • Alpha white edges in harmony on PNGs #412
  • harmony image loader picks wrong representations #404
  • Clockify crash when response contain symbol not allowed by UTF-8 #81

2.11.7 (2020-08-21)

Full Changelog

Fixed bugs:

  • Clean Up Baked Movie #369
  • celaction last workfile #459

2.11.6 (2020-08-18)

Full Changelog

Enhancements:

  • publisher app #56

2.11.5 (2020-08-13)

Full Changelog

Enhancements:

  • Switch from master to equivalent #220
  • Standalone publisher now only groups sequence if the extension is known #439

Fixed bugs:

  • Logs have been disable for editorial by default to speed up publishing #433
  • additional fixes for celaction #430
  • Harmony: invalid variable scope in validate scene settings #428
  • new representation name for audio was not accepted #427

2.11.4 (2020-08-10)

Full Changelog

Enhancements:

  • WebSocket server #135
  • standalonepublisher: editorial family features expansion [master branch] #411

2.11.3 (2020-08-04)

Full Changelog

Fixed bugs:

  • Harmony: publishing performance issues #408

2.11.2 (2020-07-31)

Full Changelog

Fixed bugs:

  • Ftrack to Avalon bug #406

2.11.1 (2020-07-29)

Full Changelog

Merged pull requests:

  • Celaction: metadata json folder fixes on path #393
  • CelAction - version up method taken fro pype.lib #391

2.11.0

release date: 27 July 2020

new:

  • (blender) namespace support #341
  • (blender) start end frames #330
  • (blender) camera asset #322
  • (pype) toggle instances per family in pyblish GUI #320
  • (pype) current release version is now shown in the tray menu #379

improved:

  • (resolve) tagging for publish #239
  • (pype) Support publishing a subset of shots with standalone editorial #336
  • (harmony) Basic support for palettes #324
  • (photoshop) Flag outdated containers on startup and publish. #309
  • (harmony) Flag Outdated containers #302
  • (photoshop) Publish review #298
  • (pype) Optional Last workfile launch #365

fixed:

  • (premiere) workflow fixes #346
  • (pype) pype-setup does not work with space in path #327
  • (ftrack) Ftrack delete action cause circular error #206
  • (nuke) Priority was forced to 50 #345
  • (nuke) Fix ValidateNukeWriteKnobs #340
  • (maya) If camera attributes are connected, we can ignore them. #339
  • (pype) stop appending of tools environment to existing env #337
  • (ftrack) Ftrack timeout needs to look at AVALON_TIMEOUT #325
  • (harmony) Only zip files are supported. #310
  • (pype) hotfix/Fix event server mongo uri #305
  • (photoshop) Subset was not named or validated correctly. #304

2.10.0

release date: 17 June 2020

new:

  • (harmony) Toon Boom Harmony has been greatly extended to support rigging, scene build, animation and rendering workflows. #270 #271 #190 #191 #172 #168
  • (pype) Added support for rudimentary edl publishing into individual shots. #265
  • (celaction) Simple Celaction integration has been added with support for workfiles and rendering. #255
  • (maya) Support for multiple job types when submitting to the farm. We can now render Maya or Standalone render jobs for Vray and Arnold (limited support for arnold) #204
  • (photoshop) Added initial support for Photoshop #232

improved:

  • (blender) Updated support for rigs and added support Layout family #233 #226
  • (premiere) It is now possible to choose different storage root for workfiles of different task types. #255
  • (maya) Support for unmerged AOVs in Redshift multipart EXRs #197
  • (pype) Pype repository has been refactored in preparation for 3.0 release #169
  • (deadline) All file dependencies are now passed to deadline from maya to prevent premature start of rendering if caches or textures haven't been coppied over yet. #195
  • (nuke) Script validation can now be made optional. #194
  • (pype) Publishing can now be stopped at any time. #194

fix:

  • (pype) Pyblish-lite has been integrated into pype repository, plus various publishing GUI fixes. #274 #275 #268 #227 #238
  • (maya) Alembic extractor was getting wrong frame range type in certain scenarios #254
  • (maya) Attaching a render to subset in maya was not passing validation in certain scenarios #256
  • (ftrack) Various small fixes to ftrack sync #263 #259
  • (maya) Look extraction is now able to skp invalid connections in shaders #207

2.9.0

release date: 25 May 2020

new:

  • (pype) Support for Multiroot projects. You can now store project data on multiple physical or virtual storages and target individual publishes to these locations. For instance render can be stored on a faster storage than the rest of the project. #145, #38
  • (harmony) Basic implementation of Toon Boom Harmony has been added. #142
  • (pype) OSX support is in public beta now. There are issues to be expected, but the main implementation should be functional. #141

improved:

  • (pype) Review extractor has been completely rebuilt. It now supports granular filtering so you can create multiple outputs for different tasks, families or hosts. #103, #166, #165
  • (pype) Burnin generation had been extended to support same multi-output filtering as review extractor #103
  • (pype) Publishing file templates can now be specified in config for each individual family #114
  • (pype) Studio specific plugins can now be appended to pype standard publishing plugins. #112
  • (nukestudio) Reviewable clips no longer need to be previously cut, exported and re-imported to timeline. Pype can now dynamically cut reviewable quicktimes from continuous offline footage during publishing. #23
  • (deadline) Deadline can now correctly differentiate between staging and production pype. #154
  • (deadline) PYPE_PYTHON_EXE env variable can now be used to direct publishing to explicit python installation. #120
  • (nuke) Nuke now check for new version of loaded data on file open. #140
  • (nuke) frame range and limit checkboxes are now exposed on write node. #119

fix:

  • (nukestudio) Project Location was using backslashes which was breaking nukestudio native exporting in certains configurations #82
  • (nukestudio) Duplicity in hierarchy tags was prone to throwing publishing error #130, #144
  • (ftrack) multiple stability improvements #157, #159, #128, #118, #127
  • (deadline) multipart EXRs were stopping review publishing on the farm. They are still not supported for automatic review generation, but the publish will go through correctly without the quicktime. #155
  • (deadline) If deadline is non-responsive it will no longer freeze host when publishing #149
  • (deadline) Sometimes deadline was trying to launch render before all the source data was coppied over. #137 (harmony) Basic implementation of Toon Boom Harmony has been added. #142
  • (nuke) Filepath knob wasn't updated properly. #131
  • (maya) When extracting animation, the "Write Color Set" options on the instance were not respected. #108
  • (maya) Attribute overrides for AOV only worked for the legacy render layers. Now it works for new render setup as well #132
  • (maya) Stability and usability improvements in yeti workflow #104

2.8.0

release date: 20 April 2020

new:

  • (pype) Option to generate slates from json templates. [PYPE-628] #26
  • (pype) It is now possible to automate loading of published subsets into any scene. Documentation will follow :). [PYPE-611] #24

fix:

  • (maya) Some Redshift render tokens could break publishing. [PYPE-778] #33
  • (maya) Publish was not preserving maya file extension. #39
  • (maya) Rig output validator was failing on nodes without shapes. #40
  • (maya) Yeti caches can now be properly versioned up in the scene inventory. #40
  • (nuke) Build first workfiles was not accepting jpeg sequences. #34
  • (deadline) Trying to generate ffmpeg review from multipart EXRs no longer crashes publishing. [PYPE-781]
  • (deadline) Render publishing is more stable in multiplatform environments. [PYPE-775]

2.7.0

release date: 30 March 2020

new:

  • (maya) Artist can now choose to load multiple references of the same subset at once [PYPE-646, PYPS-81]
  • (nuke) Option to use named OCIO colorspaces for review colour baking. [PYPS-82]
  • (pype) Pype can now work with master versions for publishing and loading. These are non-versioned publishes that are overwritten with the latest version during publish. These are now supported in all the GUIs, but their publishing is deactivated by default. [PYPE-653]
  • (blender) Added support for basic blender workflow. We currently support rig, model and animation families. [PYPE-768]
  • (pype) Source timecode can now be used in burn-ins. [PYPE-777]
  • (pype) Review outputs profiles can now specify delivery resolution different than project setting [PYPE-759]
  • (nuke) Bookmark to current context is now added automatically to all nuke browser windows. [PYPE-712]

change:

  • (maya) It is now possible to publish camera without. baking. Keep in mind that unbaked cameras can't be guaranteed to work in other hosts. [PYPE-595]
  • (maya) All the renders from maya are now grouped in the loader by their Layer name. [PYPE-482]
  • (nuke/hiero) Any publishes from nuke and hiero can now be versioned independently of the workfile. [PYPE-728]

fix:

  • (nuke) Mixed slashes caused issues in ocio config path.
  • (pype) Intent field in pyblish GUI was passing label instead of value to ftrack. [PYPE-733]
  • (nuke) Publishing of pre-renders was inconsistent. [PYPE-766]
  • (maya) Handles and frame ranges were inconsistent in various places during publishing.
  • (nuke) Nuke was crashing if it ran into certain missing knobs. For example DPX output missing autocrop [PYPE-774]
  • (deadline) Project overrides were not working properly with farm render publishing.
  • (hiero) Problems with single frame plates publishing.
  • (maya) Redshift RenderPass token were breaking render publishing. [PYPE-778]
  • (nuke) Build first workfile was not accepting jpeg sequences.
  • (maya) Multipart (Multilayer) EXRs were breaking review publishing due to FFMPEG incompatiblity [PYPE-781]

2.6.0

release date: 9 March 2020

change:

  • (maya) render publishing has been simplified and made more robust. Render setup layers are now automatically added to publishing subsets and render globals family has been replaced with simple render [PYPE-570]
  • (avalon) change context and workfiles apps, have been merged into one, that allows both actions to be performed at the same time. [PYPE-747]
  • (pype) thumbnails are now automatically propagate to asset from the last published subset in the loader
  • (ftrack) publishing comment and intent are now being published to ftrack note as well as describtion. [PYPE-727]
  • (pype) when overriding existing version new old representations are now overriden, instead of the new ones just being appended. (to allow this behaviour, the version validator need to be disabled. [PYPE-690])
  • (pype) burnin preset has been significantly simplified. It now doesn't require passing function to each field, but only need the actual text template. to use this, all the current burnin PRESETS MUST BE UPDATED for all the projects.
  • (ftrack) credentials are now stored on a per server basis, so it's possible to switch between ftrack servers without having to log in and out. [PYPE-723]

new:

  • (pype) production and development deployments now have different colour of the tray icon. Orange for Dev and Green for production [PYPE-718]
  • (maya) renders can now be attached to a publishable subset rather than creating their own subset. For example it is possible to create a reviewable look or model render and have it correctly attached as a representation of the subsets [PYPE-451]
  • (maya) after saving current scene into a new context (as a new shot for instance), all the scene publishing subsets data gets re-generated automatically to match the new context [PYPE-532]
  • (pype) we now support project specific publish, load and create plugins [PYPE-740]
  • (ftrack) new action that allow archiving/deleting old published versions. User can keep how many of the latest version to keep when the action is ran. [PYPE-748, PYPE-715]
  • (ftrack) it is now possible to monitor and restart ftrack event server using ftrack action. [PYPE-658]
  • (pype) validator that prevent accidental overwrites of previously published versions. [PYPE-680]
  • (avalon) avalon core updated to version 5.6.0
  • (maya) added validator to make sure that relative paths are used when publishing arnold standins.
  • (nukestudio) it is now possible to extract and publish audio family from clip in nuke studio [PYPE-682]

fix:

  • (maya) maya set framerange button was ignoring handles [PYPE-719]
  • (ftrack) sync to avalon was sometime crashing when ran on empty project
  • (nukestudio) publishing same shots after they've been previously archived/deleted would result in a crash. [PYPE-737]
  • (nuke) slate workflow was breaking in certain scenarios. [PYPE-730]
  • (pype) rendering publish workflow has been significantly improved to prevent error resulting from implicit render collection. [PYPE-665, PYPE-746]
  • (pype) launching application on a non-synced project resulted in obscure [PYPE-528]
  • (pype) missing keys in burnins no longer result in an error. [PYPE-706]
  • (ftrack) create folder structure action was sometimes failing for project managers due to wrong permissions.
  • (Nukestudio) using source in the start frame tag could result in wrong frame range calculation
  • (ftrack) sync to avalon action and event have been improved by catching more edge cases and provessing them properly.

2.5.0

release date: 11 Feb 2020

change:

  • (pype) added many logs for easier debugging
  • (pype) review presets can now be separated between 2d and 3d renders [PYPE-693]
  • (pype) anatomy module has been greatly improved to allow for more dynamic pulblishing and faster debugging [PYPE-685]
  • (pype) avalon schemas have been moved from pype-config to pype repository, for simplification. [PYPE-670]
  • (ftrack) updated to latest ftrack API
  • (ftrack) publishing comments now appear in ftrack also as a note on version with customisable category [PYPE-645]
  • (ftrack) delete asset/subset action had been improved. It is now able to remove multiple entities and descendants of the selected entities [PYPE-361, PYPS-72]
  • (workfiles) added date field to workfiles app [PYPE-603]
  • (maya) old deprecated loader have been removed in favour of a single unified reference loader (old scenes will upgrade automatically to the new loader upon opening) [PYPE-633, PYPE-697]
  • (avalon) core updated to 5.5.15 [PYPE-671]
  • (nuke) library loader is now available in nuke [PYPE-698]

new:

  • (pype) added pype render wrapper to allow rendering on mixed platform farms. [PYPE-634]
  • (pype) added pype launch command. It let's admin run applications with dynamically built environment based on the given context. [PYPE-634]
  • (pype) added support for extracting review sequences with burnins [PYPE-657]
  • (publish) users can now set intent next to a comment when publishing. This will then be reflected on an attribute in ftrack. [PYPE-632]
  • (burnin) timecode can now be added to burnin
  • (burnin) datetime keys can now be added to burnin and anatomy [PYPE-651]
  • (burnin) anatomy templates can now be used in burnins. [PYPE=626]
  • (nuke) new validator for render resolution
  • (nuke) support for attach slate to nuke renders [PYPE-630]
  • (nuke) png sequences were added to loaders
  • (maya) added maya 2020 compatibility [PYPE-677]
  • (maya) ability to publish and load .ASS standin sequences [PYPS-54]
  • (pype) thumbnails can now be published and are visible in the loader. AVALON_THUMBNAIL_ROOT environment variable needs to be set for this to work [PYPE-573, PYPE-132]
  • (blender) base implementation of blender was added with publishing and loading of .blend files [PYPE-612]
  • (ftrack) new action for preparing deliveries [PYPE-639]

fix:

  • (burnin) more robust way of finding ffmpeg for burnins.
  • (pype) improved UNC paths remapping when sending to farm.
  • (pype) float frames sometimes made their way to representation context in database, breaking loaders [PYPE-668]
  • (pype) pype install --force was failing sometimes [PYPE-600]
  • (pype) padding in published files got calculated wrongly sometimes. It is now instead being always read from project anatomy. [PYPE-667]
  • (publish) comment publishing was failing in certain situations
  • (ftrack) multiple edge case scenario fixes in auto sync and sync-to-avalon action
  • (ftrack) sync to avalon now works on empty projects
  • (ftrack) thumbnail update event was failing when deleting entities [PYPE-561]
  • (nuke) loader applies proper colorspaces from Presets
  • (nuke) publishing handles didn't always work correctly [PYPE-686]
  • (maya) assembly publishing and loading wasn't working correctly

2.4.0

release date: 9 Dec 2019

change:

  • (ftrack) version to status ftrack event can now be configured from Presets
    • based on preset presets/ftracc/ftrack_config.json["status_version_to_task"]
  • (ftrack) sync to avalon event has been completely re-written. It now supports most of the project management situations on ftrack including moving, renaming and deleting entities, updating attributes and working with tasks.
  • (ftrack) sync to avalon action has been also re-writen. It is now much faster (up to 100 times depending on a project structure), has much better logging and reporting on encountered problems, and is able to handle much more complex situations.
  • (ftrack) sync to avalon trigger by checking auto-sync toggle on ftrack [PYPE-504]
  • (pype) various new features in the REST api
  • (pype) new visual identity used across pype
  • (pype) started moving all requirements to pip installation rather than vendorising them in pype repository. Due to a few yet unreleased packages, this means that pype can temporarily be only installed in the offline mode.

new:

  • (nuke) support for publishing gizmos and loading them as viewer processes
  • (nuke) support for publishing nuke nodes from backdrops and loading them back
  • (pype) burnins can now work with start and end frames as keys
    • use keys {frame_start}, {frame_end} and {current_frame} in burnin preset to use them. [PYPS-44,PYPS-73, PYPE-602]
  • (pype) option to filter logs by user and level in loggin GUI
  • (pype) image family added to standalone publisher [PYPE-574]
  • (pype) matchmove family added to standalone publisher [PYPE-574]
  • (nuke) validator for comparing arbitrary knobs with values from presets
  • (maya) option to force maya to copy textures in the new look publish rather than hardlinking them
  • (pype) comments from pyblish GUI are now being added to ftrack version
  • (maya) validator for checking outdated containers in the scene
  • (maya) option to publish and load arnold standin sequence [PYPE-579, PYPS-54]

fix:

  • (pype) burnins were not respecting codec of the input video
  • (nuke) lot's of various nuke and nuke studio fixes across the board [PYPS-45]
  • (pype) workfiles app is not launching with the start of the app by default [PYPE-569]
  • (ftrack) ftrack integration during publishing was failing under certain situations [PYPS-66]
  • (pype) minor fixes in REST api
  • (ftrack) status change event was crashing when the target status was missing [PYPS-68]
  • (ftrack) actions will try to reconnect if they fail for some reason
  • (maya) problems with fps mapping when using float FPS values
  • (deadline) overall improvements to deadline publishing
  • (setup) environment variables are now remapped on the fly based on the platform pype is running on. This fixes many issues in mixed platform environments.

2.3.6

release date: 27 Nov 2019

hotfix:

  • (ftrack) was hiding important debug logo
  • (nuke) crashes during workfile publishing
  • (ftrack) event server crashes because of signal problems
  • (muster) problems with muster render submissions
  • (ftrack) thumbnail update event syntax errors

2.3.0

release date: 6 Oct 2019

new:

  • (maya) support for yeti rigs and yeti caches
  • (maya) validator for comparing arbitrary attributes against ftrack
  • (pype) burnins can now show current date and time
  • (muster) pools can now be set in render globals in maya
  • (pype) Rest API has been implemented in beta stage
  • (nuke) LUT loader has been added
  • (pype) rudimentary user module has been added as preparation for user management
  • (pype) a simple logging GUI has been added to pype tray
  • (nuke) nuke can now bake input process into mov
  • (maya) imported models now have selection handle displayed by defaulting
  • (avalon) it's is now possible to load multiple assets at once using loader
  • (maya) added ability to automatically connect yeti rig to a mesh upon loading

changed:

  • (ftrack) event server now runs two parallel processes and is able to keep queue of events to process.
  • (nuke) task name is now added to all rendered subsets
  • (pype) adding more families to standalone publisher
  • (pype) standalone publisher now uses pyblish-lite
  • (pype) standalone publisher can now create review quicktimes
  • (ftrack) queries to ftrack were sped up
  • (ftrack) multiple ftrack action have been deprecated
  • (avalon) avalon upstream has been updated to 5.5.0
  • (nukestudio) published transforms can now be animated

fix:

  • (maya) fps popup button didn't work in some cases
  • (maya) geometry instances and references in maya were losing shader assignments
  • (muster) muster rendering templates were not working correctly
  • (maya) arnold tx texture conversion wasn't respecting colorspace set by the artist
  • (pype) problems with avalon db sync
  • (maya) ftrack was rounding FPS making it inconsistent
  • (pype) wrong icon names in Creator
  • (maya) scene inventory wasn't showing anything if representation was removed from database after it's been loaded to the scene
  • (nukestudio) multiple bugs squashed
  • (loader) loader was taking long time to show all the loading action when first launcher in maya

2.2.0

release date: 8 Sept 2019

new:

  • (pype) add customisable workflow for creating quicktimes from renders or playblasts
  • (nuke) option to choose deadline chunk size on write nodes
  • (nukestudio) added option to publish soft effects (subTrackItems) from NukeStudio as subsets including LUT files. these can then be loaded in nuke or NukeStudio
  • (nuke) option to build nuke script from previously published latest versions of plate and render subsets.
  • (nuke) nuke writes now have deadline tab.
  • (ftrack) Prepare Project action can now be used for creating the base folder structure on disk and in ftrack, setting up all the initial project attributes and it automatically prepares pype_project_config folder for the given project.
  • (clockify) Added support for time tracking in clockify. This currently in addition to ftrack time logs, but does not completely replace them.
  • (pype) any attributes in Creator and Loader plugins can now be customised using pype preset system

changed:

  • nukestudio now uses workio API for workfiles
  • (maya) "FIX FPS" prompt in maya now appears in the middle of the screen
  • (muster) can now be configured with custom templates
  • (pype) global publishing plugins can now be configured using presets as well as host specific ones

fix:

  • wrong version retrieval from path in certain scenarios
  • nuke reset resolution wasn't working in certain scenarios

2.1.0

release date: 6 Aug 2019

A large cleanup release. Most of the change are under the hood.

new:

  • (pype) add customisable workflow for creating quicktimes from renders or playblasts
  • (pype) Added configurable option to add burnins to any generated quicktimes
  • (ftrack) Action that identifies what machines pype is running on.
  • (system) unify subprocess calls
  • (maya) add audio to review quicktimes
  • (nuke) add crop before write node to prevent overscan problems in ffmpeg
  • Nuke Studio publishing and workfiles support
  • Muster render manager support
  • (nuke) Framerange, FPS and Resolution are set automatically at startup
  • (maya) Ability to load published sequences as image planes
  • (system) Ftrack event that sets asset folder permissions based on task assignees in ftrack.
  • (maya) Pyblish plugin that allow validation of maya attributes
  • (system) added better startup logging to tray debug, including basic connection information
  • (avalon) option to group published subsets to groups in the loader
  • (avalon) loader family filters are working now

changed:

  • change multiple key attributes to unify their behaviour across the pipeline

    • frameRate to fps
    • startFrame to frameStart
    • endFrame to frameEnd
    • fstart to frameStart
    • fend to frameEnd
    • handle_start to handleStart
    • handle_end to handleEnd
    • resolution_width to resolutionWidth
    • resolution_height to resolutionHeight
    • pixel_aspect to pixelAspect
  • (nuke) write nodes are now created inside group with only some attributes editable by the artist

  • rendered frames are now deleted from temporary location after their publishing is finished.

  • (ftrack) RV action can now be launched from any entity

  • after publishing only refresh button is now available in pyblish UI

  • added context instance pyblish-lite so that artist knows if context plugin fails

  • (avalon) allow opening selected files using enter key

  • (avalon) core updated to v5.2.9 with our forked changes on top

fix:

  • faster hierarchy retrieval from db
  • (nuke) A lot of stability enhancements
  • (nuke studio) A lot of stability enhancements
  • (nuke) now only renders a single write node on farm
  • (ftrack) pype would crash when launcher project level task
  • work directory was sometimes not being created correctly
  • major pype.lib cleanup. Removing of unused functions, merging those that were doing the same and general house cleaning.
  • (avalon) subsets in maya 2019 weren't behaving correctly in the outliner

* This Changelog was automatically generated by github_changelog_generator