Rename meta.PackageSourceItem or PackageItem

This commit is contained in:
Ivan Kravets
2020-08-14 16:38:46 +03:00
parent ff8ec43a28
commit 5f3ad70190
9 changed files with 35 additions and 38 deletions

View File

@ -40,7 +40,7 @@ from platformio.package.manifest.parser import (
ManifestParserError,
ManifestParserFactory,
)
from platformio.package.meta import PackageSourceItem
from platformio.package.meta import PackageItem
from platformio.project.options import ProjectOptions
@ -1019,7 +1019,7 @@ def ConfigureProjectLibBuilder(env):
margin = "| " * (level)
for lb in root.depbuilders:
title = "<%s>" % lb.name
pkg = PackageSourceItem(lb.path)
pkg = PackageItem(lb.path)
if pkg.metadata:
title += " %s" % pkg.metadata.version
elif lb.version:

View File

@ -30,7 +30,7 @@ from platformio.commands.lib.helpers import (
from platformio.compat import dump_json_to_unicode
from platformio.package.exception import UnknownPackageError
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.project.config import ProjectConfig
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:
spec = None
pkg = None
if isinstance(library, PackageSourceItem):
if isinstance(library, PackageItem):
pkg = library
else:
spec = PackageSpec(library)
@ -284,9 +284,7 @@ def lib_update( # pylint: disable=too-many-arguments
else:
for library in _libraries:
to_spec = (
None
if isinstance(library, PackageSourceItem)
else PackageSpec(library)
None if isinstance(library, PackageItem) else PackageSpec(library)
)
lm.update(
library, to_spec=to_spec, only_check=only_check, silent=silent

View File

@ -21,7 +21,7 @@ import click
from platformio import app, compat, fs, util
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.vcsclient import VCSClientFactory
@ -109,7 +109,7 @@ class PackageManagerInstallMixin(object):
return pkg
def _install_dependencies(self, pkg, silent=False):
assert isinstance(pkg, PackageSourceItem)
assert isinstance(pkg, PackageItem)
manifest = self.load_manifest(pkg)
if not manifest.get("dependencies"):
return
@ -155,7 +155,7 @@ class PackageManagerInstallMixin(object):
assert vcs.export()
root_dir = self.find_pkg_root(tmp_dir, spec)
pkg_item = PackageSourceItem(
pkg_item = PackageItem(
root_dir,
self.build_metadata(
root_dir, spec, vcs.get_current_revision() if vcs else None
@ -168,7 +168,7 @@ class PackageManagerInstallMixin(object):
fs.rmtree(tmp_dir)
def _install_tmp_pkg(self, tmp_pkg):
assert isinstance(tmp_pkg, PackageSourceItem)
assert isinstance(tmp_pkg, PackageItem)
# validate package version and declared requirements
if (
tmp_pkg.metadata.spec.requirements
@ -182,7 +182,7 @@ class PackageManagerInstallMixin(object):
tmp_pkg.metadata,
)
)
dst_pkg = PackageSourceItem(
dst_pkg = PackageItem(
os.path.join(self.package_dir, tmp_pkg.get_safe_dirname())
)
@ -190,7 +190,7 @@ class PackageManagerInstallMixin(object):
action = "overwrite"
if tmp_pkg.metadata.spec.has_custom_name():
action = "overwrite"
dst_pkg = PackageSourceItem(
dst_pkg = PackageItem(
os.path.join(self.package_dir, tmp_pkg.metadata.spec.name)
)
elif dst_pkg.metadata and dst_pkg.metadata.spec.external:
@ -231,7 +231,7 @@ class PackageManagerInstallMixin(object):
# move new source to the destination location
_cleanup_dir(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":
target_dirname = "%s@%s" % (
@ -248,9 +248,9 @@ class PackageManagerInstallMixin(object):
pkg_dir = os.path.join(self.package_dir, target_dirname)
_cleanup_dir(pkg_dir)
shutil.move(tmp_pkg.path, pkg_dir)
return PackageSourceItem(pkg_dir)
return PackageItem(pkg_dir)
# otherwise, overwrite existing
_cleanup_dir(dst_pkg.path)
shutil.move(tmp_pkg.path, dst_pkg.path)
return PackageSourceItem(dst_pkg.path)
return PackageItem(dst_pkg.path)

View File

@ -15,7 +15,7 @@
import os
from platformio import fs
from platformio.package.meta import PackageSourceItem, PackageSpec
from platformio.package.meta import PackageItem, PackageSpec
class PackageManagerLegacyMixin(object):
@ -42,7 +42,9 @@ class PackageManagerLegacyMixin(object):
return PackageSpec(name=manifest.get("name"))
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["__pkg_dir"] = pkg.path
for key in ("name", "version"):

View File

@ -19,7 +19,7 @@ import click
from platformio import fs
from platformio.package.exception import UnknownPackageError
from platformio.package.meta import PackageSourceItem, PackageSpec
from platformio.package.meta import PackageItem, PackageSpec
class PackageManagerUninstallMixin(object):
@ -73,7 +73,7 @@ class PackageManagerUninstallMixin(object):
return pkg
def _uninstall_dependencies(self, pkg, silent=False):
assert isinstance(pkg, PackageSourceItem)
assert isinstance(pkg, PackageItem)
manifest = self.load_manifest(pkg)
if not manifest.get("dependencies"):
return

View File

@ -18,17 +18,13 @@ import click
from platformio import util
from platformio.package.exception import UnknownPackageError
from platformio.package.meta import (
PackageOutdatedResult,
PackageSourceItem,
PackageSpec,
)
from platformio.package.meta import PackageItem, PackageOutdatedResult, PackageSpec
from platformio.package.vcsclient import VCSBaseException, VCSClientFactory
class PackageManagerUpdateMixin(object):
def outdated(self, pkg, spec=None):
assert isinstance(pkg, PackageSourceItem)
assert isinstance(pkg, PackageItem)
assert not spec or isinstance(spec, PackageSpec)
assert os.path.isdir(pkg.path) and pkg.metadata

View File

@ -31,8 +31,8 @@ from platformio.package.manager._uninstall import PackageManagerUninstallMixin
from platformio.package.manager._update import PackageManagerUpdateMixin
from platformio.package.manifest.parser import ManifestParserFactory
from platformio.package.meta import (
PackageItem,
PackageMetaData,
PackageSourceItem,
PackageSpec,
PackageType,
)
@ -144,7 +144,7 @@ class BasePackageManager( # pylint: disable=too-many-public-methods
return self.get_manifest_path(pkg_dir)
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
result = self.memcache_get(cache_key)
if result:
@ -191,11 +191,11 @@ class BasePackageManager( # pylint: disable=too-many-public-methods
def get_installed(self):
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)
if not os.path.isdir(pkg_dir):
continue
pkg = PackageSourceItem(pkg_dir)
pkg = PackageItem(pkg_dir)
if not pkg.metadata:
try:
spec = self.build_legacy_spec(pkg_dir)
@ -216,7 +216,7 @@ class BasePackageManager( # pylint: disable=too-many-public-methods
return result
def get_package(self, spec):
if isinstance(spec, PackageSourceItem):
if isinstance(spec, PackageItem):
return spec
spec = self.ensure_spec(spec)
best = None
@ -243,8 +243,9 @@ class BasePackageManager( # pylint: disable=too-many-public-methods
# external "URL" mismatch
if spec.external:
# local folder mismatch
if spec.url == pkg.path or (
spec.url.startswith("file://") and pkg.path == spec.url[7:]
if os.path.realpath(spec.url) == os.path.realpath(pkg.path) or (
spec.url.startswith("file://")
and os.path.realpath(pkg.path) == os.path.realpath(spec.url[7:])
):
return True
if spec.url != pkg.metadata.spec.url:

View File

@ -315,7 +315,7 @@ class PackageMetaData(object):
def __init__( # pylint: disable=redefined-builtin
self, type, name, version, spec=None
):
assert type in PackageType.items().values()
# assert type in PackageType.items().values()
if spec:
assert isinstance(spec, PackageSpec)
self.type = type
@ -395,7 +395,7 @@ class PackageMetaData(object):
return PackageMetaData(**data)
class PackageSourceItem(object):
class PackageItem(object):
METAFILE_NAME = ".piopm"
@ -406,7 +406,7 @@ class PackageSourceItem(object):
self.metadata = self.load_meta()
def __repr__(self):
return "PackageSourceItem <path={path} metadata={metadata}".format(
return "PackageItem <path={path} metadata={metadata}".format(
path=self.path, metadata=self.metadata
)

View File

@ -23,7 +23,7 @@ from platformio import fs
from platformio.package.exception import PackageException
from platformio.package.manifest.parser import ManifestFileType, ManifestParserFactory
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
@ -37,7 +37,7 @@ class PackagePacker(object):
".svn/",
".pio/",
"**/.pio/",
PackageSourceItem.METAFILE_NAME,
PackageItem.METAFILE_NAME,
]
INCLUDE_DEFAULT = ManifestFileType.items().values()