Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a linter to check the images' alt text #117

Merged
merged 6 commits into from
Dec 16, 2024

Conversation

arnaucasau
Copy link
Contributor

In order to meet the IBM Accessibility Requirements for the API docs, we need to ensure that all images have appropriate alt text so that users can understand any meaningful visuals. The alt text should serve the same purpose as the images on the page, conveying the same meaning rather than describing visual characteristics. In addition, if an image contains important words for understanding the content, the alt text should include those words as well.

This PR adds a linter to check that all images have alt text. The current invalid images, if any, have been included in an allowlist that will help us to not break CI before the text is added.

If the script detects an image without alt text, it will show an error indicating the file where the image is located and the line where we are using a sphinx directive like .. image:: or .. plot:: that generates an image. Example:

💔 Some images are missing the alt text

Errors found in qiskit_ibm_runtime/fake_provider/__init__.py:
- Error in line 34: .. plot::

Alt text is crucial for making documentation accessible to all users. It should serve the same purpose as the images on the page, conveying the same meaning rather than describing visual characteristics. When an image contains words that are important to understanding the content, the alt text should include those words as well.

To fix the error, the :alt: [Your text here] option must be added under the lines indicated in the error messages. However, If the .. plot:: directive is used, but no image is generated, you can use the option :nofigs:.

Co-authored-by: Eric Arellano <14852634+Eric-Arellano@users.noreply.github.com>
@arnaucasau arnaucasau marked this pull request as draft December 5, 2024 08:43
@arnaucasau arnaucasau marked this pull request as ready for review December 10, 2024 15:59
@caleb-johnson
Copy link
Collaborator

Thanks @arnaucasau , so it seems we don't have any problematic images since I don't see an allowlist?

@caleb-johnson
Copy link
Collaborator

Could you please pull main into this branch to clear up the current CI failure

@arnaucasau
Copy link
Contributor Author

arnaucasau commented Dec 10, 2024

Thanks for fixing CI @caleb-johnson! Exactly, all the images are okay in this case :)

@Eric-Arellano Eric-Arellano merged commit 9b57485 into Qiskit:main Dec 16, 2024
10 checks passed
@Eric-Arellano Eric-Arellano added the stable backport potential Doesn't affect the API label Dec 16, 2024
mergify bot pushed a commit that referenced this pull request Dec 16, 2024
In order to meet the [IBM Accessibility Requirements](https://www.ibm.com/able/requirements/requirements) for the API docs, we need to ensure that all images have appropriate alt text so that users can understand any meaningful visuals. The alt text should serve the same purpose as the images on the page, conveying the same meaning rather than describing visual characteristics. In addition, if an image contains important words for understanding the content, the alt text should include those words as well.

This PR adds a linter to check that all images have alt text. The current invalid images, if any, have been included in an allowlist that will help us to not break CI before the text is added.

If the script detects an image without alt text, it will show an error indicating the file where the image is located and the line where we are using a sphinx directive like `.. image::` or `.. plot::` that generates an image. Example:

```
💔 Some images are missing the alt text

Errors found in qiskit_ibm_runtime/fake_provider/__init__.py:
- Error in line 34: .. plot::

Alt text is crucial for making documentation accessible to all users. It should serve the same purpose as the images on the page, conveying the same meaning rather than describing visual characteristics. When an image contains words that are important to understanding the content, the alt text should include those words as well.
```

To fix the error, the `:alt: [Your text here]` option must be added under the lines indicated in the error messages. However, If the `.. plot::` directive is used, but no image is generated, you can use the option `:nofigs:`.

(cherry picked from commit 9b57485)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stable backport potential Doesn't affect the API
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants