A standalone select element with no associated label will pass
<select>
<option value="ancestors">Ancestors</option>
<option value="descendants">Descendants</option>
<option value="all">All</option>
</select>
^ No lint errors
A custom select component with correctly associated label will fail
settings: {
"jsx-a11y": {
components: {
Select: "select",
},
},
},
<label htmlFor="my-select">
Change my value
<Select id="my-select" options={options} />
</label>
^ Lint errors
...unless the rule also defines options as labels (which is not a correct)
"jsx-a11y/control-has-associated-label": [
"error",
{ labelAttributes: ["options"] },
],
This violates accessibility rules around select components, which need a proper label association other than the options within it.