Skip to content

Releases: dequelabs/axe-core

Release 4.10.0

29 Jul 16:21
c49c8ea
Compare
Choose a tag to compare

This axe-core release introduces a new rule for testing the HTML summary element. Additionally, a number of false positives have been fixed. Upgrading to this release may therefore both increase, or decrease the number of issues found on a website. Most likely the impact of upgrading from axe-core 4.9.2 to axe-core 4.10.0 should be minimal.

Features

  • new-rule: summary elements must have an accessible name (#4511) (0d8a99e), closes #4510

Bug Fixes

  • aria-allowed-attr: allow aria-multiline=false for element with contenteditable (#4537) (f019068)
  • aria-allowed-attr: allow aria-required=false when normally not allowed (#4532) (2e242e1)
  • aria-prohibited-attr: allow aria-label/ledby on descendants of widget (#4541) (07c5d91)
  • aria-roledescription: keep disabled with { runOnly: 'wcag2a' } (#4526) (5b4cb9d), closes #4523
  • autocomplete-valid: incomplete for invalid but safe values (#4500) (e31a974), closes #4492
  • build: limit locales to valid files when using the --all-lang option (#4486) (d3db593), closes #4485
  • Prevent errors when loading axe in Angular + Jest (#4456) (3ef9353), closes #4400
  • Minor grammatical fixes for some rules and checks (#4499) (11fad59)
  • landmark-unique: follow spec, aside -> landmark (#4469) (e32f803), closes #4460
  • required-attr: allow aria-valuetext on slider instead of valuenow (#4518) (135898b), closes #4515

Release 4.9.1

06 May 15:54
fff9b9d
Compare
Choose a tag to compare

This release addresses a number of false positives, which may result in fewer issues reported. It also prevents a problem where axe-core wouldn't load on pages due to a conflict with a long-ago deprecated javascript library.

Bug Fixes

  • Prevent errors when loading axe in a page with prototype.js
  • aria-allowed-attr: allow meter role allowed aria-* attributes on meter element (#4435) (7ac6392)
  • aria-allowed-role: add gridcell, separator, slider and treeitem to allowed roles of button element (#4398) (4788bf8)
  • aria-roles: correct abstract roles (types) for aria-roles(#4421)
  • aria-valid-attr-value: aria-controls & aria-haspopup incomplete (#4418)
  • fix building axe-core translation files with region locales (#4396) (5c318f3), closes #4388
  • invalidrole: allow upper and mixed case role names (#4358) (105016c), closes #2695
  • isVisibleOnScreen: account for position: absolute elements inside overflow container (#4405) (2940f6e), closes #4016
  • label-content-name-mismatch: better dismiss and wysiwyg symbolic text characters (#4402)
  • region: Decorative images ignored by region rule (#4412)
  • target-size: ignore descendant elements in shadow dom (#4410) (6091367)
  • target-size: pass for element that has nearby elements that are obscured (#4422) (3a90bb7), closes #4387

Release 4.9.0

25 Mar 19:39
d847924
Compare
Choose a tag to compare

Features

Bug Fixes

  • Add LICENSE-3RD-PARTY.txt file (#4304) (daa0fe6)
  • add Object.values polyfill for node <=6 (#4274) (5eb867b)
  • aria-required-children: avoid confusing aria-busy message in failures (#4347) (591607d), closes #fail13 #4340
  • avoid reading element-specific node properties of non-element node types (#4317) (b853b18), closes #4316 #4316
  • color-contrast: handle text that is outside overflow: hidden ancestor (#4357) (bdb7300), closes #4253
  • color-contrast: support color blend modes hue, saturation, color, luminosity (#4365) (7ae4761)
  • d.ts: RawNodesResult issues (#4229) (d660518)
  • d.ts: RunOptions.reporter can be any string (#4218) (e53f5c5)
  • i18n: update Italian translations (#4377) (4d65d4b)
  • listitem: clarify roleNotValid message (#4374) (0f8a9af)
  • scrollable-region-focusable: missing wcag213 tag (#4201) (0080a72)
  • target-size: always pass 10x targets (avoid perf bottleneck) (#4376) (be327c4)
  • target-size: do not crash for nodes with many overlapping widgets (#4373) (1dbea83), closes #4359 #4359 #4360
  • utils/get-selector: ignore 'xmlns' attribute when generating a selector (#4303) (938b411)

Release 4.8.4

07 Feb 18:01
9ba9d05
Compare
Choose a tag to compare

This release should not result in different issue numbers. For TypeScript users, an error in type definitions has been corrected. This release could require a correction to how axe-core types are used. This release may change selectors on elements with the xmlns attribute, as the selectors axe-core prosed with those was invalid. Deduplication based on selectors between this and and prior versions of axe-core can fail because of this change.

Bug Fixes

  • Add LICENSE-3RD-PARTY.txt file (#4304) (139c553)
  • avoid reading element-specific node properties of non-element node types (#4317) (a2a6935), closes #4316 #4316
  • d.ts: RawNodesResult issues (#4229) (f105266)
  • d.ts: RunOptions.reporter can be any string (#4218) (80de793)
  • utils/get-selector: ignore 'xmlns' attribute when generating a selector (#4303) (8c68546)

Release 4.8.3

18 Dec 21:06
d3c8b4b
Compare
Choose a tag to compare

This release will not change axe-core's results. Only needed when used with old versions of NodeJS.

Bug Fixes

Release 4.8.2

21 Sep 16:25
9968aa9
Compare
Choose a tag to compare

Bug Fixes

Release 4.8.1

08 Sep 16:24
cbf9c45
Compare
Choose a tag to compare

This release does not change the number of issues reported.

Bug Fixes

  • target-size: show closest offset in message (#4151) (a0882f6)

Release 4.8.0

06 Sep 17:44
712026e
Compare
Choose a tag to compare

This axe-core release makes various changes to impact. As a result issues previously reported in one rule may now be reported under a different rule. In rarer cases, the impact under which an issue is reported may change. This release has further deprecated the duplicate-id and duplicate-id-active rule, along with setting the duplicate-id-aria to always report as "needs review" rather than as a violation. As these three rules are fairly common causes of issues, this change may result in the total issue reported going down significantly.

Consistent Rule Impact

This release changes it so that a rule never changes what impact it reports. To facilitate this while without changing the impact on certain issues, some rules have been split. The following changes were involved:

  • Deprecate impact on checks; use rules instead (#4114) (2cc5547)
  • add rule aria-deprecated-role (#4074) (03f2771)
  • add rule aria-conditional-attr (#4094) (d417630)
  • aria-input/toggle-field-name: set impact always to serious (#4095) (e031d68)
  • aria-prohibited-attr: add rule aria-prohibited-attr (#4088) (7b115d3)
  • impact: aria-roles / aria-valid-attr-value is always "critical" (#4112) (5cc8041)
  • impact: scope-attr-valid is always "moderate" (#4113) (131f552)

Other Features

  • deprecate & disable duplicate-id / duplicate-id-active (#4071) (733c45e)
  • duplicate-id-aria: set to review on fail and tag as wcag412 (#4075) (9f1a3e3)
  • add EN.301.549 tags to rules (#4063) (de3da89)
  • checks: enable help-same-as-label, but remove from rules (#4096) (034038a)
  • new-rule: aria-braille-equivalent finds incorrect uses of aria-braille attributes (#4107) (6260a2f)
  • page-no-duplicate-banner/contentinfo: deprecate options.nativeScopeFilter, take into ancestors with sectioning roles (#4105) (c6e07be)

Type Fixes & Improvements

Various improvements were made to the types. Potentially the most impactful of which is that the target and ancestry property now return as UnlabelledFrameSelector instead of as string[], which is incorrect for selectors involving shadow DOM. This may create some issues during migration for any code that has been incorrectly assuming these two properties have the string[] type. For more details and other type changes, see the commit itself:

Bug Fixes

  • access-name: get name from header elements (#4097) (fbe99bf)
  • add element semantics (#4115) (637bf6c)
  • aria-allowed-attr: pass aria-expanded on checkbox & switch (#4110) (fcf76e0), closes #3339
  • aria-allowed-role: Add doc-glossary to allowed roles for aside element (#4083) (6ca38f6)
  • aria-allowed-role: add meter to allowed roles for named img (#4055) (173f29d), closes #4054
  • aria-required-childen: test visibility of grandchildren (#4091) (a202b69)
  • aria-text: typo in rule description (#4131) (85a0e9c)
  • aria-valid-attr-value: allow empty value on aria-braille* & aria-valuetext (#4109) (c4c3e65)
  • avoid memory issues by doing better cleanup (#4059) (16c5cfa)
  • avoid problems from element IDs that exist on object prototype (#4060) (8d135dd)
  • color-contrast: correctly handle flex and position (#4086) (9d5f496)
  • color-contrast: get text stoke from offset shadows (#4079) (13acffe)
  • color-contrast: ignore format unicode characters (#4102) (049522e)
  • color-contrast: ignore zero width characters (#4103) (4deb0a0)
  • color-contrast: process non-rgb color functions (#4092) (9634282)
  • commons/dom/createGrid: only add the visible, non-overflow areas of an element to the grid (#4101) (d77f47b)
  • ensure reporter errors can propagate (#4111) (080cc1b)
  • ignore stylesheets fetching style tag in jsdom (#4138) (d7c16a4)
  • jsdom: allow axe.setup() without a global window (#4116) (33b0314)
  • target-size: correctly calculate bounding box (#4125) (1494b4c)
  • target-size: update to match new spacing requirements (#4117) (49eaa0e)
  • Use correct copyright year (#4098) (cab6a2b)
  • utils/clone: don't try to clone elements from different window context (#4072) (55000d0)

Release 4.7.2

25 May 16:29
b4f78df
Compare
Choose a tag to compare

This release corrects the Trusted Tester v5 tags, which were introduced in 4.7.0, and it addresses a few false positives which for pages with forms may result in a few less issues found.

Bug Fixes

  • aria-allowed-attr: Add aria-required to switch role (#4029) (cb51be4), closes #4027
  • aria-allowed-attr: allow aria-required on role=slider (#4035) (bb2bf60)
  • aria-required-children: set related nodes for invalid children (#4033) (377f72b)
  • tags: Add / correct several TTv5 tags (#4031) (25859dd)

Release 4.7.1

15 May 15:45
c806e57
Compare
Choose a tag to compare

This release addresses a number of bugs. Some things that were failed in the previous release may now be passed or require manual review.

Bug Fixes

  • aria-allowed-attr: no inconsistent aria-checked on HTML checkboxes (#3895) (704043e)
  • aria-allowed-attrs: add aria-expanded to allowed attrs for menuitemcheckbox and menuitemradio (#3994) (0f405c6)
  • aria-required-children: trigger reviewEmpty with hidden children (#4012) (a19b6cb)
  • color-contrast: support CSS 4 color spaces (#4020) (65621c3)
  • link-in-text-block: set links with pseudo-content for review (#4005) (949f4f8)