diff --git a/.circleci/config.yml b/.circleci/config.yml index 20d4bf4c72f..522a25b35ad 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -54,3 +54,4 @@ workflows: jobs: - check - percy + - a11y diff --git a/UNRELEASED.md b/UNRELEASED.md index 7e400e0584c..14ce206f3a9 100644 --- a/UNRELEASED.md +++ b/UNRELEASED.md @@ -30,6 +30,8 @@ Use [the changelog guidelines](https://git.io/polaris-changelog-guidelines) to f ### Development workflow +- Updated the a11y shitlist and re-enabled the pa11y job in CI. The job always passes for now, as a way for us to judge whether it is stable and can be made a required check. ([#1456](https://github.com/Shopify/polaris-react/pull/1456)) + ### Dependency upgrades ### Code quality diff --git a/a11y_shitlist.json b/a11y_shitlist.json index c7a4055907e..5a86aec855b 100644 --- a/a11y_shitlist.json +++ b/a11y_shitlist.json @@ -1,63 +1,93 @@ { - "http://localhost:3000/app-provider/0": [ + "all-components-app-provider--with-linkcomponent": [ + { + "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name", + "context": "", + "message": "This button element does not have a name available to an accessibility API. Valid names are: title undefined, element content, aria-label undefined, aria-labelledby undefined.", + "type": "error", + "typeCode": 1, + "selector": "#Popover1 > div > div > ul > li:nth-child(1) > div > button" + }, + { + "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name", + "context": "", + "message": "This button element does not have a name available to an accessibility API. Valid names are: title undefined, element content, aria-label undefined, aria-labelledby undefined.", + "type": "error", + "typeCode": 1, + "selector": "#Popover1 > div > div > ul > li:nth-child(2) > div > button" + }, + { + "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name", + "context": "", + "message": "This button element does not have a name available to an accessibility API. Valid names are: title undefined, element content, aria-label undefined, aria-labelledby undefined.", + "type": "error", + "typeCode": 1, + "selector": "#Popover1 > div > div > ul > li:nth-child(3) > div > button" + }, + { + "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name", + "context": "", + "message": "This button element does not have a name available to an accessibility API. Valid names are: title undefined, element content, aria-label undefined, aria-labelledby undefined.", + "type": "error", + "typeCode": 1, + "selector": "#Popover1 > div > div > ul > li:nth-child(4) > div > button" + }, { - "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.InputRange.Name", - "context": "", - "message": "This range input element does not have a name available to an accessibility API. Valid names are: element content.", + "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name", + "context": "", + "message": "This button element does not have a name available to an accessibility API. Valid names are: title undefined, element content, aria-label undefined, aria-labelledby undefined.", "type": "error", "typeCode": 1, - "selector": "#RangeSlider1" + "selector": "#Popover1 > div > div > ul > li:nth-child(5) > div > button" } ], - "http://localhost:3000/range-slider/2": [ + "all-components-resource-list--resource-list-with-persistent-item-shortcut-actions": [ + { + "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name", + "context": "", - "message": "This button element does not have a name available to an accessibility API. Valid names are: title attribute, element content, aria-label attribute, aria-labelledby attribute.", + "message": "This button element does not have a name available to an accessibility API. Valid names are: title undefined, element content, aria-label undefined, aria-labelledby undefined.", "type": "error", "typeCode": 1, - "selector": "#app > div > div:nth-child(1) > div > button" + "selector": "#root > div > div > div > div > div:nth-child(2) > button" }, { "code": "WCAG2AA.Principle1.Guideline1_3.1_3_1.F92,ARIA4", @@ -364,17 +586,17 @@ "message": "This element's role is \"presentation\" but contains child elements with semantic meaning.", "type": "error", "typeCode": 1, - "selector": "#app > div > div:nth-child(1) > ul > li:nth-child(5)" + "selector": "#root > div > div > div > div > ul > li:nth-child(3)" } ], - "http://localhost:3000/tabs/1": [ + "all-components-tabs--default-tabs": [ { "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name", "context": "", - "message": "This button element does not have a name available to an accessibility API. Valid names are: title attribute, element content, aria-label attribute, aria-labelledby attribute.", + "message": "This button element does not have a name available to an accessibility API. Valid names are: title undefined, element content, aria-label undefined, aria-labelledby undefined.", "type": "error", "typeCode": 1, - "selector": "#app > div > div:nth-child(1) > div > button" + "selector": "#root > div > div > div > div > div:nth-child(2) > button" }, { "code": "WCAG2AA.Principle1.Guideline1_3.1_3_1.F92,ARIA4", @@ -382,17 +604,37 @@ "message": "This element's role is \"presentation\" but contains child elements with semantic meaning.", "type": "error", "typeCode": 1, - "selector": "#app > div > div:nth-child(1) > ul > li:nth-child(3)" + "selector": "#root > div > div > div > div > ul > li:nth-child(5)" } ], - "http://localhost:3000/text-field/11": [ + "all-components-text-field--text-field-with-separate-validation-error": [ { "code": "WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name", "context": "