Skip to content

Releases: daveshanley/vacuum

v0.11.1

09 Jul 18:13
Compare
Choose a tag to compare

Changelog

  • 16479f3 bumped deps to latest libopenapi

v0.11.0

09 Jul 16:11
Compare
Choose a tag to compare

Re-builds some of the rules to use the doctor instead of core functions. Adds some nil checks for issues reported.

Adresses:

Ignoring specific linting errors

You can ignore specific linting errors by providing an --ignore-file argument to the lint and report commands.

./vacuum lint --ignore-file <path-to-ignore-file.yaml> -d <your-openapi-spec.yaml>
./vacuum report --ignore-file <path-to-ignore-file.yaml> -c <your-openapi-spec.yaml> <report-prefix>

The ignore-file should point to a .yaml file that contains a list of errors to be ignored by vacuum. The structure of the
yaml file is as follows:

<rule-id-1>:
  - <json_path_to_error_or_warning_1>
  - <json_path_to_error_or_warning_2>
<rule-id-2>:
  - <json_path_to_error_or_warning_1>
  - <json_path_to_error_or_warning_2>
  ...

Ignoring errors is useful for when you want to implement new rules to existing production APIs. In some cases,
correcting the lint errors would result in a breaking change. Having a way to ignore these errors allows you to implement
the new rules for new APIs while maintaining backwards compatibility for existing ones.

Feature contributed by @lobocv

Read the docs

Changelog

  • a24db7e Add go run method to README
  • 6041a74 Added README for ignore-file
  • be14e9f Added Execution to VacuumReport
  • c0384f4 Added a nil check
  • 4708439 Addressed issue #510
  • 7fd882f Fixed example check logic
  • 890f507 Fixed some glitches with examples missing
  • 002d40c Implemented an ignore-file (-i) option to the lint command which takes a YAML file that lists the paths for each rule for which to ignore errors for.
  • b60dcfd Improved tests to check for success in stdout
  • f8f513b Updated deps, updated readme.
  • 355c8ec added build graph option to vacuum execution.
  • f5bc15f added more nill checks for polymorphic type checks
  • b8f03ce added new functions to replace old core based ones
  • f38b6a7 added nil check
  • 7b4c1fe added nill check
  • 1b25c33 added nill check to operation_id
  • e67926d added schema check to media type
  • 3b076bf addressed #501
  • efc73a7 addressed issue #507
  • fe36303 bump deps
  • 4bb27fb bumped deps
  • 78040c1 clean up rule keynode
  • 47ce52e cleaned go.mod
  • 412e0ff cleaned up operation_parameters
  • 1b4acdb cleaned up operation_tags functions
  • 6e66fdc cleaned up test
  • 31fe9bc fixed / updated operation_id function tests
  • f574d29 fixed location for owasp check error response function
  • 3bdcb18 fixed owasp header_definition function
  • c393ef3 fixed rule schema name
  • cb42322 fixed ruleset functions for rebuilt functions
  • f9762fa fixed tests for new openapi functions
  • f29019f fixing owasp header definition schema and function
  • d20d96e made sure doctor is added in correctly, avoids another node lookup on ruleset functions.
  • 8237d7f rebuilt operation 4x response function.
  • 34b0a75 rebuilt operation tags functions
  • 1510d45 rebuilt operation_descriptions.go
  • 30d8edf rebuilt operation_id openapi function
  • 459465a rebuilt operation_tags function
  • 5fb4b6a rewrote functions that use truthy, to use the doctor.
  • ac1e9af updated function test count
  • ac87130 updated no_ambiguious_paths to have correct node location.

v0.10.1

22 Jun 14:55
Compare
Choose a tag to compare

Changelog

  • 3aa701a Added Pascal-Kebab case option to casing function
  • a4d8e87 Changes to core/casing function that 1. Allows it to match on objects and arrays. When it does, it applies the casing rule to all field names (for objects) and all elements (for arrays) 2. Allowed casing to work on multiple node matches so that we can use recursive JSONPath matching such as '$..properties'

@lobocv

v0.10.0

25 May 19:03
Compare
Choose a tag to compare

Quality / Stability release

This release contains breaking changes for API consumers.

This is a breaking change for consumers of vacuum as an API. It introduces some changes to the Schema of all built in rule functions. These changes are required to correct some broken behavior when using vacuum as an engine for other tools.

A number of built in rule functions have have schemas updated to be accurate.

A new GetCategory method signature has been added to the RuleFunction interface, that requires all rule functions to expose the category the rule is apart of.

severity is now a required property of all rule definitions.

It addresses the following issues

Changelog

  • 6c3ee1e Added GetCategory to rules and functions.
  • bafa430 Added complete rule result for failed validation
  • eb1d2bb Added in a missing rule for a function (not recommended)
  • 4b92420 Addresses #497
  • 5288135 Fixed rule function schemas
  • 1f88d45 Fixed tests
  • 4a996f8 added 0.10 release notes.
  • f444c40 added nill pointer check
  • afc6a8d added property check to validation
  • cbf35d8 added rule schema json
  • 297d059 added severity and formats to required props for rules in schema
  • 04149fc addressed max properties on enumeration #495
  • 345713f bumped deps
  • ec1318c cleaned up LSP handling
  • da2e73d corrected ID of post operations rule
  • a2de733 exported RuleSchema and RulesetSchema
  • 62eab5a fixed schema and casing function schema
  • 7e4536e fixed xor schema
  • c064a70 nill pointer check added
  • c7b3bee removed formats from schema
  • 1a9f784 removed severity from required,
  • 7cf9d0f renamed post-response-success rule

v0.9.16

09 May 20:09
Compare
Choose a tag to compare

Changelog

  • 99df10d Added missing example check for parameters with content

v0.9.15

21 Apr 14:49
Compare
Choose a tag to compare

Changelog

v0.9.14

12 Apr 15:23
Compare
Choose a tag to compare

Changelog

  • 2bed9e6 fixed a couple of tests with missing examples
  • 9b73e7c missing examples are now sensitive to encased parent objects
  • 9e02717 removed dead code.

v0.9.13

09 Apr 14:29
Compare
Choose a tag to compare

Changelog

  • 2294f6c Add --timeout and lint --globbed-files non-completions
  • 61573d5 Fixed glitch with multi example validation.
  • c3fd403 More concise and tighter scoped flag completion registration error handling

@scop

v0.9.12

07 Apr 19:10
Compare
Choose a tag to compare

Changelog

  • 6f48501 documentation and rules are now aligned.

v0.9.11

03 Apr 17:52
Compare
Choose a tag to compare

Changelog

  • eb21309 Fixed NPE discovered in the platform
  • 2dfc2ed Updated truthy to operate correctly
  • 77e964c Updated zuplo logos
  • 33e29b1 cleaned unused-component
  • 3fd475c cleaned up security rule
  • acd2165 disable dedupe on rules.
  • e3d93b5 missing examples now more sensitive to location accuracy
  • d3cd35a moved disgnostics into reusable function
  • a5ad684 moved to key node for media types
  • 58fcbab prevented stats from erroring out if there are no inputs
  • 7718f1f rebuilt operation_descriptions function
  • 3a990a7 updated BuildEndNode to accomodate quotes
  • c71a1da updated truthy to render correct line
  • 5f0bbef we need another build, access token failed.