From c061ac55ac50498281eb35bf15cfe8a593d676ee Mon Sep 17 00:00:00 2001 From: David Hotham Date: Sat, 24 Sep 2022 13:01:27 +0100 Subject: [PATCH] feat: lock file format 2.0 (store package files on the package in lockfile) (#6393) --- src/poetry/packages/locker.py | 31 ++-- .../commands/self/test_remove_plugins.py | 2 +- tests/console/commands/test_lock.py | 2 +- tests/console/commands/test_show.py | 54 +++--- tests/fixtures/old_lock/updated.lock | 152 ---------------- tests/fixtures/outdated_lock/poetry.lock | 162 ++++++++++++------ tests/fixtures/up_to_date_lock/poetry.lock | 162 ++++++++++++------ .../fixtures/extras-with-dependencies.test | 12 +- tests/installation/fixtures/extras.test | 12 +- .../installation/fixtures/install-no-dev.test | 10 +- .../fixtures/no-dependencies.test | 4 +- tests/installation/fixtures/remove.test | 6 +- .../fixtures/update-with-lock.test | 6 +- .../fixtures/update-with-locked-extras.test | 12 +- .../fixtures/with-category-change.test | 8 +- .../fixtures/with-conditional-dependency.test | 7 +- .../fixtures/with-dependencies-extras.test | 10 +- .../with-dependencies-nested-extras.test | 10 +- .../fixtures/with-dependencies.test | 8 +- ...irectory-dependency-poetry-transitive.test | 21 ++- .../with-directory-dependency-poetry.test | 8 +- .../with-directory-dependency-setuptools.test | 10 +- .../with-duplicate-dependencies-update.test | 10 +- .../fixtures/with-duplicate-dependencies.test | 12 +- .../with-file-dependency-transitive.test | 17 +- .../fixtures/with-file-dependency.test | 13 +- .../fixtures/with-multiple-updates.test | 11 +- .../fixtures/with-optional-dependencies.test | 10 +- .../fixtures/with-platform-dependencies.test | 12 +- .../fixtures/with-prereleases.test | 8 +- .../fixtures/with-pypi-repository.test | 112 +++++++----- .../fixtures/with-python-versions.test | 10 +- .../with-same-version-url-dependencies.test | 9 +- .../fixtures/with-sub-dependencies.test | 12 +- .../fixtures/with-url-dependency.test | 8 +- .../with-vcs-dependency-with-extras.test | 10 +- .../with-vcs-dependency-without-ref.test | 8 +- ...ith-wheel-dependency-no-requires-dist.test | 11 +- tests/installation/test_installer.py | 34 ++-- tests/installation/test_installer_old.py | 26 +-- tests/packages/test_locker.py | 132 ++++++-------- 41 files changed, 554 insertions(+), 620 deletions(-) delete mode 100644 tests/fixtures/old_lock/updated.lock diff --git a/src/poetry/packages/locker.py b/src/poetry/packages/locker.py index e265a71edfa..9d1437bf3d4 100644 --- a/src/poetry/packages/locker.py +++ b/src/poetry/packages/locker.py @@ -47,7 +47,8 @@ class Locker: - _VERSION = "1.1" + _VERSION = "2.0" + _READ_VERSION_RANGE = ">=1,<3" _legacy_keys = ["dependencies", "source", "extras", "dev-dependencies"] _relevant_keys = [*_legacy_keys, "group"] @@ -116,8 +117,9 @@ def locked_repository(self) -> LockfileRepository: if source_type in ["directory", "file"]: url = self._lock.path.parent.joinpath(url).resolve().as_posix() + name = info["name"] package = Package( - info["name"], + name, info["version"], info["version"], source_type=source_type, @@ -130,9 +132,19 @@ def locked_repository(self) -> LockfileRepository: package.category = info.get("category", "main") package.optional = info["optional"] metadata = cast("dict[str, Any]", lock_data["metadata"]) - name = info["name"] - if "hashes" in metadata: - # Old lock so we create dummy files from the hashes + + # Storing of package files and hashes has been through a few generations in + # the lockfile, we can read them all: + # + # - latest and preferred is that this is read per package, from + # package.files + # - oldest is that hashes were stored in metadata.hashes without filenames + # - in between those two, hashes were stored alongside filenames in + # metadata.files + package_files = info.get("files") + if package_files is not None: + package.files = package_files + elif "hashes" in metadata: hashes = cast("dict[str, Any]", metadata["hashes"]) package.files = [{"name": h, "hash": h} for h in hashes[name]] elif source_type in {"git", "directory", "url"}: @@ -233,8 +245,6 @@ def set_lock_data(self, root: Package, packages: list[Package]) -> bool: assert isinstance(package_files, Array) files[package["name"]] = package_files.multiline(True) - del package["files"] - lock = document() lock.add(comment(GENERATED_COMMENT)) lock["package"] = package_specs @@ -249,7 +259,6 @@ def set_lock_data(self, root: Package, packages: list[Package]) -> bool: "lock-version": self._VERSION, "python-versions": root.python_versions, "content-hash": self._content_hash, - "files": files, } if not self.is_locked() or lock != self.lock_data: @@ -297,11 +306,7 @@ def _get_lock_data(self) -> TOMLDocument: metadata = cast("Table", lock_data["metadata"]) lock_version = Version.parse(metadata.get("lock-version", "1.0")) current_version = Version.parse(self._VERSION) - # We expect the locker to be able to read lock files - # from the same semantic versioning range - accepted_versions = parse_constraint( - f"^{Version.from_parts(current_version.major, 0)}" - ) + accepted_versions = parse_constraint(self._READ_VERSION_RANGE) lock_version_allowed = accepted_versions.allows(lock_version) if lock_version_allowed and current_version < lock_version: logger.warning( diff --git a/tests/console/commands/self/test_remove_plugins.py b/tests/console/commands/self/test_remove_plugins.py index 5821df82356..2b988443469 100644 --- a/tests/console/commands/self/test_remove_plugins.py +++ b/tests/console/commands/self/test_remove_plugins.py @@ -55,7 +55,7 @@ def install_plugin(installed: Repository) -> None: "python-versions": "^3.6", "platform": "*", "content-hash": "123456789", - "hashes": {"poetry-plugin": []}, + "files": {"poetry-plugin": []}, }, } system_pyproject_file.parent.joinpath("poetry.lock").write_text( diff --git a/tests/console/commands/test_lock.py b/tests/console/commands/test_lock.py index dae977a1d27..5d6eb53887e 100644 --- a/tests/console/commands/test_lock.py +++ b/tests/console/commands/test_lock.py @@ -146,7 +146,7 @@ def test_lock_no_update( assert len(packages) == len(locked_repository.packages) - assert locker.lock_data["metadata"].get("lock-version") == "1.1" + assert locker.lock_data["metadata"].get("lock-version") == "2.0" for package in packages: assert locked_repository.find_packages(package.to_dependency()) diff --git a/tests/console/commands/test_show.py b/tests/console/commands/test_show.py index 3d6d60a477b..bd6d8382ea9 100644 --- a/tests/console/commands/test_show.py +++ b/tests/console/commands/test_show.py @@ -87,7 +87,7 @@ def test_show_basic_with_installed_packages( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": [], "pytest": []}, + "files": {"cachy": [], "pendulum": [], "pytest": []}, }, } ) @@ -168,7 +168,7 @@ def _configure_project_with_groups(poetry: Poetry, installed: Repository) -> Non "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": [], "pytest": []}, + "files": {"cachy": [], "pendulum": [], "pytest": []}, }, } ) @@ -293,7 +293,7 @@ def test_show_basic_with_installed_packages_single( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": []}, + "files": {"cachy": []}, }, } ) @@ -335,7 +335,7 @@ def test_show_basic_with_installed_packages_single_canonicalized( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"foo-bar": []}, + "files": {"foo-bar": []}, }, } ) @@ -390,7 +390,7 @@ def test_show_basic_with_not_installed_packages_non_decorated( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -446,7 +446,7 @@ def test_show_basic_with_not_installed_packages_decorated( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -516,7 +516,7 @@ def test_show_latest_non_decorated( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -586,7 +586,7 @@ def test_show_latest_decorated( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -655,7 +655,7 @@ def test_show_outdated( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -699,7 +699,7 @@ def test_show_outdated_with_only_up_to_date_packages( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": []}, + "files": {"cachy": []}, }, } ) @@ -768,7 +768,7 @@ def test_show_outdated_has_prerelease_but_not_allowed( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -843,7 +843,7 @@ def test_show_outdated_has_prerelease_and_allowed( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -912,7 +912,7 @@ def test_show_outdated_formatting( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -1029,7 +1029,7 @@ def test_show_outdated_local_dependencies( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": { + "files": { "cachy": [], "pendulum": [], "demo": [], @@ -1136,7 +1136,7 @@ def test_show_outdated_git_dev_dependency( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": [], "demo": [], "pytest": []}, + "files": {"cachy": [], "pendulum": [], "demo": [], "pytest": []}, }, } ) @@ -1235,7 +1235,7 @@ def test_show_outdated_no_dev_git_dev_dependency( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": [], "demo": [], "pytest": []}, + "files": {"cachy": [], "pendulum": [], "demo": [], "pytest": []}, }, } ) @@ -1296,7 +1296,7 @@ def test_show_hides_incompatible_package( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -1353,7 +1353,7 @@ def test_show_all_shows_incompatible_package( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": []}, + "files": {"cachy": [], "pendulum": []}, }, } ) @@ -1429,7 +1429,7 @@ def test_show_non_dev_with_basic_installed_packages( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": [], "pytest": []}, + "files": {"cachy": [], "pendulum": [], "pytest": []}, }, } ) @@ -1505,7 +1505,7 @@ def test_show_with_group_only( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": [], "pytest": []}, + "files": {"cachy": [], "pendulum": [], "pytest": []}, }, } ) @@ -1580,7 +1580,7 @@ def test_show_with_optional_group( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": [], "pytest": []}, + "files": {"cachy": [], "pendulum": [], "pytest": []}, }, } ) @@ -1642,7 +1642,7 @@ def test_show_tree(tester: CommandTester, poetry: Poetry, installed: Repository) "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "msgpack-python": []}, + "files": {"cachy": [], "msgpack-python": []}, }, } ) @@ -1709,7 +1709,7 @@ def test_show_tree_no_dev(tester: CommandTester, poetry: Poetry, installed: Repo "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "msgpack-python": [], "pytest": []}, + "files": {"cachy": [], "msgpack-python": [], "pytest": []}, }, } ) @@ -1768,7 +1768,7 @@ def test_show_tree_why_package( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"a": [], "b": [], "c": []}, + "files": {"a": [], "b": [], "c": []}, }, } ) @@ -1825,7 +1825,7 @@ def test_show_tree_why(tester: CommandTester, poetry: Poetry, installed: Reposit "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"a": [], "b": [], "c": []}, + "files": {"a": [], "b": [], "c": []}, }, } ) @@ -1894,7 +1894,7 @@ def test_show_required_by_deps( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"cachy": [], "pendulum": [], "msgpack-python": []}, + "files": {"cachy": [], "pendulum": [], "msgpack-python": []}, }, } ) @@ -1983,7 +1983,7 @@ def test_show_dependency_installed_from_git_in_dev( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"demo": [], "pendulum": []}, + "files": {"demo": [], "pendulum": []}, }, } ) diff --git a/tests/fixtures/old_lock/updated.lock b/tests/fixtures/old_lock/updated.lock deleted file mode 100644 index 22cd049e68f..00000000000 --- a/tests/fixtures/old_lock/updated.lock +++ /dev/null @@ -1,152 +0,0 @@ -[[package]] -name = "certifi" -version = "2020.6.20" -description = "Python package for providing Mozilla's CA Bundle." -category = "main" -optional = false -python-versions = "*" - -[[package]] -name = "chardet" -version = "3.0.4" -description = "Universal encoding detector for Python 2 and 3" -category = "main" -optional = false -python-versions = "*" - -[[package]] -name = "docker" -version = "4.3.1" -description = "A Python library for the Docker Engine API." -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" - -[package.dependencies] -pywin32 = {version = "227", markers = "sys_platform == \"win32\""} -requests = ">=2.14.2,<2.18.0 || >2.18.0" -six = ">=1.4.0" -websocket-client = ">=0.32.0" - -[package.extras] -ssh = ["paramiko (>=2.4.2)"] -tls = ["pyOpenSSL (>=17.5.0)", "cryptography (>=1.3.4)", "idna (>=2.0.0)"] - -[[package]] -name = "idna" -version = "2.10" -description = "Internationalized Domain Names in Applications (IDNA)" -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" - -[[package]] -name = "pywin32" -version = "227" -description = "Python for Window Extensions" -category = "main" -optional = false -python-versions = "*" - -[[package]] -name = "requests" -version = "2.24.0" -description = "Python HTTP for Humans." -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" - -[package.dependencies] -certifi = ">=2017.4.17" -chardet = ">=3.0.2,<4" -idna = ">=2.5,<3" -urllib3 = ">=1.21.1,<1.25.0 || >1.25.0,<1.25.1 || >1.25.1,<1.26" - -[package.extras] -security = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)"] -socks = ["PySocks (>=1.5.6,<1.5.7 || >1.5.7)", "win-inet-pton"] - -[[package]] -name = "six" -version = "1.15.0" -description = "Python 2 and 3 compatibility utilities" -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" - -[[package]] -name = "urllib3" -version = "1.25.10" -description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" - -[package.extras] -brotli = ["brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "pyOpenSSL (>=0.14)", "ipaddress"] -socks = ["PySocks (>=1.5.6,<1.5.7 || >1.5.7,<2.0)"] - -[[package]] -name = "websocket-client" -version = "0.57.0" -description = "WebSocket client for Python. hybi13 is supported." -category = "main" -optional = false -python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" - -[package.dependencies] -six = "*" - -[metadata] -lock-version = "1.1" -python-versions = "^3.8" -content-hash = "bb4c2f3c089b802c1930b6acbeed04711d93e9cdfd9a003eb17518a6d9f350c6" - -[metadata.files] -certifi = [ - {file = "certifi-2020.6.20-py2.py3-none-any.whl", hash = "sha256:8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41"}, - {file = "certifi-2020.6.20.tar.gz", hash = "sha256:5930595817496dd21bb8dc35dad090f1c2cd0adfaf21204bf6732ca5d8ee34d3"}, -] -chardet = [ - {file = "chardet-3.0.4-py2.py3-none-any.whl", hash = "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"}, - {file = "chardet-3.0.4.tar.gz", hash = "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"}, -] -docker = [ - {file = "docker-4.3.1-py2.py3-none-any.whl", hash = "sha256:13966471e8bc23b36bfb3a6fb4ab75043a5ef1dac86516274777576bed3b9828"}, - {file = "docker-4.3.1.tar.gz", hash = "sha256:bad94b8dd001a8a4af19ce4becc17f41b09f228173ffe6a4e0355389eef142f2"}, -] -idna = [ - {file = "idna-2.10-py2.py3-none-any.whl", hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"}, - {file = "idna-2.10.tar.gz", hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6"}, -] -pywin32 = [ - {file = "pywin32-227-cp27-cp27m-win32.whl", hash = "sha256:371fcc39416d736401f0274dd64c2302728c9e034808e37381b5e1b22be4a6b0"}, - {file = "pywin32-227-cp27-cp27m-win_amd64.whl", hash = "sha256:4cdad3e84191194ea6d0dd1b1b9bdda574ff563177d2adf2b4efec2a244fa116"}, - {file = "pywin32-227-cp35-cp35m-win32.whl", hash = "sha256:f4c5be1a293bae0076d93c88f37ee8da68136744588bc5e2be2f299a34ceb7aa"}, - {file = "pywin32-227-cp35-cp35m-win_amd64.whl", hash = "sha256:a929a4af626e530383a579431b70e512e736e9588106715215bf685a3ea508d4"}, - {file = "pywin32-227-cp36-cp36m-win32.whl", hash = "sha256:300a2db938e98c3e7e2093e4491439e62287d0d493fe07cce110db070b54c0be"}, - {file = "pywin32-227-cp36-cp36m-win_amd64.whl", hash = "sha256:9b31e009564fb95db160f154e2aa195ed66bcc4c058ed72850d047141b36f3a2"}, - {file = "pywin32-227-cp37-cp37m-win32.whl", hash = "sha256:47a3c7551376a865dd8d095a98deba954a98f326c6fe3c72d8726ca6e6b15507"}, - {file = "pywin32-227-cp37-cp37m-win_amd64.whl", hash = "sha256:31f88a89139cb2adc40f8f0e65ee56a8c585f629974f9e07622ba80199057511"}, - {file = "pywin32-227-cp38-cp38-win32.whl", hash = "sha256:7f18199fbf29ca99dff10e1f09451582ae9e372a892ff03a28528a24d55875bc"}, - {file = "pywin32-227-cp38-cp38-win_amd64.whl", hash = "sha256:7c1ae32c489dc012930787f06244426f8356e129184a02c25aef163917ce158e"}, - {file = "pywin32-227-cp39-cp39-win32.whl", hash = "sha256:c054c52ba46e7eb6b7d7dfae4dbd987a1bb48ee86debe3f245a2884ece46e295"}, - {file = "pywin32-227-cp39-cp39-win_amd64.whl", hash = "sha256:f27cec5e7f588c3d1051651830ecc00294f90728d19c3bf6916e6dba93ea357c"}, -] -requests = [ - {file = "requests-2.24.0-py2.py3-none-any.whl", hash = "sha256:fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898"}, - {file = "requests-2.24.0.tar.gz", hash = "sha256:b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b"}, -] -six = [ - {file = "six-1.15.0-py2.py3-none-any.whl", hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"}, - {file = "six-1.15.0.tar.gz", hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259"}, -] -urllib3 = [ - {file = "urllib3-1.25.10-py2.py3-none-any.whl", hash = "sha256:e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461"}, - {file = "urllib3-1.25.10.tar.gz", hash = "sha256:91056c15fa70756691db97756772bb1eb9678fa585d9184f24534b100dc60f4a"}, -] -websocket-client = [ - {file = "websocket_client-0.57.0-py2.py3-none-any.whl", hash = "sha256:0fc45c961324d79c781bab301359d5a1b00b13ad1b10415a4780229ef71a5549"}, - {file = "websocket_client-0.57.0.tar.gz", hash = "sha256:d735b91d6d1692a6a181f2a8c9e0238e5f6373356f561bb9dc4c7af36f452010"}, -] diff --git a/tests/fixtures/outdated_lock/poetry.lock b/tests/fixtures/outdated_lock/poetry.lock index 1d950ca7c10..51c1e1d1f09 100644 --- a/tests/fixtures/outdated_lock/poetry.lock +++ b/tests/fixtures/outdated_lock/poetry.lock @@ -6,6 +6,14 @@ category = "main" optional = false python-versions = "*" +[[package.files]] +file = "certifi-2020.6.20-py2.py3-none-any.whl" +hash = "sha256:8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41" + +[[package.files]] +file = "certifi-2020.6.20.tar.gz" +hash = "sha256:5930595817496dd21bb8dc35dad090f1c2cd0adfaf21204bf6732ca5d8ee34d3" + [[package]] name = "chardet" version = "3.0.4" @@ -14,6 +22,14 @@ category = "main" optional = false python-versions = "*" +[[package.files]] +file = "chardet-3.0.4-py2.py3-none-any.whl" +hash = "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" + +[[package.files]] +file = "chardet-3.0.4.tar.gz" +hash = "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae" + [[package]] name = "docker" version = "4.3.0" @@ -22,6 +38,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +[[package.files]] +file = "docker-4.3.0-py2.py3-none-any.whl" +hash = "sha256:ba118607b0ba6bfc1b236ec32019a355c47b5d012d01d976467d4692ef443929" + +[[package.files]] +file = "docker-4.3.0.tar.gz" +hash = "sha256:431a268f2caf85aa30613f9642da274c62f6ee8bae7d70d968e01529f7d6af93" + [package.dependencies] pywin32 = {version = "227", markers = "sys_platform == \"win32\""} requests = ">=2.14.2,<2.18.0 || >2.18.0" @@ -40,6 +64,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "idna-2.10-py2.py3-none-any.whl" +hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" + +[[package.files]] +file = "idna-2.10.tar.gz" +hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6" + [[package]] name = "pywin32" version = "227" @@ -48,6 +80,54 @@ category = "main" optional = false python-versions = "*" +[[package.files]] +file = "pywin32-227-cp27-cp27m-win32.whl" +hash = "sha256:371fcc39416d736401f0274dd64c2302728c9e034808e37381b5e1b22be4a6b0" + +[[package.files]] +file = "pywin32-227-cp27-cp27m-win_amd64.whl" +hash = "sha256:4cdad3e84191194ea6d0dd1b1b9bdda574ff563177d2adf2b4efec2a244fa116" + +[[package.files]] +file = "pywin32-227-cp35-cp35m-win32.whl" +hash = "sha256:f4c5be1a293bae0076d93c88f37ee8da68136744588bc5e2be2f299a34ceb7aa" + +[[package.files]] +file = "pywin32-227-cp35-cp35m-win_amd64.whl" +hash = "sha256:a929a4af626e530383a579431b70e512e736e9588106715215bf685a3ea508d4" + +[[package.files]] +file = "pywin32-227-cp36-cp36m-win32.whl" +hash = "sha256:300a2db938e98c3e7e2093e4491439e62287d0d493fe07cce110db070b54c0be" + +[[package.files]] +file = "pywin32-227-cp36-cp36m-win_amd64.whl" +hash = "sha256:9b31e009564fb95db160f154e2aa195ed66bcc4c058ed72850d047141b36f3a2" + +[[package.files]] +file = "pywin32-227-cp37-cp37m-win32.whl" +hash = "sha256:47a3c7551376a865dd8d095a98deba954a98f326c6fe3c72d8726ca6e6b15507" + +[[package.files]] +file = "pywin32-227-cp37-cp37m-win_amd64.whl" +hash = "sha256:31f88a89139cb2adc40f8f0e65ee56a8c585f629974f9e07622ba80199057511" + +[[package.files]] +file = "pywin32-227-cp38-cp38-win32.whl" +hash = "sha256:7f18199fbf29ca99dff10e1f09451582ae9e372a892ff03a28528a24d55875bc" + +[[package.files]] +file = "pywin32-227-cp38-cp38-win_amd64.whl" +hash = "sha256:7c1ae32c489dc012930787f06244426f8356e129184a02c25aef163917ce158e" + +[[package.files]] +file = "pywin32-227-cp39-cp39-win32.whl" +hash = "sha256:c054c52ba46e7eb6b7d7dfae4dbd987a1bb48ee86debe3f245a2884ece46e295" + +[[package.files]] +file = "pywin32-227-cp39-cp39-win_amd64.whl" +hash = "sha256:f27cec5e7f588c3d1051651830ecc00294f90728d19c3bf6916e6dba93ea357c" + [[package]] name = "requests" version = "2.24.0" @@ -56,6 +136,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +[[package.files]] +file = "requests-2.24.0-py2.py3-none-any.whl" +hash = "sha256:fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898" + +[[package.files]] +file = "requests-2.24.0.tar.gz" +hash = "sha256:b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b" + [package.dependencies] certifi = ">=2017.4.17" chardet = ">=3.0.2,<4" @@ -74,6 +162,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +[[package.files]] +file = "six-1.15.0-py2.py3-none-any.whl" +hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" + +[[package.files]] +file = "six-1.15.0.tar.gz" +hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259" + [[package]] name = "urllib3" version = "1.25.10" @@ -82,6 +178,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" +[[package.files]] +file = "urllib3-1.25.10-py2.py3-none-any.whl" +hash = "sha256:e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461" + +[[package.files]] +file = "urllib3-1.25.10.tar.gz" +hash = "sha256:91056c15fa70756691db97756772bb1eb9678fa585d9184f24534b100dc60f4a" + [package.extras] brotli = ["brotlipy (>=0.6.0)"] secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "pyOpenSSL (>=0.14)", "ipaddress"] @@ -95,58 +199,18 @@ category = "main" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "websocket_client-0.57.0-py2.py3-none-any.whl" +hash = "sha256:0fc45c961324d79c781bab301359d5a1b00b13ad1b10415a4780229ef71a5549" + +[[package.files]] +file = "websocket_client-0.57.0.tar.gz" +hash = "sha256:d735b91d6d1692a6a181f2a8c9e0238e5f6373356f561bb9dc4c7af36f452010" + [package.dependencies] six = "*" [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "^3.8" content-hash = "2f47de5e052dabeff3c1362d3a37b5cfcaf9bbe9d9ce1681207e72ca1f4dab55" - -[metadata.files] -certifi = [ - {file = "certifi-2020.6.20-py2.py3-none-any.whl", hash = "sha256:8fc0819f1f30ba15bdb34cceffb9ef04d99f420f68eb75d901e9560b8749fc41"}, - {file = "certifi-2020.6.20.tar.gz", hash = "sha256:5930595817496dd21bb8dc35dad090f1c2cd0adfaf21204bf6732ca5d8ee34d3"}, -] -chardet = [ - {file = "chardet-3.0.4-py2.py3-none-any.whl", hash = "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"}, - {file = "chardet-3.0.4.tar.gz", hash = "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"}, -] -docker = [ - {file = "docker-4.3.0-py2.py3-none-any.whl", hash = "sha256:ba118607b0ba6bfc1b236ec32019a355c47b5d012d01d976467d4692ef443929"}, - {file = "docker-4.3.0.tar.gz", hash = "sha256:431a268f2caf85aa30613f9642da274c62f6ee8bae7d70d968e01529f7d6af93"}, -] -idna = [ - {file = "idna-2.10-py2.py3-none-any.whl", hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"}, - {file = "idna-2.10.tar.gz", hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6"}, -] -pywin32 = [ - {file = "pywin32-227-cp27-cp27m-win32.whl", hash = "sha256:371fcc39416d736401f0274dd64c2302728c9e034808e37381b5e1b22be4a6b0"}, - {file = "pywin32-227-cp27-cp27m-win_amd64.whl", hash = "sha256:4cdad3e84191194ea6d0dd1b1b9bdda574ff563177d2adf2b4efec2a244fa116"}, - {file = "pywin32-227-cp35-cp35m-win32.whl", hash = "sha256:f4c5be1a293bae0076d93c88f37ee8da68136744588bc5e2be2f299a34ceb7aa"}, - {file = "pywin32-227-cp35-cp35m-win_amd64.whl", hash = "sha256:a929a4af626e530383a579431b70e512e736e9588106715215bf685a3ea508d4"}, - {file = "pywin32-227-cp36-cp36m-win32.whl", hash = "sha256:300a2db938e98c3e7e2093e4491439e62287d0d493fe07cce110db070b54c0be"}, - {file = "pywin32-227-cp36-cp36m-win_amd64.whl", hash = "sha256:9b31e009564fb95db160f154e2aa195ed66bcc4c058ed72850d047141b36f3a2"}, - {file = "pywin32-227-cp37-cp37m-win32.whl", hash = "sha256:47a3c7551376a865dd8d095a98deba954a98f326c6fe3c72d8726ca6e6b15507"}, - {file = "pywin32-227-cp37-cp37m-win_amd64.whl", hash = "sha256:31f88a89139cb2adc40f8f0e65ee56a8c585f629974f9e07622ba80199057511"}, - {file = "pywin32-227-cp38-cp38-win32.whl", hash = "sha256:7f18199fbf29ca99dff10e1f09451582ae9e372a892ff03a28528a24d55875bc"}, - {file = "pywin32-227-cp38-cp38-win_amd64.whl", hash = "sha256:7c1ae32c489dc012930787f06244426f8356e129184a02c25aef163917ce158e"}, - {file = "pywin32-227-cp39-cp39-win32.whl", hash = "sha256:c054c52ba46e7eb6b7d7dfae4dbd987a1bb48ee86debe3f245a2884ece46e295"}, - {file = "pywin32-227-cp39-cp39-win_amd64.whl", hash = "sha256:f27cec5e7f588c3d1051651830ecc00294f90728d19c3bf6916e6dba93ea357c"}, -] -requests = [ - {file = "requests-2.24.0-py2.py3-none-any.whl", hash = "sha256:fe75cc94a9443b9246fc7049224f75604b113c36acb93f87b80ed42c44cbb898"}, - {file = "requests-2.24.0.tar.gz", hash = "sha256:b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b"}, -] -six = [ - {file = "six-1.15.0-py2.py3-none-any.whl", hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"}, - {file = "six-1.15.0.tar.gz", hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259"}, -] -urllib3 = [ - {file = "urllib3-1.25.10-py2.py3-none-any.whl", hash = "sha256:e7983572181f5e1522d9c98453462384ee92a0be7fac5f1413a1e35c56cc0461"}, - {file = "urllib3-1.25.10.tar.gz", hash = "sha256:91056c15fa70756691db97756772bb1eb9678fa585d9184f24534b100dc60f4a"}, -] -websocket-client = [ - {file = "websocket_client-0.57.0-py2.py3-none-any.whl", hash = "sha256:0fc45c961324d79c781bab301359d5a1b00b13ad1b10415a4780229ef71a5549"}, - {file = "websocket_client-0.57.0.tar.gz", hash = "sha256:d735b91d6d1692a6a181f2a8c9e0238e5f6373356f561bb9dc4c7af36f452010"}, -] diff --git a/tests/fixtures/up_to_date_lock/poetry.lock b/tests/fixtures/up_to_date_lock/poetry.lock index a896b5d0621..569ab9d4239 100644 --- a/tests/fixtures/up_to_date_lock/poetry.lock +++ b/tests/fixtures/up_to_date_lock/poetry.lock @@ -6,6 +6,14 @@ category = "main" optional = false python-versions = "*" +[[package.files]] +file = "certifi-2020.12.5-py2.py3-none-any.whl" +hash = "sha256:719a74fb9e33b9bd44cc7f3a8d94bc35e4049deebe19ba7d8e108280cfd59830" + +[[package.files]] +file = "certifi-2020.12.5.tar.gz" +hash = "sha256:1a4995114262bffbc2413b159f2a1a480c969de6e6eb13ee966d470af86af59c" + [[package]] name = "chardet" version = "4.0.0" @@ -14,6 +22,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +[[package.files]] +file = "chardet-4.0.0-py2.py3-none-any.whl" +hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5" + +[[package.files]] +file = "chardet-4.0.0.tar.gz" +hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa" + [[package]] name = "docker" version = "4.3.1" @@ -22,6 +38,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +[[package.files]] +file = "docker-4.3.1-py2.py3-none-any.whl" +hash = "sha256:13966471e8bc23b36bfb3a6fb4ab75043a5ef1dac86516274777576bed3b9828" + +[[package.files]] +file = "docker-4.3.1.tar.gz" +hash = "sha256:bad94b8dd001a8a4af19ce4becc17f41b09f228173ffe6a4e0355389eef142f2" + [package.dependencies] pywin32 = {version = "227", markers = "sys_platform == \"win32\""} requests = ">=2.14.2,<2.18.0 || >2.18.0" @@ -40,6 +64,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "idna-2.10-py2.py3-none-any.whl" +hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" + +[[package.files]] +file = "idna-2.10.tar.gz" +hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6" + [[package]] name = "pywin32" version = "227" @@ -48,6 +80,54 @@ category = "main" optional = false python-versions = "*" +[[package.files]] +file = "pywin32-227-cp27-cp27m-win32.whl" +hash = "sha256:371fcc39416d736401f0274dd64c2302728c9e034808e37381b5e1b22be4a6b0" + +[[package.files]] +file = "pywin32-227-cp27-cp27m-win_amd64.whl" +hash = "sha256:4cdad3e84191194ea6d0dd1b1b9bdda574ff563177d2adf2b4efec2a244fa116" + +[[package.files]] +file = "pywin32-227-cp35-cp35m-win32.whl" +hash = "sha256:f4c5be1a293bae0076d93c88f37ee8da68136744588bc5e2be2f299a34ceb7aa" + +[[package.files]] +file = "pywin32-227-cp35-cp35m-win_amd64.whl" +hash = "sha256:a929a4af626e530383a579431b70e512e736e9588106715215bf685a3ea508d4" + +[[package.files]] +file = "pywin32-227-cp36-cp36m-win32.whl" +hash = "sha256:300a2db938e98c3e7e2093e4491439e62287d0d493fe07cce110db070b54c0be" + +[[package.files]] +file = "pywin32-227-cp36-cp36m-win_amd64.whl" +hash = "sha256:9b31e009564fb95db160f154e2aa195ed66bcc4c058ed72850d047141b36f3a2" + +[[package.files]] +file = "pywin32-227-cp37-cp37m-win32.whl" +hash = "sha256:47a3c7551376a865dd8d095a98deba954a98f326c6fe3c72d8726ca6e6b15507" + +[[package.files]] +file = "pywin32-227-cp37-cp37m-win_amd64.whl" +hash = "sha256:31f88a89139cb2adc40f8f0e65ee56a8c585f629974f9e07622ba80199057511" + +[[package.files]] +file = "pywin32-227-cp38-cp38-win32.whl" +hash = "sha256:7f18199fbf29ca99dff10e1f09451582ae9e372a892ff03a28528a24d55875bc" + +[[package.files]] +file = "pywin32-227-cp38-cp38-win_amd64.whl" +hash = "sha256:7c1ae32c489dc012930787f06244426f8356e129184a02c25aef163917ce158e" + +[[package.files]] +file = "pywin32-227-cp39-cp39-win32.whl" +hash = "sha256:c054c52ba46e7eb6b7d7dfae4dbd987a1bb48ee86debe3f245a2884ece46e295" + +[[package.files]] +file = "pywin32-227-cp39-cp39-win_amd64.whl" +hash = "sha256:f27cec5e7f588c3d1051651830ecc00294f90728d19c3bf6916e6dba93ea357c" + [[package]] name = "requests" version = "2.25.1" @@ -56,6 +136,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +[[package.files]] +file = "requests-2.25.1-py2.py3-none-any.whl" +hash = "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e" + +[[package.files]] +file = "requests-2.25.1.tar.gz" +hash = "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804" + [package.dependencies] certifi = ">=2017.4.17" chardet = ">=3.0.2,<5" @@ -74,6 +162,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +[[package.files]] +file = "six-1.15.0-py2.py3-none-any.whl" +hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" + +[[package.files]] +file = "six-1.15.0.tar.gz" +hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259" + [[package]] name = "urllib3" version = "1.26.3" @@ -82,6 +178,14 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" +[[package.files]] +file = "urllib3-1.26.3-py2.py3-none-any.whl" +hash = "sha256:1b465e494e3e0d8939b50680403e3aedaa2bc434b7d5af64dfd3c958d7f5ae80" + +[[package.files]] +file = "urllib3-1.26.3.tar.gz" +hash = "sha256:de3eedaad74a2683334e282005cd8d7f22f4d55fa690a2a1020a416cb0a47e73" + [package.extras] brotli = ["brotlipy (>=0.6.0)"] secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"] @@ -95,58 +199,18 @@ category = "main" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "websocket_client-0.58.0-py2.py3-none-any.whl" +hash = "sha256:44b5df8f08c74c3d82d28100fdc81f4536809ce98a17f0757557813275fbb663" + +[[package.files]] +file = "websocket_client-0.58.0.tar.gz" +hash = "sha256:63509b41d158ae5b7f67eb4ad20fecbb4eee99434e73e140354dc3ff8e09716f" + [package.dependencies] six = "*" [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "^3.8" content-hash = "0cd068218f235c162f7b74bc8faf4ce3387b82daee1c1bb7a97af034f27ee116" - -[metadata.files] -certifi = [ - {file = "certifi-2020.12.5-py2.py3-none-any.whl", hash = "sha256:719a74fb9e33b9bd44cc7f3a8d94bc35e4049deebe19ba7d8e108280cfd59830"}, - {file = "certifi-2020.12.5.tar.gz", hash = "sha256:1a4995114262bffbc2413b159f2a1a480c969de6e6eb13ee966d470af86af59c"}, -] -chardet = [ - {file = "chardet-4.0.0-py2.py3-none-any.whl", hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"}, - {file = "chardet-4.0.0.tar.gz", hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa"}, -] -docker = [ - {file = "docker-4.3.1-py2.py3-none-any.whl", hash = "sha256:13966471e8bc23b36bfb3a6fb4ab75043a5ef1dac86516274777576bed3b9828"}, - {file = "docker-4.3.1.tar.gz", hash = "sha256:bad94b8dd001a8a4af19ce4becc17f41b09f228173ffe6a4e0355389eef142f2"}, -] -idna = [ - {file = "idna-2.10-py2.py3-none-any.whl", hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"}, - {file = "idna-2.10.tar.gz", hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6"}, -] -pywin32 = [ - {file = "pywin32-227-cp27-cp27m-win32.whl", hash = "sha256:371fcc39416d736401f0274dd64c2302728c9e034808e37381b5e1b22be4a6b0"}, - {file = "pywin32-227-cp27-cp27m-win_amd64.whl", hash = "sha256:4cdad3e84191194ea6d0dd1b1b9bdda574ff563177d2adf2b4efec2a244fa116"}, - {file = "pywin32-227-cp35-cp35m-win32.whl", hash = "sha256:f4c5be1a293bae0076d93c88f37ee8da68136744588bc5e2be2f299a34ceb7aa"}, - {file = "pywin32-227-cp35-cp35m-win_amd64.whl", hash = "sha256:a929a4af626e530383a579431b70e512e736e9588106715215bf685a3ea508d4"}, - {file = "pywin32-227-cp36-cp36m-win32.whl", hash = "sha256:300a2db938e98c3e7e2093e4491439e62287d0d493fe07cce110db070b54c0be"}, - {file = "pywin32-227-cp36-cp36m-win_amd64.whl", hash = "sha256:9b31e009564fb95db160f154e2aa195ed66bcc4c058ed72850d047141b36f3a2"}, - {file = "pywin32-227-cp37-cp37m-win32.whl", hash = "sha256:47a3c7551376a865dd8d095a98deba954a98f326c6fe3c72d8726ca6e6b15507"}, - {file = "pywin32-227-cp37-cp37m-win_amd64.whl", hash = "sha256:31f88a89139cb2adc40f8f0e65ee56a8c585f629974f9e07622ba80199057511"}, - {file = "pywin32-227-cp38-cp38-win32.whl", hash = "sha256:7f18199fbf29ca99dff10e1f09451582ae9e372a892ff03a28528a24d55875bc"}, - {file = "pywin32-227-cp38-cp38-win_amd64.whl", hash = "sha256:7c1ae32c489dc012930787f06244426f8356e129184a02c25aef163917ce158e"}, - {file = "pywin32-227-cp39-cp39-win32.whl", hash = "sha256:c054c52ba46e7eb6b7d7dfae4dbd987a1bb48ee86debe3f245a2884ece46e295"}, - {file = "pywin32-227-cp39-cp39-win_amd64.whl", hash = "sha256:f27cec5e7f588c3d1051651830ecc00294f90728d19c3bf6916e6dba93ea357c"}, -] -requests = [ - {file = "requests-2.25.1-py2.py3-none-any.whl", hash = "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e"}, - {file = "requests-2.25.1.tar.gz", hash = "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804"}, -] -six = [ - {file = "six-1.15.0-py2.py3-none-any.whl", hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"}, - {file = "six-1.15.0.tar.gz", hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259"}, -] -urllib3 = [ - {file = "urllib3-1.26.3-py2.py3-none-any.whl", hash = "sha256:1b465e494e3e0d8939b50680403e3aedaa2bc434b7d5af64dfd3c958d7f5ae80"}, - {file = "urllib3-1.26.3.tar.gz", hash = "sha256:de3eedaad74a2683334e282005cd8d7f22f4d55fa690a2a1020a416cb0a47e73"}, -] -websocket-client = [ - {file = "websocket_client-0.58.0-py2.py3-none-any.whl", hash = "sha256:44b5df8f08c74c3d82d28100fdc81f4536809ce98a17f0757557813275fbb663"}, - {file = "websocket_client-0.58.0.tar.gz", hash = "sha256:63509b41d158ae5b7f67eb4ad20fecbb4eee99434e73e140354dc3ff8e09716f"}, -] diff --git a/tests/installation/fixtures/extras-with-dependencies.test b/tests/installation/fixtures/extras-with-dependencies.test index d0a63bfb879..c4b71a2dd00 100644 --- a/tests/installation/fixtures/extras-with-dependencies.test +++ b/tests/installation/fixtures/extras-with-dependencies.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "B" @@ -13,6 +14,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -21,6 +23,7 @@ description = "" category = "main" optional = true python-versions = "*" +files = [] [package.dependencies] D = "^1.0" @@ -32,17 +35,12 @@ description = "" category = "main" optional = true python-versions = "*" +files = [] [extras] foo = ["C"] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -B = [] -C = [] -D = [] diff --git a/tests/installation/fixtures/extras.test b/tests/installation/fixtures/extras.test index 3b4086ab18a..5c33b6e373f 100644 --- a/tests/installation/fixtures/extras.test +++ b/tests/installation/fixtures/extras.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "B" @@ -13,6 +14,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -21,6 +23,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "D" @@ -29,17 +32,12 @@ description = "" category = "main" optional = true python-versions = "*" +files = [] [extras] foo = ["D"] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -B = [] -C = [] -D = [] diff --git a/tests/installation/fixtures/install-no-dev.test b/tests/installation/fixtures/install-no-dev.test index c966c56baa0..282c54d578f 100644 --- a/tests/installation/fixtures/install-no-dev.test +++ b/tests/installation/fixtures/install-no-dev.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "B" @@ -13,6 +14,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -21,13 +23,9 @@ description = "" category = "dev" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] -"B" = [] -"C" = [] diff --git a/tests/installation/fixtures/no-dependencies.test b/tests/installation/fixtures/no-dependencies.test index 61424ceee4b..374f79aae8a 100644 --- a/tests/installation/fixtures/no-dependencies.test +++ b/tests/installation/fixtures/no-dependencies.test @@ -2,7 +2,5 @@ package = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] diff --git a/tests/installation/fixtures/remove.test b/tests/installation/fixtures/remove.test index d0aea7a7b3e..3a8f1a33159 100644 --- a/tests/installation/fixtures/remove.test +++ b/tests/installation/fixtures/remove.test @@ -5,11 +5,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] diff --git a/tests/installation/fixtures/update-with-lock.test b/tests/installation/fixtures/update-with-lock.test index 4856157ff5e..fe6f798f87c 100644 --- a/tests/installation/fixtures/update-with-lock.test +++ b/tests/installation/fixtures/update-with-lock.test @@ -5,11 +5,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] diff --git a/tests/installation/fixtures/update-with-locked-extras.test b/tests/installation/fixtures/update-with-locked-extras.test index 3609212e222..e748875f102 100644 --- a/tests/installation/fixtures/update-with-locked-extras.test +++ b/tests/installation/fixtures/update-with-locked-extras.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] "B" = {version = "^1.0", optional = true} @@ -20,6 +21,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -28,6 +30,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "D" @@ -36,14 +39,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] -"B" = [] -"C" = [] -"D" = [] diff --git a/tests/installation/fixtures/with-category-change.test b/tests/installation/fixtures/with-category-change.test index f431f92ba0e..66838707b2e 100644 --- a/tests/installation/fixtures/with-category-change.test +++ b/tests/installation/fixtures/with-category-change.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "B" @@ -13,15 +14,12 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] A = "^1.0" [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] -"B" = [] diff --git a/tests/installation/fixtures/with-conditional-dependency.test b/tests/installation/fixtures/with-conditional-dependency.test index 78546a5c96a..3fac6462f9b 100644 --- a/tests/installation/fixtures/with-conditional-dependency.test +++ b/tests/installation/fixtures/with-conditional-dependency.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = ">=3.5" +files = [] [package.requirements] python = ">=3.5,<4.0" @@ -16,14 +17,12 @@ description = "" category = "main" optional = false python-versions = ">=3.6" +files = [] [package.requirements] python = ">=3.6,<4.0" [metadata] python-versions = "~2.7 || ^3.4" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] diff --git a/tests/installation/fixtures/with-dependencies-extras.test b/tests/installation/fixtures/with-dependencies-extras.test index 042e29670e1..0c25d7777f8 100644 --- a/tests/installation/fixtures/with-dependencies-extras.test +++ b/tests/installation/fixtures/with-dependencies-extras.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "B" @@ -13,6 +14,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] C = {version = "^1.0", optional = true} @@ -27,13 +29,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] -"B" = [] -"C" = [] diff --git a/tests/installation/fixtures/with-dependencies-nested-extras.test b/tests/installation/fixtures/with-dependencies-nested-extras.test index 369aa3cd74b..c6bc9ce396e 100644 --- a/tests/installation/fixtures/with-dependencies-nested-extras.test +++ b/tests/installation/fixtures/with-dependencies-nested-extras.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] B = {version = "^1.0", optional = true, extras = ["C"]} @@ -19,6 +20,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] C = {version = "^1.0", optional = true} @@ -33,13 +35,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] -"B" = [] -"C" = [] diff --git a/tests/installation/fixtures/with-dependencies.test b/tests/installation/fixtures/with-dependencies.test index e9ed46612a0..2cc6ee051b3 100644 --- a/tests/installation/fixtures/with-dependencies.test +++ b/tests/installation/fixtures/with-dependencies.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "B" @@ -13,12 +14,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] -"B" = [] diff --git a/tests/installation/fixtures/with-directory-dependency-poetry-transitive.test b/tests/installation/fixtures/with-directory-dependency-poetry-transitive.test index fb10b1accea..be7c6b32f2f 100644 --- a/tests/installation/fixtures/with-directory-dependency-poetry-transitive.test +++ b/tests/installation/fixtures/with-directory-dependency-poetry-transitive.test @@ -6,6 +6,10 @@ optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" version = "0.1.0" +[[package.files]] +file = "demo-0.1.0-py2.py3-none-any.whl" +hash = "sha256:70e704135718fffbcbf61ed1fc45933cfd86951a744b681000eaaa75da31f17a" + [package.dependencies] pendulum = ">=1.4.4" @@ -24,6 +28,7 @@ develop = false name = "inner-directory-project" optional = false python-versions = "*" +files = [] version = "1.2.4" [package.source] @@ -36,6 +41,7 @@ description = "" name = "pendulum" optional = false python-versions = "*" +files = [] version = "1.4.4" [[package]] @@ -45,6 +51,7 @@ develop = false name = "project-with-extras" optional = false python-versions = "*" +files = [] version = "1.2.3" [package.extras] @@ -62,6 +69,7 @@ develop = false name = "project-with-transitive-directory-dependencies" optional = false python-versions = "*" +files = [] version = "1.2.3" [package.dependencies] @@ -79,6 +87,7 @@ develop = false name = "project-with-transitive-file-dependencies" optional = false python-versions = "*" +files = [] version = "1.2.3" [package.dependencies] @@ -91,15 +100,5 @@ url = "project_with_transitive_file_dependencies" [metadata] content-hash = "123456789" -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" - -[metadata.files] -demo = [ - {file = "demo-0.1.0-py2.py3-none-any.whl", hash = "sha256:70e704135718fffbcbf61ed1fc45933cfd86951a744b681000eaaa75da31f17a"}, -] -inner-directory-project = [] -pendulum = [] -project-with-extras = [] -project-with-transitive-directory-dependencies = [] -project-with-transitive-file-dependencies = [] diff --git a/tests/installation/fixtures/with-directory-dependency-poetry.test b/tests/installation/fixtures/with-directory-dependency-poetry.test index 12431f62185..c4ab25b6047 100644 --- a/tests/installation/fixtures/with-directory-dependency-poetry.test +++ b/tests/installation/fixtures/with-directory-dependency-poetry.test @@ -4,6 +4,7 @@ category = "main" name = "pendulum" optional = false python-versions = "*" +files = [] version = "1.4.4" [[package]] @@ -13,6 +14,7 @@ develop = false name = "project-with-extras" optional = false python-versions = "*" +files = [] version = "1.2.3" [package.dependencies] @@ -28,9 +30,5 @@ url = "tests/fixtures/project_with_extras" [metadata] content-hash = "123456789" -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" - -[metadata.files] -project-with-extras = [] -pendulum = [] diff --git a/tests/installation/fixtures/with-directory-dependency-setuptools.test b/tests/installation/fixtures/with-directory-dependency-setuptools.test index f02bd82a335..c4700222187 100644 --- a/tests/installation/fixtures/with-directory-dependency-setuptools.test +++ b/tests/installation/fixtures/with-directory-dependency-setuptools.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "pendulum" @@ -13,6 +14,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "project-with-setup" @@ -22,6 +24,7 @@ description = "Demo project." category = "main" optional = false python-versions = "*" +files = [] [package.source] type = "directory" @@ -33,10 +36,5 @@ pendulum = ">=1.4.4" [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -cachy = [] -project-with-setup = [] -pendulum = [] diff --git a/tests/installation/fixtures/with-duplicate-dependencies-update.test b/tests/installation/fixtures/with-duplicate-dependencies-update.test index f29945e71a8..ed2544695c3 100644 --- a/tests/installation/fixtures/with-duplicate-dependencies-update.test +++ b/tests/installation/fixtures/with-duplicate-dependencies-update.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] B = "^2.0" @@ -16,6 +17,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] C = "1.5" @@ -27,13 +29,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -B = [] -C = [] diff --git a/tests/installation/fixtures/with-duplicate-dependencies.test b/tests/installation/fixtures/with-duplicate-dependencies.test index 75126501ef8..c2b16990725 100644 --- a/tests/installation/fixtures/with-duplicate-dependencies.test +++ b/tests/installation/fixtures/with-duplicate-dependencies.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] B = [ @@ -19,6 +20,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] C = "1.2" @@ -30,6 +32,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] C = "1.5" @@ -41,6 +44,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -49,13 +53,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -B = [] -C = [] diff --git a/tests/installation/fixtures/with-file-dependency-transitive.test b/tests/installation/fixtures/with-file-dependency-transitive.test index b882f262640..a863af4487a 100644 --- a/tests/installation/fixtures/with-file-dependency-transitive.test +++ b/tests/installation/fixtures/with-file-dependency-transitive.test @@ -6,6 +6,10 @@ optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" version = "0.1.0" +[[package.files]] +file = "demo-0.1.0-py2.py3-none-any.whl" +hash = "sha256:70e704135718fffbcbf61ed1fc45933cfd86951a744b681000eaaa75da31f17a" + [package.dependencies] pendulum = ">=1.4.4" @@ -24,6 +28,7 @@ develop = false name = "inner-directory-project" optional = false python-versions = "*" +files = [] version = "1.2.4" [package.source] @@ -36,6 +41,7 @@ description = "" name = "pendulum" optional = false python-versions = "*" +files = [] version = "1.4.4" [[package]] @@ -45,6 +51,7 @@ develop = false name = "project-with-transitive-file-dependencies" optional = false python-versions = "*" +files = [] version = "1.2.3" [package.dependencies] @@ -57,13 +64,5 @@ url = "project_with_transitive_file_dependencies" [metadata] content-hash = "123456789" -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" - -[metadata.files] -demo = [ - {file = "demo-0.1.0-py2.py3-none-any.whl", hash = "sha256:70e704135718fffbcbf61ed1fc45933cfd86951a744b681000eaaa75da31f17a"}, -] -inner-directory-project = [] -pendulum = [] -project-with-transitive-file-dependencies = [] diff --git a/tests/installation/fixtures/with-file-dependency.test b/tests/installation/fixtures/with-file-dependency.test index 06ad019c0f4..15b080c0002 100644 --- a/tests/installation/fixtures/with-file-dependency.test +++ b/tests/installation/fixtures/with-file-dependency.test @@ -6,6 +6,10 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "demo-0.1.0-py2.py3-none-any.whl" +hash = "sha256:70e704135718fffbcbf61ed1fc45933cfd86951a744b681000eaaa75da31f17a" + [package.source] type = "file" url = "tests/fixtures/distributions/demo-0.1.0-py2.py3-none-any.whl" @@ -24,14 +28,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -demo = [ - {file = "demo-0.1.0-py2.py3-none-any.whl", hash = "sha256:70e704135718fffbcbf61ed1fc45933cfd86951a744b681000eaaa75da31f17a"}, -] -pendulum = [] diff --git a/tests/installation/fixtures/with-multiple-updates.test b/tests/installation/fixtures/with-multiple-updates.test index a488ef79631..929322c608d 100644 --- a/tests/installation/fixtures/with-multiple-updates.test +++ b/tests/installation/fixtures/with-multiple-updates.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] B = ">=1.0.1" @@ -20,6 +21,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -28,6 +30,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -36,13 +39,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "~2.7 || ^3.4" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -B = [] -C = [] diff --git a/tests/installation/fixtures/with-optional-dependencies.test b/tests/installation/fixtures/with-optional-dependencies.test index 6c172caa078..f3f6ff16882 100644 --- a/tests/installation/fixtures/with-optional-dependencies.test +++ b/tests/installation/fixtures/with-optional-dependencies.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = true python-versions = "*" +files = [] [[package]] name = "C" @@ -13,6 +14,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] D = "^1.2" @@ -24,16 +26,12 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [extras] foo = ["A"] [metadata] python-versions = "~2.7 || ^3.4" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -C = [] -D = [] diff --git a/tests/installation/fixtures/with-platform-dependencies.test b/tests/installation/fixtures/with-platform-dependencies.test index 9696b74fb9a..32ff7af1884 100644 --- a/tests/installation/fixtures/with-platform-dependencies.test +++ b/tests/installation/fixtures/with-platform-dependencies.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = true python-versions = "*" +files = [] [[package]] name = "B" @@ -13,6 +14,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -21,6 +23,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] D = "^1.2" @@ -32,17 +35,12 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [extras] foo = ["A"] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -B = [] -C = [] -D = [] diff --git a/tests/installation/fixtures/with-prereleases.test b/tests/installation/fixtures/with-prereleases.test index c164800cb80..8c29f0dfb0a 100644 --- a/tests/installation/fixtures/with-prereleases.test +++ b/tests/installation/fixtures/with-prereleases.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "B" @@ -13,12 +14,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"A" = [] -"B" = [] diff --git a/tests/installation/fixtures/with-pypi-repository.test b/tests/installation/fixtures/with-pypi-repository.test index 1bde9b82750..03444764ee9 100644 --- a/tests/installation/fixtures/with-pypi-repository.test +++ b/tests/installation/fixtures/with-pypi-repository.test @@ -6,6 +6,14 @@ category = "dev" optional = false python-versions = "*" +[[package.files]] +file = "attrs-17.4.0-py2.py3-none-any.whl" +hash = "sha256:a17a9573a6f475c99b551c0e0a812707ddda1ec9653bed04c13841404ed6f450" + +[[package.files]] +file = "attrs-17.4.0.tar.gz" +hash = "sha256:1c7960ccfd6a005cd9f7ba884e6316b5e430a3f1a6c37c5f87d8b43f83b54ec9" + [package.extras] dev = ["coverage", "hypothesis", "pympler", "pytest", "six", "sphinx", "zope.interface", "zope.interface"] docs = ["sphinx", "zope.interface"] @@ -19,6 +27,14 @@ category = "dev" optional = false python-versions = "*" +[[package.files]] +file = "colorama-0.3.9-py2.py3-none-any.whl" +hash = "sha256:463f8483208e921368c9f306094eb6f725c6ca42b0f97e313cb5d5512459feda" + +[[package.files]] +file = "colorama-0.3.9.tar.gz" +hash = "sha256:48eb22f4f8461b1df5734a074b57042430fb06e1d61bd1e11b078c0fe6d7a1f1" + [[package]] name = "funcsigs" version = "1.0.2" @@ -27,6 +43,14 @@ category = "dev" optional = false python-versions = "*" +[[package.files]] +file = "funcsigs-1.0.2-py2.py3-none-any.whl" +hash = "sha256:330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca" + +[[package.files]] +file = "funcsigs-1.0.2.tar.gz" +hash = "sha256:a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50" + [[package]] name = "more-itertools" version = "4.1.0" @@ -35,6 +59,18 @@ category = "dev" optional = false python-versions = "*" +[[package.files]] +file = "more-itertools-4.1.0.tar.gz" +hash = "sha256:c9ce7eccdcb901a2c75d326ea134e0886abfbea5f93e91cc95de9507c0816c44" + +[[package.files]] +file = "more_itertools-4.1.0-py2-none-any.whl" +hash = "sha256:11a625025954c20145b37ff6309cd54e39ca94f72f6bb9576d1195db6fa2442e" + +[[package.files]] +file = "more_itertools-4.1.0-py3-none-any.whl" +hash = "sha256:0dd8f72eeab0d2c3bd489025bb2f6a1b8342f9b198f6fc37b52d15cfa4531fea" + [package.dependencies] six = ">=1.0.0,<2.0.0" @@ -46,6 +82,10 @@ category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "pluggy-0.6.0.tar.gz" +hash = "sha256:7f8ae7f5bdf75671a718d2daf0a64b7885f74510bcd98b1a0bb420eb9a9d0cff" + [[package]] name = "py" version = "1.5.3" @@ -54,6 +94,14 @@ category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "py-1.5.3-py2.py3-none-any.whl" +hash = "sha256:983f77f3331356039fdd792e9220b7b8ee1aa6bd2b25f567a963ff1de5a64f6a" + +[[package.files]] +file = "py-1.5.3.tar.gz" +hash = "sha256:29c9fab495d7528e80ba1e343b958684f4ace687327e6f789a94bf3d1915f881" + [[package]] name = "pytest" version = "3.5.0" @@ -62,6 +110,14 @@ category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "pytest-3.5.0-py2.py3-none-any.whl" +hash = "sha256:6266f87ab64692112e5477eba395cfedda53b1933ccd29478e671e73b420c19c" + +[[package.files]] +file = "pytest-3.5.0.tar.gz" +hash = "sha256:fae491d1874f199537fd5872b5e1f0e74a009b979df9d53d1553fd03da1703e1" + [package.dependencies] py = ">=1.5.0" six = ">=1.10.0" @@ -80,6 +136,14 @@ category = "dev" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*" +[[package.files]] +file = "setuptools-39.2.0-py2.py3-none-any.whl" +hash = "sha256:8fca9275c89964f13da985c3656cb00ba029d7f3916b37990927ffdf264e7926" + +[[package.files]] +file = "setuptools-39.2.0.zip" +hash = "sha256:f7cddbb5f5c640311eb00eab6e849f7701fa70bf6a183fc8a2c33dd1d1672fb2" + [package.extras] certs = ["certifi (==2016.9.26)"] ssl = ["wincertstore (==0.2)"] @@ -92,45 +156,15 @@ category = "dev" optional = false python-versions = "*" +[[package.files]] +file = "six-1.11.0-py2.py3-none-any.whl" +hash = "sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb" + +[[package.files]] +file = "six-1.11.0.tar.gz" +hash = "sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9" + [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -attrs = [ - {file = "attrs-17.4.0-py2.py3-none-any.whl", hash = "sha256:a17a9573a6f475c99b551c0e0a812707ddda1ec9653bed04c13841404ed6f450"}, - {file = "attrs-17.4.0.tar.gz", hash = "sha256:1c7960ccfd6a005cd9f7ba884e6316b5e430a3f1a6c37c5f87d8b43f83b54ec9"}, -] -colorama = [ - {file = "colorama-0.3.9-py2.py3-none-any.whl", hash = "sha256:463f8483208e921368c9f306094eb6f725c6ca42b0f97e313cb5d5512459feda"}, - {file = "colorama-0.3.9.tar.gz", hash = "sha256:48eb22f4f8461b1df5734a074b57042430fb06e1d61bd1e11b078c0fe6d7a1f1"}, -] -funcsigs = [ - {file = "funcsigs-1.0.2-py2.py3-none-any.whl", hash = "sha256:330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca"}, - {file = "funcsigs-1.0.2.tar.gz", hash = "sha256:a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50"}, -] -more-itertools = [ - {file = "more-itertools-4.1.0.tar.gz", hash = "sha256:c9ce7eccdcb901a2c75d326ea134e0886abfbea5f93e91cc95de9507c0816c44"}, - {file = "more_itertools-4.1.0-py2-none-any.whl", hash = "sha256:11a625025954c20145b37ff6309cd54e39ca94f72f6bb9576d1195db6fa2442e"}, - {file = "more_itertools-4.1.0-py3-none-any.whl", hash = "sha256:0dd8f72eeab0d2c3bd489025bb2f6a1b8342f9b198f6fc37b52d15cfa4531fea"}, -] -pluggy = [ - {file = "pluggy-0.6.0.tar.gz", hash = "sha256:7f8ae7f5bdf75671a718d2daf0a64b7885f74510bcd98b1a0bb420eb9a9d0cff"}, -] -py = [ - {file = "py-1.5.3-py2.py3-none-any.whl", hash = "sha256:983f77f3331356039fdd792e9220b7b8ee1aa6bd2b25f567a963ff1de5a64f6a"}, - {file = "py-1.5.3.tar.gz", hash = "sha256:29c9fab495d7528e80ba1e343b958684f4ace687327e6f789a94bf3d1915f881"}, -] -pytest = [ - {file = "pytest-3.5.0-py2.py3-none-any.whl", hash = "sha256:6266f87ab64692112e5477eba395cfedda53b1933ccd29478e671e73b420c19c"}, - {file = "pytest-3.5.0.tar.gz", hash = "sha256:fae491d1874f199537fd5872b5e1f0e74a009b979df9d53d1553fd03da1703e1"}, -] -setuptools = [ - {file = "setuptools-39.2.0-py2.py3-none-any.whl", hash = "sha256:8fca9275c89964f13da985c3656cb00ba029d7f3916b37990927ffdf264e7926"}, - {file = "setuptools-39.2.0.zip", hash = "sha256:f7cddbb5f5c640311eb00eab6e849f7701fa70bf6a183fc8a2c33dd1d1672fb2"}, -] -six = [ - {file = "six-1.11.0-py2.py3-none-any.whl", hash = "sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb"}, - {file = "six-1.11.0.tar.gz", hash = "sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9"}, -] diff --git a/tests/installation/fixtures/with-python-versions.test b/tests/installation/fixtures/with-python-versions.test index 04ea98bc79a..39b18c5132e 100644 --- a/tests/installation/fixtures/with-python-versions.test +++ b/tests/installation/fixtures/with-python-versions.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "B" @@ -13,6 +14,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "C" @@ -21,13 +23,9 @@ description = "" category = "main" optional = false python-versions = "~2.7 || ^3.3" +files = [] [metadata] python-versions = "~2.7 || ^3.4" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -B = [] -C = [] diff --git a/tests/installation/fixtures/with-same-version-url-dependencies.test b/tests/installation/fixtures/with-same-version-url-dependencies.test index aec9fefa911..e80c72a3d03 100644 --- a/tests/installation/fixtures/with-same-version-url-dependencies.test +++ b/tests/installation/fixtures/with-same-version-url-dependencies.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [] [package.source] type = "url" @@ -24,6 +25,7 @@ description = "" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [] [package.source] type = "url" @@ -43,12 +45,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -demo = [] -pendulum = [] diff --git a/tests/installation/fixtures/with-sub-dependencies.test b/tests/installation/fixtures/with-sub-dependencies.test index 35b133dfb57..ac967d6fa72 100644 --- a/tests/installation/fixtures/with-sub-dependencies.test +++ b/tests/installation/fixtures/with-sub-dependencies.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] D = "^1.0" @@ -16,6 +17,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] C = "~1.2" @@ -27,6 +29,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "D" @@ -35,14 +38,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -A = [] -B = [] -C = [] -D = [] diff --git a/tests/installation/fixtures/with-url-dependency.test b/tests/installation/fixtures/with-url-dependency.test index 2d23f7981aa..13cab35bc46 100644 --- a/tests/installation/fixtures/with-url-dependency.test +++ b/tests/installation/fixtures/with-url-dependency.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [] [package.source] type = "url" @@ -24,12 +25,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -demo = [] -pendulum = [] diff --git a/tests/installation/fixtures/with-vcs-dependency-with-extras.test b/tests/installation/fixtures/with-vcs-dependency-with-extras.test index f64ba8e867e..12c5da5c941 100644 --- a/tests/installation/fixtures/with-vcs-dependency-with-extras.test +++ b/tests/installation/fixtures/with-vcs-dependency-with-extras.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] develop = false [package.dependencies] @@ -27,6 +28,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "cleo" @@ -35,13 +37,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -demo = [] -pendulum = [] -cleo = [] diff --git a/tests/installation/fixtures/with-vcs-dependency-without-ref.test b/tests/installation/fixtures/with-vcs-dependency-without-ref.test index 16521bdea50..67c2c962eb5 100644 --- a/tests/installation/fixtures/with-vcs-dependency-without-ref.test +++ b/tests/installation/fixtures/with-vcs-dependency-without-ref.test @@ -5,6 +5,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] develop = false [package.dependencies] @@ -23,12 +24,9 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -demo = [] -pendulum = [] diff --git a/tests/installation/fixtures/with-wheel-dependency-no-requires-dist.test b/tests/installation/fixtures/with-wheel-dependency-no-requires-dist.test index 383e43803eb..a484b41e8cd 100644 --- a/tests/installation/fixtures/with-wheel-dependency-no-requires-dist.test +++ b/tests/installation/fixtures/with-wheel-dependency-no-requires-dist.test @@ -6,16 +6,15 @@ category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +[[package.files]] +file = "demo-0.1.0-py2.py3-none-any.whl" +hash = "sha256:c25eb81459126848a1788eb3520d1a32014eb51ce3d3bae88c56bfdde4ce02db" + [package.source] type = "file" url = "tests/fixtures/wheel_with_no_requires_dist/demo-0.1.0-py2.py3-none-any.whl" [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -demo = [ - {file = "demo-0.1.0-py2.py3-none-any.whl", hash = "sha256:c25eb81459126848a1788eb3520d1a32014eb51ce3d3bae88c56bfdde4ce02db"}, -] diff --git a/tests/installation/test_installer.py b/tests/installation/test_installer.py index 1b8938d4dfb..f7fd6213c58 100644 --- a/tests/installation/test_installer.py +++ b/tests/installation/test_installer.py @@ -275,7 +275,7 @@ def test_run_update_after_removing_dependencies( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -351,7 +351,7 @@ def _configure_run_install_dev( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -480,7 +480,7 @@ def test_run_install_does_not_remove_locked_packages_if_installed_but_not_requir "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {package_a.name: [], package_b.name: [], package_c.name: []}, + "files": {package_a.name: [], package_b.name: [], package_c.name: []}, }, } ) @@ -550,7 +550,7 @@ def test_run_install_removes_locked_packages_if_installed_and_synchronization_is "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {package_a.name: [], package_b.name: [], package_c.name: []}, + "files": {package_a.name: [], package_b.name: [], package_c.name: []}, }, } ) @@ -621,7 +621,7 @@ def test_run_install_removes_no_longer_locked_packages_if_installed( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {package_a.name: [], package_b.name: [], package_c.name: []}, + "files": {package_a.name: [], package_b.name: [], package_c.name: []}, }, } ) @@ -699,7 +699,7 @@ def test_run_install_with_synchronization( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {pkg.name: [] for pkg in locked_packages}, + "files": {pkg.name: [] for pkg in locked_packages}, }, } ) @@ -741,7 +741,7 @@ def test_run_whitelist_add( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": []}, + "files": {"A": []}, }, } ) @@ -798,7 +798,7 @@ def test_run_whitelist_remove( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": []}, + "files": {"A": [], "B": []}, }, } ) @@ -1370,7 +1370,7 @@ def test_run_with_prereleases( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": []}, + "files": {"A": []}, }, } ) @@ -1414,7 +1414,7 @@ def test_run_changes_category_if_needed( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": []}, + "files": {"A": []}, }, } ) @@ -1461,7 +1461,7 @@ def test_run_update_all_with_lock( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": []}, + "files": {"A": []}, }, } ) @@ -1520,7 +1520,7 @@ def test_run_update_with_locked_extras( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -1662,7 +1662,7 @@ def test_run_install_duplicate_dependencies_different_constraints_with_lock( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -1737,7 +1737,7 @@ def test_run_update_uninstalls_after_removal_transient_dependency( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": []}, + "files": {"A": [], "B": []}, }, } ) @@ -1835,7 +1835,7 @@ def test_run_install_duplicate_dependencies_different_constraints_with_lock_upda "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -2126,7 +2126,7 @@ def test_update_multiple_times_with_split_dependencies_is_idempotent( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": []}, + "files": {"A": [], "B": []}, }, } ) @@ -2451,7 +2451,7 @@ def test_installer_should_use_the_locked_version_of_git_dependencies( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"demo": [], "pendulum": []}, + "files": {"demo": [], "pendulum": []}, }, } ) diff --git a/tests/installation/test_installer_old.py b/tests/installation/test_installer_old.py index baa59649ce9..3c7fe7f2e6f 100644 --- a/tests/installation/test_installer_old.py +++ b/tests/installation/test_installer_old.py @@ -215,7 +215,7 @@ def test_run_update_after_removing_dependencies( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -292,7 +292,7 @@ def test_run_install_no_group( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -389,7 +389,7 @@ def test_run_install_with_synchronization( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {pkg.name: [] for pkg in locked_packages}, + "files": {pkg.name: [] for pkg in locked_packages}, }, } ) @@ -434,7 +434,7 @@ def test_run_whitelist_add( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": []}, + "files": {"A": []}, }, } ) @@ -491,7 +491,7 @@ def test_run_whitelist_remove( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": []}, + "files": {"A": [], "B": []}, }, } ) @@ -1013,7 +1013,7 @@ def test_run_with_prereleases( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": []}, + "files": {"A": []}, }, } ) @@ -1057,7 +1057,7 @@ def test_run_changes_category_if_needed( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": []}, + "files": {"A": []}, }, } ) @@ -1104,7 +1104,7 @@ def test_run_update_all_with_lock( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": []}, + "files": {"A": []}, }, } ) @@ -1163,7 +1163,7 @@ def test_run_update_with_locked_extras( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -1307,7 +1307,7 @@ def test_run_install_duplicate_dependencies_different_constraints_with_lock( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -1385,7 +1385,7 @@ def test_run_update_uninstalls_after_removal_transient_dependency( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": []}, + "files": {"A": [], "B": []}, }, } ) @@ -1486,7 +1486,7 @@ def test_run_install_duplicate_dependencies_different_constraints_with_lock_upda "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": [], "C": []}, + "files": {"A": [], "B": [], "C": []}, }, } ) @@ -1742,7 +1742,7 @@ def test_update_multiple_times_with_split_dependencies_is_idempotent( "python-versions": "*", "platform": "*", "content-hash": "123456789", - "hashes": {"A": [], "B": []}, + "files": {"A": [], "B": []}, }, } ) diff --git a/tests/packages/test_locker.py b/tests/packages/test_locker.py index b3fa2a6112f..b0be7e1a528 100644 --- a/tests/packages/test_locker.py +++ b/tests/packages/test_locker.py @@ -105,6 +105,14 @@ def test_lock_file_data_is_ordered(locker: Locker, root: ProjectPackage): optional = false python-versions = "*" +[[package.files]] +file = "bar" +hash = "123" + +[[package.files]] +file = "foo" +hash = "456" + [package.dependencies] B = "^1.0" @@ -116,6 +124,10 @@ def test_lock_file_data_is_ordered(locker: Locker, root: ProjectPackage): optional = false python-versions = "*" +[[package.files]] +file = "baz" +hash = "345" + [[package]] name = "B" version = "1.2" @@ -123,6 +135,7 @@ def test_lock_file_data_is_ordered(locker: Locker, root: ProjectPackage): category = "main" optional = false python-versions = "*" +files = [] [[package]] name = "git-package" @@ -131,6 +144,7 @@ def test_lock_file_data_is_ordered(locker: Locker, root: ProjectPackage): category = "main" optional = false python-versions = "*" +files = [] develop = false [package.source] @@ -146,6 +160,7 @@ def test_lock_file_data_is_ordered(locker: Locker, root: ProjectPackage): category = "main" optional = false python-versions = "*" +files = [] develop = false [package.source] @@ -162,6 +177,7 @@ def test_lock_file_data_is_ordered(locker: Locker, root: ProjectPackage): category = "main" optional = false python-versions = "*" +files = [] [package.source] type = "url" @@ -174,26 +190,16 @@ def test_lock_file_data_is_ordered(locker: Locker, root: ProjectPackage): category = "main" optional = false python-versions = "*" +files = [] [package.source] type = "url" url = "https://example.org/url-package-1.0-cp39-win_amd64.whl" [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -A = [ - {{file = "bar", hash = "123"}}, - {{file = "foo", hash = "456"}}, - {{file = "baz", hash = "345"}}, -] -B = [] -git-package = [] -git-package-subdir = [] -url-package = [] """ # noqa: E800 assert content == expected @@ -210,6 +216,7 @@ def test_locker_properly_loads_extras(locker: Locker): category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [] [package.dependencies] msgpack = "*" @@ -224,12 +231,9 @@ def test_locker_properly_loads_extras(locker: Locker): redis = ["redis (>=2.10.5)"] [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "~2.7 || ^3.4" content-hash = "c3d07fca33fba542ef2b2a4d75bf5b48d892d21a830e2ad9c952ba5123a52f77" - -[metadata.files] -cachecontrol = [] """ # noqa: E800 locker.lock.write(tomlkit.parse(content)) @@ -257,6 +261,7 @@ def test_locker_properly_loads_nested_extras(locker: Locker): category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] b = {{version = "^1.0", optional = true, extras = "c"}} @@ -271,6 +276,7 @@ def test_locker_properly_loads_nested_extras(locker: Locker): category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] c = {{version = "^1.0", optional = true}} @@ -285,16 +291,12 @@ def test_locker_properly_loads_nested_extras(locker: Locker): category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"a" = [] -"b" = [] -"c" = [] """ # noqa: E800 locker.lock.write(tomlkit.parse(content)) @@ -339,6 +341,7 @@ def test_locker_properly_loads_extras_legacy(locker: Locker): category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] b = {{version = "^1.0", optional = true}} @@ -353,15 +356,12 @@ def test_locker_properly_loads_extras_legacy(locker: Locker): category = "main" optional = false python-versions = "*" +files = [] [metadata] python-versions = "*" -lock-version = "1.1" +lock-version = "2.0" content-hash = "123456789" - -[metadata.files] -"a" = [] -"b" = [] """ # noqa: E800 locker.lock.write(tomlkit.parse(content)) @@ -390,6 +390,7 @@ def test_locker_properly_loads_subdir(locker: Locker) -> None: optional = false python-versions = "*" develop = false +files = [] [package.source] type = "git" @@ -399,12 +400,9 @@ def test_locker_properly_loads_subdir(locker: Locker) -> None: subdirectory = "subdir" [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -git-package-subdir = [] """ locker.lock.write(tomlkit.parse(content)) @@ -551,14 +549,12 @@ def test_lock_packages_with_null_description(locker: Locker, root: ProjectPackag category = "main" optional = false python-versions = "*" +files = [] [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -A = [] """ # noqa: E800 assert content == expected @@ -585,6 +581,7 @@ def test_lock_file_should_not_have_mixed_types(locker: Locker, root: ProjectPack category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] B = [ @@ -596,12 +593,9 @@ def test_lock_file_should_not_have_mixed_types(locker: Locker, root: ProjectPack foo = ["B (>=1.0.0)"] [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -A = [] """ # noqa: E800 with locker.lock.open(encoding="utf-8") as f: @@ -621,6 +615,7 @@ def test_reading_lock_file_should_raise_an_error_on_invalid_data(locker: Locker) category = "main" optional = false python-versions = "*" +files = [] [package.extras] foo = ["bar"] @@ -629,12 +624,9 @@ def test_reading_lock_file_should_raise_an_error_on_invalid_data(locker: Locker) foo = ["bar"] [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -A = [] """ # noqa: E800 with locker.lock.open("w", encoding="utf-8") as f: f.write(content) @@ -672,6 +664,7 @@ def test_locking_legacy_repository_package_should_include_source_section( category = "main" optional = false python-versions = "*" +files = [] [package.source] type = "legacy" @@ -679,12 +672,9 @@ def test_locking_legacy_repository_package_should_include_source_section( reference = "legacy" [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -A = [] """ # noqa: E800 assert content == expected @@ -699,8 +689,6 @@ def test_locker_should_emit_warnings_if_lock_version_is_newer_but_allowed( lock-version = "{version}" python-versions = "~2.7 || ^3.4" content-hash = "c3d07fca33fba542ef2b2a4d75bf5b48d892d21a830e2ad9c952ba5123a52f77" - -[metadata.files] """ caplog.set_level(logging.WARNING, logger="poetry.packages.locker") @@ -728,11 +716,9 @@ def test_locker_should_raise_an_error_if_lock_version_is_newer_and_not_allowed( # {GENERATED_COMMENT} [metadata] -lock-version = "2.0" +lock-version = "3.0" python-versions = "~2.7 || ^3.4" content-hash = "c3d07fca33fba542ef2b2a4d75bf5b48d892d21a830e2ad9c952ba5123a52f77" - -[metadata.files] """ # noqa: E800 caplog.set_level(logging.WARNING, logger="poetry.packages.locker") @@ -763,17 +749,15 @@ def test_extras_dependencies_are_ordered(locker: Locker, root: ProjectPackage): category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] B = {{version = "^1.0.0", extras = ["a", "b", "c"], optional = true}} [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -A = [] """ # noqa: E800 with locker.lock.open(encoding="utf-8") as f: @@ -785,10 +769,7 @@ def test_extras_dependencies_are_ordered(locker: Locker, root: ProjectPackage): def test_locker_should_neither_emit_warnings_nor_raise_error_for_lower_compatible_versions( # noqa: E501 locker: Locker, caplog: LogCaptureFixture ): - current_version = Version.parse(Locker._VERSION) - older_version = ".".join( - [str(current_version.major), str(current_version.minor - 1)] - ) + older_version = "1.1" content = f"""\ [metadata] lock-version = "{older_version}" @@ -856,6 +837,7 @@ def test_locker_dumps_dependency_information_correctly( category = "main" optional = false python-versions = "*" +files = [] [package.dependencies] B = {{path = "project_with_extras", develop = true}} @@ -865,12 +847,9 @@ def test_locker_dumps_dependency_information_correctly( F = {{git = "https://github.com/python-poetry/poetry.git", branch = "foo"}} [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -A = [] """ # noqa: E800 assert content == expected @@ -902,6 +881,7 @@ def test_locker_dumps_subdir(locker: Locker, root: ProjectPackage) -> None: category = "main" optional = false python-versions = "*" +files = [] develop = false [package.source] @@ -912,12 +892,9 @@ def test_locker_dumps_subdir(locker: Locker, root: ProjectPackage) -> None: subdirectory = "subdir" [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -git-package-subdir = [] """ # noqa: E800 assert content == expected @@ -954,18 +931,16 @@ def test_locker_dumps_dependency_extras_in_correct_order( category = "main" optional = false python-versions = "*" +files = [] [package.extras] B = ["first (==1.0.0)", "second (==1.0.0)", "third (==1.0.0)"] C = ["first (==1.0.0)", "second (==1.0.0)", "third (==1.0.0)"] [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -A = [] """ # noqa: E800 assert content == expected @@ -985,6 +960,7 @@ def test_locked_repository_uses_root_dir_of_package( optional = false python-versions = "^2.7.9" develop = true +file = [] [package.dependencies] lib-b = {{path = "../libB", develop = true}} @@ -994,13 +970,9 @@ def test_locked_repository_uses_root_dir_of_package( url = "lib/libA" [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -lib-a = [] -lib-b = [] """ # noqa: E800 locker.lock.write(tomlkit.parse(content)) @@ -1126,6 +1098,7 @@ def test_lock_file_resolves_file_url_symlinks(root: ProjectPackage): category = "main" optional = false python-versions = "*" +files = [] [package.source] type = "file" @@ -1141,12 +1114,9 @@ def test_lock_file_resolves_file_url_symlinks(root: ProjectPackage): resolved_reference = "123456" [metadata] -lock-version = "1.1" +lock-version = "2.0" python-versions = "*" content-hash = "115cf985d932e9bf5f540555bbdd75decbb62cac81e399375fc19f6277f8c1d8" - -[metadata.files] -local-package = [] """ # noqa: E800 assert content == expected