56
« Last post by Michael on July 04, 2020, 10:08:11 AM »
Do you have a additional test machine? Or create a wpar that "copies" your /opt (rather than a namefs mount).
On that wpar - install my package of Python. I have packaged it in a way that it should co-exist with the AIX Toolbox version - just need to prefix your PATH with /opt/bin.
I am surprised about pip "breaking" as it is pure-Python.
It does not find "PackageFinder", which it seems is an internal package of setuptools and perhaps of pip internal code:
root@x070:[/opt/lib]find . -name \*.py | xargs grep -i packagefind
./python3.7/site-packages/distlib/locators.py: as pip's PackageFinder, which works in an analogous fashion.
./python3.7/site-packages/pip/_internal/build_env.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/build_env.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/cli/req_command.py:needing download / PackageFinder capability don't unnecessarily import the
./python3.7/site-packages/pip/_internal/cli/req_command.py:PackageFinder machinery and all its vendored dependencies, etc.
./python3.7/site-packages/pip/_internal/cli/req_command.py:from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/cli/req_command.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/cli/req_command.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/cli/req_command.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/cli/req_command.py: # type: (PackageFinder) -> None
./python3.7/site-packages/pip/_internal/cli/req_command.py: # type: (...) -> PackageFinder
./python3.7/site-packages/pip/_internal/cli/req_command.py: return PackageFinder.create(
./python3.7/site-packages/pip/_internal/commands/list.py:from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/commands/list.py: return PackageFinder.create(
./python3.7/site-packages/pip/_internal/distributions/base.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/distributions/base.py: # type: (PackageFinder, bool) -> None
./python3.7/site-packages/pip/_internal/distributions/installed.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/distributions/installed.py: # type: (PackageFinder, bool) -> None
./python3.7/site-packages/pip/_internal/distributions/sdist.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/distributions/sdist.py: # type: (PackageFinder, bool) -> None
./python3.7/site-packages/pip/_internal/distributions/sdist.py: # type: (PackageFinder) -> None
./python3.7/site-packages/pip/_internal/distributions/wheel.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/distributions/wheel.py: # type: (PackageFinder, bool) -> None
./python3.7/site-packages/pip/_internal/index/package_finder.py:__all__ = ['FormatControl', 'BestCandidateResult', 'PackageFinder']
./python3.7/site-packages/pip/_internal/index/package_finder.py: """A collection of candidates, returned by `PackageFinder.find_best_candidate`.
./python3.7/site-packages/pip/_internal/index/package_finder.py:class PackageFinder(object):
./python3.7/site-packages/pip/_internal/index/package_finder.py: # type: (...) -> PackageFinder
./python3.7/site-packages/pip/_internal/index/package_finder.py: """Create a PackageFinder.
./python3.7/site-packages/pip/_internal/network/session.py: # configured on this PackageFinder instance.
./python3.7/site-packages/pip/_internal/operations/prepare.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/operations/prepare.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/operations/prepare.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/req/req_file.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/req/req_file.py: finder=None, # type: Optional[PackageFinder]
./python3.7/site-packages/pip/_internal/req/req_file.py: :param finder: Instance of pip.index.PackageFinder.
./python3.7/site-packages/pip/_internal/req/req_file.py: finder=None, # type: Optional[PackageFinder]
./python3.7/site-packages/pip/_internal/req/req_file.py: finder=None, # type: Optional[PackageFinder]
./python3.7/site-packages/pip/_internal/req/req_file.py: # type: (Optional[PackageFinder]) -> LineParser
./python3.7/site-packages/pip/_internal/resolution/legacy/resolver.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/resolution/legacy/resolver.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/resolution/resolvelib/factory.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/resolution/resolvelib/factory.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/resolution/resolvelib/requirements.py: # We can safely always allow prereleases here since PackageFinder
./python3.7/site-packages/pip/_internal/resolution/resolvelib/requirements.py: # We can safely always allow prereleases here since PackageFinder
./python3.7/site-packages/pip/_internal/resolution/resolvelib/resolver.py: from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/resolution/resolvelib/resolver.py: finder, # type: PackageFinder
./python3.7/site-packages/pip/_internal/self_outdated_check.py:from pip._internal.index.package_finder import PackageFinder
./python3.7/site-packages/pip/_internal/self_outdated_check.py: # Lets use PackageFinder to see what the latest pip version is
./python3.7/site-packages/pip/_internal/self_outdated_check.py: finder = PackageFinder.create(
./python3.7/site-packages/pip/_vendor/distlib/locators.py: as pip's PackageFinder, which works in an analogous fashion.
./python3.7/site-packages/setuptools/__init__.py:class PackageFinder:
./python3.7/site-packages/setuptools/__init__.py:class PEP420PackageFinder(PackageFinder):
./python3.7/site-packages/setuptools/__init__.py:find_packages = PackageFinder.find
./python3.7/site-packages/setuptools/__init__.py: find_namespace_packages = PEP420PackageFinder.find
Again, using the WPAR approach - you could try to force re-install python3 from the AIX Toolbox (which will downgrade your installed pip, and then try "pip3 download pip", and then use the downloaded pip to upgrade your system.
Or, try downloading pip, and from the unpacked directory, use - python(3) setup.py install