basnijholt / miflora

☘️🌑🌼πŸ₯€πŸ‘ Mi Flora Plant sensor Python package
MIT License
362 stars 99 forks source link

typing requirement breaks Python 3.8 and above #144

Closed wolph closed 3 years ago

wolph commented 4 years ago

When typing installed it breaks pip on Python 3.8

The result:

  Traceback (most recent call last):
    File "runpy.py", line 193, in _run_module_as_main
      return _run_code(code, main_globals, None,
    File "runpy.py", line 86, in _run_code
      exec(code, run_globals)
    File "pip/__main__.py", line 16, in <module>
      from pip._internal.cli.main import main as _main  # isort:skip # noqa
    File "pip/_internal/cli/main.py", line 10, in <module>
      from pip._internal.cli.autocompletion import autocomplete
    File "pip/_internal/cli/autocompletion.py", line 9, in <module>
      from pip._internal.cli.main_parser import create_main_parser
    File "pip/_internal/cli/main_parser.py", line 7, in <module>
      from pip._internal.cli import cmdoptions
    File "pip/_internal/cli/cmdoptions.py", line 24, in <module>
      from pip._internal.exceptions import CommandError
    File "pip/_internal/exceptions.py", line 10, in <module>
      from pip._vendor.six import iteritems
    File "pip/_vendor/__init__.py", line 62, in <module>
      vendored("cachecontrol")
    File "pip/_vendor/__init__.py", line 33, in vendored
      __import__(modulename, globals(), locals(), level=0)
    File "cachecontrol/__init__.py", line 9, in <module>
      from .wrapper import CacheControl
    File "cachecontrol/wrapper.py", line 1, in <module>
      from .adapter import CacheControlAdapter
    File "cachecontrol/adapter.py", line 5, in <module>
      from requests.adapters import HTTPAdapter
    File "requests/__init__.py", line 112, in <module>
      from . import utils
    File "requests/utils.py", line 25, in <module>
      from . import certs
    File "requests/certs.py", line 15, in <module>
      from certifi import where
    File "certifi/__init__.py", line 1, in <module>
      from .core import contents, where
    File "certifi/core.py", line 12, in <module>
      from importlib.resources import read_text
    File "importlib/resources.py", line 11, in <module>
      from typing import Iterable, Iterator, Optional, Set, Union   # noqa: F401
    File "typing.py", line 1357, in <module>
      class Callable(extra=collections_abc.Callable, metaclass=CallableMeta):
    File "typing.py", line 1005, in __new__
      self._abc_registry = extra._abc_registry
  AttributeError: type object 'Callable' has no attribute '_abc_registry'