Skip to content

Commit

Permalink
Merge pull request #780 from postmanlabs/release/v4.19.0
Browse files Browse the repository at this point in the history
Release version v4.19.0
  • Loading branch information
VShingala committed Jan 18, 2024
2 parents a6badaa + 193d928 commit 59e0b70
Show file tree
Hide file tree
Showing 27 changed files with 287 additions and 113 deletions.
6 changes: 5 additions & 1 deletion CHANGELOG.md
Expand Up @@ -2,6 +2,8 @@

## [Unreleased]

## [v4.19.0] - 2024-01-18

## [v4.18.0] - 2023-09-28

- [#425](https://github.com/postmanlabs/openapi-to-postman/issues/425) [8413](https://github.com/postmanlabs/postman-app-support/issues/8413) Added support for multiple request and response examples.
Expand Down Expand Up @@ -600,7 +602,9 @@ Newer releases follow the [Keep a Changelog](https://keepachangelog.com/en/1.0.0

- Base release

[Unreleased]: https://github.com/postmanlabs/openapi-to-postman/compare/v4.18.0...HEAD
[Unreleased]: https://github.com/postmanlabs/openapi-to-postman/compare/v4.19.0...HEAD

[v4.19.0]: https://github.com/postmanlabs/openapi-to-postman/compare/v4.18.0...v4.19.0

[v4.18.0]: https://github.com/postmanlabs/openapi-to-postman/compare/v4.17.0...v4.18.0

Expand Down
2 changes: 1 addition & 1 deletion assets/json-schema-faker.js
Expand Up @@ -10919,7 +10919,7 @@ module.exports = {
*/
parse: function yamlParse (text, reviver) {
try {
return yaml.safeLoad(text);
return yaml.load(text);
}
catch (e) {
if (e instanceof Error) {
Expand Down
10 changes: 5 additions & 5 deletions examples/sampleswagger.yaml
Expand Up @@ -14,20 +14,20 @@ info:
email: apiteam@wordnik.com
license:
name: Apache 2.0
url: 'http://www.apache.org/licenses/LICENSE-2.0.html'
url: http://www.apache.org/licenses/LICENSE-2.0.html
tags:
- name: pet
description: Everything about your Pets
externalDocs:
description: Find out more
url: 'http://swagger.io'
url: http://swagger.io
- name: store
description: Operations about user
- name: user
description: Access to Petstore orders
externalDocs:
description: Find out more about our store
url: 'http://swagger.io'
url: http://swagger.io
paths:
/pet:
post:
Expand Down Expand Up @@ -542,7 +542,7 @@ paths:
description: User not found
externalDocs:
description: Find out more about Swagger
url: 'http://swagger.io'
url: http://swagger.io
components:
requestBodies:
UserArray:
Expand Down Expand Up @@ -688,4 +688,4 @@ components:
message:
type: string
xml:
name: '##default'
name: '##default'
4 changes: 2 additions & 2 deletions lib/bundle.js
Expand Up @@ -701,12 +701,12 @@ function generateComponentsObject(documentContext, rootContent,
circularRefsSet = new Set();
const { COMPONENTS_KEYS } = getBundleRulesDataByVersion(version);
notInLine.forEach(([key, value]) => {
let [, partial] = key.split(localPointer);
let [nodeRef, partial] = key.split(localPointer);
if (documentContext.globalReferences[key].refHasContent) {
setValueInComponents(
value.keyInComponents,
components,
getContentFromTrace(documentContext.nodeContents[key], partial),
getContentFromTrace(documentContext.nodeContents[nodeRef], partial),
COMPONENTS_KEYS
);
}
Expand Down
7 changes: 6 additions & 1 deletion lib/deref.js
Expand Up @@ -133,7 +133,12 @@ module.exports = {
}), {
resolvers: {
// for keywords in OpenAPI schema that are not standard defined JSON schema keywords, use default resolver
defaultResolver: (compacted) => { return compacted[0]; }
defaultResolver: (compacted) => { return compacted[0]; },

// Default resolver seems to fail for enum, so adding custom resolver that will return all unique enum values
enum: (values) => {
return _.uniq(_.concat(...values));
}
}
});
}
Expand Down
3 changes: 2 additions & 1 deletion lib/parse.js
Expand Up @@ -33,10 +33,11 @@ module.exports = {

asYaml: function (spec) {
try {
let obj = yaml.safeLoad(spec, {
let obj = yaml.load(spec, {
schema: yaml.JSON_SCHEMA
});
// yaml.safeLoad does not throw errors for most of the cases in invalid yaml
// yaml.safeLoad is removed in js-yaml 4. Hence Using yaml.load instead, which is now safe by default.
// hence check if it returned an object
if (typeof obj !== 'object') {
throw new Error('');
Expand Down
5 changes: 4 additions & 1 deletion libV2/schemaUtils.js
Expand Up @@ -458,7 +458,10 @@ let QUERYPARAM = 'query',
}), {
resolvers: {
// for keywords in OpenAPI schema that are not standard defined JSON schema keywords, use default resolver
defaultResolver: (compacted) => { return compacted[0]; }
defaultResolver: (compacted) => { return compacted[0]; },
enum: (values) => {
return _.uniq(_.concat(...values));
}
}
});
}
Expand Down
94 changes: 78 additions & 16 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
@@ -1,6 +1,6 @@
{
"name": "openapi-to-postmanv2",
"version": "4.18.0",
"version": "4.19.0",
"description": "Convert a given OpenAPI specification to Postman Collection v2.0",
"homepage": "https://github.com/postmanlabs/openapi-to-postman",
"bugs": "https://github.com/postmanlabs/openapi-to-postman/issues",
Expand Down Expand Up @@ -121,7 +121,7 @@
"ajv-formats": "2.1.1",
"async": "3.2.4",
"commander": "2.20.3",
"js-yaml": "3.14.1",
"js-yaml": "4.1.0",
"json-schema-merge-allof": "0.8.1",
"lodash": "4.17.21",
"oas-resolver-browser": "2.5.6",
Expand Down

0 comments on commit 59e0b70

Please sign in to comment.