### Summary

Ansible thows an error just after processing the install dependency map.
```Process install dependency map
ERROR! Unexpected Exception, this is probably a bug: 'float' object has no attribute 'startswith'
```

### Issue Type

Bug Report

### Component Name

ansible-galaxy

### Ansible Version

```console
[cloud-user@test-centos ~]$ ansible --version
ansible [core 2.12.0]
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/home/cloud-user/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.9/site-packages/ansible
  ansible collection location = /home/cloud-user/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible
  python version = 3.9.8 (main, Nov  8 2021, 00:00:00) [GCC 11.2.1 20211019 (Red Hat 11.2.1-6)]
  jinja version = 2.11.3
  libyaml = True
```


### Configuration

```console
[cloud-user@test-centos ~]$ ansible-config dump --only-changed
[cloud-user@test-centos ~]$
```


### OS / Environment

CentOS Stream 9

### Steps to Reproduce

<!--- Paste example playbooks or commands between quotes below -->
```yaml (paste below)
galaxy.yml:
namespace: my
name: cool-collection
version: 1.0
authors: David *****
readme: README.md
```
Install a collection from a git repo with this galaxy.yml:
`ansible-galaxy collection install git+https://.../my_project.git,ISSUE-1`


### Expected Results

The collection is installed

### Actual Results

```console
[cloud-user@test-centos ~]$ ansible-galaxy -vvvv collection install git+https://....git,ISSUE-1
ansible-galaxy [core 2.12.0]
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/home/cloud-user/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.9/site-packages/ansible
  ansible collection location = /home/cloud-user/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible-galaxy
  python version = 3.9.8 (main, Nov  8 2021, 00:00:00) [GCC 11.2.1 20211019 (Red Hat 11.2.1-6)]
  jinja version = 2.11.3
  libyaml = True
Using /etc/ansible/ansible.cfg as config file
Cloning into '/home/cloud-user/.ansible/tmp/ansible-local-12630phroh0cw/tmpelcczl4o/netbox-addp5e_slda'...
Username for 'https://...': my_user
Password for 'https://my_user@my_gitsrv': 
remote: Enumerating objects: 425, done.
remote: Counting objects: 100% (61/61), done.
remote: Compressing objects: 100% (29/29), done.
remote: Total 425 (delta 18), reused 52 (delta 14), pack-reused 364
Receiving objects: 100% (425/425), 47.25 KiB | 11.81 MiB/s, done.
Resolving deltas: 100% (178/178), done.
Branch 'ISSUE-1' set up to track remote branch 'ISSUE-1' from 'origin'.
Switched to a new branch 'ISSUE-1'
Starting galaxy collection install process
Process install dependency map
ERROR! Unexpected Exception, this is probably a bug: 'float' object has no attribute 'startswith'
the full traceback was:

Traceback (most recent call last):
  File "/usr/bin/ansible-galaxy", line 128, in <module>
    exit_code = cli.run()
  File "/usr/lib/python3.9/site-packages/ansible/cli/galaxy.py", line 567, in run
    return context.CLIARGS['func']()
  File "/usr/lib/python3.9/site-packages/ansible/cli/galaxy.py", line 86, in method_wrapper
    return wrapped_method(*args, **kwargs)
  File "/usr/lib/python3.9/site-packages/ansible/cli/galaxy.py", line 1201, in execute_install
    self._execute_install_collection(
  File "/usr/lib/python3.9/site-packages/ansible/cli/galaxy.py", line 1228, in _execute_install_collection
    install_collections(
  File "/usr/lib/python3.9/site-packages/ansible/galaxy/collection/__init__.py", line 513, in install_collections
    dependency_map = _resolve_depenency_map(
  File "/usr/lib/python3.9/site-packages/ansible/galaxy/collection/__init__.py", line 1327, in _resolve_depenency_map
    return collection_dep_resolver.resolve(
  File "/usr/lib/python3.9/site-packages/resolvelib/resolvers.py", line 453, in resolve
    state = resolution.resolve(requirements, max_rounds=max_rounds)
  File "/usr/lib/python3.9/site-packages/resolvelib/resolvers.py", line 347, in resolve
    failure_causes = self._attempt_to_pin_criterion(name, criterion)
  File "/usr/lib/python3.9/site-packages/resolvelib/resolvers.py", line 216, in _attempt_to_pin_criterion
    satisfied = all(
  File "/usr/lib/python3.9/site-packages/resolvelib/resolvers.py", line 217, in <genexpr>
    self._p.is_satisfied_by(r, candidate)
  File "/usr/lib/python3.9/site-packages/ansible/galaxy/dependency_resolution/providers.py", line 280, in is_satisfied_by
    requirement.ver.startswith('<') or
AttributeError: 'float' object has no attribute 'startswith'
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
:returns: Indication whether the `candidate` is a viable \
                  solution to the `requirement`.
        """
        
        
        
        
        
        
        allow_pre_release = self._with_pre_releases or not (
            requirement.ver == '*' or
            requirement.ver.startswith('<') or
            requirement.ver.startswith('>') or
            requirement.ver.startswith('!=')
        ) or self._is_user_requested(candidate)
        if is_pre_release(candidate.ver) and not allow_pre_release:
            return False
        
        
        if (
                requirement.is_virtual or
                candidate.is_virtual or
                requirement.ver == '*'
        ):
            return True
        return meets_requirements(
            version=candidate.ver,
            requirements=requirement.ver,
        )
    def get_dependencies(self, candidate):