Pyblish 1.2 Released

Thanks for letting me know.

Could you try and run Tray via the command-line and see what gets outputted?

$ cd pyblish-win\bin
$ python -m pyblish_tray

This is after clicking the “SHOW” button as well;

K:\development\tools\pyblish\pyblish-win\Pyblish\bin>python -m pyblish_tray
Launching Pyblish QML..
Finished
Listening for output..
Launching virtual host..
Starting Pyblish..
Traceback (most recent call last):
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\pyblish-x\modules\p
yblish-tray\pyblish_tray\app.py", line 130, in on_object_created
    self.launch_virtual_host()
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\pyblish-x\modules\p
yblish-tray\pyblish_tray\app.py", line 193, in launch_virtual_host
    port = proxy.find_available_port()
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\xmlrpc
lib.py", line 1233, in __call__
    return self.__send(self.__name, args)
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\xmlrpc
lib.py", line 1591, in __request
    verbose=self.__verbose
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\xmlrpc
lib.py", line 1273, in request
    return self.single_request(host, handler, request_body, verbose)
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\xmlrpc
lib.py", line 1301, in single_request
    self.send_content(h, request_body)
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\xmlrpc
lib.py", line 1448, in send_content
    connection.endheaders(request_body)
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\httpli
b.py", line 997, in endheaders
    self._send_output(message_body)
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\httpli
b.py", line 850, in _send_output
    self.send(msg)
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\httpli
b.py", line 812, in send
    self.connect()
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\httpli
b.py", line 793, in connect
    self.timeout, self.source_address)
  File "K:\development\tools\pyblish\pyblish-win\Pyblish\lib\Python27\lib\socket
.py", line 571, in create_connection
    raise err
socket.error: [Errno 10061] No connection could be made because the target machi
ne actively refused it
Spent 533.00 ms creating the application
Listening on 127.0.0.1:9090
Entering state: "hidden"
Entering state: "ready"
Entering state: "clean"
Entering state: "alive"
Polishing: 1893ms
Proxy not initialised

That’s an odd path, what’s is that?

It should be: pyblish-win\bin

Thats what the installer defaults to when pointing to a folder. Where the output with the more expected path;

K:\development\tools\pyblish\pyblish-win\bin>python -m pyblish_tray
Launching Pyblish QML..
Finished
Listening for output..
Launching virtual host..
Starting Pyblish..
Traceback (most recent call last):
  File "K:\development\tools\pyblish\pyblish-win\lib\pyblish-x\modules\pyblish-t
ray\pyblish_tray\app.py", line 130, in on_object_created
    self.launch_virtual_host()
  File "K:\development\tools\pyblish\pyblish-win\lib\pyblish-x\modules\pyblish-t
ray\pyblish_tray\app.py", line 193, in launch_virtual_host
    port = proxy.find_available_port()
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\xmlrpclib.py",
 line 1233, in __call__
    return self.__send(self.__name, args)
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\xmlrpclib.py",
 line 1591, in __request
    verbose=self.__verbose
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\xmlrpclib.py",
 line 1273, in request
    return self.single_request(host, handler, request_body, verbose)
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\xmlrpclib.py",
 line 1301, in single_request
    self.send_content(h, request_body)
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\xmlrpclib.py",
 line 1448, in send_content
    connection.endheaders(request_body)
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\httplib.py", l
ine 997, in endheaders
    self._send_output(message_body)
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\httplib.py", l
ine 850, in _send_output
    self.send(msg)
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\httplib.py", l
ine 812, in send
    self.connect()
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\httplib.py", l
ine 793, in connect
    self.timeout, self.source_address)
  File "K:\development\tools\pyblish\pyblish-win\lib\Python27\lib\socket.py", li
ne 571, in create_connection
    raise err
socket.error: [Errno 10061] No connection could be made because the target machi
ne actively refused it
Spent 388.00 ms creating the application
Listening on 127.0.0.1:9090
Entering state: "hidden"
Entering state: "ready"
Entering state: "clean"
Entering state: "alive"
Polishing: 852ms
Proxy not initialised

Hmmm, had another user logged in which explains the “machine refusal”. Running python -m pyblish_tray works, but pyblish_tray.bat still doesn’t.

Need to run, so the rest of the trouble will have to wait for Monday. Have a good weekend:)

Oh, are you using the .exe installer, pointing to your python-win Git repository? They aren’t meant to be mixed; it’s either or.

If you use the installer, you won’t need the Git repository pyblish-win.

In either case, I might know what it is. It sounds related to the delay you get when running on a network. Will take a look next week. :slight_smile:

It isn’t a git repo, just old habits☺

Just tried it again today, and it all works:) Think it was because of that other user logged in.

I expect it to work sporadically, because I suspect it has to do with a timing issue; i.e. the delay involved in launching Tray followed by the immediate request to connect with it.

In any case, I just pushed a fix for 1.2.2 and it should be available as an installer in a few moments or immediately as a Git repo!

Updated to latest with the git repo, and everything seems to work perfectly:)

2 Likes

I have to agree with this. As nice as it is for developer, it is very confusing and overwhelming for artists. I dare to say that at this point with addition of actions, pyblish capabilities are way ahead its GUI representation. I’m deploying full pyblish/ftrack pipeline to a new client next week and their comments (as well as our artists) are that they like the way it works but are worries that the amount of plugins and information visible will be a major overkill to the artists (it gets very cluttered when more plugins and collectors are in play).

So I’d very much like to see the next development to be towards better GUI as was already discussed months ago in the github issues and this topic. When we’re at it, user fields would be up there with GUI on the top of my priorities for future developments.

Thanks @mkolar, great input!

I’m working on a developer guide at the moment that I hope should inspire some action in terms of adding features and fixing problems on your own. Developing an alternative simpler GUI sounds like an excellent starting point too, I’ll include something about it in the guide.

Great !

Just wanted to say +1.

Having the Collectors visible is a great plus but at the same time I noticed the list plug-ins just expand as you go and at some point there’s just a lot which seems like “black magic” to most artists.

It’s really good at the moment that one is able to see such an extensive overview of what’s happening, but I can see many artists getting confused by most of it. Having less technical people join the conversation and telling us “what is all they need” would be best. Definitely something I’m having a look at to tackle it in the coming weeks to get some answers to.

I’ll mock something up about this in the morrow, I think I might have a solution to this.

Guessing you already have something in mind with that, but just wanted to weight in. Have the instances and errored plugins would be the most condensed view I can think of.

I only have a suggestion in mind, do share any ideas you can come up with.

Mine will be about hiding the current front-page under a secondary tab, and making the front-page be a single textfield for adding a comment (to instance.data["comment"]).

1.2.5 has been pushed, with the ability to provide multiple families to instances, and specifically for Maya, more solid menu item and icons.

instance.data["families"] = ["geometry", "human", "primary"]

This would typically be utilised in your Collector, to expose a particular Instance to available plug-ins. For example, you may install a series of plug-ins from an external source, such as Pyblish Magenta, and register interest in some of it’s plug-ins, such as it’s ability to export alembic files, or Pyblish FTrack and register interest in having an instance be registered with FTrack.

In short, it’s a brave new world! :slight_smile:

See also

2 Likes

1.2.6 has been pushed, with support for “Quick Toggles”, implemented by @tokejepsen.

See also