Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Research on this topic showed that Python's package installation is tools are still under development. A recent LWN article, Rationalizing Python packaging, describes the current roadmap.

...

  1. User downloads OpenVisualizer sdist archive, either from the Confluence wiki or from Pypi.
  2. User extracts the archive.
  3. User installs OpenVisualizer via setup.py:
       > python setup.py install 
  4. User install installs pip and setuptools if necessary.
  5. User install installs Python requirements via pip and a requirements file provided in the archive:
       > pip install -r requirements.pip

...

  • An installer seems well suited to an end-user GUI application. It would be more appropriate once we have a desktop Web UI, particularly for simulation.
  • Our users are pretty technical, and the requirement to install PyWin32 and TAP is not onerous.
  • I have never used these installers, and don't know how much work is required. In contrast, implementation of pip , we already have created the source distribution via setup.py, and addition of the pip requirements file is small and simple.

Given the state of Python package installation tools, we likely will get to a desktop UI installer, but not just yet. It's a process. (smile)

Better install/requirements documentation

...

We plan to add any necessary required Python modules to the existing, top-level requirements.pip. This file can be copied to the software/openvisualizer directory for archive creation.

Package Upgrades via pip

...

Support for upgrades

Installation via setup.py does not support upgrades. Depending on the changes in the upgrade, the user may be required to manually uninstall the current version. However, pip does support package upgrades. See the usage page.