diff --git a/platformio/builder/tools/piolib.py b/platformio/builder/tools/piolib.py index bd9e319a..83e04f69 100644 --- a/platformio/builder/tools/piolib.py +++ b/platformio/builder/tools/piolib.py @@ -30,7 +30,7 @@ from SCons.Script import DefaultEnvironment # pylint: disable=import-error from platformio import exception, fs from platformio.builder.tools import platformio as piotool -from platformio.compat import IS_WINDOWS, MISSING, hashlib_encode_data, string_types +from platformio.compat import IS_WINDOWS, hashlib_encode_data, string_types from platformio.http import HTTPClientError, InternetIsOffline from platformio.package.exception import ( MissingPackageManifestError, @@ -576,10 +576,11 @@ class ArduinoLibBuilder(LibBuilderBase): # pylint: disable=no-member if not self._manifest.get("dependencies"): return LibBuilderBase.lib_ldf_mode.fget(self) + missing = object() global_value = self.env.GetProjectConfig().getraw( - "env:" + self.env["PIOENV"], "lib_ldf_mode", MISSING + "env:" + self.env["PIOENV"], "lib_ldf_mode", missing ) - if global_value != MISSING: + if global_value != missing: return LibBuilderBase.lib_ldf_mode.fget(self) # automatically enable C++ Preprocessing in runtime # (Arduino IDE has this behavior) @@ -831,10 +832,11 @@ class PlatformIOLibBuilder(LibBuilderBase): @property def lib_archive(self): + missing = object() global_value = self.env.GetProjectConfig().getraw( - "env:" + self.env["PIOENV"], "lib_archive", MISSING + "env:" + self.env["PIOENV"], "lib_archive", missing ) - if global_value != MISSING: + if global_value != missing: return self.env.GetProjectConfig().get( "env:" + self.env["PIOENV"], "lib_archive" ) diff --git a/platformio/debug/config/base.py b/platformio/debug/config/base.py index 7e966cc5..a5867340 100644 --- a/platformio/debug/config/base.py +++ b/platformio/debug/config/base.py @@ -16,7 +16,7 @@ import json import os from platformio import fs, proc, util -from platformio.compat import MISSING, string_types +from platformio.compat import string_types from platformio.debug.exception import DebugInvalidOptionsError from platformio.project.config import ProjectConfig from platformio.project.helpers import load_build_metadata @@ -96,8 +96,9 @@ class DebugConfigBase: # pylint: disable=too-many-instance-attributes @property def init_break(self): - result = self.env_options.get("debug_init_break", MISSING) - if result != MISSING: + missed = object() + result = self.env_options.get("debug_init_break", missed) + if result != missed: return result result = None if not result: