mirror of
https://github.com/platformio/platformio-core.git
synced 2025-07-30 10:07:14 +02:00
Moved configuration code to a separate function, re-use it for PIO Core+
This commit is contained in:
@ -80,40 +80,43 @@ def process_result(ctx, result, force, caller): # pylint: disable=W0613
|
|||||||
maintenance.on_platformio_end(ctx, result)
|
maintenance.on_platformio_end(ctx, result)
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def configure():
|
||||||
try:
|
if "cygwin" in system().lower():
|
||||||
if "cygwin" in system().lower():
|
raise exception.CygwinEnvDetected()
|
||||||
raise exception.CygwinEnvDetected()
|
|
||||||
|
|
||||||
# https://urllib3.readthedocs.org
|
# https://urllib3.readthedocs.org
|
||||||
# /en/latest/security.html#insecureplatformwarning
|
# /en/latest/security.html#insecureplatformwarning
|
||||||
|
try:
|
||||||
|
import urllib3
|
||||||
|
urllib3.disable_warnings()
|
||||||
|
except (AttributeError, ImportError):
|
||||||
|
pass
|
||||||
|
|
||||||
|
# handle PLATFORMIO_FORCE_COLOR
|
||||||
|
if str(os.getenv("PLATFORMIO_FORCE_COLOR", "")).lower() == "true":
|
||||||
try:
|
try:
|
||||||
import urllib3
|
# pylint: disable=protected-access
|
||||||
urllib3.disable_warnings()
|
click._compat.isatty = lambda stream: True
|
||||||
except (AttributeError, ImportError):
|
except: # pylint: disable=bare-except
|
||||||
pass
|
pass
|
||||||
|
|
||||||
# handle PLATFORMIO_FORCE_COLOR
|
# Handle IOError issue with VSCode's Terminal (Windows)
|
||||||
if str(os.getenv("PLATFORMIO_FORCE_COLOR", "")).lower() == "true":
|
click_echo_origin = [click.echo, click.secho]
|
||||||
try:
|
|
||||||
# pylint: disable=protected-access
|
|
||||||
click._compat.isatty = lambda stream: True
|
|
||||||
except: # pylint: disable=bare-except
|
|
||||||
pass
|
|
||||||
|
|
||||||
# Handle IOError issue with VSCode's Terminal (Windows)
|
def _safe_echo(origin, *args, **kwargs):
|
||||||
click_echo_origin = [click.echo, click.secho]
|
try:
|
||||||
|
click_echo_origin[origin](*args, **kwargs)
|
||||||
|
except IOError:
|
||||||
|
(sys.stderr.write if kwargs.get("err") else
|
||||||
|
sys.stdout.write)("%s\n" % (args[0] if args else ""))
|
||||||
|
|
||||||
def _safe_echo(origin, *args, **kwargs):
|
click.echo = lambda *args, **kwargs: _safe_echo(0, *args, **kwargs)
|
||||||
try:
|
click.secho = lambda *args, **kwargs: _safe_echo(1, *args, **kwargs)
|
||||||
click_echo_origin[origin](*args, **kwargs)
|
|
||||||
except IOError:
|
|
||||||
(sys.stderr.write if kwargs.get("err") else
|
|
||||||
sys.stdout.write)("%s\n" % (args[0] if args else ""))
|
|
||||||
|
|
||||||
click.echo = lambda *args, **kwargs: _safe_echo(0, *args, **kwargs)
|
|
||||||
click.secho = lambda *args, **kwargs: _safe_echo(1, *args, **kwargs)
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
try:
|
||||||
|
configure()
|
||||||
cli(None, None, None)
|
cli(None, None, None)
|
||||||
except Exception as e: # pylint: disable=W0703
|
except Exception as e: # pylint: disable=W0703
|
||||||
if not isinstance(e, exception.ReturnErrorCode):
|
if not isinstance(e, exception.ReturnErrorCode):
|
||||||
|
Reference in New Issue
Block a user