Thread: [Pydev-users] [pydev - Users] Pydev 1.3.9 with Cherrypy3.0.x under Eclipse
Brought to you by:
fabioz
From: SourceForge.net <no...@so...> - 2007-09-27 12:56:14
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4539941 By: boostpy2005 I have problem by using the newest pydev 1.3.9 if I start debugging under Eclipse because I use psyco too. I have post a message to the group cherrypy. http://groups.google.com/group/cherrypy-users/browse_thread/thread/d00a51bb1d340 4a5# ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-09-27 13:08:28
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4539950 By: fabioz Is there some stack trace there? What happens wrong? (I didn't get what was the error from the description) ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-09-27 15:04:14
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4540144 By: boostpy2005 Thanks for the reply. the call stack [26/Sep/2007:14:18:01] ENGINE CherryPy shut down Traceback (most recent call last): File "C:\Programme\eclipse32\plugins\org.python.pydev.debug_1.3.9\pysrc\pydev d.py", line 784, in ? debugger.run(setup['file'], None, None) File "C:\Programme\eclipse32\plugins\org.python.pydev.debug_1.3.9\pysrc\pydev d.py", line 636, in run execfile(file, globals, locals) #execute the script -----------our code deleted----------- cherrypy.engine.start(blocking=not asService) File "C:\Programme\Python24\Lib\site-packages\cherrypy\_cpengine.py", line 93, in start self.block() File "C:\Programme\Python24\Lib\site-packages\cherrypy\_cpengine.py", line 103, in block self.autoreload() File "C:\Programme\Python24\Lib\site-packages\cherrypy\_cpengine.py", line 168, in autoreload if filename: TypeError: __nonzero__ should return an int the following is the code segment out of the module _cpengine sysfiles = [] for k, m in sys.modules.items(): if re.match(self.autoreload_match, k): if hasattr(m, "__loader__"): if hasattr(m.__loader__, "archive"): k = m.__loader__.archive k = getattr(m, "__file__", None) sysfiles.append(k) for filename in sysfiles + self.reload_files: if filename: if type(filename) != str: continue if filename.endswith(".pyc"): filename = filename[:-1] oldtime = self.mtimes.get(filename, 0) if oldtime is None: # Module with no .py file. Skip it. continue try: mtime = os.stat(filename).st_mtime except OSError: # Either a module with no .py file, or it's been deleted. mtime = None if filename not in self.mtimes: # If a module has no .py file, this will be None. self.mtimes[filename] = mtime else: if mtime is None or mtime > oldtime: # The file has been deleted or modified. self.reexec() ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-09-27 16:20:12
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4540287 By: fabioz Try editing org.python.pydev.debug_1.3.9\pysrc\pydevd_constants.py and add to the Null class: def __nonzero__(self): return 0 Cheers, Fabio ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-09-27 19:39:16
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4540764 By: boostpy2005 Thanks. It does not work. We have got a item out of sys.modules.items() k, m =("psyco", Null). according the code segment out of cherrypy module and your definition of class, if hasattr(m, "__loader__"): if hasattr(m.__loader__, "archive"): k = m.__loader__.archive k = getattr(m, "__file__", None) we got Null as the value k and it will be used as filename to get file information!. No change even if I add the definition def __nonzero__(self): return 0 because you define the function __setattr__ Maybe there is really something wrong with the module of project cherrypy, or? ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-09-28 00:50:50
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4541086 By: fabioz Actually, maybe the Null object can be further configured to respond to things as CherryPy would expect... shouldn't be so hard -- you just have to check which are the actual protocols that CherryPy depends on (so, if you're able to make that work, please send me a patch with the changes you did). They probably weren't expecting anything different from a module in sys.modules (although that's actually not so uncommon), but seeing it as a bug or not depends a lot on your point of view. Cheers, Fabio ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-09-28 08:02:31
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4541406 By: boostpy2005 Thanks again. I have tested again, where I get the error message. I found that there will be wrong if I use sys.modules because psyco is already paared with Null object, not with <module 'psyco' from 'C:\Programme\Python243\lib\site-packages\psyco\__init__.pyc'> as value! My workaround is, I added the following code segment at the beginning of my application if "psyco" in sys.modules: del sys.modules["psyco"] It works for me, but it is only for me because in this project i do not use psco for optimation! I think your pydev has manipulated sys.modules, Is it right? Why do you need to manipulate it? Sorry, I have not enough knowleage to patch your pydev. ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-09-28 09:07:26
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4541505 By: boostpy2005 Maybe the following can help you to fix the problem! autoreload of cherrypy checked how to find the module by calling the function hasattr(obj, attr). the function hasattr will be implemented by call getattr(obj, attr) in turn, which you implemented thru __getattr__ for the Null object. In this way, we get always True if calling hasattr. At the end, cherrypy gets the value by calling the function getattr and we get always the Null object if there is no such attribute. Therefore under cherrypy we get never the default value None even if calling getattr(obj, attr, None)! That is the reason why cherrypy failed. I still do not understand why only psyco has Null as module, not the really module as others. hope to help you to find a solution. ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-09-28 10:22:46
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4541594 By: fabioz The Null object pattern responds to any queries with a return to itself or None, and it's put in the place of the psyco module so that users don't have to worry about how is psyco used... but I think that maybe the whole Null object pattern may not be suitable enough for general cases where programs try to work too much with sys.modules... I'll try reducing the Null object interface to only respond to the actual psyco module interface instead of having the full pattern available there. Cheers, Fabio ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |
From: SourceForge.net <no...@so...> - 2007-10-03 14:19:48
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4550267 By: odwl Hi, Just to tell that I have the same issue. I had to rollback to 1.3.8 :( I cannot change my organization build system. Will it be solve in the next pydev release? Thanks in advance, Olivier ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=293649 |