html-validator
html-validator copied to clipboard
Update dependency html-validate to v10
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
| html-validate (source) | 7.0.0 -> 10.3.1 |
Release Notes
html-validate/html-validate (html-validate)
v10.3.1
Bug Fixes
- html5:
<a>element is only interactive if it has anhrefattribute (385f92f) - html5: allow
<hr>element to be used as descendant of<select>(e601d36), closes #331 - html5: disallow nested
<a>elements even withouthrefattribute (622e2f6)
v10.3.0
Features
- html5: allow
<button>as first child of<select>(3de8a0f), closes #321 - html5: allow
<option>to have child content (6056325), closes #321 - html5: support
<selectedcontent>element (d3d2c22), closes #321 - html5: support
hidden="until-found"(baa033f), closes #322 - meta:
permittedOrdercan take a selector list for elements with equal order requirement (b3f92c2) - parse
<title>content as literal characters instead of HTML elements (3399ab5), closes #326
Bug Fixes
- html5: allow
blockingattribute on<link rel="expect">(5bbabc4), closes #327 - html5: disallow
blockingattribute on<link rel="preload">and<link rel="modulepreload">(0a17e50) - html5: let
<selectedcontent>fulfill the accessible text content requirement of<button>elements (d1dff73), closes #321 - rules: ignore omitted
typeattribute on<button>when used as first child of<select>(1476960), closes #321
v10.2.1
Bug Fixes
- package republished only, no changes from v10.2.0 (722c37f)
v10.1.2
Bug Fixes
v10.1.1
Bug Fixes
- fix
unrecognized-char-reftriggering [secure] positives for<script>and<style>tags (efffc6b)
v10.1.0
Features
- parse
<textarea>content as literal characters instead of HTML elements (f3d4f5b), closes #314 - store
<script>and<style>content as text node (740b94a), closes #316
v10.0.0
⚠ BREAKING CHANGES
- deps: Support for Vitest v0 has been removed. Vitest v1 or later is required.
- deps: Support for Jest v27 has been removed. Jest v28 or later is required.
- deps: NodeJS v20 or later is now required.
Features
- deps: remove support for jest v27 (cb3160e)
- deps: remove support for vitest v0 (3a75046)
- deps: require nodejs v20 or later (f893e34)
- deps: update dependency glob to v11 (f52239d)
v9.7.1
Bug Fixes
- docs: fix typo in docs navigation (1a2b87a)
- rules:
no-raw-charactersignores boolean attributes in favor ofattribute-allowed-values(22b18be), closes #296 - rules: allow aria-label on
<dialog>(bd07810), closes #304 - vitest: fix matchers augmentation for typescript (7c4bb69)
v9.7.0
Features
- add special
templateRootmeta property for<template>element (beccfda) - rules: add
strictoption towcag/h63to enforce for all tables (51eecf2) - rules: determine if a table is simple or complex before applying
wcag/h63(0e84024), closes #303
Bug Fixes
- better dts for html5 metadata (8e9537c)
v9.6.1
Bug Fixes
- validate descendants of
<template>whenscriptSupportingis disabled (f4629f8)
v9.6.0
Features
- deps: support jest v30 (2023958)
Bug Fixes
- deps: update dependency ignore to v7.0.5 (731ba29)
v9.5.5
Bug Fixes
v9.5.4
Bug Fixes
- deps: update dependency ignore to v7.0.4 (f62c179)
- rules: ignore parents of template tags when checking permitted descendants (6a0d48a), closes #305
v9.5.3
Bug Fixes
- fix crash when aria attribute references id with comma (fb91b7c), closes #299
- fix crash when attribute selector
[..]contains escaped characters (0c19b82)
v9.5.2
Bug Fixes
v9.5.1
Bug Fixes
v9.5.0
Features
- deps: update dependency @sidvind/better-ajv-errors to v4 (75a17cf)
v9.4.2
Performance Improvements
- rewrite and optimize
HtmlElement.matches()increasing performance of large documents (4eb28a7), closes #45
v9.4.1
Bug Fixes
- fix another configuration path issue on windows (1967d8f)
v9.4.0
Features
- support custom
fsimplementation invalidateFileand similar functions: optional for node required for browser (f9edf65), closes #293
v9.3.0
Features
- ensure
widthandheightare non-negative integers on<img>and other embedded elements (6bde9e6), closes #280
Bug Fixes
- cli: fix
--ruleoverwritingextendsfrom--config(5623120) - cli: fix
--ruleoverwriting all rules from--configor--preset(8cc81c8), closes #289 - include id in
valid-iderror message (c0c6b73), closes #282
Performance Improvements
- improve
no-dup-idperformance (8da515f), closes #288 - improve performance for
void-style(5a156de), closes #287
v9.2.2
Bug Fixes
v9.2.1
Bug Fixes
- fix repetitive "validator crashed" messages (4a71fcf)
- only require SRI on
<link>withrel="stylesheet",rel="preload"orrel="modulepreload"(0b47d2a)
v9.2.0
Features
- api: error classes marked internal (84e957b)
- api: new `isUserError(..) to determine if an exception is caused by a user misconfiguration (20dab72)
- deps: support vitest v3 (0926c7f)
Bug Fixes
- better error message when
import.meta.resolveisnt available (8ed0ae8) - cli: fix CLI argument
--confignot finding configuration file on windows (9a1c41c) - deps: update dependency ignore to v7.0.1 (d1ab96e)
- deps: update dependency ignore to v7.0.3 (cbc0f6e)
v9.1.3
Bug Fixes
- nodejs 18.19 or later is required (69ec7e2)
v9.1.2
Bug Fixes
- fix
ERR_UNSUPPORTED_ESM_URL_SCHEMEon windows (6b193f3)
v9.1.1
Bug Fixes
v9.1.0
Features
- deps: update dependency ignore to v7 (43ae9ac)
Bug Fixes
- use jest worker for
toMatchCodeframe(3c29ad5)
v9.0.1
Bug Fixes
- fix
validateMultipleFilesincorrectly using sync API (0c26918)
v9.0.0
ESM support has finally landed in HTML-Validate V9!
- Configuration files (using
.htmlvalidate.mjsor when"type"is"module"inpackage.json). - Plugins, element metadata, shared configurations and transformers can be written natively in ESM.
This release is primarly breaking for API uses but some configuration changes might be required (see below).
For API users the TL;DR version is most functions can return a Promise so make sure to await it.
⚠ BREAKING CHANGES
-
config: This change affects all users. The following deprecated configuration presets has been removed:
htmlvalidate:recommended- replace withhtml-validate:recommended.htmlvalidate:document- replace withhtml-validate:document.html-validate:a17y- replace withhtml-validate:a11y.
-
cli: CLI uses ESM (with
esmResolver). For most part this shouldn't affect anything but in some cases you might need slight configuration migration. See Migration Guide for details. -
cli: use ESM in CLI
-
meta: The deprecated metadata property expressions have been removed and can be replaced with callback functions. This gives greater control for the metadata author, provides better IDE support and is more reusable when querying the metadata directly.
-
deps: Requires NodeJS v18 or later.
-
api:
Config.merge(..)will return aPromisewhen used with an async loader or resolver. -
api: The deprecated
tag:openandtag:closeevents has been removed, usetag:beginandtag:endinstead. -
api: The
Config.resolve()method can return aPromiseif any underlying loader or resolver has returned aPromise.It is recommended to assume it returns a
Promiseand alwaysawaitthe result:-const resolved = config.resolve(); +const resolved = await config.resolve();If you need synchronous code ensure the configuration, the loader and the resolver all returns synchronous results, e.g. the
staticResolverwith synchronous code. -
api: The
HtmlValidate.getConfigurationSchema()method is now async and returns aPromise. If you use this method you need to await the result:-const schema = htmlvalidate.getConfigurationSchema(); +const schema = await htmlvalidate.getConfigurationSchema(); -
api: If you are writing your own transformers they may now optionally return a
Promise. If you are usingtest-utilsto write unit tests you must now resolve the promise.import { transformSource } from "html-validate/test-utils"; -const result = transformSource(transformer, source); +const result = await transformSource(transformer, source);This is no matter if your transformer is actually async or not.
-
api: The
CLI.isIgnored(..)method has been removed from the public API. There is no replacement. If you need this method open an issue describing the use-case. -
api: If you are using the
CLIclass most methods are now async and returnsPromise. There is no synchronous version of these API calls. -
api:
Config.fromFile(..)andConfig.fromObject(..)will return a Promise when used with an async loader or resolver. -
api:
ConfigLoadermethods can optionally return aPromisefor async operation. For most use-cases this will not require any changes. -
api: The
ConfigLoader.globalConfigproperty has been replaced withConfigLoader.getGlobalConfig()(async) andConfigLoader.getGlobalConfigSync()(sync). -
api: The redundant and deprecated
Config.init()method has been removed.Remove any calls to the method:
const config = Config.fromObject({ /* ... */ }); -config.init();
Features
- api:
CLI.isIgnored()made private (9e3679a) - api:
CLImethods async and return Promise (677c73e) - api:
Config.fromFileandConfig.fromObjectcan returnPromise(b126361) - api:
Config.merge(..)can returnPromise(cccb313) - api:
Config.resolve()can returnPromise(09159f3) - api:
ConfigLoaders can optionally returnPromisefor async operation (6041581) - api:
FileSystemConfigLoaderusesesmResolverby default (dd4cfb1) - api:
HtmlValidate.getConfigurationSchema()returns promise (f10ec1a) - api: allow transformers to return single source (fd126da)
- api: new
esmResolverusingimport(..)(available for both nodejs and browser) (81b4777), closes #230 - api: remove deprecated
Config.init()(0bd8ab7) - api: remove deprecated
tag:openandtag:closeevents (88ac65e) - api: replace
ConfigLoader.globalConfigwithConfigLoader.getGlobalConfig()(a64935a) - api: resolvers may optionally return
Promisefor async operation (fe3c6a6) - api: transformers may optionally return
Promisefor async operation (823da19) - cli: cli uses esm (with
esmResolver) (3e4759e) - config: remove deprecated configuration presets (dbf5cf4)
- config: support
.htmlvalidate.mjsconfiguration files (0ffd9b5), closes #125 - deps: require node 18 or later (d4f3bcb)
- meta: remove deprecated property expressions (a77043c)
v8.29.0
Features
- config: allow to specify transformer function directly in config (df2c752)
- meta: allow
labelableproperty to be a callback (8204b5b)
v8.28.0
Features
- refactor jest and vitest
toHTMLValidate(..)matcher (a6a60ab)
v8.27.0
Features
v8.26.0
Features
v8.25.1
Bug Fixes
- fix dump tree output with nested elements (854c274)
v8.25.0
Features
Bug Fixes
- properly close elements with optional end tag when implicit document element is used (bbe2a99), closes #268
- types: narrow numeric rule severity to only 0, 1 and 2 (88cf8a2)
v8.24.2
Bug Fixes
v8.24.1
Bug Fixes
- dont validate quotes in dynamically added attributes (2125d86)
v8.24.0
Features
v8.23.0
Features
- deps: support vitest v2 (860b0c0)
v8.22.0
Features
- api: make
DOMNodeconstructor internal (13377ac) - api: make
HtmlElementconstructor private (fbf4303) - deps: drop
@babel/code-framedependency (0003ffd) - deps: update @sidvind/better-ajv-errors to v3 (3112289)
Bug Fixes
- deps: update dependency ignore to v5.3.2 (9d86e68)
v8.21.0
Features
- api: add
DOMTree.readyState(1f6f69b) - api: deprecate
DOMTree.find(..)in favour ofquerySelector(..)(ac0bb77) - api: internal methods of
DOMTreeremoved from public API (79a03be) - api: new
walk.depthFirst(..)API to replace now deprecatedDOMTree.visitDepthFirst(..)method (f9dbda0)
Bug Fixes
- html5:
spellcheckis a global attribute (46594a1)
v8.20.1
Bug Fixes
- rules: fix
attribute-allowed-valueserror location for empty values (2c04eeb)
v8.20.0
Features
- api: new
setConfigmethod onStaticConfigLoaderto change config (1bf7559) - api: new getter/setter for configuration loader (6283091)
v8.19.1
Bug Fixes
- rules:
wcag/h36no longer reports for hidden elements (aba06d1) - rules:
wcag/h37no longer validates<input type="submit">(usewcag/h36instead) (e82b17a), closes #254 - rules: make
wcag/h36have better message and location (8a80cc8)
v8.19.0
Features
Bug Fixes
- rules:
multiple-labeled-controlshandles hidden input (4d794b6), closes #251 - rules:
wcag/h30only applies to<a href>(cd93dfe), closes #252 - rules: handle unicode letters in
valid-id(c83687a), closes #253
v8.18.2
Bug Fixes
v8.18.1
Bug Fixes
- rules:
form-dup-namehandles<template>element (9c77444), closes #247 - rules:
no-dup-idhandles<template>element (04f3e0d), closes #247
v8.18.0
Features
- rules: new pattern
bemfor pattern rules (c1ead1b) - rules: new pattern
snakecasefor pattern rules (4b95ccb), closes #245
Bug Fixes
- rules: disallow consecutive hyphens and underscors for kebab-case and snake_case (a4338a7), closes #246
- rules: require initial character for all patterns to be letter (646ff16)
v8.17.1
Bug Fixes
v8.17.0
Features
- rules: new rule
name-pattern(f2209c0), closes #216 - rules: support multiple patterns in
id-pattern,class-patternandname-patternrules (15dd007)
Bug Fixes
- meta: handle regexp with slash inside (4c88396), closes #242
- rules:
input-missing-labelnow ignores<input>hidden by css (c40e48e), closes #241 - rules:
input-missing-labelnow tests if<label>is inert or hidden by css (d0d6f40) - rules: show pattern name in
id-pattern,class-patternandname-patternrules (4bd70ab)
v8.16.0
Features
- api: new
tabIndexproperty reflecting the parsedtabindexattribute (a4e5d5b) - meta: add
inertas global attribute (a5e6477) - meta: new
formAssociated.disablableproperty (0b141ab)
Bug Fixes
- html5:
<summary>element is focusable if child of<details>(79dec74) - rules:
hidden-focusablehandles inert elements (89bb969), closes #240 - rules:
hidden-focusableno longer reports for disabled form controls (d337397) - rules:
hidden-focusableno longer reports for elements withtabindex="-1"(03d7223), closes #240
v8.15.0
Features
- rules: new rule
valid-autocomplete(bebd0d1)
Bug Fixes
- rules: case-insensitive match for
urlinmeta-refresh(3177295)
v8.14.0
Features
- rules: new option
allowLongDelaytometa-refreshto allow 20h+ delays (629625c)
v8.13.0
Features
- meta: allow
<link>under<body>if appropriaterelattribute is present (ae1e070) - meta: allow content categories to be a callback (0eb4e77)
- meta: disallow invalid rel attribute keywords (dc36cfb)
v8.12.0
Features
- rules: new rule
no-abstract-role(923680b)
v8.11.1
Bug Fixes
- dom: fix regression error with selectors ending with characters
a,dor9(a9a9ef9)
v8.11.0
Features
- html5: add new property
aria.namingrepresenting if the element can be named (4fca264) - html5: update role metadata from html-aria standard (b029a3f)
- meta: move
implicitRoletoaria.implicitRole(bc8cacf)
Bug Fixes
- handle selectors containing tabs and newlines (5e45d54), closes #238
- rules: new option
allowAnyNamableforaria-label-misuse(c08a3ba), closes #237
v8.10.0
Features
- rules: new rule
no-implicit-input-type(6cc0c6d)
Bug Fixes
- deps: update dependency ignore to v5.3.1 (4553b89)
- html5:
typefor<input>no longer required (37284d0), closes #235 - rules: change wording required to recommended in
no-implicit-button-type(1926c06)
v8.9.1
Bug Fixes
- rules:
<form>and<section>without explicit accessible name is no longer considered landmark (a36deac) - rules:
<header>and<footer>nested in<main>or sectioning content is no longer considered landmark (bcab354), closes #234
v8.9.0
Features
- elements: new property
focusableto mark elements as focusable (c59c8b2) - rules: new rule
hidden-focusable(243e7fb) - rules: new rule
unique-landmark(187be1e)
Bug Fixes
- api: remove internal
listenersproperty from public API (303e5d5) - dom: ancestor with
role="presentation"no longer counts decendants as missing from a11y tree (cc72da1) - dom: handle
role="none"as a synonym forrole="presentation"(b1d7b50) - dom: interactive and focusable elements ignore
role="presentation"(017308f) - rules: better error description for
require-sri(ffc3695) - rules: rule
wcag/h30no longer requires text on<a hidden>(a20cc84) - rules: rule
wcag/h30no longer requires text on links withdisplay: noneorvisibility: hidden(36ff07e) - rules: rules
wcag/h32handles<button>without explicittype(84c6a6e)
v8.8.0
Features
- api:
Report.merge()can merge async results (35689fc) - api: rename
nodejsResolvertocjsResolver(8c72c8f) - config: new
defineConfighelper (35e265a)
Bug Fixes
- config: proper error message when certain configuration properties was invalid (b029569)
v8.7.4
Bug Fixes
- deps: pin @sidvind/better-ajv-errors (94f778b), closes #231
- deps: support vitest v1 (4cc4d23)
v8.7.3
Bug Fixes
- disable
doctype-stylewhen using prettier preset (f1f4004)
v8.7.2
Bug Fixes
- deps: update dependency ignore to v5.3.0 (143e994)
v8.7.1
Bug Fixes
- rules: fix
form-dup-nameissue when more than two names are present in array (5d9ff3b), closes #228
v8.7.0
Features
- html5: support
referrerpolicyattribute (851b559)
v8.6.1
Bug Fixes
- dom: remove usage of regex negative lookbehind (f406393), closes #147
- rules: improve
attribute-misuseerror message (fccce69), closes #226 - typo in CONTRIBUTING.md (855bacf)
v8.6.0
Features
- api: add
meta: MetaAttributeinAttributeEvent(2cda0ae) - cli:
--ruleseverity can now be set with strings, fixes #225. (054972e)
v8.5.0
Features
v8.4.1
Bug Fixes
- rules: fix contextual documentation for
attr-patternrule ([0082aef](https://gitlab.com/html-validate
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
- [ ] If you want to rebase/retry this PR, check this box
This PR was generated by Mend Renovate. View the repository job log.