Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update dependency html-validate to v9 #552

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 8, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
html-validate (source) ^8.0.0 -> ^9.0.0 age adoption passing confidence

Release Notes

html-validate/html-validate (html-validate)

v9.1.3

Compare Source

Bug Fixes
  • nodejs 18.19 or later is required (69ec7e2)

v9.1.2

Compare Source

Bug Fixes
  • fix ERR_UNSUPPORTED_ESM_URL_SCHEME on windows (6b193f3)

v9.1.1

Compare Source

Bug Fixes
  • vitest: fix require is not defined in vitest (6a42bb1), closes #​276

v9.1.0

Compare Source

Features
  • deps: update dependency ignore to v7 (43ae9ac)
Bug Fixes
  • use jest worker for toMatchCodeframe (3c29ad5)

v9.0.1

Compare Source

Bug Fixes
  • fix validateMultipleFiles incorrectly using sync API (0c26918)

v9.0.0

Compare Source

ESM support has finally landed in HTML-Validate V9!

  • Configuration files (using .htmlvalidate.mjs or when "type" is "module" in package.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 with html-validate:recommended.
    • htmlvalidate:document - replace with html-validate:document.
    • html-validate:a17y - replace with html-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 a Promise when used with an
    async loader or resolver.

  • api: The deprecated tag:open and tag:close events has been
    removed, use tag:begin and tag:end instead.

  • api: The Config.resolve() method can return a Promise if any
    underlying loader or resolver has returned a Promise.

    It is recommended to assume it returns a Promise and always await the
    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 staticResolver with
    synchronous code.

  • api: The HtmlValidate.getConfigurationSchema() method is now async
    and returns a Promise. 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 using test-utils to 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 CLI class most methods are now async and
    returns Promise. There is no synchronous version of these API calls.

  • api: Config.fromFile(..) and Config.fromObject(..) will return a
    Promise when used with an async loader or resolver.

  • api: ConfigLoader methods can optionally return a Promise for
    async operation. For most use-cases this will not require any changes.

  • api: The ConfigLoader.globalConfig property has been replaced with
    ConfigLoader.getGlobalConfig() (async) and
    ConfigLoader.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: CLI methods async and return Promise (677c73e)
  • api: Config.fromFile and Config.fromObject can return Promise (b126361)
  • api: Config.merge(..) can return Promise (cccb313)
  • api: Config.resolve() can return Promise (09159f3)
  • api: ConfigLoaders can optionally return Promise for async operation (6041581)
  • api: FileSystemConfigLoader uses esmResolver by default (dd4cfb1)
  • api: HtmlValidate.getConfigurationSchema() returns promise (f10ec1a)
  • api: allow transformers to return single source (fd126da)
  • api: new esmResolver using import(..) (available for both nodejs and browser) (81b4777), closes #​230
  • api: remove deprecated Config.init() (0bd8ab7)
  • api: remove deprecated tag:open and tag:close events (88ac65e)
  • api: replace ConfigLoader.globalConfig with ConfigLoader.getGlobalConfig() (a64935a)
  • api: resolvers may optionally return Promise for async operation (fe3c6a6)
  • api: transformers may optionally return Promise for async operation (823da19)
  • cli: cli uses esm (with esmResolver) (3e4759e)
  • config: remove deprecated configuration presets (dbf5cf4)
  • config: support .htmlvalidate.mjs configuration files (0ffd9b5), closes #​125
  • deps: require node 18 or later (d4f3bcb)
  • meta: remove deprecated property expressions (a77043c)

v8.29.0

Compare Source

Features
  • config: allow to specify transformer function directly in config (df2c752)
  • meta: allow labelable property to be a callback (8204b5b)

v8.28.0

Compare Source

Features
  • refactor jest and vitest toHTMLValidate(..) matcher (a6a60ab)

v8.27.0

Compare Source

Features

v8.26.0

Compare Source

Features
  • better handling of mismatched/unclosed tags (489ccae), closes #​272

v8.25.1

Compare Source

Bug Fixes
  • fix dump tree output with nested elements (854c274)

v8.25.0

Compare Source

Features
  • cli: add --preset to set preset when using cli (2ec038f), closes #​269
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

Compare Source

Bug Fixes
  • add default environment to package.json exports (a21a1ef), closes #​265

v8.24.1

Compare Source

Bug Fixes
  • dont validate quotes in dynamically added attributes (2125d86)

v8.24.0

Compare Source

Features
  • new html-validate:browser configuration preset (f4e6f5b), closes #​261

v8.23.0

Compare Source

Features
  • deps: support vitest v2 (860b0c0)

v8.22.0

Compare Source

Features
Bug Fixes
  • deps: update dependency ignore to v5.3.2 (9d86e68)

v8.21.0

Compare Source

Features
  • api: add DOMTree.readyState (1f6f69b)
  • api: deprecate DOMTree.find(..) in favour of querySelector(..) (ac0bb77)
  • api: internal methods of DOMTree removed from public API (79a03be)
  • api: new walk.depthFirst(..) API to replace now deprecated DOMTree.visitDepthFirst(..) method (f9dbda0)
Bug Fixes
  • html5: spellcheck is a global attribute (46594a1)

v8.20.1

Compare Source

Bug Fixes
  • rules: fix attribute-allowed-values error location for empty values (2c04eeb)

v8.20.0

Compare Source

Features
  • api: new setConfig method on StaticConfigLoader to change config (1bf7559)
  • api: new getter/setter for configuration loader (6283091)

v8.19.1

Compare Source

Bug Fixes
  • rules: wcag/h36 no longer reports for hidden elements (aba06d1)
  • rules: wcag/h37 no longer validates <input type="submit"> (use wcag/h36 instead) (e82b17a), closes #​254
  • rules: make wcag/h36 have better message and location (8a80cc8)

v8.19.0

Compare Source

Features
  • rules: new option allowCheckboxDefault for form-dup-name (293b951), closes #​251
Bug Fixes
  • rules: multiple-labeled-controls handles hidden input (4d794b6), closes #​251
  • rules: wcag/h30 only applies to <a href> (cd93dfe), closes #​252
  • rules: handle unicode letters in valid-id (c83687a), closes #​253

v8.18.2

Compare Source

Bug Fixes
  • html5: allow textarea to have autocomplete values other than on and off (c1dfbb1), closes #​249

v8.18.1

Compare Source

Bug Fixes
  • rules: form-dup-name handles <template> element (9c77444), closes #​247
  • rules: no-dup-id handles <template> element (04f3e0d), closes #​247

v8.18.0

Compare Source

Features
  • rules: new pattern bem for pattern rules (c1ead1b)
  • rules: new pattern snakecase for 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

Compare Source

Bug Fixes
  • rules: properly handle inert on ancestor elements (2990669), closes #​243

v8.17.0

Compare Source

Features
  • rules: new rule name-pattern (f2209c0), closes #​216
  • rules: support multiple patterns in id-pattern, class-pattern and name-pattern rules (15dd007)
Bug Fixes
  • meta: handle regexp with slash inside (4c88396), closes #​242
  • rules: input-missing-label now ignores <input> hidden by css (c40e48e), closes #​241
  • rules: input-missing-label now tests if <label> is inert or hidden by css (d0d6f40)
  • rules: show pattern name in id-pattern, class-pattern and name-pattern rules (4bd70ab)

v8.16.0

Compare Source

Features
  • api: new tabIndex property reflecting the parsed tabindex attribute (a4e5d5b)
  • meta: add inert as global attribute (a5e6477)
  • meta: new formAssociated.disablable property (0b141ab)
Bug Fixes
  • html5: <summary> element is focusable if child of <details> (79dec74)
  • rules: hidden-focusable handles inert elements (89bb969), closes #​240
  • rules: hidden-focusable no longer reports for disabled form controls (d337397)
  • rules: hidden-focusable no longer reports for elements with tabindex="-1" (03d7223), closes #​240

v8.15.0

Compare Source

Features
  • rules: new rule valid-autocomplete (bebd0d1)
Bug Fixes
  • rules: case-insensitive match for url in meta-refresh (3177295)

v8.14.0

Compare Source

Features
  • rules: new option allowLongDelay to meta-refresh to allow 20h+ delays (629625c)

v8.13.0

Compare Source

Features
  • meta: allow <link> under <body> if appropriate rel attribute is present (ae1e070)
  • meta: allow content categories to be a callback (0eb4e77)
  • meta: disallow invalid rel attribute keywords (dc36cfb)

v8.12.0

Compare Source

Features
  • rules: new rule no-abstract-role (923680b)

v8.11.1

Compare Source

Bug Fixes
  • dom: fix regression error with selectors ending with characters a, d or 9 (a9a9ef9)

v8.11.0

Compare Source

Features
  • html5: add new property aria.naming representing if the element can be named (4fca264)
  • html5: update role metadata from html-aria standard (b029a3f)
  • meta: move implicitRole to aria.implicitRole (bc8cacf)
Bug Fixes
  • handle selectors containing tabs and newlines (5e45d54), closes #​238
  • rules: new option allowAnyNamable for aria-label-misuse (c08a3ba), closes #​237

v8.10.0

Compare Source

Features
  • rules: new rule no-implicit-input-type (6cc0c6d)
Bug Fixes
  • deps: update dependency ignore to v5.3.1 (4553b89)
  • html5: type for <input> no longer required (37284d0), closes #​235
  • rules: change wording required to recommended in no-implicit-button-type (1926c06)

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 is behind base branch, 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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants