Change Log
All notable changes to this project will be documented in this file.
See Conventional Commits for commit guidelines.
Note: Version bump only for package sa11y-monorepo
Changelog
All notable changes to this project will be documented in this file.
4.0.0 (2022-10-20)
⚠ BREAKING CHANGES
- Explicitly supporting NodeJS 14.x and 16.x
sa11y will no longer support Node.js 12, which is EOL since 30 April 2022
Features
Bug Fixes
Changelog
3.1.0 (2021-11-18)
Bug Fixes
- automatic checks file filter to be exclusion only to keep it simple
- add sa11y common pkg as dep instead of dev dep
3.0.2 (2021-11-02)
Reverts
- filtering of non-a11y results introduced in 3.0.1
- as it is causing issues with certain CI workflows that produce no test results file
3.0.1 (2021-10-21)
Refactor
- exclude descendancy rules from Jest API
- these are rules that might fail at unit/component level but might pass at page level
- change sa11y results processor to output only a11y failures
3.0.0 (2021-09-16)
- Moving to unified versioning of @sa11y packages instead of independent versioning for reducing complexity of managing independent versions
- No code changes, No breaking changes
WDIO
Automatic checks
- Add ability and convenience shortcut for excluding files from automatic checks (#74)
Results processor
- Move the WCAG metadata and Priority info to class name in Jest results so that downstream CI systems make use of the info accordingly
- Remove WCAG version, Level for brevity
- Error msgs: Move help URL up in order to prevent it from getting truncated e.g. when CSS selectors are long
WDIO
- Fix race condition when loading axe using poll with timeout
BREAKING CHANGES ⚠️
- Refactor rulesets into
base, extended (#73)
- with
extended replacing recommended
base contains WCAG 2.1 AA rules available in axe-core
extended contains AAA rules, experimental rules and non-WCAG best practice rules
- These ruleset changes could result in different test results from previous versions
Features
- Add priority and WCAG Success Criteria metadata to preset-rules
- Add config to run rules selectively by priority
- Add script to generate preset rules markdown table in Readme with provided rules metadata
Features
- jest: add config to run automatic checks only on selected files
- preset-rules: add config to override default ruleset using environment variable
Fix
- jest(result processor): move WCAG metadata from suite name to test name (#69)
- jest: add workaround for mock timer timeout issue for API and automatic checks (#69)
- build: move webdriverIO to dev dependency in sa11y common pkg (#68)
Features
- jest: de-duplicate a11y failures for automatic checks (#61)
- jest: add a custom test results processor (#62)
- create a new test suite to hold a11y errors
- add wcag metadata to results output
- transform a11y error details into suite, test names
Features
- browser-lib: add support for selecting specific css selector to check for a11y
- wdio: add scope to target only given css selector for a11y checks
- add custom browser commands for the sa11y APIs
BREAKING CHANGES
@sa11y/wdio APIs take an WdioOptions object instead of individual parameters (Webdriver, ExceptionList)
Refactor
- refactor(test-integration): to use wdio runner rather than jest
- refactor(test-utils): remove obsolete wdio jest bridge utils
- test(wdio): refactor to common func to check a11y error
- refactor: extract common types, interfaces into common package
- build: update to axe v4.1.3
- chore: update run script for husky v6
Features
- jest: add opts to invoke checks automatically after each test (#54)
- Update axe-core to 4.1.2 (#54)
Features
- wdio: add exception list opt to wdio APIs (#51)
- typescript: include d.ts TypeScript definitions in packages (#52)
Features
- preset-rules: add new rules from axe v4.1.1
Bug Fixes
Features
- browser-lib: add wrapper func to check a11y with opt to filter violations
- format: add an exception list filter to filter a11y violations
Refactor
- test(wdio): refactor to extract wdio standalone setup, teardown
- refactor(common): create type alias for axe results for reuse
Bug Fixes
- preset-rules: disable preloading media in axe config to fix timeout (#41)
Refactor
- chore: update typescript and typescript/eslint plugin to v4 (#37)
Refactor
- chore: update to the latest major release of axe
Features
- browser-lib: add a new package for producing bundled minified version of sa11y (#32)
Features
Bug Fixes
- format: fix a11y error message to use formatted output (#21)
- format: check explicitly for undefined to allow custom formatter (#21)
- jest: fix a11y error being undefined when used with not matcher (#21), closes #18
BREAKING CHANGES
- preset-rules: align name and behavior to follow common naming conventions in terms of preset configs (#21)
- rename
extended ruleset to recommended
- it continues to be the default and recommended
- rename
recommended preset rule to base
- If you are not using the preset-rules explicitly in the APIs, this change will not affect you
- But if you are using the preset-rules explicitly in your APIs, you will have to change them
- If you are using the
recommended preset-rule rename it to base
- If you are using the
extended preset-rule rename it to recommended
Features
- format: add num of issues, unicode chars, jest matcher helper (#13)
- format: sort a11y issues by impact (#13)
(2020-05-29)
Features
- jest: add jest accessibility matcher (#9)
(2020-05-07)
Bug Fixes
- preset-rules: revert object freeze on a11y config object
Features
- assert: add assert accessible api (#7)
- jest: add basic scaffolding for jest integration
- jest: add scaffolding for jest expect matcher
- jest: add toBeAccessibleWith jest a11y matcher for use with config
- test-utils: add a test utilities package
(2020-04-07)
Bug Fixes
- assert: fix stale import of a11y config
- rules: fix import paths of modules in rules package
Features
- assert: add scaffolding for assert package
- format: add basic scaffolding for format package
(2020-03-20)
Bug Fixes
- rules: add missed out rule label-content-name-mismatch
Features
- ruleset: add recommended, extended rulesets (#3)