Releases: dequelabs/axe-core
Releases · dequelabs/axe-core
Release 4.2.1
Bug Fixes
- aria-allowed-attr: pass aria-label on some HTML elements (#2935) (695aa77)
- treat input with no role as textbox (#2929) (de18030)
- autocomplete-appropriate: pass for autocomplete=username and type=email (#2896) (8b478c8)
- getStandards: Read standards from utils (#2903) (52ad4c6)
- required-parent: Allow *item > group > *item nesting (#2898) (3acd229)
- types: make
evaluate
check optional (#2902) (75fabfe)
Release 4.2.0
Features
- add axe.frameMessenger with configurable allowedOrigins (#2880) (b27bab3)
- aria-allowed-attr: add ARIA 1.2 prohibited attrs check (#2764) (4a77e88)
- empty-table-header: new rule to flag empty table headers (#2811) (813ee7e)
- frame-focusable-content: new rule to test iframes with tabindex=-1 do not have focusable content (#2785) (aeb044c)
- locale: missing translations for DE (#2704) (f312994)
- locale: Polish translation (#2677) (c46979f)
- nested-interactive: new rule to flag nested interactive elements (#2691) (13a7cf1)
- role-text: add role-text rule (#2702) (7c05162)
- setup/teardown: add functions to setup and teardown axe-core internal data, deprecate axe._tree (#2738) (9d19f24)
- standards: add graphics roles (#2761) (22032cc)
- standards/aria-roles: add presentational children property (#2689) (78c239c)
- utils.getRule: add function to get rule by id (#2724) (9d0af53)
- utils/matches: support selectors level 4 :not and :is (#2742) (21d9b0e)
- virtual-node: add attrNames property which returns list of attribute names (#2741) (1d864b4)
Bug Fixes
- aria-allowed-attr: error when generic elements use aria-label and aria-labelledy (#2766) (64379e1)
- aria-required-children: allow group and rowgroup roles (#2661) (5a264e4)
- aria-required-children: only match for roles that require children (#2703) (95de169)
- aria-valid-attr-value: pass for aria-errormessage when aria-invalid is not set or false (#2721) (93a765c)
- aria-valid-attr-value: report when aria-labelledby ref is not in DOM (#2723) (116eb06)
- aria-valid-attr-value: return false when int type attribute uses invalid values (#2710) (ce9917e)
- bypass: mark as needs review rather than failure (#2818) (bb41b3e)
- focus-order-semantics: allow role=tooltip to pass (#2871) (dc526d8)
- heading-order: handle iframe as first result (#2876) (33428d8)
- respondable: Avoid message duplication with messageId (#2816) (4bd0acf)
- respondable: work on iframes in shadow DOM (#2857) (38cad94)
- avoid 'undefined' showing in check messages (#2779) (3beb0b1)
- properly translate checks when building axe.js using --lang (#2848) (76545b0)
- aria-required-parent: only match for roles that require parents (#2707) (ce8281e)
- color-contrast: account for text client rects that start outside the parent container (#2682) (a4e4a34)
- color-contrast-matches: do not pass empty string to getElementById (#2739) (0b0fec2)
- frame-title: update rule description to be more descriptive (#2735) (159e25b)
- heading-order: allow partial context to pass (#2622) (f8baee6)
- landmark-complementary-is-top-level: allow aside inside main (#2740) (9388c96)
- metadata: consistenct use of 'must' and 'should' (#2770) (603b612)
- region: allow role=alertdialog as region (#2660) (b928df7)
- select-name: fix typo in accessible name help (#2676) (6b916b9)
- to-grid/get-headers: work with rowspan=0 (#2722) (508190b)
- types: Add noHtml option (#2810) (c03c826)
- utils: fix warning thrown by Webpack (#2843) (0826177), closes #2840
- utils: remove attributes from source string (#2803) (8e8c4fa)
- add noHtml to axe.configure (#2789) (5c8dec8)
- do not allow postMessage with axe version of x.y.z (#2790) (5acda82)
Release 4.1.4
Release 4.1.3
Release 4.1.2
Release 4.1.1
Release 4.1.0
Features
- new-rule: check that treeitem role has an accessible name (#2615) (5e95153)
- Add aria-dialog-name (#2609) (b0e14b0)
- aria-toggle-field-name: add option role (#2605) (0af0551)
- checks: deprecate role-none and role-presentation for presentational-role (#2503) (cef54a0)
- get-role: add noPresentational option (#2549) (4f39299), closes #1792
- imports: deprecate axios (#2542) (82d43a0)
- label,select-name: allow placeholder to pass label rule, add select-name rule (#2448) (1315f8e)
- new-rule: ARIA links, buttons, menuitems have an accessible name (#2571) (9476a1f)
- new-rule: aria-tooltip-name (#2548) (d00f378)
- new-rule: check that meter role has an accessible name (#2607) (3ca2f04)
- new-rule: check that progressbars have an accessible name (#2555) (dd0b44a)
- presentation-role-conflict: create rule to flag elements with role conflict resolution (#2440) (e4edffc)
- rule-matches: depreacte window-is-top-matches for is-intiator-matches (#2531) (db2be93)
- standards: add superclassRole to ariaRoles (#2600) (a5e9ce0)
- standards: add superclassRole to dpubRoles (#2606) (1b66930)
- utils: deprecate get/set-scroll-state (#2581) (3c4827f)
- valid-langs: deprecate validLangs, add isValidLangs, reduce file size (#2527) (8a699ec)
Bug Fixes
- commons/get-text-element-stack: account for newline characters when text is larger than container (#2631) (3c2429b)
- Update ACT rule tags (#2625) (c640d4f)
- aria-errormessage: allow aria-live="polite" on aria-errormessage target (926b6a8)
- aria-errormessage: allow aria-live=polite on aria-errormessage target (#2597) (0d5cfb1)
- aria-roles: add group to menuitemradio context (#2518) (52b89f1)
- aria-roles: Add WAI-ARIA 1.2 roles (#2544) (635b084), closes #2107 #2107 #2107 #2107
- attr-non-space-content-evaluate: Split no attribute and empty attribute message (#2495) (5f822f4)
- audit: updated axe.reset() to reset branding, application, and tagExcludes. (#2537) (828864b)
- autocomplete-valid: allow type=tel for appropriate cc types (#2575) (ae21713)
- checks/aria: Mark elements missing from aria-errormessage for review (#2550) (8f9a035), closes #2460
- color-contrast: allow small text shadows to serve as text outline (#2627) (432e1f3)
- color-contrast: mark elements with pseudo content as needs review (#2613) (fcdbdbc)
- color-contrast: properly handle scrolling text (#2619) (984e7e2)
- docs/rules: add missing category tags to rules metadata (#2569) (285c442), closes #2554
- explicit-label: work with multiple labels (#2573) (d26f106)
- get-headers: fix for rowspan and colspan (#2545) (3f02d14)
- heading-order: evaluate headings from iframes in DOM order (#2572) (46f6628)
- implilcit-role: use type property instead of attribute to resolve input role (#2547) (35e853d), closes #2514
- link-name: pass landmark content as link text (#2617) (e77992e)
- name-rules: ignore when explicit roles don't require a name (#2629) (52fb138)
- region: allow role=dialog and svg elements outside regions (#2586) (fab58d4)
- region: treat iframes as regions (#2614) (936db81)
- rule: add check node to the check result object (#2608) (b188911)
- scrollable-region-focusalbe: do not fail for combobox pattern (#2601) (ac71a57)
- deprecate aria-form-field-name-matches for no-name-method-matches (#2584) (8be89e3)
- do not allow fallback content for objects (#2525) (486eafe)
Release v4.0.2
Bug Fixes
- color-contrast: dont error for floating element (#2444) (45eb746)
- i18n: proofreading of the french translations (#2485) (ebd0407), closes #2484
- implicit-role: return gridcell for td child of grid or treegrid (#2501) (0553d4d)
- label: pass when role none or presentation (#2464) (1d3c2fc), closes #2458
- link-name: fix regression where link was not named from title attribute (#2492) (b86c73b)
- required-parent: fail if intermediate role is not the required parent (#2494) (522865c)
- svg-non-empty-title: update fail message to indicate if the title element is empty or missing (#2462) (9598656), closes #2452
- valid-lang: fail when lang attribute contains only whitespace (#2504) (8455a7f)
Release 4.0.1
Release 4.0.0
Breaking Changes
The following rules were deprecated in axe-core 3.x, and are removed in 4.0:
- aria-dpub-role-fallback
- checkboxgroup
- layout-table
- radiogroup
- video-description
The following checks were deprecated in axe-core 3.x, and are removed in 4.0:
- aria/implicit-role-fallback
- forms/fieldset
- forms/group-labelledby
- media/description
- tables/has-caption
- tables/has-summary
- tables/has-th
Features
- add layout-table-matches method (#2400) (d7ba70f)
- aria/get-roles-by-type: deprecate in favor of standards/get-aria-roles-by-type (#2362) (c0c37ea)
- aria/lookupTable, aria-allowed-attr: deprecate aria.lookupTable and passing allowed attributes to aria-allowed-attr (#2395) (739d1b1)
- avoid-inline-spacing: add option for which css properties to look at (#2244) (93c027a)
- checks: normalize check options to alway be an object (#2219) (da12da7)
- checks,rules: remove deprecated checks and rules (#2214) (317545a)
- closest: VirtualNode implementation of Element.closest. Deprecate commons.dom.findUp and commons.dom.findUpVirtual (#2139) (493dd22)
- color-contrast, utils: add more options to color-contrast, add utils.deepMerge, deprecate commons.color.hasValidContrastRatio (#2256) (49fdb46)
- commons/aria: deprecate getRole({ noImplicit }) for getExplicitRole() (#2294) (a2873ea)
- commons/standards: create the commons/standards object for helper functions against the standards table (#2358) (6dce974)
- duplicate-img-label: add option for parentSelector (#2216) (8906806)
- get-role: add presentation role resolution and inheritance (#2281) (e207190)
- get-role: work with standards object (#2367) (1b20faf)
- globals: deduce required window and document globals from context (#2308) (61bac69)
- has-descendant, page-no-duplicate: move page-has-elm and page-no-duplicate to generic check (#2229) (59125a0)
- has-lang: add option for which attributes to look at (#2239) (e69c46a)
- has-text-content: add generic check has-text-content (#2234) (60ddc65)
- i18n: add Basque (eu) translation (#1964) (176cf82)
- matcher: allow regex string to be parsed as regex (#2324) (321b2d1)
- matches: add explicitRole, implicitRole, and semanticRole matches functions (#2286) (30efbff)
- matches-definition: add generic check matches-definition (#2233) (20467aa)
- metadata-function-map: add metadata function map to support check evaulate functions as an id string (#2162) (ec9b931)
- non-space-content: switch all non-empty checks to new generic check (#2215) (7ce7b00)
- object-alt,accessible-text: object-alt rule and accessible text to work with serial virtual nodes with children (e8e17e4)
- options: add ancestry CSS selector to nodes (#2389) (f2cccf5)
- region: add option to match nodes as region (#2249) (b544554)
- required-attrs: deprecate options to pass more required attrs (797ee34)
- rule: add reviewOnFail option to have rule return as needs review instead of violation (#2235) (bb72acd)
- rule: optional impact on rules (#2393) (e48c1eb)
- scope-value: add options for valid scope values (#2245) (44269ec)
- standards: add ariaRoles standard (#2328) (70efbc0)
- standards: add dpub-roles spec (#2332) (7ec3185)
- standards: add get-aria-roles-supporting-name-from-content and deprecate aria/get-roles-with-name-from-content (#2363) (240b528)
- standards: add get-elements-by-content-type and implicit-html-roles (#2375) (f1e0848)
- add "ACT" tag for published W3C ACT rules (#2382) (cf11b64)
- standards: add html-elms spec (#2333) (1d6a888)
- standards: create standards object and ariaAttrs (#2315) (48610de)
- utils.getFlattenTree: default to documentElement (#2260) (8b14ccc)
- valid-lang: add option for which attributes to look at (#2240) (ffee19e)
- update SC tags for
label
rule (#2037) (c7113fc)