def _requirement_to_str_lowercase_name(requirement):
    """Formats a packaging.requirements.Requirement with a lowercase name."""
    parts = [requirement.name.lower()]
    if requirement.extras:
        parts.append('[{0}]'.format(','.join(sorted(requirement.extras))))
    if requirement.specifier:
        parts.append(str(requirement.specifier))
    if requirement.url:
        parts.append('@ {0}'.format(requirement.url))
    if requirement.marker:
        parts.append('; {0}'.format(requirement.marker))
    return ''.join(parts)
