forked from platformio/platformio-core
Switch to FS JSON loader
This commit is contained in:
@ -15,6 +15,7 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
from platformio import fs
|
||||
from platformio.package.exception import PackageException
|
||||
from platformio.package.meta import PackageItem, PackageSpec
|
||||
|
||||
@ -27,9 +28,7 @@ class PackageManagerSymlinkMixin(object):
|
||||
@classmethod
|
||||
def resolve_symlink(cls, path):
|
||||
assert cls.is_symlink(path)
|
||||
data = None
|
||||
with open(path, "r", encoding="utf-8") as fp:
|
||||
data = json.load(fp)
|
||||
data = fs.load_json(path)
|
||||
spec = PackageSpec(**data["spec"])
|
||||
assert spec.symlink
|
||||
pkg_dir = spec.uri[10:]
|
||||
|
@ -21,6 +21,7 @@ from urllib.parse import urlparse
|
||||
|
||||
import semantic_version
|
||||
|
||||
from platformio import fs
|
||||
from platformio.compat import get_object_members, hashlib_encode_data, string_types
|
||||
from platformio.package.manifest.parser import ManifestFileType
|
||||
from platformio.package.version import cast_version_to_semver
|
||||
@ -415,15 +416,14 @@ class PackageMetaData(object):
|
||||
|
||||
@staticmethod
|
||||
def load(path):
|
||||
with open(path, encoding="utf8") as fp:
|
||||
data = json.load(fp)
|
||||
if data["spec"]:
|
||||
# legacy support for Core<5.3 packages
|
||||
if "url" in data["spec"]:
|
||||
data["spec"]["uri"] = data["spec"]["url"]
|
||||
del data["spec"]["url"]
|
||||
data["spec"] = PackageSpec(**data["spec"])
|
||||
return PackageMetaData(**data)
|
||||
data = fs.load_json(path)
|
||||
if data["spec"]:
|
||||
# legacy support for Core<5.3 packages
|
||||
if "url" in data["spec"]:
|
||||
data["spec"]["uri"] = data["spec"]["url"]
|
||||
del data["spec"]["url"]
|
||||
data["spec"] = PackageSpec(**data["spec"])
|
||||
return PackageMetaData(**data)
|
||||
|
||||
|
||||
class PackageItem(object):
|
||||
|
@ -12,7 +12,6 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import json
|
||||
import os
|
||||
import subprocess
|
||||
from hashlib import sha1
|
||||
@ -162,6 +161,5 @@ def _load_cached_project_ide_data(project_dir, env_names):
|
||||
for name in env_names:
|
||||
if not os.path.isfile(os.path.join(build_dir, name, "idedata.json")):
|
||||
continue
|
||||
with open(os.path.join(build_dir, name, "idedata.json"), encoding="utf8") as fp:
|
||||
result[name] = json.load(fp)
|
||||
result[name] = fs.load_json(os.path.join(build_dir, name, "idedata.json"))
|
||||
return result
|
||||
|
Reference in New Issue
Block a user