Skip to content

v0.7.2

Choose a tag to compare

@github-actions github-actions released this 07 Nov 18:10
228456f

Summary

Nativele 0.7.2: library elements are checked against their custom elements manifests, misspelled events on native elements are reported, component trees of any depth type check, and Skill trials and performance budgets are scripted.

Changes

  • Custom elements manifests: lint reads the customElements manifest of the template's package and its dependencies (no node_modules scan), so unknown-prop, invalid-prop-value (literal unions with Did you mean, ="false" on a boolean attribute, NaN numbers), unknown-event, and the new unknown-slot and unknown-custom-element check library elements such as Web Awesome's; completeness is judged per element along its superclass chain; manifest-known tags leave unchecked-custom-elements; doctor reports a broken manifest (custom-elements-manifest).
  • unknown-native-event (new): a data-on-* name on a native element that is close to one of its native events, and that no component, dispatched event or manifest declares, with Did you mean; not reported when the element holds content whose events lint cannot know.
  • Types: component trees of any depth, recursive and mutually recursive components type check (no TS2589, no circularity).
  • Fixes: data-flow issues in --json carry only the documented keys; emit-forwarding and custom-event-on-native point at the reported attribute; unguarded-input-value treats value, valueAsNumber and valueAsDate as one and counts only a comparison that gates the write; the Vite plugin parses each template once; the release workflow builds before staging so npm sees the bin file.
  • Skills and tooling: scripted Skill trials (npm run trial, fixtures in trials/, replay of the last accepted agent output in CI, first accepted trial for nativele-vue); performance budgets in CI (npm run bench:check: parse/read/readdir counts, memo entries, tsc instantiations, a scaling ratio); nativele-vue, nativele-integration, nativele-web-awesome and nativele-linting updated from trials (object props change by a new object, <KeepAlive> caches components, manifest checks).
  • Node: engines.node is >=22 (CI tests 22 and 24).

Breaking Changes

None in the public API. --json issues of the data-flow rules no longer carry undocumented extra fields (tag, attrs, values, events, slotted).