[Docs] Add "Feature Matrix" or "Capability Status" table to Provider pages
- Dominant language
- Python
- Stars
- 2.1k
- Forks
- 931
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 4
Description
### Is your feature request related to a problem? Please describe.
Currently, the "Supported Providers" documentation lists which drivers exist (e.g., EC2, Azure ARM, GCE), but it is difficult for a user to determine the **depth of support** for each provider without diving into the source code.
**The Problem:**
A user looking at the [Compute Providers page](https://libcloud.apache.org/supported_providers.html) sees that "Amazon EC2" is supported. However, they cannot easily verify:
1. Does it support recent features like IMDSv2 (Instance Metadata Service v2)?
2. Does it support Spot Instance requests via the unified API?
3. Are the `list_sizes` or `list_images` methods hardcoded or dynamically fetched?
This opacity makes it hard for architects to evaluate Libcloud against the native SDKs (Boto3, Azure SDK) for their specific needs.
### Describe the solution you'd like
I propose enhancing the documentation for major providers (Compute/Storage) to include a **Capability Status Matrix**.
**Proposed Documentation Update:**
On the individual provider pages (or a centralized matrix), we should track the support status of standard API methods.
*Example Table:*
| Feature | Support Status | Notes |
| :--- | :--- | :--- |
| `create_node` | ✅ Full | Supports user_data, SSH keys |
| `list_sizes` | ⚠️ Partial | Hardcoded list (last updated 2024) |
| `deploy_node` | ✅ Full | |
| `ex_start_node` | ✅ Extension | Provider-specific extension |
| `IPv6 Support` | ❌ No | |
### Describe alternatives you've considered
* **Status Quo:** Users must install the library and run `dir(driver)` or inspect the source code to find capabilities.
* **Automated Badge:** Generating this matrix automatically from the test suite (e.g., based on which methods are overridden in the driver class). This would be the ideal long-term solution.
### Additional Context
As cloud providers add features rapidly, Libcloud's value proposition is "unification." Clear documentation on *what* is unified vs. what requires extension methods (`ex_*`) is critical for adoption.
Contributor guide
Research direction
Start with the Supported Providers page at libcloud.apache.org/supported_providers.html and review the individual Compute and Storage provider pages. Determine whether the matrix belongs on provider pages or in a centralized document, then inventory standard methods and provider-specific ex_* extensions from the relevant drivers. Done means the selected major providers have documented capability statuses and notes, with the scope and maintenance approach made explicit.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cloud, documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100