Require Python >= 3.6.1 (#27226)

https://github.com/home-assistant/architecture/issues/278
This commit is contained in:
Ville Skyttä 2019-10-05 22:20:11 +03:00 committed by Paulus Schoutsen
parent a8567a746b
commit 25bfdbc8df
3 changed files with 29 additions and 13 deletions

View File

@ -97,17 +97,6 @@ async def async_from_config_dict(
stop = time()
_LOGGER.info("Home Assistant initialized in %.2fs", stop - start)
if sys.version_info[:3] < (3, 6, 1):
msg = (
"Python 3.6.0 support is deprecated and will "
"be removed in the first release after October 2. Please "
"upgrade Python to 3.6.1 or higher."
)
_LOGGER.warning(msg)
hass.components.persistent_notification.async_create(
msg, "Python version", "python_version"
)
return hass

View File

@ -4,7 +4,7 @@ MINOR_VERSION = 101
PATCH_VERSION = "0.dev0"
__short_version__ = "{}.{}".format(MAJOR_VERSION, MINOR_VERSION)
__version__ = "{}.{}".format(__short_version__, PATCH_VERSION)
REQUIRED_PYTHON_VER = (3, 6, 0)
REQUIRED_PYTHON_VER = (3, 6, 1)
# Format for platform files
PLATFORM_FORMAT = "{platform}.{domain}"

View File

@ -2,6 +2,7 @@
from unittest.mock import patch, PropertyMock
from homeassistant import __main__ as main
from homeassistant.const import REQUIRED_PYTHON_VER
@patch("sys.exit")
@ -31,6 +32,32 @@ def test_validate_python(mock_exit):
mock_exit.reset_mock()
with patch("sys.version_info", new_callable=PropertyMock(return_value=(3, 6, 0))):
with patch(
"sys.version_info",
new_callable=PropertyMock(
return_value=(REQUIRED_PYTHON_VER[0] - 1,) + REQUIRED_PYTHON_VER[1:]
),
):
main.validate_python()
assert mock_exit.called is True
mock_exit.reset_mock()
with patch(
"sys.version_info", new_callable=PropertyMock(return_value=REQUIRED_PYTHON_VER)
):
main.validate_python()
assert mock_exit.called is False
mock_exit.reset_mock()
with patch(
"sys.version_info",
new_callable=PropertyMock(
return_value=(REQUIRED_PYTHON_VER[:2]) + (REQUIRED_PYTHON_VER[2] + 1,)
),
):
main.validate_python()
assert mock_exit.called is False
mock_exit.reset_mock()