`aria-*` boolean attributes serialize as the empty string
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 45/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- ruby
- Domaine
- accessibility
Piste de recherche
Lisez design/v2/follow-up-issues.md et inspectez le chemin de sérialisation de Base pour les attributs aria sur la branche 2.0. Exécutez la golden HTML suite et examinez les snapshots concernés du catalogue et des composants, notamment les séparateurs de breadcrumb, les points de suspension, CommandInput et les SVG décoratifs. C’est terminé lorsque les booléens aria sont rendus sous la forme "true" ou "false", comme décidé, que les snapshots 2.0 ont été réenregistrés et que leur diff a été examiné.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
- Where: the components that pass a boolean under the
ariahash:
aria: {hidden: true}inBreadcrumbSeparator,BreadcrumbEllipsisand
PaginationEllipsis(also reached throughDataTablePagination),
aria: {disabled: true}inBreadcrumbPage,aria_expanded: truein
CommandInput. The breadcrumb, pagination, data_table and command
snapshots carryaria-hidden="",aria-disabled=""oraria-expanded="".
Components that pass the String"true"—InputOtpSlot,
NativeSelectIcon,AlertDialogContent— already serialize correctly and
are not affected. - Effect: the ARIA value grammar accepts
true/false/undefined; an
empty string is invalid and browsers resolve it as not set. The breadcrumb
and pagination separators and ellipses are therefore exposed to assistive
technology, "current" breadcrumb items are not announced as disabled, and the
command input's expanded state is unset. This is Phlex's serialization of
trueunder a nested hash (a bare attribute), so any component that passes
a boolean there is affected — five today. - Fix: pass
"true"(a String) foraria-*attributes, or add a
serialization rule inBasethat stringifies booleans under thearia
key; re-record (on the 2.0 line) everything that changes and review the diff. - 2.0 note: spec §4.3 currently preserves this behaviour for parity
(true→""). The right 2.0 behaviour isaria-x="true"; decide it
explicitly and let the re-record (on the 2.0 line) show the blast radius.
Surfaced by the golden HTML suite (PR #536), which pins what 1.6 renders today — this defect included. Per maintainer decision (2026-09-19) main stays as is: this is addressed on the 2.0 line, and the golden snapshot that pins it is re-recorded there with the diff reviewed.
Source: design/v2/follow-up-issues.md.
- Langage dominant
- Ruby
- Étoiles
- 1k
- Forks
- 67
- Merge moyen
- 2 j 19 h
- PR mergées (30 j)
- 18
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de ruby-ui/ruby_ui
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 55/100
-
bug
Difficulté 1/5 1-3 heures Accessibilité débutants 35/100
Toutes les issues de ruby-ui/ruby_ui
Issues similaires
-
user-reported
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
Kong/developer.konghq.com#7316 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
TheOdinProject/curriculum#31408 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
CI: json 3.0.2 removed `quirks_mode`, breaking ActiveSupport's JSON encoder on every test job Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
bensheldon/good_job#1816 · 5 commentaires ·
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
notch8/utk_knapsack#148 ·