New submission from Gabor Kovacs:

The attached script works in 2.6(.4) but not in 2.7(.3); the script cannot 
locate its own source code if invoked by relative path and work directory has 
changed. If line 8 uncommented, everything is fine due to caching. 

I think this is related to issue #4050 changes in inspect.py. 

~ kgabor$ python ./instest.py

None ./instest.py
Traceback (most recent call last):
  File "./instest.py", line 10, in <module>
    print inspect.getsourcefile(A), inspect.getfile(A),inspect.findsource(A)
  File 
"/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/inspect.py",
 line 529, in findsource
    raise IOError('source code not available')
IOError: source code not available

~ kgabor$ pwd
/Users/kgabor

~ kgabor$ python /Users/kgabor/instest.py

/Users/kgabor/instest.py /Users/kgabor/instest.py (['import inspect\n', 'import 
os\n', '\n', 'class A:\n', ' def __init__(self):\n', '  self.a=1\n', '\n', 
'#print inspect.getsourcefile(A),inspect.getfile(A),inspect.findsource(A)\n', 
"os.chdir('/')\n", 'print inspect.getsourcefile(A), 
inspect.getfile(A),inspect.findsource(A)\n'], 3)

----------
components: Library (Lib)
files: instest.py
messages: 170389
nosy: kgabor79
priority: normal
severity: normal
status: open
title: inspect.findsource fails after directory change
type: behavior
versions: Python 2.6, Python 2.7
Added file: http://bugs.python.org/file27179/instest.py

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue15931>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to