New Features
- Added Metadata API client, `Regions` model and API resource. See [\483](https://github.com/dwavesystems/dwave-cloud-client/pull/483).
- Added multi-region support to `dwave.cloud.Client`. See [\483](https://github.com/dwavesystems/dwave-cloud-client/pull/483).
New config option for region selection is called `region`, and environment variable is called `DWAVE_API_REGION`.
New config option for specifying Metadata API endpoint URL is exposed as `metadata_api_endpoint` and `DWAVE_METADATA_API_ENDPOINT`.
List of available regions available with `dwave.cloud.Client.get_regions`.
- Add context manager protocol support to `dwave.cloud.api.client.DWaveAPIClient` to ensure resources are easily cleaned up (session closed). Note that `close()` method is available for cases when context manager pattern is inconvenient. See [\492](https://github.com/dwavesystems/dwave-cloud-client/pull/492).
Similarly, we add `close()` method to resources in `dwave.cloud.api.resource.*`, in addition to the existing context manager protocol support.
- Add `--region` and `--endpoint` options to the relevant `dwave` CLI subcommands: `ping`, `solvers`, `sample`, `upload`. See [\496](https://github.com/dwavesystems/dwave-cloud-client/pull/496).
Upgrade Notes
- To access solvers in a non-default region (na-west-1), you can use the `region` config option and `DWAVE_API_REGION` environment variable.
- `dwave.cloud.config.load_config` used to return some minimal (but arbitrary) set of always-set options (set to `None` if undefined). Now it returns just the options set either in config file, environment, or kwargs.
Bug Fixes
- Fix `dwave.cloud.api.constants.ProblemType` enumeration to include the CQM problem type. See [\491](https://github.com/dwavesystems/dwave-cloud-client/pull/491).