def construct_version_string(major, minor, micro, dev=None):
    """
    Construct version tag: "major.minor.micro" (or if 'dev' is specified: "major.minor.micro-dev").
    """
    version_tag = f"{major}.{minor}.{micro}"
    if dev is not None:
        version_tag += f"-{dev}"
    return version_tag