diff options
Diffstat (limited to 'Examples/python/import_packages/namespace_pkg/README')
-rw-r--r-- | Examples/python/import_packages/namespace_pkg/README | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Examples/python/import_packages/namespace_pkg/README b/Examples/python/import_packages/namespace_pkg/README new file mode 100644 index 000000000..8f7297a51 --- /dev/null +++ b/Examples/python/import_packages/namespace_pkg/README @@ -0,0 +1,25 @@ + This is an example (and test) of using swig generated modules in the context +of python3's namespace packages: + +https://www.python.org/dev/peps/pep-0420/ + + Consequently, this example requires python (3.3 or newer) to build and run. + + This example creates a simple swig module named robin. The robin.py module +has a companion C module named _robin.so. The robin module is tested in four +ways: + + 1) As a non-package module (tested by nonpkg.py) + + 2) With robin.py and _robin.so in the brave package under the path1 + subdirectory. (tested by normal.py) + + 3) With robin.py in path2/brave and _robin.so in path3/brave + (tested by split.py) + + 4) With robin.py contained in a zip file (path4.zip) as brave/robin.py and + _robin.so found on the filesystem under path3/brave (tested by zipsplit.py) + +Note: Using namespace packages with subpackages (such as brave.sir.robin) where + robin.py is located in a zipfile requires python-3.5.1 or newer as + python's zipimporter only worked with packages of depth 1 until then.
\ No newline at end of file |