##### SUMMARY

The list subcommand throws a lot of warnings about a missing version if the collection was not built and installed via an artifact. This information can often be obtained in the galaxy.yml though, so it would make sense to fallback to that ...

```
(ansible_base) [vagrant@centos8 ~]$ ansible-galaxy collection list
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/azure/azcollection' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cyberark/bizdev' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/google/cloud' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/netbox_community/ansible_modules' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/splunk/enterprise_security' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/ansible/netcommon' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/check_point/mgmt' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/f5networks/f5_modules' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/ibm/qradar' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/openstack/cloud' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/vyos/vyos' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/arista/eos' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cisco/iosxr' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cisco/ucs' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cisco/aci' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cisco/meraki' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cisco/intersight' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cisco/mso' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cisco/ios' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/cisco/nxos' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/fortinet/fortios' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/junipernetworks/junos' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/purestorage/flasharray' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/purestorage/flashblade' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/awx/awx' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/community/grafana' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/community/kubernetes' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/community/amazon' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/community/vmware' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/community/general' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/gavinfish/azuretest' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/netapp/aws' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/netapp/elementsw' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/netapp/ontap' does not have a MANIFEST.json file, cannot detect version.
[WARNING]: Collection at '/home/vagrant/.ansible/collections/ansible_collections/servicenow/servicenow' does not have a MANIFEST.json file, cannot detect version.

# /home/vagrant/.ansible/collections/ansible_collections
Collection                       Version
-------------------------------- -------
ansible.netcommon                *      
arista.eos                       *      
awx.awx                          *      
azure.azcollection               *      
check_point.mgmt                 *      
cisco.aci                        *      
cisco.intersight                 *      
cisco.ios                        *      
cisco.iosxr                      *      
cisco.meraki                     *      
cisco.mso                        *      
cisco.nxos                       *      
cisco.ucs                        *      
community.amazon                 *      
community.general                *      
community.grafana                *      
community.kubernetes             *      
community.vmware                 *      
cyberark.bizdev                  *      
f5networks.f5_modules            *      
fortinet.fortios                 *      
gavinfish.azuretest              *      
google.cloud                     *      
ibm.qradar                       *      
junipernetworks.junos            *      
netapp.aws                       *      
netapp.elementsw                 *      
netapp.ontap                     *      
netbox_community.ansible_modules *      
openstack.cloud                  *      
purestorage.flasharray           *      
purestorage.flashblade           *      
servicenow.servicenow            *      
splunk.enterprise_security       *      
vyos.vyos                        *
```


##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
ansible-galaxy collection list

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
devel
```


display.display("Process install dependency map")
        with _display_progress():
            dependency_map = _build_dependency_map(collections, existing_collections, b_temp_path, apis,
                                                   validate_certs, force, force_deps, no_deps,
                                                   allow_pre_release=allow_pre_release)
        display.display("Starting collection install process")
        with _display_progress():
            for collection in dependency_map.values():
                try:
                    collection.install(output_path, b_temp_path)
                except AnsibleError as err:
                    if ignore_errors:
                        display.warning("Failed to install collection %s but skipping due to --ignore-errors being set. "
                                        "Error: %s" % (to_text(collection), to_text(err)))
                    else:
                        raise
def validate_collection_name(name):
    """
    Validates the collection name as an input from the user or a requirements file fit the requirements.
    :param name: The input name with optional range specifier split by ':'.
    :return: The input value, required for argparse validation.
    """
    collection, dummy, dummy = name.partition(':')
    if AnsibleCollectionRef.is_valid_collection_name(collection):
        return name
    raise AnsibleError("Invalid collection name '%s', "
                       "name must be in the format <namespace>.<collection>. \n"
                       "Please make sure namespace and collection name contains "
                       "characters from [a-zA-Z0-9_] only." % name)
def validate_collection_path(collection_path):