mirror of
https://github.com/platformio/platformio-core.git
synced 2025-07-30 01:57:13 +02:00
Merge branch 'release/v6.1.15'
This commit is contained in:
@ -18,6 +18,12 @@ Unlock the true potential of embedded software development with
|
|||||||
PlatformIO's collaborative ecosystem, embracing declarative principles,
|
PlatformIO's collaborative ecosystem, embracing declarative principles,
|
||||||
test-driven methodologies, and modern toolchains for unrivaled success.
|
test-driven methodologies, and modern toolchains for unrivaled success.
|
||||||
|
|
||||||
|
6.1.15 (2024-04-25)
|
||||||
|
~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
* Resolved an issue where the |LDF| couldn't locate a library dependency declared via version control system repository (`issue #4885 <https://github.com/platformio/platformio-core/issues/4885>`_)
|
||||||
|
* Resolved an issue related to the inaccurate detection of the Clang compiler (`pull #4897 <https://github.com/platformio/platformio-core/pull/4897>`_)
|
||||||
|
|
||||||
6.1.14 (2024-03-21)
|
6.1.14 (2024-03-21)
|
||||||
~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
2
docs
2
docs
Submodule docs updated: 670721e923...0125f8d5be
2
examples
2
examples
Submodule examples updated: f06e9656a4...9b39344183
@ -12,7 +12,7 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
VERSION = (6, 1, 14)
|
VERSION = (6, 1, 15)
|
||||||
__version__ = ".".join([str(s) for s in VERSION])
|
__version__ = ".".join([str(s) for s in VERSION])
|
||||||
|
|
||||||
__title__ = "platformio"
|
__title__ = "platformio"
|
||||||
|
@ -177,4 +177,4 @@ ATTRS{product}=="*CMSIS-DAP*", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID
|
|||||||
ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2107", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_PORT_IGNORE}="1"
|
ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2107", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_PORT_IGNORE}="1"
|
||||||
|
|
||||||
# Espressif USB JTAG/serial debug unit
|
# Espressif USB JTAG/serial debug unit
|
||||||
ATTRS{idVendor}=="303a", ATTR{idProduct}=="1001", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_PORT_IGNORE}="1"
|
ATTRS{idVendor}=="303a", ATTRS{idProduct}=="1001", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_PORT_IGNORE}="1"
|
||||||
|
@ -39,7 +39,7 @@ from platformio.package.manifest.parser import (
|
|||||||
ManifestParserError,
|
ManifestParserError,
|
||||||
ManifestParserFactory,
|
ManifestParserFactory,
|
||||||
)
|
)
|
||||||
from platformio.package.meta import PackageCompatibility, PackageItem
|
from platformio.package.meta import PackageCompatibility, PackageItem, PackageSpec
|
||||||
from platformio.project.options import ProjectOptions
|
from platformio.project.options import ProjectOptions
|
||||||
|
|
||||||
|
|
||||||
@ -332,9 +332,17 @@ class LibBuilderBase:
|
|||||||
qualifiers = {"name": pkg.metadata.name, "version": pkg.metadata.version}
|
qualifiers = {"name": pkg.metadata.name, "version": pkg.metadata.version}
|
||||||
if pkg.metadata.spec and pkg.metadata.spec.owner:
|
if pkg.metadata.spec and pkg.metadata.spec.owner:
|
||||||
qualifiers["owner"] = pkg.metadata.spec.owner
|
qualifiers["owner"] = pkg.metadata.spec.owner
|
||||||
return PackageCompatibility.from_dependency(
|
dep_qualifiers = {
|
||||||
{k: v for k, v in dependency.items() if k in ("owner", "name", "version")}
|
k: v for k, v in dependency.items() if k in ("owner", "name", "version")
|
||||||
).is_compatible(PackageCompatibility(**qualifiers))
|
}
|
||||||
|
if (
|
||||||
|
"version" in dep_qualifiers
|
||||||
|
and not PackageSpec(dep_qualifiers["version"]).requirements
|
||||||
|
):
|
||||||
|
del dep_qualifiers["version"]
|
||||||
|
return PackageCompatibility.from_dependency(dep_qualifiers).is_compatible(
|
||||||
|
PackageCompatibility(**qualifiers)
|
||||||
|
)
|
||||||
|
|
||||||
def get_search_files(self):
|
def get_search_files(self):
|
||||||
return [
|
return [
|
||||||
|
@ -20,19 +20,23 @@ from platformio.proc import exec_command
|
|||||||
|
|
||||||
|
|
||||||
@util.memoized()
|
@util.memoized()
|
||||||
def GetCompilerType(env):
|
def GetCompilerType(env): # pylint: disable=too-many-return-statements
|
||||||
if env.subst("$CC").endswith("-gcc"):
|
CC = env.subst("$CC")
|
||||||
|
if CC.endswith("-gcc"):
|
||||||
return "gcc"
|
return "gcc"
|
||||||
|
if os.path.basename(CC) == "clang":
|
||||||
|
return "clang"
|
||||||
try:
|
try:
|
||||||
|
|
||||||
sysenv = os.environ.copy()
|
sysenv = os.environ.copy()
|
||||||
sysenv["PATH"] = str(env["ENV"]["PATH"])
|
sysenv["PATH"] = str(env["ENV"]["PATH"])
|
||||||
result = exec_command([env.subst("$CC"), "-v"], env=sysenv)
|
result = exec_command([CC, "-v"], env=sysenv)
|
||||||
except OSError:
|
except OSError:
|
||||||
return None
|
return None
|
||||||
if result["returncode"] != 0:
|
if result["returncode"] != 0:
|
||||||
return None
|
return None
|
||||||
output = "".join([result["out"], result["err"]]).lower()
|
output = "".join([result["out"], result["err"]]).lower()
|
||||||
if "clang" in output and "LLVM" in output:
|
if "clang version" in output:
|
||||||
return "clang"
|
return "clang"
|
||||||
if "gcc" in output:
|
if "gcc" in output:
|
||||||
return "gcc"
|
return "gcc"
|
||||||
|
@ -357,6 +357,8 @@ Packages
|
|||||||
- Description"""
|
- Description"""
|
||||||
)
|
)
|
||||||
for name, options in dict(sorted(packages.items())).items():
|
for name, options in dict(sorted(packages.items())).items():
|
||||||
|
if name == "toolchain-gccarmnoneeab": # aceinna typo fix
|
||||||
|
name = name + "i"
|
||||||
package = REGCLIENT.get_package(
|
package = REGCLIENT.get_package(
|
||||||
"tool", options.get("owner", "platformio"), name
|
"tool", options.get("owner", "platformio"), name
|
||||||
)
|
)
|
||||||
|
Reference in New Issue
Block a user