Skip to content

Latest commit

 

History

History
1260 lines (744 loc) · 36.8 KB

ChangeLog.md

File metadata and controls

1260 lines (744 loc) · 36.8 KB

Change Log - oav

10/15/2024 3.5.1

  • During example generation, include min/max in default titles.

09/12/2024 3.5.0

  • Add names of Passed Operations in the HTML and JSON reports.
  • Bump jsonpath-plus dependency to ^10.0.0

07/12/2024 3.4.0

  • During example generation, fields password, adminPassword, and pwd are all generated with a single value of "" instead of random characters.

06/17/2024 3.3.8

  • Remove suppression of additionalProperties errors when isArmCall === true. (ARM liveValidation scenarios)

06/11/2024 3.3.7

  • Released during an npmjs.org outage. Version not showing up, but shows as successful release. Patch bump to re-attempt releasing the same version.

06/03/2024 3.3.6

  • Support all current LTS Node versions (>=18.0.0)
  • Bump newman dependency to ~6.0.0.

05/7/2024 3.3.5

  • Bump Node engine version requirement for security vulnerability.

03/27/2024 3.3.4

  • Re-enable the arm-id validation in all cases, even when isArmCall is false. The special handling for this error will be done in RPaaS's codebase.

02/12/2024 3.3.3

  • #1014 Set armId format validation to always enabled, but allow suppression of errors when isArmCall validator argument is set to false. Update the special casing on additionalProperties validation. This error was was erroneously skipping validation validation error when isArmCall is set to true. This value is defaulted to true when used for Model Validation and Semantic Validation.
  • #995 Remove ms-rest dependency in favor of newer @azure/ms-rest-js

01/29/2024 3.3.2

  • Remove mockjs dependency.

11/14/2023 3.3.1

  • #1019 Fixing edge case caused by introduction of fake property refWithReadOnly used to handle readonly errors thrown when placed alongside a ref node in a swagger schema.

10/19/2023 3.3.0

  • #1011 Enhancing JSON report by exposing new properties including coveredSpecFiles, unCoveredOperationsList, errorLink and schemaPathWithPosition.

10/19/2023 3.2.14

  • #1010 Fix an issue with details of Failed Operations not displayed in Windows-generated HTML report.

09/29/2023 3.2.13

  • #1004 fixes an issue with the injected property refWithReadOnly causing additionalProperty error in schema validator.

09/25/2023 3.2.12

  • #996 Allows required properties to be ommitted from a response if they are also marked readonly.

07/05/2023 3.2.11

  • Re-enable additionalProperties validation where the liveValidator configuration has isArmCall set to false. The version of oav that is being used to validate azure-rest-api-specs has this behavior enabled, so this is not a breaking change.

06/15/2023 3.2.10

  • Patch byte type validation to properly decode and re-encode a base64 string. A byte formatted body's validity has nothing to do with whether or not one can successfully encode it to ascii.

06/05/2023 3.2.9

  • Reverting 3.2.9-beta.1 override changes.
    • We made this update to address a problem in a node project that takes a dependency on oav. Unbeknownst to me, a package taking a dependency on oav does not inherit the override settings defined in the oav package.json. With that being the case, there is no reason to leave these overrides added to the package.json for oav.
  • Pin lodash in dev dependencies to account for build failure on newer versions.
  • Update various other dependencies.

04/18/2023 3.2.9-beta.1

  • Dependency updates
    • Override transitive dependencies:
      • file-type@3.9.0 -> 16.5.4
      • qs@6.5.3 -> 6.8.3

04/12/2023 3.2.8

  • Dependency updates
    • "@azure/core-http ^2.2.7 -> ^3.0.1
    • Upgrading core-http allows us to bump the dependency on xmljs2 to one without a CVE

02/24/2023 3.2.7

  • Fix roundtrip validation model with circular reference

02/23/2023 3.2.6

  • Improved the API scenario long running operation pooling mechanism.
    • support for checking final-via-state
    • update the mechanism of gettig the lro polling url.
  • Support generating the ARM rules for api scenario.

02/19/2023 3.2.6

  • LiveValidator - logging INVALID_TYPE error for additionalProperties for RpaaS call
  • TrafficValidator - bug fix about incorrect payload file path in html report

02/03/2023 3.2.5

  • Lock @apidevtools/swagger-parser@10.0.3 as 10.1.0 brings conflict of ajv package version
  • generate-api-scenario
    • Support --scope option in static generator
  • API Scenario
    • Skip create and delete resource group if specify resource group name
  • bug fix about incorrect payload file path in html report

01/30/2023 3.2.4

  • Generate Examples - Support specified generation rule
  • Revert node requirement to >=12
  • API Scenario
    • Support scenario file as scope
    • Support test-proxy recording externalization with --testProxyAssets option
    • Support --randomSeed option
    • Support file type in formdata and body
    • Change the prefix length to 8 from 10 in generated API Scenario
  • validate-traffic
    • Add --jsonReport parameter in command validate-traffic

11/23/2022 3.2.3

  • AjvSchemaValidator - Ignore unknown format when compile schema

11/07/2022 3.2.2

  • API Scenario
    • Support LRO polling with operation-location header
    • Support AzureKey based authentication

10/20/2022 3.2.1

  • ModelValidator - Fix bug during reporting real exampleJsonPath
  • ModelValidator - Add LRO header validation for data-planes swagger
  • GenerateExamples - Add title and operationId to example
  • GenerateExamples - Generate subscriptionId in guid format
  • ModelValidator - Add type validation for additionalProperties whose type is specified as an object
  • Bugfix: FileLoader - isUnderFileRoot function supports validation for absolute path
  • API Scenario
    • Add roleAssignment step
    • Bugfix: Use content-type specified in swagger
    • Bugfix: fix query parameter value type

10/10/2022 3.2.0

  • Retire some features
    • Retire commands "generate-uml"
    • Retire commands "generate-wireformat"
    • Retire commands "resolve-spec"
    • Retire Autorest plugin

09/19/2022 3.1.0

  • API Scenario
    • Support parameterized host and AzureAD authentication option
    • Remove support for shareScope
    • Refactor postman collection generation with folders
    • Improve LRO poller and use retry-after header in delay
    • Improve logging level to reuse the -l option
    • Clean some unused dependencies
    • Support Roundtrip validation in validation
    • Integrate Roundtrip validation into API Scenario

09/06/2022 3.0.6

  • AJV validator - Support arm-id format validation
  • ModelValidator - Only enable arm-id validation for both of model validator and live validation(rpaas api validation is excluded)

08/04/2022 3.0.5

  • ModelValidator - Support api-version validation
  • ModelValidator - Fix bug when operation has no own parameters
  • validate-traffic
    • add detailed operationId on swagger link
    • add detailed position info on pathInpayload link
    • add detailed position info on schema link
    • change report UI
    • support multi swaggers on report
  • API Scenario
    • Support Subscription and Tenant scope
    • Support assertion in response

07/20/2022 3.0.4

  • GenerateExamples - Support data generation in byte format
  • ModelValidator - Support data validation in byte format
  • API Scenario
    • Support readme.test.md run API test
    • Fix step variable unresolved in newman collection
    • Fix bugs about html report
    • Aggregate reports into one per scenario file
    • Fix bug of object variables and patches
    • Improve markdown report

07/06/2022 3.0.3

  • Generate high quality examples from API Scenario tests

06/30/2022 3.0.2

06/10/2022 3.0.1

  • GenerateExamples - Change the domain of LRO header
  • ModelValidator - Still validate LRO operation when response doesn't have schema
  • ModelValidator - Report real exampleJsonPath when additional parameter includes "."
  • Support duration format when generating examples
  • SemanticValidator - Fix bug about multipart/form-data

06/10/2022 3.0.0

  • API Scenario runner
    • Implement API Scenario v1.2 schema
      • operationId based step
      • more variable types and prefix support
    • Support loading file from remote uri
    • Support testProxy recording mode when running API Scenario
    • Improve API Scenario generation from RESTler dependencies
    • Support running API Scenario against localhost endpoint
    • Refactor Postman based runner client
    • Support API Scenario generation from testProxy recording
    • Support local devMode where AAD auth, ARM call and LRO polling will be disabled

05/27/2022 2.12.2

  • LiveValidator - Get real schema and data while error's schema has allOf property
  • TrafficValidator - Refine validation report
  • SemanticValidator - Support arm-id format for string type

04/20/2022 2.12.1

  • Fix bug about copyfiles command during build

04/07/2022 2.12.0

  • ModelValidator - Ignore INVALID_TYPE validation in case of query parameter in string format
  • Traffic Validation - Support validation report generation

04/06/2022 2.11.10

  • SemanticValidator - Fix bug about error path.

03/11/2022 2.11.9

  • Api Scenario - Fix bug about readonly during example diff.

02/23/2022 2.11.8

  • SemanticValidator - Clarify the error message when NOT schema of 'path' fails
  • Add coverage for trafficValidator
  • FIx GC introduced by 2.11.7

02/15/2022 2.11.7

  • LiveValidator - Fix bug about date-time validation.
  • LiveValidator - Fix bug about duplicated swagger files when loading by path patterns.

02/14/2022 2.11.6

  • Upgrade newman package to 5.3.1. Fix intel license issue.
  • Fix simple git high security issue.

01/21/2022 2.11.5

  • LiveValidator - Loosen date-time validation for missing "Z" in the end
  • LiveValidator - Validate multipleOf data again when ajv validation results have error about multipleOf in response

12/15/2021 2.11.4

  • LiveValidator - Ignore required validation rule in response when x-ms-secret is true and the httpMethod is POST
  • ModelValidator - add validation for common path scope parameters in swagger
  • ModelValidator - Increase model validation test coverage to 90%+
  • ModelValidator - Ignore LRO_RESPONSE_CODE validation in case of error responses
  • ModelValidator - fix failed to resolve discriminator models in nested definitions

12/03/2021 2.11.3

  • Utils - move get provider related functions to utils because of DI error

12/02/2021 2.11.2

  • LiveValidator - add more unittest for data-plane spec path
  • OperationSearcher - use local variable instead of glob regex

12/01/2021 2.11.1

  • LiveValidator - Supports logging spec loading traces separately
  • Fix getProviderFromSpecPath regex issue and add unittest

11/30/2021 2.11.0

  • Api scenario - add new step armDeploymentScript
  • Api scenario - rename step armTemplateDeployment to armTemplate

11/10/2021 2.10.3

  • Fix 'generate-examples' command failed to generate correct format for ‘uri’ format parameter
  • LiveValidatorLoader - make response headers as optional for swagger 2.0
  • LiveValidator - ignore LRO header check if using 201/200+ provisioningState
  • SemanticValidator - Fix false alarm for MISSING_PATH_PARAMETER_DEFINITION
  • ModelValidator/SemanticValidator - support suppression on error code
  • Use new URL instead of url.parse. Since url.parse will encode url and will be deprecated.
  • SemanticValidator - Add new rules of 'INVALID_XMS_DISCRIMINATOR_VALUE' and 'DISCRIMINATOR_PROPERTY_NOT_FOUND'

11/04/2021 2.10.2

  • Traffic validation - support multiple swaggers and multiple payloads
  • Extends format types in AJV schema validation
  • Bug fix - check discriminator property type must be string
  • Bug fix for generate api scenario
  • Fix jsonPathToArray bug (which will incorrectly transform ["Microsoft.something"] into ["Microsoft", "something"])
  • Upgrade autorest scheams about x-ms-enum change
  • Model/Live validation - fix content-type validation and unknown format issue during validator building

10/26/2021 2.10.1

  • MV - Fix error conversion issue of invalid token parsing in model validation
  • Api scenario generation support swagger file as input parameters

10/20/2021 2.10.0

  • Add new version of model validation

10/19/2021 2.9.2

  • Increase semantic validation test coverage to 90%+
  • Export loader types

09/30/2021 2.9.1

  • Example extractor support add url parameter if define x-ms-parameterized-host

09/30/2021 2.9.0

  • Rename test scenario to API scenario
  • Implement API scenario v1.1 schema
  • Support PATCH operation in API scenario step
  • Add convention for ArmTemplate parameters
  • Support cleanUp steps
  • Fix xMsExampleExtractor bug

09/03/2021 2.8.1

  • support calculate test scenario operation coverage
  • OAV runner support step scope variables
  • Fix runner armTemplate output as runtime variable
  • Runner support identify step level variables by using different variable name prefix.

08/17/2021 2.8.0

  • Isolate RP when running transform on cache model in live validator so that the transform won't fail on global cache level
  • Fix type error in nullableTransformer
  • Throw exception when getting error in transformLoadedSpecs at livevalidator initialization
  • Improve wording of error messages
  • Support resolve body variables in armTemplate
  • Do not write default variable with placeholder
  • Fix validate-traffic file path resolved error.
  • Fix generate-examples can't generate some http code in response

08/12/2021 2.7.3

  • Refactor semantic validation using AJV
  • Enable url path for a swagger loading

08/09/2021 2.7.2

  • Add runner architecture drawio
  • Oav runner run test scenarios sequentially
  • Oav runner can reuse the 'after-step' environment of the previous step in debugging mode.

08/03/2021 2.7.1

  • Disable checkUnderFileRoot in Validate Traffic command

07/21/2021 2.7.0

  • Oav runner support specifying option 'runId' with option 'from' and/or 'to' to debug.
  • Oav runner support using env variable 'TEST_SCENARIO_JSON_ENV' to override variables in env.json.
  • Replace Oav runner option 'cleanUp' with 'skipCleanUp'.
  • Update README.md add gif to show API test
  • Fix bug. Avoid duplicate step name when generate postman collection
  • Small bug fix. Set postman collection subscriptionId env when do AAD auth
  • Response diff ignore exception

07/15/2021 2.6.2

  • Bug Fix: validate-traffic command doesn't support relative path input

7/13/2021 2.6.1

  • Oav test scenario runner support output variables from step
  • New oav command "oav run" alias for "oav run-test-scenario" command
  • Oav runner support dryRun mode. Only generate postman collection
  • Oav runner support predefined resourceGroup and skip cleanUp
  • Test scenario schema support "requestUpdate" and "outputVariables" syntax
  • Fix resourceUpdate bug

07/08/2021 2.6.0

  • Support validate-traffic <traffic-path> <spec-path> command in OAV cli

07/05/2021 2.5.9

  • Ignore LRO_RESPONSE_HEADER rule check in case of synchronous api call

06/25/2021 2.5.8

  • support extract armTemplate deployment output to variables

06/22/2021 2.5.7

  • small fix for passing validation-level

06/22/2021 2.5.6

  • optimise validation logical. Ignore readonly and secret property response check
  • DO NOT output log when request method is POST
  • Support level option. Current two levels: validate-request, validate-request-response. validate-request will only check request parameters. validate-request-response check both request and response.
  • Improve test scenario markdown report format
  • Bugfix: packaging issue for handlebar files
  • Add test scenario JUnit xml report support

6/10/2021 2.5.5

  • add markdown report support for test scenario runner
  • support rule based test scenario generation
  • rename error code
  • fix relative path bug

5/27/2021 2.5.4

  • Analyze dependency return resource id schema reference
  • Bug fix: test scenario get arm deployment parameters
  • Bug fix: test scenario definition step use anyOf instead of oneOf.
  • Postman runner support check armTemplate deployment status

5/25/2021 2.5.3

  • Ignore MISSING_RESOURCE_ID rule for sub level azure resources

5/18/2021 2.5.2

  • Supports different log types in livevalidator

5/13/2021 2.5.1

  • test scenario runner support overwrite location, armEndpoint, subscriptionId

05/12/2021 2.5.0

  • Optimise report blob path.
  • Support mask client secret, token and swagger sensitive data
  • Refine report schema
  • Response diff ignore Id, location, datetime.
  • Bump handlebars version to fix vulnerability issue

05/11/2021 2.4.0

  • Support example generation with multiple operations input
  • Added more logging and duration to live validator

04/14/2021 2.3.3

  • Support auto upload generated file to azure blob.
  • Support mask bearer token
  • generate-static-test-scenario support generate readme.test.md

04/06/2021 2.3.2

  • Support auto generate test scenario based on resource type.
  • Support directly run test scenario file with embedded internal newman runner
  • Support analyze dependency from readme tag.

03/30/2021 2.3.1

  • Update error message of some rules to align to the document

03/24/2021 2.3.0

  • Support load test-scenario file
  • Support generate postman collection from test-scenario

02/08/2021 2.2.7

  • Add new rules of 'LRO_RESPONSE_HEADER' and 'LRO_RESPONSE_CODE'.
  • Add option of 'isArmCall' to differentiate rulesets for Arm and RpaaS in validation apis.

03/12/2021 2.2.6

  • Fixed the mock value of 'location' header and 'azure_AsyncOperation' header.

02/08/2021 2.2.5

  • Add new rule of 'MISSING_RESOURCE_ID'.
  • Add option of 'isArmCall' to differentiate rulesets for Arm and RpaaS.

02/08/2021 2.2.4

  • Bump version to republish since previous version is stuck to be fetched.

01/26/2021 2.2.3

  • Bugfix collect correct err.data in discriminator validation for multiple level allOf

01/22/2021 2.2.2

  • Bugfix for example generator: resolve reference undefined property.

01/21/2021 2.2.1

  • Bugfix should copy required array for allOf transformer
  • Bugfix collect correct err.data in discriminator validation

01/15/2021 2.2.0

  • Enable support for test scenario parsing

11/25/2020 2.0.1

  • Ignore required validation rule in response when x-ms-secret is true
  • Ignore schema validation when request body is not required and value is empty {}

11/23/2020 2.0.0

  • Replace ts-common libraries by openapi-tools-common single library
  • Adding example generation functionality
  • Bugfix show source in response code not found
  • Bugfix error on response body root
  • Bugfix content type
  • Downgrade tsconfig target to es2018
  • Bugfix Don't report error if readme.md is found outside of rootpath
  • Remove readonly/writeonly/secret value in description and params
  • Bugfix exclusiveMinimum not reported
  • Adding new code DISCRIMINATOR_VALUE_NOT_FOUND

07/24/2020 0.22.1

  • Upgrade yasway with removing clonedeep when validate schema.

07/09/2020 0.21.7

  • Fix the bug that the value of 'x-ms-secret' should be boolean instead of string.

05/21/2020 0.21.6

  • Avoid adding nullable value for parameter when its' type isn't string
  • Output exception infomation for semantic validation

04/20/2020 0.21.5

  • Output exception information when pretty switch is enabled.

04/10/2020 0.21.4

  • Instead of replacing all the special characters in path parameters, only replace the part of parameter value which start with (http:|https:)
  • Upgrade ms-rest version to 2.5.4

03/30/2020 0.21.3

  • Upgrade yasway version including the fix on regression issue of customvalidator.

03/27/2020 0.21.2

  • Upgrade yasway version including the fix on global parameter in request validation and x-ms-mutability check for read in request.

03/16/2020 0.21.1

  • Enabled request parameter suppression in model validation.

03/16/2020 0.21.0

  • Fixed oav does not report the invalid internal references error issue. Added a function (verfiyInternalReference) to check the error.

03/13/2020 0.20.13

  • Normalize the path parameter values by using whilelist (0-9a-zA-Z._) to fix the issue of validate-example failed which caused by host path parameter values including special characters (:)

03/10/2020 0.20.12

  • Fixed typeerror in live validator when search operation in case of unknownapiversion

03/03/2020 0.20.11

  • Upgrade openapi-markdown package version

03/02/2020 0.20.10

  • Upgrade virtual-fs package version

02/13/2020 0.20.9

  • Fall back to match child resource in live validator

02/13/2020 0.20.8

  • The path matching for subscription and provider in Live validation should be case-insensitive.

02/05/2020 0.20.7

  • Add base model name as a value to discriminator enum value list.Issue#468

01/16/2020 0.20.6

  • security vulnerability fix for handlebars, kind-of and lodash

12/26/2019 0.20.4

  • Upgrade yasway and z-schema version.

12/05/2019 0.20.3

  • Change the swaggerPathsPattern of LiveValidatorOptions to array type

11/26/2019 0.20.2

  • Upgrade yasway version to consume the change for x-ms-secret property update

11/20/2019 0.20.1

  • Resource provider and API version should be case-insensitive in live validation
  • Upgrade yasway version to reflect the deep clone performance improvement change

11/4/2019 0.20.0

  • Support x-ms-mutability in the response validation. If there's a write-only x-ms-mutabitlity property in the response, report an error

10/22/2019 0.19.9

  • Extends logging for live validator to log performance metrics, correlationId and structured request information.

10/14/2019 0.19.8

  • Add an optional logging callback to consume by livevalidator in order to dump log to external caller.
  • Update the yasway version to 1.8.5.
  • Add the new validation error code of SECRET_PROPERTY.

09/04/2019 0.19.6

  • Report example position for request parameter errors Issue#423.
  • Fixed internal error when load invalid local reference file Issue#449.
  • Fixed internal error when load empty reference file Issue#444.

09/03/2019 0.19.5

  • Add package.lock file to lock the version of dependencies.

08/12/2019 0.19.4

  • Update the error handling when loading and parsing suppression files.

07/30/2019 0.19.3

  • Fixed validation of nullable array types if they were defined as tope level models or transformed into top level models in the "definitions" object. Fixes #437.
  • Fixed an issue where "properties": {} was being incorrectly added to a schema with "$ref" in the response or a top level array.

07/12/2019 0.19.2

  • Add support for validating discriminator is required and also the support for suppression.Issue#386.

07/02/2019 0.19.1

  • Update TypeScript to 3.5
  • @types/jsonpath is a dependency because PathComponent type from the package is exported in lib/util/validationError.ts.

07/12/2019 0.19.0

  • Modify path in payload for MISSING_REQUIRED_PROPERTIES and for OBJECT_ADDITIONAL_PROPERTIES to point to the actual property.

07/02/2019 0.18.6

  • Adding support for JSON path & schema path in errors.
  • Improved model validation when example provides the response body however the spec doesn't have a schema for the response and vice-versa.

06/12/2019 0.18.5

  • Added support for JSON path & schema path in errors.

05/30/2019 0.18.4

  • Better error reporting for spec reference pointing to invalid files.

05/29/2019 0.18.3

  • Update cache initialization in live validator to Promise.all().
  • Update package version of yuml2svg dependency (since it contains typescript definitions).
  • Add support for validating readOnly properties in the request.
  • Limiting dependencies on @types/lodash and typescript due to stricter type definition rules in the later versions.

04/25/2019 0.18.2

  • Use node env for jest #422.

04/08/2019 0.18.1

  • Validate request body when it is a JSON object.

04/08/2019 0.18.0

  • The isSuccessful is undefined in case of an existing runtimeException.
  • RequestResponseLiveValidationResult has a runtimeExceptions field instead of an errors field.

04/05/2019 0.17.0

  • Live Validation mode is now skipping validating for errors not specified when using the includeErrors option.
  • The types RequestValidationResult and ResponseValidationResult have been replaced with the LiveValidationResult type.

04/05/2019 0.16.1

  • OAV should exit with code 1 if it finds errors.
  • Breaking changes in SpecValidationResult, CommonValidationResult.

04/01/2019 0.15.3

  • Polymporphic anyOf's will be validated only against the matching subschema and any error wont be nested.

04/01/2019 0.15.2

  • Inner errors will have the LiveValidationIssue type instead ofobject.

03/28/2019 0.15.1

  • Allow for live validation to exclude/include specific errors.

03/27/2019 0.15.0

  • Refactor live validator and new types for validation results.
  • Expose separate request and response validate methods.
  • Expose types for live validation parameters.
  • processValidationErrors, serializeErrors and getPotentialOperations are not exported anymore. Validation methods automatically call these.

03/20/2019 0.14.8

  • Don't parse examples when not needed.
  • Remove example references when not needed to avoid "UNRESOLVABLE_REFERENCE" errors.

03/20/2019 0.14.7

  • Change test runner to jest.

03/19/2019 0.14.6

  • Don't resolve x-ms-examples for live validation and for semantic validation.

03/07/2019 0.14.5

  • Fixing linting and coding style issues.

03/08/2019 0.14.4

  • INTERNAL_ERROR as an error code.

03/07/2019 0.14.3

  • OAV shouldn't parse error.title twice.

03/06/2019 0.14.2

  • Use one cache per SpecValidator inside the LiveValidator.

03/06/2019 0.14.1

  • Add doc cache during LiveValidator initialization to reduce memory footprint and execution time.

03/06/2019 0.14.0

  • Remove package level global doc cache.
  • Remove external exports of clearCache() and of executePromisesSequentially()

02/06/2019 0.13.6

  • Polymorphic models should have "type": "object".

02/05/2019 0.13.5

  • Fixing ONE_OF_MULTIPLE. It was caused by x-ms-enum.modelAsString which validates discriminators as an unrestricted strings

01/29/2019 0.13.4

  • Provide url and file position for these errors:
    • RESPONSE_STATUS_CODE_NOT_IN_SPEC,
    • RESPONSE_STATUS_CODE_NOT_IN_EXAMPLE,
    • XMS_EXAMPLE_NOT_FOUND_ERROR,
    • DOUBLE_FORWARD_SLASHES_IN_URL,
    • RESPONSE_SCHEMA_NOT_IN_SPEC, and
    • REQUIRED_PARAMETER_EXAMPLE_NOT_FOUND.

01/28/2019 0.13.3

  • Provide url and file position for RESPONSE_STATUS_CODE_NOT_IN_EXAMPLE errors.

01/23/2019 0.13.2

  • Update z-schema.

01/18/2019 0.13.1

  • Handle text-matches in suppression.

01/15/2019 0.13.0

  • JSON types are updated.

01/14/2019 0.12.0

  • Simplify model and semantic property names. errorCode becomes code and errorDetails becomes details.

01/14/2019 0.11.1

  • Replace an example object with a function to avoid reference resolutions in examples.

01/08/2019 0.11.0

  • Remove JS symbols from errors to avoid logging failure.

01/08/2019 0.10.4

  • remove ts-node

12/11/2018 0.10.3

  • exporting NodeError to consume it outside of oav..

12/07/2018 0.10.2

  • no default response for non errors.

12/07/2018 0.10.1

  • update @ts-common/virtual-fs to retry network requests.

12/05/2018 0.10.0

  • no CloudError generation.

12/01/2018 0.9.7

  • Properly handle JSON errors

11/29/2018 0.9.6

  • update @ts-common/json-parser to properly handle UNICODE escape symbols.

11/28/2018 0.9.5

  • catch jsonpath exceptions.
  • Better internal structure.

11/27/2018 0.9.4

  • Improve exception/error message.

11/26/2018 0.9.3

  • Use z-schema instead of @ts-common/z-schema.

11/21/2018 0.9.2

  • Remove rewire() package.

11/20/2018 0.9.1

  • getErrorsFromSemanticValidation().

11/19/2018 0.9.0

  • Improve error types.

11/16/2018 0.8.1

  • Suppressions may have multiple where and from fields. OAV didn't handle it properly.

11/08/2018 0.8.0

  • a source map for CloudError
  • a bug fix for embedded examples.

11/08/2018 0.7.14

  • update swagger definition

10/23/2018 0.7.13

  • switch to Azure DevOps.

10/23/2018 0.7.12

  • switch from @ts-common/azure-openapi-markdown to @azure/openapi-markdown.

10/15/2018 0.7.11

  • exported functions don't catch exceptions.

10/15/2018 0.7.10

  • Provide Title for all Schema Objects.

10/12/2018 0.7.9

  • Additional source map for generated Schema objects.

10/09/2018 0.7.8

  • Update @ts-common/azure-openapi-markdown package.

10/08/2018 0.7.7

  • Fix a bug applying suppressions from HTTPS.

10/08/2018 0.7.6

  • Fix a bug in ReadFile from HTTPS.

10/08/2018 0.7.5

  • Get suppressions from HTTPS.

10/03/2018 0.7.4

  • Fix @ts-common/source-map .d.ts files.

10/02/2018 0.7.3

  • Suppress promise rejection.

10/02/2018 0.7.2

  • Fix URL encoding test.

10/02/2018 0.7.1

  • Fix yasway.

10/01/2018 0.7.0

  • Suppression API is changed.

09/27/2018 0.6.5

  • Suppression supports relative file and object paths.

09/25/2018 0.6.4

  • Source Map for .d.ts files.

09/25/2018 0.6.3

  • Source Map

09/25/2018 0.6.2

  • Bug fix for resolve-spec CLI (#320)

09/25/2018 0.6.1

  • Semantic validation warning bug fix.

09/21/2018 0.6.0

  • Suppression. where is not supported yet.

09/21/2018 0.5.13

  • Correcting where we add url and position information to semantic validation errors.

09/19/2018 0.5.12

  • Adding url and position to source where issue occurs for semantic validation errors.

09/19/2018 0.5.11

  • Adding pretty printing to validate-spec command, --pretty option.

09/17/2018 0.5.10

  • xMsExamplesExtractor bug fix #309

09/11/2018 0.5.9

  • OAV is using '@ts-common/z-schema' instead of 'z-schema'

09/10/2018 0.5.8

  • Fix JSON-Pointer encoding.

08/28/2018 0.5.7

  • Errors have optional jsonUrl and jsonPosition fields.

08/22/2018 0.5.6

  • CloudError proper fix

08/22/2018 0.5.5

  • CloudError bug fix #300.

08/22/2018 0.5.4

  • Simplified source-map

08/21/2018 0.5.3

  • Friendly nested definition name

08/21/2018 0.5.2

  • Bug fix for "type": "file"

08/17/2018 0.5.1

  • File URL and position in title

08/17/2018 0.5.0

  • File URL and position

08/16/2018 0.4.70

  • New transformation functions.

08/14/2018 0.4.69

  • Collapse of similar errors for array elements in similarPaths property on the error.

08/13/2018 0.4.68

  • Using a JSON parser with a source map.

08/11/2018 0.4.67

  • Single error for not matching any discriminated types.

08/10/2018 0.4.66

  • Use JSON Pointer format for inserted schema title for properties and definitions.

08/10/2018 0.4.65

  • Include property name as schema title in the property object.

08/10/2018 0.4.64

  • Include definition name as schema title in the definitions.

08/01/2018 0.4.63

  • Replacing reduce error collections with lazy iterators.

07/18/2018 0.4.62

  • Solve security vulnerabilities

07/18/2018 0.4.61

  • Export more types

07/18/2018 0.4.60

  • Use yasway type definitions

07/18/2018 0.4.59

  • Bug fix: scenarios is undefined when running AutoRest plugin.

07/17/2018 0.4.58

  • export additional types.

07/05/2018 0.4.57

  • --pretty output.

07/05/2018 0.4.56

  • Error serialization.

07/05/2018 0.4.55

  • Remove a dependency on @types/winston package. winston is updated to 3.0.0.

06/21/2018 0.4.54

  • Apply rules for Nested Properties

06/26/2018 0.4.51

  • Bug fix: Do BOM stripping for remote URL's #266.

06/20/2018 0.4.50

  • Replace sway dependency with yasway.

06/19/2018 0.4.49

  • Bug fix: Data is valid against more than one schema from oneOf #248 The problem occurs when referenced model may also accept null. The fix is replacing oneOf with anyOf.

05/14/2018 0.4.38

  • Bug fix: oav extract-xmsexamples also extracts request headers. #241
  • Bug fix: x-ms-parametrized-host is not validated correctly #240

04/23/2018 0.4.37

  • Update dependencies.
  • Bug fixes: #238
    • Path parameters can include single quotes and be evaluated succesfully.
    • Enums with non-string values are properly evaluated.

04/19/2018 0.4.36

  • If enums mismatch only in casing the new error ENUM_CASE_MISMATCH will be returned.

03/15/2018 0.4.35

  • Validate default responses. #228
  • Add option to model an implicit default cloud error response. #224

03/08/2018 0.4.34

  • Updating default output level to info.
  • Fixing issue #225, where output verbosity wasn't respected in one case.

02/28/2018 0.4.33

  • Don't validate pure objects.

02/05/2018 0.4.32

  • Fix bug for resolve external references introduced part of #202.

02/05/2018 0.4.31

  • Bug fix for the fix made to resolve jshint issues in #202.

02/05/2018 0.4.30

  • Improve matching for status code string for live validation.

02/05/2018 0.4.29

  • Add support for live validation to support status code string along the status code number.
  • Update to use package autorest-extension-base from npm.

02/01/2018 0.4.28

  • Fix undefined headers issue when the spec does not define consumes values.

01/31/2018 0.4.27

  • Updating dependency of lodash to 4.17.4.

01/31/2018 0.4.26

  • Fix all linter issues. #201
  • Add option to do case insensitive regex matches on swagger paths to the SpecValidator and LiveValidator. #203

01/30/2018 0.4.25

  • Fixed a typo in the variable name while resolving nullable types.

01/17/2018 0.4.24

  • The tool does not error on missing definitions in the swagger spec #194
  • Added support for application/octet-stream or file upload/download scenarios #192

01/05/2018 0.4.23

  • Addressing INVALID_TYPE issues reported by model validation due to nullable types/properties. #155. In order to allow null types, we relax types to be 'oneOf' null or its type, for the cases where properties/models have x-nullable set or x-nullable is not defined and property is not required.

12/11/2017 0.4.22

  • Added support to generate class diagram from a given swagger spec #188.
  • Fixed #190, #191.

12/4/2017 0.4.21

  • Removed the enum constraint or reference to an enum on the discriminator property if previously present before making it a constant.

11/20/2017 0.4.20

11/19/2017 0.4.19

  • Added support for validating examples for parameters "in": "formData".

11/09/2017 0.4.18

  • Ensure scheme, host and basePath are used to construct the base url #180.

10/24/2017 0.4.17

  • Disable resolving discriminators while performing semantic validation for an open api specification that conforms to 2.0 version.

10/20/2017 0.4.16

  • Entire tree except the leaf nodes need to be traversed for replacing references of (an uber(root) or intermediate) parent with a "oneof" array containing references to itself and all its children. #175

10/18/2017 0.4.15

  • Updating model validator to resolve polymorphic types using oneOf. #171

10/17/2017 0.4.14

  • Updating model validator to plugin to autorest.

09/12/2017 0.4.13

  • Provide the filepath of the file that has an incorrect json. This makes it easy for customers to find out the faulty file among numerous files.

09/12/2017 0.4.12

  • [Model Validator] Should handle forward slashes in path parameters. #165
  • [Model Validator] Should handle question mark in paths that are defined in x-ms-paths. #140

08/30/2017 0.4.11

  • [Wire Format Generator] Should handle resolved x-ms-examples. #161

08/23/2017 0.4.10

  • [Wire Format Generator] Removed condition for checking 200 & 204 in final status code for non-LRO. #159
  • [Wire Format Generator] Updated default directory to be the api-version folder of the swagger spec. #159

08/03/2017 0.4.9

  • [Live Validator] Shallow clone the azure-rest-api-spec repo.
  • [Model Validator] Improve pluggability of oav into vs-code. #143

08/03/2017 0.4.8

  • [Live Validator] Before cloning the rest api specs repo if directory named 'repo' exists we delete it and then create an empty directory to clone repo inside it.

07/11/2017 0.4.7

  • Fixed Live validator for reorg branch of azure-rest-api-specs #137

07/03/2017 0.4.6

  • Fixed issue #134

06/26/2017 0.4.5

  • Added support to generate wireformat as a YAML doc
  • Improved the format to specify request body for a in a request using curl.