8000 Releases · errata-ai/vale · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Releases: errata-ai/vale

v3.12.0

09 Jun 01:19
44c18b3
Compare
Choose a tag to compare

🚀 New Feature: Views – Targeted Linting for Structured (YAML, JSON, TOML) and Source Code Files

We’re introducing Views, a new way to define custom, structured representations of your files—giving you fine-grained control over what gets linted and how.

Views allow you to extract specific content from structured data (like YAML, JSON, or TOML) and source code and apply scoped linting rules to just those sections.

🔍 What’s a View?

A View is a user-defined configuration that transforms a file into a set of named scopes. This enables you to lint only relevant parts of a file—such as metadata descriptions, comments, or docstrings—without affecting the rest.

Here's an example using an OpenAPI file:

openapi: 3.0.0
info:
  title: sample API
  description: Optional multiline or single-line description in [CommonMark](http://commonmark.org/help/) or HTML.
  version: 0.1.9

servers:
  - url: http://api.example.com/v1
    description: Optional server description, e.g. Main (production) serrver
  - url: http://staging-api.example.com
    description: |
      Optional server description, e.g. 
      Internal staging serrver for testing
  - url: http://api.example.com/v2
    description: Optional server description, e.g. Main (production) serrver

And here's a View that extracts title, description, and each server's description:

# config/views/OpenAPI.yml
engine: dasel
scopes:
  - name: title
    expr: info.title

  - expr: info.description
    type: md

  - expr: servers.all().description
    type: md

type: md indicates that the description values are formatted are Markdown. We enable this be using the View key in our .vale.ini:

StylesPath = ../../styles
MinAlertLevel = suggestion

[API.yml]
BasedOnStyles = Vale

View = OpenAPI

See the documentation for more information.

Changelog

  • 44c18b3 test: add more cases
  • 8ab88af refactor: blueprint -> view
  • 3a996da fix: remove erroneous "+1"
  • fdaa335 chore(deps): bump golang.org/x/net from 0.36.0 to 0.38.0 (#996)

v3.11.2

07 Apr 00:49
dc4c479
Compare
Choose a tag to compare

Changelog

  • dc4c479 fix: adjust comment offset (#992)
  • a219fa2 refactor: improve front matter error messages
  • 3843d07 test: add case for IgnoredScopes

v3.11.1

03 Apr 09:21
6aa8bb9
Compare
Choose a tag to compare

Changelog

  • 6aa8bb9 fix: don't error on duplicate fields

v3.11.0

02 Apr 21:05
94247d4
Compare
Choose a tag to compare

This release adds support for linting front matter fields in Markdown, AsciiDoc, reStructuredText, MDX, and Org files.

There are 3 supported front matter types -- YAML, TOML, and JSON:

formats

Each field is dynamically assigned its own scope, allowing you to write rules that target specific ones:

---
title: "My document"
description: "A short summary of the document's purpose."
author: "John Doe"
---

Using the example above, the generated scopes would be text.frontmatter.title, text.frontmatter.description, and text.frontmatter.author.

A rule can then use these in its scope: field:

extends: capitalization
message: "'%s' should be in title case"
level: warning
scope: text.frontmatter.title

Changelog

  • 94247d4 chore: add mdx2vast to Docker
  • ecbcb3b feat: support for front matter

v3.10.0

18 Mar 09:38
Compare
Choose a tag to compare

This release introduces support for MDX (#841). See the documentation for more information.

Notably, it is no longer necessary to configure CommentDelimiters or use a [formats] association with Markdown.

Changelog

  • 74f7480 chore(deps): bump github.com/expr-lang/expr from 1.16.9 to 1.17.0 (#985)
  • 1bcb343 test: add MDX case with old configuration
  • 4476a1e chore(deps): bump golang.org/x/net from 0.34.0 to 0.36.0 (#982)
  • 32e40db refactor: fix golangci-lint
  • 04a7039 fix: support non-expressions in {...}
  • bc79b15 refactor: clean up cmd execution
  • 811d6c4 chore: install mdx2vast in CI
  • 61c8d15 feat: add built-in support for MDX

v3.9.6

02 Mar 00:46
Compare
Choose a tag to compare

Changelog

  • c336149 fix: support filters through strings or files (#967)

v3.9.5

05 Feb 08:07
Compare
Choose a tag to compare

Changelog

v3.9.4

23 Jan 06:06
Compare
Choose a tag to compare

Changelog

  • 0e23567 refactor: use default location when dicpath is not set
  • 992fddb refactor: restrict spell check to word bounded tokens
  • 7edac53 fix: only use on-disk file extension for config-matching
  • 00b5b09 fix: handle empty replacements (#950)
  • e73f5cd chore: update go dependencies (#938)
  • 75ff562 Introducing Vale Guru on Gurubase.io (#924)

v3.9.3

02 Jan 02:53
Compare
Choose a tag to compare

Changelog

  • 0bac7ed refactor: ensure JSON errors always include the same keys
  • bab86b3 fix: allow escaping "|" in substitution rules

v3.9.2

25 Dec 16:35
Compare
Choose a tag to compare

Changelog

  • 0c4f880 fix: handle regex-based replacements (#901)
  • df4a934 refactor: only fetch library when needed (#932)
  • 324a0ff chore: update ruby dependencies (#937)
  • ccf35b9 fix: check qErr != nil but return a nil value error err (#935)
  • 71c0258 refactor: support JSON in ls-dirs
0