forked from platformio/platformio-core
Fixed a bug when the system environment variable does not override a project configuration option // Resolve #4125
This commit is contained in:
@ -16,6 +16,7 @@ PlatformIO Core 5
|
|||||||
- Upgraded build engine to the SCons 4.3 (`release notes <https://github.com/SCons/scons/blob/rel_4.3.0/CHANGES.txt>`__)
|
- Upgraded build engine to the SCons 4.3 (`release notes <https://github.com/SCons/scons/blob/rel_4.3.0/CHANGES.txt>`__)
|
||||||
- Fixed an issue with the CLion project generator when a macro contains a space (`issue #4102 <https://github.com/platformio/platformio-core/issues/4102>`_)
|
- Fixed an issue with the CLion project generator when a macro contains a space (`issue #4102 <https://github.com/platformio/platformio-core/issues/4102>`_)
|
||||||
- Fixed an issue with the NetBeans project generator when the path to PlatformIO contains a space (`issue #4096 <https://github.com/platformio/platformio-core/issues/4096>`_)
|
- Fixed an issue with the NetBeans project generator when the path to PlatformIO contains a space (`issue #4096 <https://github.com/platformio/platformio-core/issues/4096>`_)
|
||||||
|
- Fixed a bug when the system environment variable does not override a project configuration option (`issue #4125 <https://github.com/platformio/platformio-core/issues/4125>`_)
|
||||||
|
|
||||||
5.2.3 (2021-11-05)
|
5.2.3 (2021-11-05)
|
||||||
~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
@ -271,7 +271,7 @@ class ProjectConfigBase(object):
|
|||||||
if value == MISSING:
|
if value == MISSING:
|
||||||
value = ""
|
value = ""
|
||||||
value += ("\n" if value else "") + envvar_value
|
value += ("\n" if value else "") + envvar_value
|
||||||
elif envvar_value and value == MISSING:
|
elif envvar_value:
|
||||||
value = envvar_value
|
value = envvar_value
|
||||||
|
|
||||||
if value == MISSING:
|
if value == MISSING:
|
||||||
|
@ -226,7 +226,7 @@ def test_sysenv_options(config):
|
|||||||
"-DSYSENVDEPS1 -DSYSENVDEPS2",
|
"-DSYSENVDEPS1 -DSYSENVDEPS2",
|
||||||
]
|
]
|
||||||
assert config.get("env:base", "upload_port") == "/dev/sysenv/port"
|
assert config.get("env:base", "upload_port") == "/dev/sysenv/port"
|
||||||
assert config.get("env:extra_2", "upload_port") == "/dev/extra_2/port"
|
assert config.get("env:extra_2", "upload_port") == "/dev/sysenv/port"
|
||||||
assert config.get("env:base", "build_unflags") == ["-DREMOVE_MACRO"]
|
assert config.get("env:base", "build_unflags") == ["-DREMOVE_MACRO"]
|
||||||
|
|
||||||
# env var as option
|
# env var as option
|
||||||
@ -244,10 +244,16 @@ def test_sysenv_options(config):
|
|||||||
"upload_port",
|
"upload_port",
|
||||||
]
|
]
|
||||||
|
|
||||||
# sysenv
|
# sysenv dirs
|
||||||
custom_core_dir = os.path.join(os.getcwd(), "custom")
|
custom_core_dir = os.path.join(os.getcwd(), "custom-core")
|
||||||
|
custom_src_dir = os.path.join(os.getcwd(), "custom-src")
|
||||||
|
custom_build_dir = os.path.join(os.getcwd(), "custom-build")
|
||||||
os.environ["PLATFORMIO_HOME_DIR"] = custom_core_dir
|
os.environ["PLATFORMIO_HOME_DIR"] = custom_core_dir
|
||||||
|
os.environ["PLATFORMIO_SRC_DIR"] = custom_src_dir
|
||||||
|
os.environ["PLATFORMIO_BUILD_DIR"] = custom_build_dir
|
||||||
assert config.get("platformio", "core_dir") == os.path.realpath(custom_core_dir)
|
assert config.get("platformio", "core_dir") == os.path.realpath(custom_core_dir)
|
||||||
|
assert config.get("platformio", "src_dir") == os.path.realpath(custom_src_dir)
|
||||||
|
assert config.get("platformio", "build_dir") == os.path.realpath(custom_build_dir)
|
||||||
|
|
||||||
# cleanup system environment variables
|
# cleanup system environment variables
|
||||||
del os.environ["PLATFORMIO_BUILD_FLAGS"]
|
del os.environ["PLATFORMIO_BUILD_FLAGS"]
|
||||||
@ -255,6 +261,8 @@ def test_sysenv_options(config):
|
|||||||
del os.environ["PLATFORMIO_UPLOAD_PORT"]
|
del os.environ["PLATFORMIO_UPLOAD_PORT"]
|
||||||
del os.environ["__PIO_TEST_CNF_EXTRA_FLAGS"]
|
del os.environ["__PIO_TEST_CNF_EXTRA_FLAGS"]
|
||||||
del os.environ["PLATFORMIO_HOME_DIR"]
|
del os.environ["PLATFORMIO_HOME_DIR"]
|
||||||
|
del os.environ["PLATFORMIO_SRC_DIR"]
|
||||||
|
del os.environ["PLATFORMIO_BUILD_DIR"]
|
||||||
|
|
||||||
|
|
||||||
def test_getraw_value(config):
|
def test_getraw_value(config):
|
||||||
|
Reference in New Issue
Block a user