Releases: daveshanley/vacuum
v0.11.1
v0.11.0
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
Changelog
- a24db7e Add
go run
method to README - 6041a74 Added README for ignore-file
- be14e9f Added
Execution
toVacuumReport
- 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
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'
v0.10.0
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
andRulesetSchema
- 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
v0.9.15
v0.9.14
v0.9.13
v0.9.12
v0.9.11
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.