@quobix/vacuum 0.35.0 → 0.35.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +28 -1
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -568,9 +568,26 @@ recognizes a compressed report file and will deal with it automatically when rea
568
568
 
569
569
  > When using compression, the file name will be `vacuum-report-MM-DD-YY-HH_MM_SS.json.gz`. vacuum uses gzip internally.
570
570
 
571
+ ## Selecting property names in custom rules
572
+
573
+ Use quoted bracket notation for JSONPath property names with special characters, for example `['$ref']` and `['application/json']`. vacuum does not support JSONPath-Plus backtick escapes.
574
+
575
+ To inspect a `$ref` property itself, set `resolved: false`. With `resolved: true`, rules inspect the referenced schema after resolution.
576
+
577
+ ```yaml
578
+ rules:
579
+ no-request-body-refs:
580
+ description: Request body schemas must be inline.
581
+ given: "$.paths.*.*.requestBody.content['application/json'].schema['$ref']"
582
+ resolved: false
583
+ severity: warn
584
+ then:
585
+ function: falsy
586
+ ```
587
+
571
588
  ## Ignoring specific linting errors
572
589
 
573
- You can ignore specific linting errors by providing an `--ignore-file` argument to commands that run or replay lint results, including `lint`, `report`, `spectral-report`, `html-report`, `dashboard`, and `docs`.
590
+ You can ignore specific linting errors by providing an `--ignore-file` argument to commands that run or replay lint results, including `lint`, `report`, `spectral-report`, `html-report`, `dashboard`, `docs`, `schema`, and `language-server`.
574
591
 
575
592
  ```
576
593
  ./vacuum lint --ignore-file <path-to-ignore-file.yaml> -d <your-openapi-spec.yaml>
@@ -580,6 +597,16 @@ You can ignore specific linting errors by providing an `--ignore-file` argument
580
597
  ./vacuum report --ignore-file <path-to-ignore-file.yaml> -c <your-openapi-spec.yaml> <report-prefix>
581
598
  ```
582
599
 
600
+ Repeat `--ignore-file` to combine waivers from multiple files. Paths for the same rule are appended; an unreadable or invalid file stops the command.
601
+
602
+ ```sh
603
+ ./vacuum lint --ignore-file pets-ignore.yaml --ignore-file stores-ignore.yaml api.yaml
604
+ ```
605
+
606
+ In `vacuum.conf.yaml`, `ignore-file` accepts either one path or a YAML list of paths. A scalar value, including `VACUUM_IGNORE_FILE`, is always one path; commas are part of the filename.
607
+
608
+ Language-server editor settings accept `ignoreFiles: ["one.yaml", "two.yaml"]`; the legacy `ignoreFile` string still works. An empty `ignoreFiles` list clears waivers. Explicit CLI ignore files override disk config; editor initialization and workspace settings can override the CLI defaults.
609
+
583
610
  The ignore-file should point to a `.yaml` file that contains exact result paths or JSONPath expressions to be ignored by vacuum. The structure of the YAML file is as follows:
584
611
 
585
612
  ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quobix/vacuum",
3
- "version": "0.35.0",
3
+ "version": "0.35.1",
4
4
  "description": "The world's fastest, most scalable and complete OpenAPI parser",
5
5
  "type": "module",
6
6
  "author": "Dave Shanley",