Closed bfloch closed 5 years ago
Hi @bfloch,
I think this recently-closed issue will answer your questions about package name sharing/merging: https://github.com/LumaPictures/usd-qt/issues/19
We use rez as well, and release USD and usd-qt separately, but use both together without issue, and I know others do the same.
Let me know if you have any more questions.
Hi @bfloch, We realize that this situation is not ideal. You're right in your guess that Pixar is interested in the idea of this project being subsumed into USD in the future, which is what makes the right solution now less than obvious. We have a few choices:
pkgutil
support to USD itself, to remove the search order quirkI opened a related issue on USD awhile back: https://github.com/PixarAnimationStudios/USD/issues/284
I'll take this up there and see what Pixar thinks. In the meantime, we should definitely do option 1. I'll leave this issue open as a reminder to get that done.
Good point about the documentation @chadrik. I'll try to get the README updated today.
Thanks for reply. I'm glad you recognize the problem, but I also understand that you wouldn't want to switch back and forth. I will monitor the Pixar ticket and see how it evolves.
@nrusch I am really looking forward to see the additional documentation.
As to the build process: At least locally we were able to just build directly into the tbe_usd path. We wouldn't want to do this for "rez-releases" but its good enough to get us started.
@bfloch I just want to make sure it that it is clear that it is very possible to release the packages in two different locations and still use them together. The "search order quirk" @chadrik mentioned is basically just that UsdQt currently needs to be "higher" on the PYTHONPATH
than USD itself, but after that, things should work without needing to install them in different locations.
Are you running into any other problems getting the two packages to coexist at this point?
@nrusch this worked! Thanks. I guess this can be closed now, considering the documentation in the README.
By the way, I learned recently that python 3.3 introduced an alternative to pkgutil
without the drawbacks, called namespace packages. We just have to wait one more year.
We have a hard time accepting usd-qt into our build environment. Being rez-based we expect "libraries" to install to separate locations.
usd-qt chose the pxr namespace, which in our experience will not work in python if a separate install location is chosen.
Basically python has to choose between the pxr module of usd-qt and the one supplied by usd and it is not happy to do so.
I can only assume that reusing the pxr namespace was in expectation to be eventually pulled into usd itself, which would solve the issue as well.
Is there something obvious I am missing to make it work? Is there any hope what we could move to a more neutral namespace? Relative imports would make make it more robust against future adoptions into other namespaces. Or is there an intimidate plan to pull into usd?
We would be happy to contribute some work, but we rather don't want to diverge from your work.
Thanks!