Maya 2022, Pyblish/publishing alternative

Hi all,

We have been using maya 2018 and pyblish for maya years at our studio. There are a couple of projects coming up where we need to shift up to 2022.

Im wondering whether anyone has any experience using a pyblish style plugin for 2022, or knows of a tool/plugin that is compatible?

Im hoping to avoid re-engineering our entire pipeline to 2022 immediately, but asset/scene publishing is one of those tools that I must be able to provide our artists.

https://openpype.io/ uses pyblish and it is a full pipeline.

Pyblish works with 2022 with minimal fuss. There are a few bits you will need to update for py3 compatibility but that doesn’t take long. Your pipeline should be able to handle a change in software version with a little bit of clean up surely? I don’t mean to be rude, am fully aware of the various complications around pipelines and legacy requirements.

Taking your existing pipe across to 2022, your biggest concern will be py3 especially if you want to continue to use 2018 with the same code base.

Ok. I know you said you don’t want to be rude but yeah. 2018 to 22 is more than an insignificant software version change.

A significant part of the pipeline I have written is in python 2. Maya callbacks etc, mongodb integration and connecting to various intranet/internet REST endpoints for different production management interfaces. - also I know you can boot maya with python 2.7

The original topic I posted wasn’t a whine regarding how hard or difficult it was to rewrite scripts from 2 to 3. I was more just requesting advice as to what alternatives people use for publishing that would be compatible with maya 2022.

I’m actually really looking forward to updating our pipeline to 2022/python 3 compatible as I’m looking to integrate the usd features into our pipeline as I write it. Hence if there is something that I can integrate to roll out publishing first I can make some good headway quickly.

I will have a look at openpyepy so thanks for the suggestion.

Yeah, I figured that would be why - no worries, I didn’t think it was a moan.
I recently updated a large max2018 code base to 2021 which was py2 -> py3. It wasn’t that bad but defo takes time to do correctly, I wrote about the more annoying bits here:

In an ideal world you want to bite the bullet to get things converted sooner rather than later, I could suggest that if you want a short term option until you can transition fully then do a temp pyblish 37 setup, Especially if your artists are already used to pyblish?
I don’t think you will find anything that won’t require the setup time.

Other than pyblish, I know shotgun has its own DCC integrations which can handle publishing but it still requires lengthy setup.

What about the possibility of a rough custom tool to cover your short term requirements?

This had me worried, so I took a quick look at as far as I can tell Pyblish should work just fine with 2022, Python 3 and all!

PS C:\Users\marcus> rez env maya pyblish_base pyblish_lite pyblish_qml pyqt5 python-3 bleeding_rez
You are now in a rez-configured environment.
resolved by marcus@Fractal, on Tue Apr 20 12:20:17 2021, using Rez v2.40.4

requested packages:
maya
pyblish_base
pyblish_lite
pyblish_qml
pyqt5
python-3
bleeding_rez
~platform==windows  (implicit)
~arch==AMD64        (implicit)
~os==windows-10     (implicit)

resolved packages:
PyQt5_sip-12.8.1     C:\Users\marcus\packages\PyQt5_sip\12.8.1\os-windows-10\python-3.7  (local)
arch-AMD64           C:\Users\marcus\packages\arch\AMD64                                 (local)
bleeding_rez-2.40.3  C:\Users\marcus\packages\bleeding_rez\2.40.3                        (local)
maya-2022.0.0        C:\Users\marcus\packages\maya\2022.0.0                              (local)
os-windows-10        C:\Users\marcus\packages\os\windows-10                              (local)
platform-windows     C:\Users\marcus\packages\platform\windows                           (local)
pyblish_base-1.8.8   C:\Users\marcus\packages\pyblish_base\1.8.8                         (local)
pyblish_lite-0.9.0   C:\Users\marcus\packages\pyblish_lite\0.9.0                         (local)
pyblish_qml-1.11.5   C:\Users\marcus\packages\pyblish_qml\1.11.5                         (local)
pyqt5-5.15.1         C:\Users\marcus\packages\pyqt5\5.15.1\os-windows-10\python-3.7      (local)
python-3.7.3         C:\Users\marcus\packages\python\3.7.3\platform-windows\arch-AMD64   (local)
> $ maya

Yeah, I was thinking I’d probably have to go down the custom tool route.

To clarify Marcuso the information I was given was that pyblish_maya wouldn’t work with 2022/python 3. Perhaps this isn’t correct?

Either way all of my existing pyblish plugins that I’ve written (at least 4 or 5 dozen) would be rejigged but that’s relatively simple given that I would only borrow and adapt quickly the dozen or so that would be needed for this project. Plus any pymel updates. Hopefully your right and pyblish_maya works out of the box.

Also, do agree on biting the bullet earlier - but we do have so many overarching projects that initially I only see us using 2022 on a couple of projects and then gradually phase into 2022+ over the next 3 years.

I suppose the issue is that these 2 projects got dropped on my lap today which required fairly quick integrations on top of some pretty major projects.

If that’s the case then it’s likely soley a bug of pyblish_maya and not pyblish. I can definitely confirm Pyblish QML is functional in Maya 2022. (However, I haven’t tried Pyblish Lite but we do run that in Python 3.6+ in other hosts)

I suppose the issue is that these 2 projects got dropped on my lap today which required fairly quick integrations on top of some pretty major projects.

I’d recommend OpenPype too. However, switching from just Pyblish to e.g. Avalon/OpenPype is a bigger switch than upgrading an existing code base.


Could you specify more accurately what specifcally fails for you in Maya 2022?

Py 2/3 compatibility at the same time is definitely doable. A bit more involved, but as @Munkybutt stated it shouldn’t require too much effort if you don’t need to manage tons of compiled dependencies or huge code base dependencies that weren’t built with py2/3 compatibility.

Nothing failing for me yet - as mentioned the project only got dropped on my lap and I had been told it wasn’t compatible - and assumed that was correct. My first instinct was to research alternatives (hence topic).

I do have a pretty significant code base that is reliant on studio conventions, processes and tools that I’ve been building for over a decade - obviously there have been plenty of start overs in that time.

We don’t use shotgun (I wrote my own that’s been adopted) and I’m not looking to implement another tool with a large feature set that overlaps what I’ve already written (cohesion/automation across toonboom, maya, 3dsmax, nuke, unreal, unity, after effects and various rendering systems etc)

The pipeline definitely isn’t “pyblish” only - but I do love to have it in our pipeline as I’ve found it’s a great way for me to control what the artists are doing and ensuring QA with validation/integration etc.

Perhaps I should have tested whether pyblish_maya wasn’t compatible first as advised so I didn’t appear foolis on posting, but I didn’t have an install yet (start planning tmrw) and there was pretty limited info available online given the release date of 2022.

I suppose it’s always good to know what else is out there but, if I can get it running tomorrow that’s by far the best outcome.

Unsure, I tested Pyblish itself along with the two GUIs above earlier. The pyblish-maya project is just to get the menu item in the File menu, so if it isn’t working currently it shouldn’t be that much of a hassle to get running. Unless you make your own file menu item in which case you won’t need it. It typically isn’t necessary (or widely used) and serves more as a reference or starting point for your own setup.

You can also copy/paste it into your own code from here.