forked from platformio/platformio-core
Corrected the validation of `symlink://
` package specifications // Issue #4870
This commit is contained in:
@ -23,6 +23,7 @@ test-driven methodologies, and modern toolchains for unrivaled success.
|
|||||||
* Introduced the ``--json-output`` option to the `pio test <https://docs.platformio.org/en/latest/core/userguide/cmd_test.html>`__ command, enabling users to generate test results in the JSON format
|
* Introduced the ``--json-output`` option to the `pio test <https://docs.platformio.org/en/latest/core/userguide/cmd_test.html>`__ command, enabling users to generate test results in the JSON format
|
||||||
* Broadened version support for the ``pyelftools`` dependency, enabling compatibility with lower versions and facilitating integration with a wider range of third-party tools (`issue #4834 <https://github.com/platformio/platformio-core/issues/4834>`_)
|
* Broadened version support for the ``pyelftools`` dependency, enabling compatibility with lower versions and facilitating integration with a wider range of third-party tools (`issue #4834 <https://github.com/platformio/platformio-core/issues/4834>`_)
|
||||||
* Addressed an issue where passing a relative path (``--project-dir``) to the `pio project init <https://docs.platformio.org/en/latest/core/userguide/project/cmd_init.html>`__ command resulted in an error (`issue #4847 <https://github.com/platformio/platformio-core/issues/4847>`_)
|
* Addressed an issue where passing a relative path (``--project-dir``) to the `pio project init <https://docs.platformio.org/en/latest/core/userguide/project/cmd_init.html>`__ command resulted in an error (`issue #4847 <https://github.com/platformio/platformio-core/issues/4847>`_)
|
||||||
|
* Corrected the validation of ``symlink://`` `package specifications <https://docs.platformio.org/en/latest/core/userguide/pkg/cmd_install.html#local-folder>`__ , resolving an issue that caused the package manager to repeatedly reinstall dependencies (`pull #4870 <https://github.com/platformio/platformio-core/pull/4870>`_)
|
||||||
* Resolved an issue related to the relative package path in the `pio pkg publish <https://docs.platformio.org/en/latest/core/userguide/pkg/cmd_publish.html>`__ command
|
* Resolved an issue related to the relative package path in the `pio pkg publish <https://docs.platformio.org/en/latest/core/userguide/pkg/cmd_publish.html>`__ command
|
||||||
* Resolved an issue where the |LDF| selected an incorrect library version (`issue #4860 <https://github.com/platformio/platformio-core/issues/4860>`_)
|
* Resolved an issue where the |LDF| selected an incorrect library version (`issue #4860 <https://github.com/platformio/platformio-core/issues/4860>`_)
|
||||||
* Resolved an issue with the ``hexlify`` filter in the `device monitor <https://docs.platformio.org/en/latest/core/userguide/device/cmd_monitor.html>`__ command, ensuring proper representation of characters with Unicode code points higher than 127 (`issue #4732 <https://github.com/platformio/platformio-core/issues/4732>`_)
|
* Resolved an issue with the ``hexlify`` filter in the `device monitor <https://docs.platformio.org/en/latest/core/userguide/device/cmd_monitor.html>`__ command, ensuring proper representation of characters with Unicode code points higher than 127 (`issue #4732 <https://github.com/platformio/platformio-core/issues/4732>`_)
|
||||||
|
@ -280,18 +280,15 @@ class BasePackageManager( # pylint: disable=too-many-public-methods,too-many-in
|
|||||||
|
|
||||||
# external "URL" mismatch
|
# external "URL" mismatch
|
||||||
if spec.external:
|
if spec.external:
|
||||||
# local folder mismatch
|
# local/symlinked folder mismatch
|
||||||
if (
|
check_conds = [
|
||||||
os.path.abspath(spec.uri) == os.path.abspath(pkg.path)
|
os.path.abspath(spec.uri) == os.path.abspath(pkg.path),
|
||||||
or (
|
spec.uri.startswith("file://")
|
||||||
spec.uri.startswith("file://")
|
and os.path.abspath(pkg.path) == os.path.abspath(spec.uri[7:]),
|
||||||
and os.path.abspath(pkg.path) == os.path.abspath(spec.uri[7:])
|
spec.uri.startswith("symlink://")
|
||||||
)
|
and os.path.abspath(pkg.path) == os.path.abspath(spec.uri[10:]),
|
||||||
or (
|
]
|
||||||
spec.uri.startswith("symlink://")
|
if any(check_conds):
|
||||||
and os.path.abspath(pkg.path) == os.path.abspath(spec.uri[10:])
|
|
||||||
)
|
|
||||||
):
|
|
||||||
return True
|
return True
|
||||||
if spec.uri != pkg.metadata.spec.uri:
|
if spec.uri != pkg.metadata.spec.uri:
|
||||||
return False
|
return False
|
||||||
|
Reference in New Issue
Block a user