Merge branch 'release/v6.1.13'

This commit is contained in:
Ivan Kravets
2024-01-12 12:52:01 +02:00
6 changed files with 26 additions and 7 deletions

View File

@ -17,6 +17,11 @@ 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.13 (2024-01-12)
~~~~~~~~~~~~~~~~~~~
* Expanded support for SCons variables declared in the legacy format ``${SCONS_VARNAME}`` (`issue #4828 <https://github.com/platformio/platformio-core/issues/4828>`_)
6.1.12 (2024-01-10) 6.1.12 (2024-01-10)
~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~

2
docs

Submodule docs updated: c3657d698d...3f02152561

View File

@ -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, 12) VERSION = (6, 1, 13)
__version__ = ".".join([str(s) for s in VERSION]) __version__ = ".".join([str(s) for s in VERSION])
__title__ = "platformio" __title__ = "platformio"

View File

@ -35,7 +35,7 @@ def get_pip_dependencies():
home = [ home = [
# PIO Home requirements # PIO Home requirements
"ajsonrpc == 1.2.*", "ajsonrpc == 1.2.*",
"starlette >=0.19, <0.35", "starlette >=0.19, <0.36",
"uvicorn %s" % ("== 0.16.0" if PY36 else ">=0.16, <0.26"), "uvicorn %s" % ("== 0.16.0" if PY36 else ">=0.16, <0.26"),
"wsproto == 1.*", "wsproto == 1.*",
] ]

View File

@ -164,6 +164,7 @@ class ProjectConfigBase:
@staticmethod @staticmethod
def get_section_scope(section): def get_section_scope(section):
assert section
return section.split(":", 1)[0] if ":" in section else section return section.split(":", 1)[0] if ":" in section else section
def walk_options(self, root_section): def walk_options(self, root_section):
@ -343,8 +344,11 @@ class ProjectConfigBase:
section, option = match.group(1), match.group(2) section, option = match.group(1), match.group(2)
# handle built-in variables # handle built-in variables
if section is None and option in self.BUILTIN_VARS: if section is None:
return self.BUILTIN_VARS[option]() if option in self.BUILTIN_VARS:
return self.BUILTIN_VARS[option]()
# SCons varaibles
return f"${{{option}}}"
# handle system environment variables # handle system environment variables
if section == "sysenv": if section == "sysenv":

View File

@ -657,13 +657,17 @@ build_dir = /tmp/pio-$PROJECT_HASH
data_dir = $PROJECT_DIR/assets data_dir = $PROJECT_DIR/assets
[env:myenv] [env:myenv]
build_flags = -D UTIME=${UNIX_TIME} build_flags =
-D UTIME=${UNIX_TIME}
-I ${PROJECTSRC_DIR}/hal
-Wl,-Map,${BUILD_DIR}/${PROGNAME}.map
test_testing_command = test_testing_command =
${platformio.packages_dir}/tool-simavr/bin/simavr ${platformio.packages_dir}/tool-simavr/bin/simavr
-m -m
atmega328p atmega328p
-f -f
16000000L 16000000L
${UPLOAD_PORT and "-p "+UPLOAD_PORT}
${platformio.build_dir}/${this.__env__}/firmware.elf ${platformio.build_dir}/${this.__env__}/firmware.elf
""" """
) )
@ -672,8 +676,14 @@ test_testing_command =
os.path.join("$PROJECT_DIR", "assets") os.path.join("$PROJECT_DIR", "assets")
) )
assert config.get("env:myenv", "build_flags")[0][-10:].isdigit() assert config.get("env:myenv", "build_flags")[0][-10:].isdigit()
assert config.get("env:myenv", "build_flags")[1] == "-I ${PROJECTSRC_DIR}/hal"
assert (
config.get("env:myenv", "build_flags")[2]
== "-Wl,-Map,${BUILD_DIR}/${PROGNAME}.map"
)
testing_command = config.get("env:myenv", "test_testing_command") testing_command = config.get("env:myenv", "test_testing_command")
assert "$" not in " ".join(testing_command) assert "$" not in testing_command[0]
assert testing_command[5] == '${UPLOAD_PORT and "-p "+UPLOAD_PORT}'
def test_extends_order(tmp_path: Path): def test_extends_order(tmp_path: Path):