BIND 10 #1728: python import and versioned modules
BIND 10 Development
do-not-reply at isc.org
Wed Feb 29 15:28:58 UTC 2012
#1728: python import and versioned modules
-------------------------------------+-------------------------------------
Reporter: jreed | Owner:
Type: defect | UnAssigned
Priority: major | Status: new
Component: build system | Milestone: New
Sensitive: 0 | Tasks
Sub-Project: DNS | Keywords:
Estimated Difficulty: 0 | Defect Severity: N/A
Total Hours: 0 | Feature Depending on Ticket:
| Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
(I originally discussed this on Jabber at end of January.)
Some libtools (such as OpenBSD policy) do not create symlinks for .so
shared libraries. So the only files created are versioned (with numbers).
This causes errors like:
{{{
File
"/home/jreed/src/bind10/src/lib/dns/python/tests/edns_python_test.py",
line 18, in <module>
from pydnspp import *
ImportError: No module named pydnspp
}}}
Python import assumes .so or .py, but not other suffixes (like 0.0).
Looking on my personal system I don't see any python using shared objects
that have versioned names other than bind10. Maybe we shouldn't be
versioning them?
Problem files include: pydnspp.so.0.0, pyunittests_util.so.0.0,
log.so.0.0, datasrc.so.0.0, libutil_io_python.so.0.0, and others.
A workaround is to create the symlinks.
I think the correct fix is not version the filenames.
If we do want versioning for these python modules, then put them into
directories that are versioned and the use PYTHONPATH as needed.
--
Ticket URL: <http://bind10.isc.org/ticket/1728>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list