def iter_properties(iterable):
    """Split lines on '=' and ':=' ignoring blank lines and comments.
    """
    for line in iterable:
        if not line.isspace() and not line.startswith('#'):
            key, sep, val = line.partition(':=')
            if not sep:
                key, sep, val = line.partition('=')
            if not key.isspace() and sep:
                yield key.strip(), val.strip()
