>
> I see. It seems we can just comment out that "id.disown()" though~

my primary concern with doing this was that there would be those  
"memory leak" warnings, but it doesn't appear that they are  
happening.  however, there was a different bug with 8.5 that has  
caused me to deem that pymel will only be compatible with 8.5 SP1 and  
greater.  i don't think requiring a free service pack that has been  
available for years should be too much to ask, do you?

> By the way, thx a lot for your guys great work on pymel and it does
> help a lot for TD/RD's programming life in animation studio. I have
> even started up another python module called "pyslim" dedicated to
> Pixar's RenderMan Slim programming in Maya. Pymel is a great reference
> and when ever I figured out something great (policy, coding
> techniques, meta class, ...), I adopt it into pyslim.

sure thing. and if you ever feel the desire to really get your hands  
dirty we can always use the help.

-chad





> Drake
>
> On Feb 18, 10:56 am, chadrik <chad...@gmail.com> wrote:
>> there's a thread on this forum about it, but it's like this:  when  
>> you
>> use an MMessage to create a callback in the api, swig -- the c++ to
>> python wrapping mechanism -- thinks there is a memory leak.  disown
>> tells swig to ignore the swig object and stop trying to detect leaks.
>> at least as far as i understand it.   there's not actually a memory
>> leak, but the warning will be very ominous to users, especially if it
>> shows up every time you execute a mel script via python.  so we'll
>> just have to keep this new feature for 2008+
>>
>> -chad
>>
>> On Feb 17, 2009, at 5:11 PM, Drake wrote:
>>
>>
>>
>>> I was wondering what kind of class the "id" is and did a quick  
>>> test by
>>> following:
>>
>>> ---------------------------
>>>        id = api.MCommandMessage.addCommandOutputCallback
>>> ( errorCallback, None )
>>>        print type(id)
>>>        print dir(id)
>>>        return
>>> ---------------------
>>
>>> and I got this:
>>
>>> <type 'PySwigObject'>
>>> []
>>> -------------------------
>>
>>> It seems the returned object by "addCommandOutputCallback()" is
>>> different between 8.5 and 2008~. I am just guessing. BTW, what does
>>> id.disown() do exactly?
>>
>>> - Drake
>>
>>> On Feb 18, 12:10 am, Chad Dombrova <chad...@gmail.com> wrote:
>>>> looks like we have a decision to make:  either 8.5 users can deal
>>>> with
>>>> annoying but harmless "Callback Memory Leak" warnings or they don't
>>>> get informative MEL errors with line numbers, etc.  the problem is
>>>> that most users don't realize that these memory leak warnings  
>>>> are, in
>>>> fact, harmless, so i think i'm going to have to leave the feature  
>>>> out
>>>> on 8.5...
>>
>>>> thanks for the bug report.
>>
>>>> -chad
>>
>>>> On Feb 17, 2009, at 2:54 AM, Drake wrote:
>>
>>>>> Maya 8.5 SP1 x64
>>>>> ----------
>>>>> from pymel import *
>>>>> pymel : DEBUG : setting logLevel to default:
>>>>> # Traceback (most recent call last):
>>>>> #   File "/opt/lib/python2.4/logging/__init__.py", line 740, in  
>>>>> emit
>>>>> #   File "/opt/lib/python2.4/logging/__init__.py", line 718, in
>>>>> flush
>>>>> # AttributeError: 'maya.Output' object has no attribute 'flush'
>>>>> # Error: 'PySwigObject' object has no attribute 'disown'
>>>>> # Traceback (most recent call last):
>>>>> #   File "<maya console>", line 1, in ?
>>>>> #   File "/tmp/python/pymel/__init__.py", line 1477, in ?
>>>>> #     _installCallbacks()
>>>>> #   File "/tmp/python/pymel/__init__.py", line 1459, in
>>>>> _installCallbacks
>>>>> #     mel.unloadPlugin( addCallback='''python("import pymel;
>>>>> pymel._pluginUnloaded('#1')")''' )
>>>>> #   File "/tmp/python/pymel/core/language.py", line 426, in _call
>>>>> #     return self.eval(cmd)
>>>>> #   File "/tmp/python/pymel/core/language.py", line 528, in eval
>>>>> #     id.disown()
>>>>> # AttributeError: 'PySwigObject' object has no attribute  
>>>>> 'disown' #
>>
>>>>> Drake
>>
>>>>> On Feb 14, 5:37 am, chadrik <chad...@gmail.com> wrote:
>>>>>> there was a bug with RC2 related to the pluginLoaded callbacks.
>>>>>> it's
>>>>>> tough to get these working properly because:
>>
>>>>>>         1 ) loadPlugin causes errors when using python callbacks
>>>>>>         2) unloadPlugin does not even support python callbacks
>>>>>>         3) unloadPlugin mel command is not passing the pluginName
>>>>>> to the
>>>>>> function (even when using #1 syntax)
>>>>>>         4 ) api callbacks for plugin load/unload are not  
>>>>>> supported
>>>>>> until maya
>>>>>> 2009
>>
>>>>>> needless to say this is pretty botched on autodesk's end.
>>
>>>>>> but it's working well enough now with RC3.
>>
>>>>>> -chad
>>
>>>>>> On Feb 12, 2009, at 11:00 PM, Chadrik wrote:
>>
>>>>>>> hi all, i posted RC2 tonight adding 8.5 support, as well as  
>>>>>>> fixing
>>>>>>> Mike's bug and a few others.
>>
>>>>>>> download it here:http://code.google.com/p/pymel/downloads/list
>>
>>>>>>> -chad
>>
>>
> >


--~--~---------~--~----~------------~-------~--~----~
Yours,
Maya-Python Club Team.
-~----------~----~----~----~------~----~------~--~---

Reply via email to