rez 3.1.0__tar.gz → 3.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {rez-3.1.0 → rez-3.2.0}/MANIFEST.in +1 -2
- {rez-3.1.0/src/rez.egg-info → rez-3.2.0}/PKG-INFO +1 -1
- {rez-3.1.0 → rez-3.2.0}/setup.py +0 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/rez.py +1 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/build.py +3 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/env.py +14 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/pkg-cache.py +20 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/config.py +2 -0
- rez-3.2.0/src/rez/data/tests/builds/packages/testing_obj/1.0.0/build.py +24 -0
- rez-3.2.0/src/rez/data/tests/builds/packages/testing_obj/1.0.0/package.py +42 -0
- rez-3.2.0/src/rez/data/tests/builds/packages/testing_obj/1.0.0/testing_obj/__init__.py +2 -0
- rez-3.2.0/src/rez/data/tests/solver/packages/test_weakly_reference_requires/2.0/package.py +4 -0
- rez-3.2.0/src/rez/data/tests/solver/packages/test_weakly_reference_variant/2.0/package.py +6 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/deprecations.py +2 -2
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_cache.py +103 -15
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_order.py +20 -14
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_test.py +4 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/resolved_context.py +27 -9
- {rez-3.1.0 → rez-3.2.0}/src/rez/resolver.py +5 -2
- {rez-3.1.0 → rez-3.2.0}/src/rez/rezconfig.py +16 -124
- {rez-3.1.0 → rez-3.2.0}/src/rez/serialise.py +1 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/system.py +13 -9
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_build.py +1 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_completion.py +2 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_config.py +12 -7
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_context.py +20 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_package_cache.py +56 -4
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_packages.py +3 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_shells.py +16 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_solver.py +17 -0
- rez-3.2.0/src/rez/tests/test_test.py +85 -0
- rez-3.2.0/src/rez/tests/test_utils_elf.py +38 -0
- rez-3.2.0/src/rez/tests/test_utils_formatting.py +43 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/util.py +1 -22
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/_version.py +1 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/elf.py +3 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/formatting.py +6 -2
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/README.md +3 -3
- {rez-3.1.0 → rez-3.2.0/src/rez.egg-info}/PKG-INFO +1 -1
- {rez-3.1.0 → rez-3.2.0}/src/rez.egg-info/SOURCES.txt +29 -40
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/package_repository/filesystem.py +3 -1
- rez-3.1.0/src/rezplugins/package_repository/rezconfig → rez-3.2.0/src/rezplugins/package_repository/rezconfig.py +15 -10
- rez-3.1.0/src/rezplugins/release_hook/rezconfig → rez-3.2.0/src/rezplugins/release_hook/rezconfig.py +48 -41
- rez-3.2.0/src/rezplugins/release_vcs/rezconfig.py +47 -0
- rez-3.2.0/src/rezplugins/shell/_utils/__init__.py +2 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/_utils/powershell_base.py +3 -24
- rez-3.2.0/src/rezplugins/shell/_utils/windows.py +70 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/gitbash.py +1 -1
- rez-3.2.0/src/rezplugins/shell/rezconfig.py +45 -0
- rez-3.1.0/src/rez/vendor/yaml/__init__.py +0 -11
- rez-3.1.0/src/rez/vendor/yaml/lib/__init__.py +0 -406
- rez-3.1.0/src/rez/vendor/yaml/lib/composer.py +0 -139
- rez-3.1.0/src/rez/vendor/yaml/lib/constructor.py +0 -709
- rez-3.1.0/src/rez/vendor/yaml/lib/cyaml.py +0 -101
- rez-3.1.0/src/rez/vendor/yaml/lib/dumper.py +0 -62
- rez-3.1.0/src/rez/vendor/yaml/lib/emitter.py +0 -1144
- rez-3.1.0/src/rez/vendor/yaml/lib/error.py +0 -75
- rez-3.1.0/src/rez/vendor/yaml/lib/loader.py +0 -63
- rez-3.1.0/src/rez/vendor/yaml/lib/parser.py +0 -589
- rez-3.1.0/src/rez/vendor/yaml/lib/reader.py +0 -188
- rez-3.1.0/src/rez/vendor/yaml/lib/representer.py +0 -488
- rez-3.1.0/src/rez/vendor/yaml/lib/resolver.py +0 -227
- rez-3.1.0/src/rez/vendor/yaml/lib/scanner.py +0 -1444
- rez-3.1.0/src/rez/vendor/yaml/lib/serializer.py +0 -111
- rez-3.1.0/src/rez/vendor/yaml/lib3/events.py +0 -86
- rez-3.1.0/src/rez/vendor/yaml/lib3/nodes.py +0 -49
- rez-3.1.0/src/rez/vendor/yaml/lib3/tokens.py +0 -104
- rez-3.1.0/src/rezplugins/build_process/rezconfig +0 -0
- rez-3.1.0/src/rezplugins/build_system/rezconfig +0 -21
- rez-3.1.0/src/rezplugins/release_vcs/rezconfig +0 -3
- rez-3.1.0/src/rezplugins/shell/_utils/windows.py +0 -110
- rez-3.1.0/src/rezplugins/shell/rezconfig +0 -40
- {rez-3.1.0 → rez-3.2.0}/LICENSE +0 -0
- {rez-3.1.0 → rez-3.2.0}/README.md +0 -0
- {rez-3.1.0 → rez-3.2.0}/pyproject.toml +0 -0
- {rez-3.1.0 → rez-3.2.0}/setup.cfg +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/PyQt.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/PySide.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/_pymodule.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/arch.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/cmake.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/gcc.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/hello_world.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/os.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/pip.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/platform.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/python.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/rezgui.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/setuptools.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bind/sip.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/build_process.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/build_system.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/bundle_context.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/README.md +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/_complete_util.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/_entry_points.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/_main.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/_util.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/benchmark.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/bind.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/bundle.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/complete.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/config.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/context.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/cp.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/depends.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/diff.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/forward.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/gui.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/help.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/interpret.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/memcache.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/mv.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/pip.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/pkg-ignore.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/plugins.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/python.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/release.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/rm.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/search.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/selftest.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/status.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/suite.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/test.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/view.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/cli/yaml2py.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/command.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/completion/complete.csh +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/completion/complete.sh +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/completion/complete.zsh +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/benchmarking/packages.tar.gz +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/benchmarking/requests.json +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/bind/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/bind/os.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/anti/1.0.0/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/anti/1.0.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/bah/2.1/bah/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/bah/2.1/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/bah/2.1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/build_util/1/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/build_util/1/build_util/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/build_util/1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/floob/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/floob/floob/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/floob/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/foo/1.0.0/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/foo/1.0.0/foo/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/foo/1.0.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/foo/1.1.0/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/foo/1.1.0/foo/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/foo/1.1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/hello/1.0/Makefile +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/hello/1.0/lib/main.cpp +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/hello/1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/loco/3/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/loco/3/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/sup_world/3.8/CMakeLists.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/sup_world/3.8/lib/CMakeLists.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/sup_world/3.8/lib/spanish_greet.cpp +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/sup_world/3.8/lib/spanish_greet.h +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/sup_world/3.8/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/sup_world/3.8/util/CMakeLists.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/sup_world/3.8/util/main.cpp +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/CMakeLists.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/docs/a spaced document +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/docs/an_unspaced_document +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/src/lolTranslator.cpp +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/src/lolTranslator.h +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/src/spanishTranslator.cpp +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/src/spanishTranslator.h +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/src/translator.cpp +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/translate_lib/2.2.0/src/translator.h +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/whack/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/builds/packages/whack/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/commands/packages/rextest/1.1/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/commands/packages/rextest/1.2/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/commands/packages/rextest/1.3/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/commands/packages/rextest2/2/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/config/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/config/test1.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/config/test2.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/bar/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/bar/rezplugins/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/bar/rezplugins/package_repository/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/bar/rezplugins/package_repository/memory.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/foo/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/foo/rezplugins/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/foo/rezplugins/package_repository/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/foo/rezplugins/package_repository/cloud.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/non-mod/rezplugins/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/non-mod/rezplugins/package_repository/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/extensions/non-mod/rezplugins/package_repository/memory.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/developer/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/developer_changed/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/developer_dynamic_global_preprocess/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/developer_dynamic_local_preprocess/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/developer_dynamic_local_preprocess_additive/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/developer_novar/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/developer_novar_changed/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/empty/README.md +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/late_binding/1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/multi.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/single_unversioned.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/single_versioned.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/1.0.5/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/1.0.6/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/1.1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/1.1.1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/1.2.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/1.2.0/stuff.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/2.0.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/2.1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/timestamped/2.1.5/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/unversioned_py/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/variants_py/2.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/versioned/2.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/py_packages/versioned/3.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/yaml_packages/multi.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/yaml_packages/single_unversioned.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/yaml_packages/single_versioned.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/yaml_packages/unversioned/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/yaml_packages/versioned/1.0/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/packages/yaml_packages/versioned/2.0/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/pip/installed_distributions/six-1.12.0.dist-info/INSTALLER +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/pip/installed_distributions/six-1.12.0.dist-info/LICENSE +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/pip/installed_distributions/six-1.12.0.dist-info/METADATA +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/pip/installed_distributions/six-1.12.0.dist-info/RECORD +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/pip/installed_distributions/six-1.12.0.dist-info/WHEEL +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/pip/installed_distributions/six-1.12.0.dist-info/top_level.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/python/early_bind/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/python/early_bind/early_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/python/late_bind/late_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/python/preprocess/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/python/preprocess/global_preprocess.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/release/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/release/data/data.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/release/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/release/variants/build.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/release/variants/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/release/variants/spangle/1.0/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/release/variants/spangle/1.1/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/release/variants/spangle/2.0/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/README +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/bahish/1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/bahish/2/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/missing_variant_requires/1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/nada/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/nopy/2.1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pybah/4/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pybah/5/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pydad/1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pydad/2/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pydad/3/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pyfoo/3.0.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pyfoo/3.1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pymum/1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pymum/2/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pymum/3/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pyodd/1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pyodd/2/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pyson/1/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pyson/2/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pysplit/5/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pysplit/6/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pysplit/7/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/python/2.5.2/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/python/2.6.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/python/2.6.8/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/python/2.7.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/pyvariants/2/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_end/1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_end/2.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_end/3.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_end/4.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_mid1/1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_mid1/2.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_mid2/1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_mid2/2.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_start/1.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/solver/packages/test_variant_split_start/2.0/package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/suites/packages/bah/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/suites/packages/eek/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/suites/packages/foo/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/suites/packages/pooh/bin/hunny +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/suites/packages/pooh/bin/hunny.bat +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/data/tests/suites/packages/pooh/package.yaml +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/developer_package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/exceptions.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_bind.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_copy.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_filter.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_help.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_maker.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_move.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_py_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_remove.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_repository.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_resources.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_search.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/package_serialise.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/packages.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/pip.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/plugin_managers.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/release_hook.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/release_vcs.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/rex.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/rex_bindings.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/shells.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/solver.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/status.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/suite.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/README +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_bind.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_cli.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_commands.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_copy_package.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_formatter.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_imports.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_package_filter.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_packages_order.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_pip_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_plugin_manager.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_release.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_resources_.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_rex.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_schema.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_suites.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_util.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_utils_filesystem.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_utils_resolve_graph.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/tests/test_version.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/util.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/amqp.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/backcompat.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/base26.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/colorize.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/data_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/diff_packages.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/execution.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/filesystem.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/graph_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/installer.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/lint_helper.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/logging_.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/memcached.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/patching.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/pip.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/platform_.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/platform_mapped.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/py_dist.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/resolve_graph.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/resources.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/schema.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/scope.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/sourcecode.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/which.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/utils/yaml.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/argcomplete/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/argcomplete/completers.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/argcomplete/my_argparse.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/argcomplete/my_shlex.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/atomicwrites/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/__init__.pyi +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/_compat.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/_config.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/_funcs.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/_make.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/converters.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/converters.pyi +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/exceptions.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/exceptions.pyi +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/filters.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/filters.pyi +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/py.typed +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/validators.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/attr/validators.pyi +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/ansi.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/ansitowin32.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/initialise.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/tests/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/tests/ansi_test.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/tests/ansitowin32_test.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/tests/initialise_test.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/tests/isatty_test.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/tests/utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/tests/winterm_test.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/win32.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/colorama/winterm.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/_backport/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/_backport/misc.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/_backport/shutil.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/_backport/sysconfig.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/_backport/tarfile.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/compat.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/database.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/index.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/locators.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/manifest.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/markers.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/metadata.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/resources.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/scripts.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/t32.exe +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/t64.exe +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/util.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/version.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/w32.exe +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/w64.exe +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distlib/wheel.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distro/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/distro/distro.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/enum/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/enum/enum.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/lockfile/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/lockfile/linklockfile.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/lockfile/mkdirlockfile.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/lockfile/pidlockfile.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/lockfile/sqlitelockfile.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/lockfile/symlinklockfile.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/memcache/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/memcache/memcache.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/__about__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/_compat.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/_structures.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/markers.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/requirements.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/specifiers.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/packaging/version.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/asyncio_connection.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/base_connection.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/blocking_connection.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/select_connection.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/utils/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/utils/connection_workflow.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/utils/io_services_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/utils/nbio_interface.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/adapters/utils/selector_ioloop_adapter.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/amqp_object.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/callback.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/channel.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/compat.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/connection.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/credentials.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/data.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/delivery_mode.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/diagnostic_utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/exceptions.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/exchange_type.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/frame.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/heartbeat.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/spec.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/tcp_socket_opts.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pika/validators.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/progress/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/progress/bar.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/progress/counter.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/progress/helpers.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/progress/spinner.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pydot/README +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pydot/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pydot/dot_parser.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pydot/pydot.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/accessibility.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/critical.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/cycles.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/filters/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/filters/find.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/filters/null.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/filters/radius.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/generators.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/heuristics/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/heuristics/chow.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/heuristics/euclidean.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/minmax.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/pagerank.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/searching.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/sorting.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/traversal.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/algorithms/utils.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/classes/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/classes/digraph.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/classes/exceptions.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/classes/graph.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/classes/hypergraph.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/mixins/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/mixins/basegraph.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/mixins/common.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/mixins/labeling.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/readwrite/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/readwrite/dot.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pygraph/readwrite/markup.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pyparsing/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/pyparsing/pyparsing.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/schema/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/schema/schema.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/schema/test_schema.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/six/README +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/six/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/vendor/six/six.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/__init__.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/composer.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/constructor.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/cyaml.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/dumper.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/emitter.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/error.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib → rez-3.2.0/src/rez/vendor/yaml}/events.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/loader.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib → rez-3.2.0/src/rez/vendor/yaml}/nodes.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/parser.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/reader.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/representer.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/resolver.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/scanner.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib3 → rez-3.2.0/src/rez/vendor/yaml}/serializer.py +0 -0
- {rez-3.1.0/src/rez/vendor/yaml/lib → rez-3.2.0/src/rez/vendor/yaml}/tokens.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/version/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/version/_requirement.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/version/_util.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/version/_version.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez/wrapper.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez.egg-info/dependency_links.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez.egg-info/entry_points.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez.egg-info/not-zip-safe +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rez.egg-info/top_level.txt +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/app.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/dialogs/AboutDialog.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/dialogs/BrowsePackageDialog.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/dialogs/ImageViewerDialog.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/dialogs/ProcessDialog.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/dialogs/ResolveDialog.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/dialogs/VariantVersionsDialog.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/dialogs/WriteGraphDialog.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/dialogs/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/advanced_resolve.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/changelog.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/clock.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/clock_warning.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/cog.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/context.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/context_settings.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/depends.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/diff.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/diff_to_disk.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/diff_to_other.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/equal_to.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/equalish.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/error.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/excluded.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/find.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/github_32.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/graph.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/greater_than.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/greater_than_1.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/greater_than_2.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/greater_than_3.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/green_tick.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/green_white_tick.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/help.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/info.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/less_than.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/less_than_1.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/less_than_2.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/less_than_3.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/local.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/lock.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/lock_2.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/lock_2_faint.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/lock_3.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/lock_3_faint.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/lock_4.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/lock_4_faint.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/lock_faint.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/missing.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/new.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/no_lock.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/no_lock_faint.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/old_man.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/package.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/pink.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/resolve.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/revert.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/revert_to_diff.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/revert_to_disk.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/spanner.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/terminal.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/time_lock.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/tools.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/variant.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/versions.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/warning.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/yellow_tick.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/icons/yellow_white_tick.png +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/mixins/ContextViewMixin.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/mixins/StoreSizeMixin.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/mixins/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/models/ContextModel.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/models/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/objects/App.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/objects/Config.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/objects/LoadPackagesThread.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/objects/ProcessTrackerThread.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/objects/ResolveThread.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/objects/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/rezguiconfig +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/util.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/BrowsePackagePane.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/BrowsePackageWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ChangelogEdit.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ConfiguredSplitter.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ContextDetailsWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ContextEnvironTable.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ContextEnvironWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ContextManagerWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ContextResolveTimeLabel.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ContextSettingsWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ContextTableWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ContextToolsWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/EffectivePackageCellWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/FindPopup.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/IconButton.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ImageViewerWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/PackageLineEdit.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/PackageLoadingWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/PackageSelectWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/PackageTabWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/PackageVersionsTable.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/SearchableTextEdit.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/StreamableTextEdit.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/TimeSelecterPopup.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/TimestampWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ToolWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/VariantCellWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/VariantDetailsWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/VariantHelpWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/VariantSummaryWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/VariantToolsList.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/VariantVersionsTable.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/VariantVersionsWidget.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/VariantsList.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/ViewGraphButton.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/widgets/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/windows/BrowsePackageSubWindow.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/windows/ContextSubWindow.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/windows/MainWindow.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezgui/windows/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_process/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_process/local.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_process/remote.py +0 -0
- /rez-3.1.0/src/rezplugins/shell/_utils/__init__.py → /rez-3.2.0/src/rezplugins/build_process/rezconfig.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/Colorize.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/FindStaticLibs.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/InstallDirs.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/InstallFiles.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/InstallPython.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezBuild.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezFindPackages.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezInstallCMake.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezInstallContext.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezInstallDoxygen.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezInstallPython.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezPipInstall.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezProject.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/RezRepository.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/cmake_files/Utils.cmake +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/custom.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/make.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/rezconfig.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/build_system/template_files/Doxyfile +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/command/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/package_repository/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/package_repository/memory.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_hook/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_hook/amqp.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_hook/command.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_hook/emailer.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_vcs/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_vcs/git.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_vcs/hg.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_vcs/stub.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/release_vcs/svn.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/__init__.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/bash.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/cmd.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/csh.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/powershell.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/pwsh.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/sh.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/tcsh.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/src/rezplugins/shell/zsh.py +0 -0
- {rez-3.1.0 → rez-3.2.0}/tests/test.py +0 -0
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
include src/rez/data/*
|
|
2
|
-
include src/rez/rezconfig
|
|
3
2
|
include src/rez/completion/*
|
|
4
3
|
include src/rez/vendor/distlib/*.exe
|
|
5
4
|
include src/rezgui/rezguiconfig
|
|
6
5
|
include src/rezgui/icons/*
|
|
7
6
|
recursive-include src/rez README*
|
|
8
|
-
recursive-include src/rezplugins *.cmake Doxyfile
|
|
7
|
+
recursive-include src/rezplugins *.cmake Doxyfile
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: rez
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.2.0
|
|
4
4
|
Summary: A cross-platform packaging system that can build and install multiple version of packages, and dynamically configure resolved environments at runtime.
|
|
5
5
|
Home-page: https://github.com/AcademySoftwareFoundation/rez
|
|
6
6
|
Author: Allan Johns
|
{rez-3.1.0 → rez-3.2.0}/setup.py
RENAMED
|
@@ -76,7 +76,6 @@ setup(
|
|
|
76
76
|
find_files('*', 'data') +
|
|
77
77
|
find_files('*.exe', 'vendor/distlib'),
|
|
78
78
|
'rezplugins':
|
|
79
|
-
find_files('rezconfig', root='rezplugins') +
|
|
80
79
|
find_files('*.cmake', 'build_system', root='rezplugins') +
|
|
81
80
|
find_files('*', 'build_system/template_files', root='rezplugins'),
|
|
82
81
|
'rezgui':
|
|
@@ -34,7 +34,7 @@ def bind(path, version_range=None, opts=None, parser=None):
|
|
|
34
34
|
with make_package("rez", path, make_root=make_root) as pkg:
|
|
35
35
|
pkg.version = version
|
|
36
36
|
pkg.commands = commands
|
|
37
|
-
pkg.requires = ["python-
|
|
37
|
+
pkg.requires = ["python-3.7+<3.12"]
|
|
38
38
|
pkg.variants = [system.variant]
|
|
39
39
|
|
|
40
40
|
return pkg.installed_variants
|
|
@@ -30,11 +30,13 @@ def setup_parser_common(parser):
|
|
|
30
30
|
"""Parser setup common to both rez-build and rez-release."""
|
|
31
31
|
from rez.build_process import get_build_process_types
|
|
32
32
|
from rez.build_system import get_valid_build_systems
|
|
33
|
+
from rez.config import config
|
|
33
34
|
from rez.exceptions import PackageMetadataError
|
|
34
35
|
|
|
35
36
|
process_types = get_build_process_types()
|
|
36
37
|
parser.add_argument(
|
|
37
|
-
"--process", type=str, choices=process_types,
|
|
38
|
+
"--process", type=str, choices=process_types,
|
|
39
|
+
default=config.default_build_process,
|
|
38
40
|
help="the build process to use (default: %(default)s).")
|
|
39
41
|
|
|
40
42
|
# add build system choices valid for this package
|
|
@@ -119,6 +119,11 @@ def setup_parser(parser, completions=False):
|
|
|
119
119
|
parser.add_argument(
|
|
120
120
|
"--no-pkg-cache", action="store_true",
|
|
121
121
|
help="Disable package caching")
|
|
122
|
+
parser.add_argument(
|
|
123
|
+
"--pkg-cache-mode", choices=["sync", "async"],
|
|
124
|
+
help="If provided, override the rezconfig's package_cache_async key. "
|
|
125
|
+
"If 'sync', the process will block until packages are cached. "
|
|
126
|
+
"If 'async', the process will not block while packages are cached.")
|
|
122
127
|
parser.add_argument(
|
|
123
128
|
"--pre-command", type=str, help=SUPPRESS)
|
|
124
129
|
PKG_action = parser.add_argument(
|
|
@@ -201,6 +206,13 @@ def command(opts, parser, extra_arg_groups=None):
|
|
|
201
206
|
rule = Rule.parse_rule(rule_str)
|
|
202
207
|
package_filter.add_inclusion(rule)
|
|
203
208
|
|
|
209
|
+
if opts.pkg_cache_mode == "async":
|
|
210
|
+
package_cache_mode = True
|
|
211
|
+
elif opts.pkg_cache_mode == "sync":
|
|
212
|
+
package_cache_mode = False
|
|
213
|
+
else:
|
|
214
|
+
package_cache_mode = None
|
|
215
|
+
|
|
204
216
|
# perform the resolve
|
|
205
217
|
context = ResolvedContext(
|
|
206
218
|
package_requests=request,
|
|
@@ -215,7 +227,8 @@ def command(opts, parser, extra_arg_groups=None):
|
|
|
215
227
|
caching=(not opts.no_cache),
|
|
216
228
|
suppress_passive=opts.no_passive,
|
|
217
229
|
print_stats=opts.stats,
|
|
218
|
-
package_caching=(not opts.no_pkg_cache)
|
|
230
|
+
package_caching=(not opts.no_pkg_cache),
|
|
231
|
+
package_cache_async=package_cache_mode,
|
|
219
232
|
)
|
|
220
233
|
|
|
221
234
|
success = (context.status == ResolverStatus.solved)
|
|
@@ -41,6 +41,14 @@ def setup_parser(parser, completions=False):
|
|
|
41
41
|
group.add_argument(
|
|
42
42
|
"--daemon", action="store_true", help=SUPPRESS
|
|
43
43
|
)
|
|
44
|
+
parser.add_argument(
|
|
45
|
+
"--pkg-cache-mode",
|
|
46
|
+
choices=["sync", "async"],
|
|
47
|
+
default=None,
|
|
48
|
+
help="If provided, override the rezconfig's package_cache_async key. "
|
|
49
|
+
"If 'sync', the process will block until packages are cached. "
|
|
50
|
+
"If 'async', the process will not block while packages are cached."
|
|
51
|
+
)
|
|
44
52
|
parser.add_argument(
|
|
45
53
|
"-c", "--columns", nargs='+', choices=column_choices,
|
|
46
54
|
default=["status", "package", "variant_uri", "cache_path"],
|
|
@@ -59,6 +67,7 @@ def setup_parser(parser, completions=False):
|
|
|
59
67
|
|
|
60
68
|
|
|
61
69
|
def add_variant(pkgcache, uri, opts):
|
|
70
|
+
from rez.config import config
|
|
62
71
|
from rez.packages import get_variant_from_uri
|
|
63
72
|
from rez.utils.logging_ import print_info, print_warning
|
|
64
73
|
from rez.package_cache import PackageCache
|
|
@@ -70,7 +79,17 @@ def add_variant(pkgcache, uri, opts):
|
|
|
70
79
|
print("No such variant: %s" % uri, file=sys.stderr)
|
|
71
80
|
sys.exit(1)
|
|
72
81
|
|
|
73
|
-
|
|
82
|
+
if opts.pkg_cache_mode == "async":
|
|
83
|
+
sync = False
|
|
84
|
+
elif opts.pkg_cache_mode == "sync":
|
|
85
|
+
sync = True
|
|
86
|
+
else:
|
|
87
|
+
sync = not config.package_cache_async
|
|
88
|
+
|
|
89
|
+
destpath, status = pkgcache.add_variant(
|
|
90
|
+
variant, force=opts.force,
|
|
91
|
+
wait_for_copying=sync
|
|
92
|
+
)
|
|
74
93
|
|
|
75
94
|
if status == PackageCache.VARIANT_FOUND:
|
|
76
95
|
print_info("Already exists: %s", destpath)
|
|
@@ -397,6 +397,7 @@ config_schema = Schema({
|
|
|
397
397
|
"release_packages_path": Str,
|
|
398
398
|
"dot_image_format": Str,
|
|
399
399
|
"build_directory": Str,
|
|
400
|
+
"default_build_process": Str,
|
|
400
401
|
"documentation_url": Str,
|
|
401
402
|
"suite_visibility": SuiteVisibility_,
|
|
402
403
|
"rez_tools_visibility": RezToolsVisibility_,
|
|
@@ -453,6 +454,7 @@ config_schema = Schema({
|
|
|
453
454
|
"package_cache_during_build": Bool,
|
|
454
455
|
"package_cache_local": Bool,
|
|
455
456
|
"package_cache_same_device": Bool,
|
|
457
|
+
"package_cache_async": Bool,
|
|
456
458
|
"color_enabled": ForceOrBool,
|
|
457
459
|
"resolve_caching": Bool,
|
|
458
460
|
"cache_package_files": Bool,
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
from build_util import build_directory_recurse
|
|
2
|
+
import os.path
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
def build(source_path, build_path, install_path, targets):
|
|
6
|
+
|
|
7
|
+
if "install" not in (targets or []):
|
|
8
|
+
install_path = None
|
|
9
|
+
|
|
10
|
+
build_directory_recurse(src_dir="testing_obj",
|
|
11
|
+
dest_dir=os.path.join("python", "testing_obj"),
|
|
12
|
+
source_path=source_path,
|
|
13
|
+
build_path=build_path,
|
|
14
|
+
install_path=install_path)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
if __name__ == '__main__':
|
|
18
|
+
import os, sys
|
|
19
|
+
build(
|
|
20
|
+
source_path=os.environ['REZ_BUILD_SOURCE_PATH'],
|
|
21
|
+
build_path=os.environ['REZ_BUILD_PATH'],
|
|
22
|
+
install_path=os.environ['REZ_BUILD_INSTALL_PATH'],
|
|
23
|
+
targets=sys.argv[1:]
|
|
24
|
+
)
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
name = 'testing obj'
|
|
2
|
+
version = '1.0.0'
|
|
3
|
+
authors = ["Dan Flashes"]
|
|
4
|
+
|
|
5
|
+
description = "testing the 'testing' attribute available during rez test"
|
|
6
|
+
|
|
7
|
+
@late()
|
|
8
|
+
def requires():
|
|
9
|
+
if in_context() and testing:
|
|
10
|
+
return ["floob"]
|
|
11
|
+
return ["hello"]
|
|
12
|
+
|
|
13
|
+
private_build_requires = ["build_util", "python"]
|
|
14
|
+
|
|
15
|
+
def commands():
|
|
16
|
+
env.PYTHONPATH.append('{root}/python')
|
|
17
|
+
if testing:
|
|
18
|
+
env.CAR_IDEA = "STURDY STEERING WHEEL"
|
|
19
|
+
else:
|
|
20
|
+
env.SKIP_LUNCH = "False"
|
|
21
|
+
|
|
22
|
+
build_command = 'python {root}/build.py {install}'
|
|
23
|
+
|
|
24
|
+
tests = {
|
|
25
|
+
"command_as_string_success": {
|
|
26
|
+
"command": "exit 0"
|
|
27
|
+
},
|
|
28
|
+
"command_as_string_fail": {
|
|
29
|
+
"command": "exit 1"
|
|
30
|
+
},
|
|
31
|
+
"check_car_ideas": {
|
|
32
|
+
"command": ["python", "-c", "import os; assert os.environ.get('CAR_IDEA') == 'STURDY STEERING WHEEL'"],
|
|
33
|
+
"requires": ["python"]
|
|
34
|
+
},
|
|
35
|
+
"move_meeting_to_noon": {
|
|
36
|
+
# We want this test to fail. SKIP_LUNCH should not be set.
|
|
37
|
+
# TODO: We should not test for failures here. Testing failures, str vs lsit commands, etc
|
|
38
|
+
# should we tested separately.
|
|
39
|
+
"command": ["python", "-c", "import os; assert os.environ.get('SKIP_LUNCH') is not None"],
|
|
40
|
+
"requires": ["python"]
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -7,12 +7,12 @@ import warnings
|
|
|
7
7
|
|
|
8
8
|
def warn(message, category, pre_formatted=False, stacklevel=1, filename=None, **kwargs):
|
|
9
9
|
"""
|
|
10
|
-
Wrapper around warnings.warn that allows to
|
|
10
|
+
Wrapper around warnings.warn that allows to pass a pre-formatter
|
|
11
11
|
warning message. This allows to warn about things that aren't coming
|
|
12
12
|
from python files, like environment variables, etc.
|
|
13
13
|
"""
|
|
14
14
|
if not pre_formatted:
|
|
15
|
-
|
|
15
|
+
warnings.warn(
|
|
16
16
|
message, category=category, stacklevel=stacklevel + 1, **kwargs
|
|
17
17
|
)
|
|
18
18
|
return
|
|
@@ -22,6 +22,7 @@ from contextlib import contextmanager
|
|
|
22
22
|
from rez.config import config
|
|
23
23
|
from rez.exceptions import PackageCacheError
|
|
24
24
|
from rez.vendor.lockfile import LockFile, NotLocked
|
|
25
|
+
from rez.vendor.progress.spinner import PixelSpinner
|
|
25
26
|
from rez.utils.filesystem import safe_listdir, safe_makedirs, safe_remove, \
|
|
26
27
|
forceful_rmtree
|
|
27
28
|
from rez.utils.colorize import ColorizedStreamHandler
|
|
@@ -70,6 +71,18 @@ class PackageCache(object):
|
|
|
70
71
|
VARIANT_PENDING = 5 #: Variant is pending caching
|
|
71
72
|
VARIANT_REMOVED = 6 #: Variant was deleted
|
|
72
73
|
|
|
74
|
+
STATUS_DESCRIPTIONS = {
|
|
75
|
+
VARIANT_NOT_FOUND: "was not found",
|
|
76
|
+
VARIANT_FOUND: "was found",
|
|
77
|
+
VARIANT_CREATED: "was created",
|
|
78
|
+
VARIANT_COPYING: "payload is still being copied to this cache",
|
|
79
|
+
VARIANT_COPY_STALLED: "payload copy has stalled.\nSee "
|
|
80
|
+
"https://rez.readthedocs.io/en/stable/caching.html#cleaning-the-cache "
|
|
81
|
+
"for more information.",
|
|
82
|
+
VARIANT_PENDING: "is pending caching",
|
|
83
|
+
VARIANT_REMOVED: "was deleted",
|
|
84
|
+
}
|
|
85
|
+
|
|
73
86
|
_FILELOCK_TIMEOUT = 10
|
|
74
87
|
_COPYING_TIME_INC = 0.2
|
|
75
88
|
_COPYING_TIME_MAX = 5.0
|
|
@@ -117,7 +130,7 @@ class PackageCache(object):
|
|
|
117
130
|
|
|
118
131
|
return rootpath
|
|
119
132
|
|
|
120
|
-
def add_variant(self, variant, force=False):
|
|
133
|
+
def add_variant(self, variant, force=False, wait_for_copying=False, logger=None):
|
|
121
134
|
"""Copy a variant's payload into the cache.
|
|
122
135
|
|
|
123
136
|
The following steps are taken to ensure muti-thread/proc safety, and to
|
|
@@ -148,6 +161,9 @@ class PackageCache(object):
|
|
|
148
161
|
variant (Variant): The variant to copy into this cache
|
|
149
162
|
force (bool): Copy the variant regardless. Use at your own risk (there
|
|
150
163
|
is no guarantee the resulting variant payload will be functional).
|
|
164
|
+
wait_for_copying (bool): Whether the caching step should block when one of the
|
|
165
|
+
pending variants is marked as already copying.
|
|
166
|
+
logger (None | Logger): If a logger is provided, log information to it.
|
|
151
167
|
|
|
152
168
|
Returns:
|
|
153
169
|
tuple: 2-tuple:
|
|
@@ -208,15 +224,40 @@ class PackageCache(object):
|
|
|
208
224
|
% package.repository
|
|
209
225
|
)
|
|
210
226
|
|
|
211
|
-
no_op_statuses =
|
|
227
|
+
no_op_statuses = {
|
|
212
228
|
self.VARIANT_FOUND,
|
|
213
|
-
self.
|
|
214
|
-
|
|
215
|
-
|
|
229
|
+
self.VARIANT_COPY_STALLED,
|
|
230
|
+
}
|
|
231
|
+
if not wait_for_copying:
|
|
232
|
+
# Copying variants are only no-ops if we want to ignore them.
|
|
233
|
+
no_op_statuses.add(self.VARIANT_COPYING)
|
|
216
234
|
|
|
217
235
|
# variant already exists, or is being copied to cache by another thread/proc
|
|
218
236
|
status, rootpath = self._get_cached_root(variant)
|
|
219
237
|
if status in no_op_statuses:
|
|
238
|
+
if logger:
|
|
239
|
+
logger.warning(f"Not caching {variant.qualified_name}. "
|
|
240
|
+
f"Variant {self.STATUS_DESCRIPTIONS[status]}")
|
|
241
|
+
return (rootpath, status)
|
|
242
|
+
|
|
243
|
+
if wait_for_copying and status == self.VARIANT_COPYING:
|
|
244
|
+
spinner = PixelSpinner(f"Waiting for {variant.qualified_name} to finish copying. ")
|
|
245
|
+
while status == self.VARIANT_COPYING:
|
|
246
|
+
spinner.next()
|
|
247
|
+
time.sleep(self._COPYING_TIME_INC)
|
|
248
|
+
status, rootpath = self._get_cached_root(variant)
|
|
249
|
+
|
|
250
|
+
# Status has changed, so report the change and return
|
|
251
|
+
if logger:
|
|
252
|
+
if status == self.VARIANT_FOUND:
|
|
253
|
+
# We have resolved into a satisfactory state
|
|
254
|
+
logger.info(
|
|
255
|
+
f"{variant.qualified_name} {self.STATUS_DESCRIPTIONS[status]}"
|
|
256
|
+
)
|
|
257
|
+
else:
|
|
258
|
+
logger.warning(
|
|
259
|
+
f"{variant.qualified_name} {self.STATUS_DESCRIPTIONS[status]}"
|
|
260
|
+
)
|
|
220
261
|
return (rootpath, status)
|
|
221
262
|
|
|
222
263
|
# 1.
|
|
@@ -365,20 +406,39 @@ class PackageCache(object):
|
|
|
365
406
|
|
|
366
407
|
This method is called when a context is created or sourced. Variants
|
|
367
408
|
are then added to the cache in a separate process.
|
|
409
|
+
|
|
410
|
+
.. deprecated:: 3.2.0
|
|
411
|
+
Use :method:`add_variants` instead.
|
|
368
412
|
"""
|
|
413
|
+
return self.add_variants(variants, package_cache_async=True)
|
|
369
414
|
|
|
370
|
-
|
|
415
|
+
def add_variants(self, variants, package_cache_async=True):
|
|
416
|
+
"""Add the given variants to the package payload cache.
|
|
417
|
+
"""
|
|
418
|
+
|
|
419
|
+
# A prod install is necessary because add_variants works by
|
|
371
420
|
# starting a rez-pkg-cache proc, and this can only be done reliably in
|
|
372
421
|
# a prod install. On non-windows we could fork instead, but there would
|
|
373
422
|
# remain no good solution on windows.
|
|
374
423
|
#
|
|
375
424
|
if not system.is_production_rez_install:
|
|
376
425
|
raise PackageCacheError(
|
|
377
|
-
"PackageCache.
|
|
426
|
+
"PackageCache.add_variants is only supported in a "
|
|
378
427
|
"production rez installation."
|
|
379
428
|
)
|
|
380
429
|
|
|
381
430
|
variants_ = []
|
|
431
|
+
cachable_statuses = {
|
|
432
|
+
self.VARIANT_NOT_FOUND,
|
|
433
|
+
}
|
|
434
|
+
if not package_cache_async:
|
|
435
|
+
# We want to monitor copying variants if we're synchronous.
|
|
436
|
+
# We also want to report that a status has been stalled, so we'll
|
|
437
|
+
# hand that off to the caching function as well
|
|
438
|
+
cachable_statuses.update({
|
|
439
|
+
self.VARIANT_COPYING,
|
|
440
|
+
self.VARIANT_COPY_STALLED,
|
|
441
|
+
})
|
|
382
442
|
|
|
383
443
|
# trim down to those variants that are cachable, and not already cached
|
|
384
444
|
for variant in variants:
|
|
@@ -386,7 +446,7 @@ class PackageCache(object):
|
|
|
386
446
|
continue
|
|
387
447
|
|
|
388
448
|
status, _ = self._get_cached_root(variant)
|
|
389
|
-
if status
|
|
449
|
+
if status in cachable_statuses:
|
|
390
450
|
variants_.append(variant)
|
|
391
451
|
|
|
392
452
|
# if there are no variants to add, and no potential cleanup to do, then exit
|
|
@@ -427,6 +487,20 @@ class PackageCache(object):
|
|
|
427
487
|
with open(filepath, 'w') as f:
|
|
428
488
|
f.write(json.dumps(handle_dict))
|
|
429
489
|
|
|
490
|
+
if package_cache_async:
|
|
491
|
+
self._subprocess_package_caching_daemon(self.path)
|
|
492
|
+
else:
|
|
493
|
+
# syncronous caching
|
|
494
|
+
self._run_caching_operation(wait_for_copying=True)
|
|
495
|
+
|
|
496
|
+
@staticmethod
|
|
497
|
+
def _subprocess_package_caching_daemon(path):
|
|
498
|
+
"""
|
|
499
|
+
Run the package cache in a daemon process
|
|
500
|
+
|
|
501
|
+
Returns:
|
|
502
|
+
subprocess.Popen : The package caching daemon process
|
|
503
|
+
"""
|
|
430
504
|
# configure executable
|
|
431
505
|
if platform.system() == "Windows":
|
|
432
506
|
kwargs = {
|
|
@@ -443,7 +517,7 @@ class PackageCache(object):
|
|
|
443
517
|
raise RuntimeError("Did not find rez-pkg-cache executable")
|
|
444
518
|
|
|
445
519
|
# start caching subproc
|
|
446
|
-
args = [exe, "--daemon",
|
|
520
|
+
args = [exe, "--daemon", path]
|
|
447
521
|
|
|
448
522
|
try:
|
|
449
523
|
with open(os.devnull, 'w') as devnull:
|
|
@@ -454,8 +528,8 @@ class PackageCache(object):
|
|
|
454
528
|
else:
|
|
455
529
|
out_target = devnull
|
|
456
530
|
|
|
457
|
-
subprocess.Popen(
|
|
458
|
-
|
|
531
|
+
return subprocess.Popen(
|
|
532
|
+
args,
|
|
459
533
|
stdout=out_target,
|
|
460
534
|
stderr=out_target,
|
|
461
535
|
**kwargs
|
|
@@ -558,6 +632,15 @@ class PackageCache(object):
|
|
|
558
632
|
if pid > 0:
|
|
559
633
|
sys.exit(0)
|
|
560
634
|
|
|
635
|
+
self._run_caching_operation(wait_for_copying=False)
|
|
636
|
+
|
|
637
|
+
def _run_caching_operation(self, wait_for_copying=True):
|
|
638
|
+
"""Copy pending variants.
|
|
639
|
+
|
|
640
|
+
Args:
|
|
641
|
+
wait_for_copying (bool): Whether the caching step should block when one of the
|
|
642
|
+
pending variants is marked as already copying.
|
|
643
|
+
"""
|
|
561
644
|
logger = self._init_logging()
|
|
562
645
|
|
|
563
646
|
# somewhere for the daemon to store stateful info
|
|
@@ -568,7 +651,7 @@ class PackageCache(object):
|
|
|
568
651
|
# copy variants into cache
|
|
569
652
|
try:
|
|
570
653
|
while True:
|
|
571
|
-
keep_running = self.
|
|
654
|
+
keep_running = self._run_caching_step(state, wait_for_copying=wait_for_copying)
|
|
572
655
|
if not keep_running:
|
|
573
656
|
break
|
|
574
657
|
except Exception:
|
|
@@ -682,12 +765,13 @@ class PackageCache(object):
|
|
|
682
765
|
except NotLocked:
|
|
683
766
|
pass
|
|
684
767
|
|
|
685
|
-
def
|
|
768
|
+
def _run_caching_step(self, state, wait_for_copying=False):
|
|
686
769
|
logger = state["logger"]
|
|
687
770
|
|
|
688
771
|
# pick a random pending variant to copy
|
|
689
772
|
pending_filenames = set(os.listdir(self._pending_dir))
|
|
690
|
-
|
|
773
|
+
if not wait_for_copying:
|
|
774
|
+
pending_filenames -= set(state.get("copying", set()))
|
|
691
775
|
if not pending_filenames:
|
|
692
776
|
return False
|
|
693
777
|
|
|
@@ -710,7 +794,11 @@ class PackageCache(object):
|
|
|
710
794
|
t = time.time()
|
|
711
795
|
|
|
712
796
|
try:
|
|
713
|
-
rootpath, status = self.add_variant(
|
|
797
|
+
rootpath, status = self.add_variant(
|
|
798
|
+
variant,
|
|
799
|
+
wait_for_copying=wait_for_copying,
|
|
800
|
+
logger=logger,
|
|
801
|
+
)
|
|
714
802
|
|
|
715
803
|
except PackageCacheError as e:
|
|
716
804
|
# variant cannot be cached, so remove as a pending variant
|
|
@@ -116,8 +116,9 @@ class PackageOrder(object):
|
|
|
116
116
|
|
|
117
117
|
Args:
|
|
118
118
|
package_name: (str) The family name of the package we are sorting
|
|
119
|
-
version_like: (Version|_LowerBound|_UpperBound|_Bound|VersionRange)
|
|
120
|
-
|
|
119
|
+
version_like: (Version|_LowerBound|_UpperBound|_Bound|VersionRange|None)
|
|
120
|
+
The version-like object to be used as a basis for generating a sort key.
|
|
121
|
+
Note that 'None' is also a supported value, which maintains the default sorting order.
|
|
121
122
|
|
|
122
123
|
Returns:
|
|
123
124
|
Sortable object
|
|
@@ -126,21 +127,26 @@ class PackageOrder(object):
|
|
|
126
127
|
"""
|
|
127
128
|
if isinstance(version_like, VersionRange):
|
|
128
129
|
return tuple(self.sort_key(package_name, bound) for bound in version_like.bounds)
|
|
129
|
-
|
|
130
|
+
if isinstance(version_like, _Bound):
|
|
130
131
|
return (self.sort_key(package_name, version_like.lower),
|
|
131
132
|
self.sort_key(package_name, version_like.upper))
|
|
132
|
-
|
|
133
|
+
if isinstance(version_like, _LowerBound):
|
|
133
134
|
inclusion_key = -2 if version_like.inclusive else -1
|
|
134
135
|
return self.sort_key(package_name, version_like.version), inclusion_key
|
|
135
|
-
|
|
136
|
+
if isinstance(version_like, _UpperBound):
|
|
136
137
|
inclusion_key = 2 if version_like.inclusive else 1
|
|
137
138
|
return self.sort_key(package_name, version_like.version), inclusion_key
|
|
138
|
-
|
|
139
|
+
if isinstance(version_like, Version):
|
|
139
140
|
# finally, the bit that we actually use the sort_key_implementation for.
|
|
140
141
|
return FallbackComparable(
|
|
141
142
|
self.sort_key_implementation(package_name, version_like), version_like)
|
|
142
|
-
|
|
143
|
-
|
|
143
|
+
if version_like is None:
|
|
144
|
+
# As no version range is provided for this package,
|
|
145
|
+
# Python's sort preserves the order of equal elements.
|
|
146
|
+
# Thus, to maintain the original order,
|
|
147
|
+
# we return the same object for all None values.
|
|
148
|
+
return 0
|
|
149
|
+
raise TypeError(version_like)
|
|
144
150
|
|
|
145
151
|
def sort_key_implementation(self, package_name, version):
|
|
146
152
|
"""Returns a sort key usable for sorting these packages within the
|
|
@@ -171,7 +177,7 @@ class PackageOrder(object):
|
|
|
171
177
|
raise NotImplementedError
|
|
172
178
|
|
|
173
179
|
def __eq__(self, other):
|
|
174
|
-
return type(self) == type(other) and str(self) == str(other)
|
|
180
|
+
return type(self) == type(other) and str(self) == str(other) # noqa: E721
|
|
175
181
|
|
|
176
182
|
def __ne__(self, other):
|
|
177
183
|
return not self == other
|
|
@@ -198,7 +204,7 @@ class NullPackageOrder(PackageOrder):
|
|
|
198
204
|
return "{}"
|
|
199
205
|
|
|
200
206
|
def __eq__(self, other):
|
|
201
|
-
return type(self) == type(other)
|
|
207
|
+
return type(self) == type(other) # noqa: E721
|
|
202
208
|
|
|
203
209
|
def to_pod(self):
|
|
204
210
|
"""
|
|
@@ -244,7 +250,7 @@ class SortedOrder(PackageOrder):
|
|
|
244
250
|
return str(self.descending)
|
|
245
251
|
|
|
246
252
|
def __eq__(self, other):
|
|
247
|
-
return (
|
|
253
|
+
return ( # noqa: E721
|
|
248
254
|
type(self) == type(other)
|
|
249
255
|
and self.descending == other.descending
|
|
250
256
|
)
|
|
@@ -321,7 +327,7 @@ class PerFamilyOrder(PackageOrder):
|
|
|
321
327
|
return str((items, str(self.default_order)))
|
|
322
328
|
|
|
323
329
|
def __eq__(self, other):
|
|
324
|
-
return (
|
|
330
|
+
return ( # noqa: E721
|
|
325
331
|
type(other) == type(self)
|
|
326
332
|
and self.order_dict == other.order_dict
|
|
327
333
|
and self.default_order == other.default_order
|
|
@@ -413,7 +419,7 @@ class VersionSplitPackageOrder(PackageOrder):
|
|
|
413
419
|
return str(self.first_version)
|
|
414
420
|
|
|
415
421
|
def __eq__(self, other):
|
|
416
|
-
return (
|
|
422
|
+
return ( # noqa: E721
|
|
417
423
|
type(other) == type(self)
|
|
418
424
|
and self.first_version == other.first_version
|
|
419
425
|
)
|
|
@@ -576,7 +582,7 @@ class TimestampPackageOrder(PackageOrder):
|
|
|
576
582
|
return str((self.timestamp, self.rank))
|
|
577
583
|
|
|
578
584
|
def __eq__(self, other):
|
|
579
|
-
return (
|
|
585
|
+
return ( # noqa: E721
|
|
580
586
|
type(other) == type(self)
|
|
581
587
|
and self.timestamp == other.timestamp
|
|
582
588
|
and self.rank == other.rank
|
|
@@ -394,7 +394,9 @@ class PackageTestRunner(object):
|
|
|
394
394
|
if isinstance(command, str):
|
|
395
395
|
command = variant.format(command)
|
|
396
396
|
else:
|
|
397
|
-
|
|
397
|
+
# Note that we convert the iterator to a list to
|
|
398
|
+
# make sure that we can consume the variable more than once.
|
|
399
|
+
command = [x for x in map(variant.format, command)]
|
|
398
400
|
|
|
399
401
|
if extra_test_args:
|
|
400
402
|
if isinstance(command, str):
|
|
@@ -601,6 +603,7 @@ class PackageTestRunner(object):
|
|
|
601
603
|
package_paths=self.package_paths,
|
|
602
604
|
buf=(f if quiet else None),
|
|
603
605
|
timestamp=self.timestamp,
|
|
606
|
+
testing=True,
|
|
604
607
|
**self.context_kwargs
|
|
605
608
|
)
|
|
606
609
|
|