mirror of
https://github.com/platformio/platformio-core.git
synced 2025-07-30 10:07:14 +02:00
Rename meta.PackageSourceItem or PackageItem
This commit is contained in:
@ -40,7 +40,7 @@ from platformio.package.manifest.parser import (
|
|||||||
ManifestParserError,
|
ManifestParserError,
|
||||||
ManifestParserFactory,
|
ManifestParserFactory,
|
||||||
)
|
)
|
||||||
from platformio.package.meta import PackageSourceItem
|
from platformio.package.meta import PackageItem
|
||||||
from platformio.project.options import ProjectOptions
|
from platformio.project.options import ProjectOptions
|
||||||
|
|
||||||
|
|
||||||
@ -1019,7 +1019,7 @@ def ConfigureProjectLibBuilder(env):
|
|||||||
margin = "| " * (level)
|
margin = "| " * (level)
|
||||||
for lb in root.depbuilders:
|
for lb in root.depbuilders:
|
||||||
title = "<%s>" % lb.name
|
title = "<%s>" % lb.name
|
||||||
pkg = PackageSourceItem(lb.path)
|
pkg = PackageItem(lb.path)
|
||||||
if pkg.metadata:
|
if pkg.metadata:
|
||||||
title += " %s" % pkg.metadata.version
|
title += " %s" % pkg.metadata.version
|
||||||
elif lb.version:
|
elif lb.version:
|
||||||
|
@ -30,7 +30,7 @@ from platformio.commands.lib.helpers import (
|
|||||||
from platformio.compat import dump_json_to_unicode
|
from platformio.compat import dump_json_to_unicode
|
||||||
from platformio.package.exception import UnknownPackageError
|
from platformio.package.exception import UnknownPackageError
|
||||||
from platformio.package.manager.library import LibraryPackageManager
|
from platformio.package.manager.library import LibraryPackageManager
|
||||||
from platformio.package.meta import PackageSourceItem, PackageSpec
|
from platformio.package.meta import PackageItem, PackageSpec
|
||||||
from platformio.proc import is_ci
|
from platformio.proc import is_ci
|
||||||
from platformio.project.config import ProjectConfig
|
from platformio.project.config import ProjectConfig
|
||||||
from platformio.project.helpers import get_project_dir, is_platformio_project
|
from platformio.project.helpers import get_project_dir, is_platformio_project
|
||||||
@ -262,7 +262,7 @@ def lib_update( # pylint: disable=too-many-arguments
|
|||||||
for library in _libraries:
|
for library in _libraries:
|
||||||
spec = None
|
spec = None
|
||||||
pkg = None
|
pkg = None
|
||||||
if isinstance(library, PackageSourceItem):
|
if isinstance(library, PackageItem):
|
||||||
pkg = library
|
pkg = library
|
||||||
else:
|
else:
|
||||||
spec = PackageSpec(library)
|
spec = PackageSpec(library)
|
||||||
@ -284,9 +284,7 @@ def lib_update( # pylint: disable=too-many-arguments
|
|||||||
else:
|
else:
|
||||||
for library in _libraries:
|
for library in _libraries:
|
||||||
to_spec = (
|
to_spec = (
|
||||||
None
|
None if isinstance(library, PackageItem) else PackageSpec(library)
|
||||||
if isinstance(library, PackageSourceItem)
|
|
||||||
else PackageSpec(library)
|
|
||||||
)
|
)
|
||||||
lm.update(
|
lm.update(
|
||||||
library, to_spec=to_spec, only_check=only_check, silent=silent
|
library, to_spec=to_spec, only_check=only_check, silent=silent
|
||||||
|
@ -21,7 +21,7 @@ import click
|
|||||||
|
|
||||||
from platformio import app, compat, fs, util
|
from platformio import app, compat, fs, util
|
||||||
from platformio.package.exception import PackageException
|
from platformio.package.exception import PackageException
|
||||||
from platformio.package.meta import PackageSourceItem, PackageSpec
|
from platformio.package.meta import PackageItem, PackageSpec
|
||||||
from platformio.package.unpack import FileUnpacker
|
from platformio.package.unpack import FileUnpacker
|
||||||
from platformio.package.vcsclient import VCSClientFactory
|
from platformio.package.vcsclient import VCSClientFactory
|
||||||
|
|
||||||
@ -109,7 +109,7 @@ class PackageManagerInstallMixin(object):
|
|||||||
return pkg
|
return pkg
|
||||||
|
|
||||||
def _install_dependencies(self, pkg, silent=False):
|
def _install_dependencies(self, pkg, silent=False):
|
||||||
assert isinstance(pkg, PackageSourceItem)
|
assert isinstance(pkg, PackageItem)
|
||||||
manifest = self.load_manifest(pkg)
|
manifest = self.load_manifest(pkg)
|
||||||
if not manifest.get("dependencies"):
|
if not manifest.get("dependencies"):
|
||||||
return
|
return
|
||||||
@ -155,7 +155,7 @@ class PackageManagerInstallMixin(object):
|
|||||||
assert vcs.export()
|
assert vcs.export()
|
||||||
|
|
||||||
root_dir = self.find_pkg_root(tmp_dir, spec)
|
root_dir = self.find_pkg_root(tmp_dir, spec)
|
||||||
pkg_item = PackageSourceItem(
|
pkg_item = PackageItem(
|
||||||
root_dir,
|
root_dir,
|
||||||
self.build_metadata(
|
self.build_metadata(
|
||||||
root_dir, spec, vcs.get_current_revision() if vcs else None
|
root_dir, spec, vcs.get_current_revision() if vcs else None
|
||||||
@ -168,7 +168,7 @@ class PackageManagerInstallMixin(object):
|
|||||||
fs.rmtree(tmp_dir)
|
fs.rmtree(tmp_dir)
|
||||||
|
|
||||||
def _install_tmp_pkg(self, tmp_pkg):
|
def _install_tmp_pkg(self, tmp_pkg):
|
||||||
assert isinstance(tmp_pkg, PackageSourceItem)
|
assert isinstance(tmp_pkg, PackageItem)
|
||||||
# validate package version and declared requirements
|
# validate package version and declared requirements
|
||||||
if (
|
if (
|
||||||
tmp_pkg.metadata.spec.requirements
|
tmp_pkg.metadata.spec.requirements
|
||||||
@ -182,7 +182,7 @@ class PackageManagerInstallMixin(object):
|
|||||||
tmp_pkg.metadata,
|
tmp_pkg.metadata,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
dst_pkg = PackageSourceItem(
|
dst_pkg = PackageItem(
|
||||||
os.path.join(self.package_dir, tmp_pkg.get_safe_dirname())
|
os.path.join(self.package_dir, tmp_pkg.get_safe_dirname())
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -190,7 +190,7 @@ class PackageManagerInstallMixin(object):
|
|||||||
action = "overwrite"
|
action = "overwrite"
|
||||||
if tmp_pkg.metadata.spec.has_custom_name():
|
if tmp_pkg.metadata.spec.has_custom_name():
|
||||||
action = "overwrite"
|
action = "overwrite"
|
||||||
dst_pkg = PackageSourceItem(
|
dst_pkg = PackageItem(
|
||||||
os.path.join(self.package_dir, tmp_pkg.metadata.spec.name)
|
os.path.join(self.package_dir, tmp_pkg.metadata.spec.name)
|
||||||
)
|
)
|
||||||
elif dst_pkg.metadata and dst_pkg.metadata.spec.external:
|
elif dst_pkg.metadata and dst_pkg.metadata.spec.external:
|
||||||
@ -231,7 +231,7 @@ class PackageManagerInstallMixin(object):
|
|||||||
# move new source to the destination location
|
# move new source to the destination location
|
||||||
_cleanup_dir(dst_pkg.path)
|
_cleanup_dir(dst_pkg.path)
|
||||||
shutil.move(tmp_pkg.path, dst_pkg.path)
|
shutil.move(tmp_pkg.path, dst_pkg.path)
|
||||||
return PackageSourceItem(dst_pkg.path)
|
return PackageItem(dst_pkg.path)
|
||||||
|
|
||||||
if action == "detach-new":
|
if action == "detach-new":
|
||||||
target_dirname = "%s@%s" % (
|
target_dirname = "%s@%s" % (
|
||||||
@ -248,9 +248,9 @@ class PackageManagerInstallMixin(object):
|
|||||||
pkg_dir = os.path.join(self.package_dir, target_dirname)
|
pkg_dir = os.path.join(self.package_dir, target_dirname)
|
||||||
_cleanup_dir(pkg_dir)
|
_cleanup_dir(pkg_dir)
|
||||||
shutil.move(tmp_pkg.path, pkg_dir)
|
shutil.move(tmp_pkg.path, pkg_dir)
|
||||||
return PackageSourceItem(pkg_dir)
|
return PackageItem(pkg_dir)
|
||||||
|
|
||||||
# otherwise, overwrite existing
|
# otherwise, overwrite existing
|
||||||
_cleanup_dir(dst_pkg.path)
|
_cleanup_dir(dst_pkg.path)
|
||||||
shutil.move(tmp_pkg.path, dst_pkg.path)
|
shutil.move(tmp_pkg.path, dst_pkg.path)
|
||||||
return PackageSourceItem(dst_pkg.path)
|
return PackageItem(dst_pkg.path)
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
import os
|
import os
|
||||||
|
|
||||||
from platformio import fs
|
from platformio import fs
|
||||||
from platformio.package.meta import PackageSourceItem, PackageSpec
|
from platformio.package.meta import PackageItem, PackageSpec
|
||||||
|
|
||||||
|
|
||||||
class PackageManagerLegacyMixin(object):
|
class PackageManagerLegacyMixin(object):
|
||||||
@ -42,7 +42,9 @@ class PackageManagerLegacyMixin(object):
|
|||||||
return PackageSpec(name=manifest.get("name"))
|
return PackageSpec(name=manifest.get("name"))
|
||||||
|
|
||||||
def legacy_load_manifest(self, pkg):
|
def legacy_load_manifest(self, pkg):
|
||||||
assert isinstance(pkg, PackageSourceItem)
|
if not isinstance(pkg, PackageItem):
|
||||||
|
assert os.path.isdir(pkg)
|
||||||
|
pkg = PackageItem(pkg)
|
||||||
manifest = self.load_manifest(pkg)
|
manifest = self.load_manifest(pkg)
|
||||||
manifest["__pkg_dir"] = pkg.path
|
manifest["__pkg_dir"] = pkg.path
|
||||||
for key in ("name", "version"):
|
for key in ("name", "version"):
|
||||||
|
@ -19,7 +19,7 @@ import click
|
|||||||
|
|
||||||
from platformio import fs
|
from platformio import fs
|
||||||
from platformio.package.exception import UnknownPackageError
|
from platformio.package.exception import UnknownPackageError
|
||||||
from platformio.package.meta import PackageSourceItem, PackageSpec
|
from platformio.package.meta import PackageItem, PackageSpec
|
||||||
|
|
||||||
|
|
||||||
class PackageManagerUninstallMixin(object):
|
class PackageManagerUninstallMixin(object):
|
||||||
@ -73,7 +73,7 @@ class PackageManagerUninstallMixin(object):
|
|||||||
return pkg
|
return pkg
|
||||||
|
|
||||||
def _uninstall_dependencies(self, pkg, silent=False):
|
def _uninstall_dependencies(self, pkg, silent=False):
|
||||||
assert isinstance(pkg, PackageSourceItem)
|
assert isinstance(pkg, PackageItem)
|
||||||
manifest = self.load_manifest(pkg)
|
manifest = self.load_manifest(pkg)
|
||||||
if not manifest.get("dependencies"):
|
if not manifest.get("dependencies"):
|
||||||
return
|
return
|
||||||
|
@ -18,17 +18,13 @@ import click
|
|||||||
|
|
||||||
from platformio import util
|
from platformio import util
|
||||||
from platformio.package.exception import UnknownPackageError
|
from platformio.package.exception import UnknownPackageError
|
||||||
from platformio.package.meta import (
|
from platformio.package.meta import PackageItem, PackageOutdatedResult, PackageSpec
|
||||||
PackageOutdatedResult,
|
|
||||||
PackageSourceItem,
|
|
||||||
PackageSpec,
|
|
||||||
)
|
|
||||||
from platformio.package.vcsclient import VCSBaseException, VCSClientFactory
|
from platformio.package.vcsclient import VCSBaseException, VCSClientFactory
|
||||||
|
|
||||||
|
|
||||||
class PackageManagerUpdateMixin(object):
|
class PackageManagerUpdateMixin(object):
|
||||||
def outdated(self, pkg, spec=None):
|
def outdated(self, pkg, spec=None):
|
||||||
assert isinstance(pkg, PackageSourceItem)
|
assert isinstance(pkg, PackageItem)
|
||||||
assert not spec or isinstance(spec, PackageSpec)
|
assert not spec or isinstance(spec, PackageSpec)
|
||||||
assert os.path.isdir(pkg.path) and pkg.metadata
|
assert os.path.isdir(pkg.path) and pkg.metadata
|
||||||
|
|
||||||
|
@ -31,8 +31,8 @@ from platformio.package.manager._uninstall import PackageManagerUninstallMixin
|
|||||||
from platformio.package.manager._update import PackageManagerUpdateMixin
|
from platformio.package.manager._update import PackageManagerUpdateMixin
|
||||||
from platformio.package.manifest.parser import ManifestParserFactory
|
from platformio.package.manifest.parser import ManifestParserFactory
|
||||||
from platformio.package.meta import (
|
from platformio.package.meta import (
|
||||||
|
PackageItem,
|
||||||
PackageMetaData,
|
PackageMetaData,
|
||||||
PackageSourceItem,
|
|
||||||
PackageSpec,
|
PackageSpec,
|
||||||
PackageType,
|
PackageType,
|
||||||
)
|
)
|
||||||
@ -144,7 +144,7 @@ class BasePackageManager( # pylint: disable=too-many-public-methods
|
|||||||
return self.get_manifest_path(pkg_dir)
|
return self.get_manifest_path(pkg_dir)
|
||||||
|
|
||||||
def load_manifest(self, src):
|
def load_manifest(self, src):
|
||||||
path = src.path if isinstance(src, PackageSourceItem) else src
|
path = src.path if isinstance(src, PackageItem) else src
|
||||||
cache_key = "load_manifest-%s" % path
|
cache_key = "load_manifest-%s" % path
|
||||||
result = self.memcache_get(cache_key)
|
result = self.memcache_get(cache_key)
|
||||||
if result:
|
if result:
|
||||||
@ -191,11 +191,11 @@ class BasePackageManager( # pylint: disable=too-many-public-methods
|
|||||||
|
|
||||||
def get_installed(self):
|
def get_installed(self):
|
||||||
result = []
|
result = []
|
||||||
for name in os.listdir(self.package_dir):
|
for name in sorted(os.listdir(self.package_dir)):
|
||||||
pkg_dir = os.path.join(self.package_dir, name)
|
pkg_dir = os.path.join(self.package_dir, name)
|
||||||
if not os.path.isdir(pkg_dir):
|
if not os.path.isdir(pkg_dir):
|
||||||
continue
|
continue
|
||||||
pkg = PackageSourceItem(pkg_dir)
|
pkg = PackageItem(pkg_dir)
|
||||||
if not pkg.metadata:
|
if not pkg.metadata:
|
||||||
try:
|
try:
|
||||||
spec = self.build_legacy_spec(pkg_dir)
|
spec = self.build_legacy_spec(pkg_dir)
|
||||||
@ -216,7 +216,7 @@ class BasePackageManager( # pylint: disable=too-many-public-methods
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
def get_package(self, spec):
|
def get_package(self, spec):
|
||||||
if isinstance(spec, PackageSourceItem):
|
if isinstance(spec, PackageItem):
|
||||||
return spec
|
return spec
|
||||||
spec = self.ensure_spec(spec)
|
spec = self.ensure_spec(spec)
|
||||||
best = None
|
best = None
|
||||||
@ -243,8 +243,9 @@ class BasePackageManager( # pylint: disable=too-many-public-methods
|
|||||||
# external "URL" mismatch
|
# external "URL" mismatch
|
||||||
if spec.external:
|
if spec.external:
|
||||||
# local folder mismatch
|
# local folder mismatch
|
||||||
if spec.url == pkg.path or (
|
if os.path.realpath(spec.url) == os.path.realpath(pkg.path) or (
|
||||||
spec.url.startswith("file://") and pkg.path == spec.url[7:]
|
spec.url.startswith("file://")
|
||||||
|
and os.path.realpath(pkg.path) == os.path.realpath(spec.url[7:])
|
||||||
):
|
):
|
||||||
return True
|
return True
|
||||||
if spec.url != pkg.metadata.spec.url:
|
if spec.url != pkg.metadata.spec.url:
|
||||||
|
@ -315,7 +315,7 @@ class PackageMetaData(object):
|
|||||||
def __init__( # pylint: disable=redefined-builtin
|
def __init__( # pylint: disable=redefined-builtin
|
||||||
self, type, name, version, spec=None
|
self, type, name, version, spec=None
|
||||||
):
|
):
|
||||||
assert type in PackageType.items().values()
|
# assert type in PackageType.items().values()
|
||||||
if spec:
|
if spec:
|
||||||
assert isinstance(spec, PackageSpec)
|
assert isinstance(spec, PackageSpec)
|
||||||
self.type = type
|
self.type = type
|
||||||
@ -395,7 +395,7 @@ class PackageMetaData(object):
|
|||||||
return PackageMetaData(**data)
|
return PackageMetaData(**data)
|
||||||
|
|
||||||
|
|
||||||
class PackageSourceItem(object):
|
class PackageItem(object):
|
||||||
|
|
||||||
METAFILE_NAME = ".piopm"
|
METAFILE_NAME = ".piopm"
|
||||||
|
|
||||||
@ -406,7 +406,7 @@ class PackageSourceItem(object):
|
|||||||
self.metadata = self.load_meta()
|
self.metadata = self.load_meta()
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "PackageSourceItem <path={path} metadata={metadata}".format(
|
return "PackageItem <path={path} metadata={metadata}".format(
|
||||||
path=self.path, metadata=self.metadata
|
path=self.path, metadata=self.metadata
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ from platformio import fs
|
|||||||
from platformio.package.exception import PackageException
|
from platformio.package.exception import PackageException
|
||||||
from platformio.package.manifest.parser import ManifestFileType, ManifestParserFactory
|
from platformio.package.manifest.parser import ManifestFileType, ManifestParserFactory
|
||||||
from platformio.package.manifest.schema import ManifestSchema
|
from platformio.package.manifest.schema import ManifestSchema
|
||||||
from platformio.package.meta import PackageSourceItem
|
from platformio.package.meta import PackageItem
|
||||||
from platformio.package.unpack import FileUnpacker
|
from platformio.package.unpack import FileUnpacker
|
||||||
|
|
||||||
|
|
||||||
@ -37,7 +37,7 @@ class PackagePacker(object):
|
|||||||
".svn/",
|
".svn/",
|
||||||
".pio/",
|
".pio/",
|
||||||
"**/.pio/",
|
"**/.pio/",
|
||||||
PackageSourceItem.METAFILE_NAME,
|
PackageItem.METAFILE_NAME,
|
||||||
]
|
]
|
||||||
INCLUDE_DEFAULT = ManifestFileType.items().values()
|
INCLUDE_DEFAULT = ManifestFileType.items().values()
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user