def _parse_version(version: str) -> Iterator[int]:
        """Yield each part of a human-readable version string as an integer.

        :param version: human-readable software version, e.g. ``2.5.4.dev1``.

        :yields: each part of *version* as an integer.

        :Example:

            >>> tuple(_parse_version('2.5.4.dev1'))
            (2, 5, 4)
        """
        for e in version.split('.'):
            try:
                yield int(e)
            except ValueError:
                break
Yield each part of a human-readable version string as an integer.

        :param version: human-readable software version, e.g. ``2.5.4.dev1``.

        :yields: each part of *version* as an integer.

        :Example:

            >>> tuple(_parse_version('2.5.4.dev1'))
            (2, 5, 4)
        
patroni/__init__.py