From 8963fb7b69e905ba60ebd467df982a4a9816dfaa Mon Sep 17 00:00:00 2001 From: Don Cross Date: Sun, 20 Mar 2022 14:24:00 -0400 Subject: [PATCH] Hide private symbols in Python package. I realized that the way I structured the pip package in version 2.0.15 made the private symbols (those whose names begin with an underscore) to be visible by the importer. I reworked the package structure so this no longer happens. This is now fixed in: https://pypi.org/project/astronomy-engine/2.0.16/ --- source/python/.gitignore | 1 - source/python/astronomy/.gitignore | 1 + source/python/astronomy/__init__.py | 7 +++++++ source/python/publish | 5 ++--- source/python/setup.py | 2 +- 5 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 source/python/astronomy/.gitignore create mode 100644 source/python/astronomy/__init__.py diff --git a/source/python/.gitignore b/source/python/.gitignore index 6e03b6d3..fb6f6f4d 100644 --- a/source/python/.gitignore +++ b/source/python/.gitignore @@ -1,4 +1,3 @@ *.pyc astronomy_engine.egg-info/ dist/ -astronomy/__init__.py diff --git a/source/python/astronomy/.gitignore b/source/python/astronomy/.gitignore new file mode 100644 index 00000000..2f4b48fc --- /dev/null +++ b/source/python/astronomy/.gitignore @@ -0,0 +1 @@ +astronomy.py diff --git a/source/python/astronomy/__init__.py b/source/python/astronomy/__init__.py new file mode 100644 index 00000000..a51b00b1 --- /dev/null +++ b/source/python/astronomy/__init__.py @@ -0,0 +1,7 @@ +# Astronomy Engine module initializer by Don Cross . + +# Pull Astronomy Engine's public symbols into module scope. +from .astronomy import * + +# Delete the redundant nested module namespace. +del astronomy diff --git a/source/python/publish b/source/python/publish index bbfceac4..2a50ac94 100755 --- a/source/python/publish +++ b/source/python/publish @@ -1,7 +1,6 @@ #!/bin/bash -mkdir -pv astronomy || exit $? -rm -f dist/* astronomy/* -cp -v astronomy.py astronomy/__init__.py || exit $? +rm -f dist/* +cp -v astronomy.py astronomy/astronomy.py || exit $? python3 -m build || exit $? python3 -m twine upload --repository astronomy-engine dist/* || exit $? exit 0 diff --git a/source/python/setup.py b/source/python/setup.py index af7bf3e6..83103236 100644 --- a/source/python/setup.py +++ b/source/python/setup.py @@ -2,7 +2,7 @@ from setuptools import setup setup( name='astronomy-engine', - version='2.0.15', + version='2.0.16', description='Astronomy calculation for Sun, Moon, and planets.', long_description=open('README.md').read(), long_description_content_type='text/markdown',