Other synapseclient dependencies were unpinneed with SYNPY-1076, but upgrading keyring may require testing beyond what is covered in unit and integration tests.
keyring 12.0.2 has no floating dependencies (on Linux it depends on SecretStorage < 3 which is already maxed out) so its downstream dependencies at least shouldn't shift underneath it.
keyring < 15 uses a deprecated collections import that will no longer work in Python 3.10 so will upgrade to >= 15.