Release 3.5.0
·
1638 commits
to develop
since this release
Features
- aria-dpub-role-fallback: depreacte aria-dpub-role-fallback and move into aria-allowed-role (#1899) (8e25c20)
- aria-label: deprecate Element arg; use virtualNode (#1922) (d14981c)
- audit: allow runOnly option to accept an array of rules (#1889) (38d6a3f)
- color-contrast: greatly improve performance for very large sites (#1943) (9ea0065)
- core: add preload configuration option for media files (#1958) (8a62649)
- core/reporters/v1: Add failureSummary to incomplete results (#1972) (c88883d)
- get-element-stack: performant api to replace document.elementsFromPoint (#1842) (9ae07fb)
- i18n: add Danish (da-DK) translation (#1876) (fb6fc41)
- landmark-no-duplicate-*: add rule landmark-no-duplicate-main, don't use html as element source for all duplicate rules (#1949) (5ec7894)
- layout-table: deprecate layout-table rule and checks (#1885) (d22cb30)
- matches: use VirtualNode and deprecate HTMLElement (#1988) (2600a06)
- rule: add color-contrast check for unicode characters, behind flags. (#1969) (0cd4037), closes #1906
- rule: identical-links-same-purpose (#1649) (9c73f62)
- rule: no-autoplay-audio (#1946) (b2373cb)
- svg-img-alt: rule for when svg needs a title (#1953) (9491e09)
- deprecate the use doT.js for messages (#1938) (a2ddba3)
Bug Fixes
- color-contrast: properly pass options to check (#2033) (26b99c0)
- commons: avoid unicode regex encoding in axe.min.js (#2024) (ae90dc4)
- add tags with dots for wcag sc (#1849) (2f1ab36)
- compute orientation lock from various transformation func… (#1937) (c987de0)
- ignores axe.ping responses that do not contain axe=true (26cb1fb)
- input[role=button][value='correct'] should pass (#1897) (4635fef)
- remove heading from list of widget roles (#1882) (a8cbf71)
- link-name: test role=link when there is no href (#1921) (6db28bc)
- remove isNaN check (#2010) (5359b3f)
- aria-allowed-attr: allow aria-details (#1956) (79e1c58)
- aria-allowed-role: allow role combobox on input tel, search, url, and email (#1850) (ba75961)
- aria-hidden-focus: mark as needs review if a modal is open (#1995) (28a3553)
- aria-required-children: allow comboboxes with more popup roles (#1950) (35a24c0)
- aria-roles: report error for fallback roles (#1970) (a1b7e08)
- aria-valid-attr-value: mark as needs review for aria-current with invalid value (#1998) (39b8eae)
- axe.d.ts: RunOnly.values should not accept a RunOnlyOption (#1888) (b68aa19)
- build: add lang query parameter to helpUrl when builing with a locale (#1909) (8c5f9ef)
- color-contrast: improve speed and accuracy of code blocks with syntax highlighting (#2003) (1b6ab42)
- color-contrast: mark as needs review for text that contains only non-BMP characters (#2005) (e559be0)
- color-contrast: support IE extension context (#2008) (62e31ea)
- color-contrast: take into account parent opacity for foreground color (#1902) (8719700)
- getElementStack: do not add hidden elements to the stack (#1991) (759d88d)
- is-focusable: use tabindex attribute instead of property (#1912) (042a148)
- is-icon-ligature: ignore whitespace characters (#1908) (7d2b2a6)
- is-ligature-icon: rename canvas to canvasContext (#1880) (de9885d)
- isFocusable: return true for summary element and false for details element with summary child (#1957) (34ec2d7)
- listitem: clarify that li elements must be contained in a list or role=list (#1894) (6d8cfee)
- locales: fix incompeteMessageFallback to be a string rather than an object (#1853) (88677a9)
- meta-viewport: mark as a best-practice rule instead of wcag failure (#1960) (766f962)
- only-listitem: add message about invalid role on li elements (#1954) (c3049ab)
- page-has-main: do not find hidden elements (#2001) (6429e60)
- page-no-duplicate-main: do not fail for duplicate hidden elements (#2000) (414dfb1)
- preload: reject promise
axe.utils.preload
when XHR fails (#2009) (b406b1f) - region: allow content in roles with implicit aria-live (#2002) (a8d829e)
- region: return outermost regionless node instead of html (#1980) (8d77be2)
- region-rule: allow live regions with explicit roles (#1999) (b49bd95)
- run: throw error if axe.run is called after a run has started but not completed (#1914) (3252a02)
- server-side-image-map: return as needs review rather than failure (#1898) (d544856)
- tabindex: don't error when tabindex property is overridden (#1910) (6b82a4c)
- td-has-headers: greatly improve performance of td-has-headers rule (#1887) (a550309)
- removes flaky test in axe Pro api check (b2bdcd1)
- typings: add proper return value to getRule (#1900) (4d907f8)
- unicode: stop parsing escaped unicode strings (#1997) (7447d03)