PageSourceSearch

https://docs-pactflow-preview.netlify.app/assets/js/ac5903f6.7a83bafb.js

js docs-pactflow-preview.netlify.app collected 2026-10-03 10:42:35 UTC 7,085 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkpartners=self.webpackChunkpartners||[]).push([[28670],{15680:(e,t,a)=>{a.d(t,{xA:()=>p,yg:()=>m});var n=a(96540);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?o(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):o(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function l(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},o=Object.keys(e);for(n=0;n<o.length;n++)a=o[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)a=o[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var c=n.createContext({}),s=function(e){var t=n.useContext(c),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},p=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},g=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,o=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),d=s(a),g=r,m=d["".concat(c,".").concat(g)]||d[g]||u[g]||o;return a?n.createElement(m,i(i({ref:t},p),{},{components:a})):n.createElement(m,i({ref:t},p))}));function m(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=a.length,i=new Array(o);i[0]=g;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[d]="string"==typeof e?e:r,i[1]=l;for(var s=2;s<o;s++)i[s]=a[s];return n.createElement.apply(null,i)}return n.createElement.apply(null,a)}g.displayName="MDXCreateElement"},90667:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var n=a(58168),r=(a(96540),a(15680));const o={title:"Changelog",sidebar_label:"Changelog"},i=void 0,l={unversionedId:"docs/bi-directional-contract-testing/contracts/oas/changelog",id:"docs/bi-directional-contract-testing/contracts/oas/changelog",title:"Changelog",description:"April 2025",source:"@site/docs/docs/bi-directional-contract-testing/contracts/oas/changelog.md",sourceDirName:"docs/bi-directional-contract-testing/contracts/oas",slug:"/docs/bi-directional-contract-testing/contracts/oas/changelog",permalink:"/docs/bi-directional-contract-testing/contracts/oas/changelog",draft:!1,editUrl:"https://github.com/pactflow/docs.pactflow.io/edit/master/website/docs/docs/bi-directional-contract-testing/contracts/oas/changelog.md",tags:[],version:"current",lastUpdatedBy:"Matt Fellows",lastUpdatedAt:1744699604,formattedLastUpdatedAt:"Apr 15, 2025",frontMatter:{title:"Changelog",sidebar_label:"Changelog"},sidebar:"docs",previous:{title:"Configuration",permalink:"/docs/bi-directional-contract-testing/contracts/oas/configuration"},next:{title:"Overview",permalink:"/docs/bi-directional-contract-testing/tools"}},c={},s=[{value:"April 2025",id:"april-2025",level:2},{value:"July 2023",id:"july-2023",level:2},{value:"June 2023",id:"june-2023",level:2}],p={toc:s},d="wrapper";
1function u(e){let{components:t,...a}=e;return(0,r.yg)(d,(0,n.A)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,r.yg)("h2",{id:"april-2025"},"April 2025"),(0,r.yg)("ul",null,(0,r.yg)("li",{parentName:"ul"},"New ",(0,r.yg)("a",{parentName:"li",href:"https://github.com/pactflow/openapi-pact-comparator/"},"comparison engine released"),", up to 100x faster than the ",(0,r.yg)("a",{parentName:"li",href:"https://github.com/pactflow/swagger-mock-validator/"},"previous engine"),"."),(0,r.yg)("li",{parentName:"ul"},(0,r.yg)("a",{parentName:"li",href:"/docs/bi-directional-contract-testing/contracts/oas/configuration"},"Configurable behaviour")," support added.")),(0,r.yg)("h2",{id:"july-2023"},"July 2023"),(0,r.yg)("admonition",{type:"warning"},(0,r.yg)("p",{parentName:"admonition"},"If you are here because tests that were previously passing are now failing, it is likely that your use of the ",(0,r.yg)("inlineCode",{parentName:"p"},"discriminator")," keyword is incompatible with our latest update. Refer to ",(0,r.yg)("a",{parentName:"p",href:"/docs/bi-directional-contract-testing/contracts/oas/keyword-support#how-to-use-discriminator"},"this guide")," for how to correct this, and more generally our ",(0,r.yg)("a",{parentName:"p",href:"/docs/bi-directional-contract-testing/compatibility-checks"},"compatibility checks")," guide for understanding the errors and warnings")),(0,r.yg)("ul",null,(0,r.yg)("li",{parentName:"ul"},"Support for OAS 3.1"),(0,r.yg)("li",{parentName:"ul"},"As per JSON Schema ",(0,r.yg)("a",{parentName:"li",href:"https://json-schema.org/understanding-json-schema/reference/numeric.html"},"guidance"),", numbers are not coerced into narrow types such as ",(0,r.yg)("inlineCode",{parentName:"li"},"int64"),", ",(0,r.yg)("inlineCode",{parentName:"li"},"int32")," and ",(0,r.yg)("inlineCode",{parentName:"li"},"float"),", with support only for ",(0,r.yg)("inlineCode",{parentName:"li"},"number")," and ",(0,r.yg)("inlineCode",{parentName:"li"},"integer"),". Validation has been relaxed to accommodate this (see ",(0,r.yg)("a",{parentName:"li",href:"https://github.com/ajv-validator/ajv-formats/pull/22#issuecomment-808896823"},"https://github.com/ajv-validator/ajv-formats/pull/22#issuecomment-808896823"),")."),(0,r.yg)("li",{parentName:"ul"},(0,r.yg)("inlineCode",{parentName:"li"},"nullable")," now requires use of ",(0,r.yg)("inlineCode",{parentName:"li"},"type"),", see ",(0,r.yg)("a",{parentName:"li",href:"https://github.com/ajv-validator/ajv/blob/490eb8c0eba8392d071fef005e16d330f259d0ba/lib/compile/validate/dataType.ts#L26C66-L26C66"},"https://github.com/ajv-validator/ajv/blob/490eb8c0eba8392d071fef005e16d330f259d0ba/lib/compile/validate/dataType.ts#L26C66-L26C66"),"."),(0,r.yg)("li",{parentName:"ul"},"Transformations to OAS document applied to improve use of ",(0,r.yg)("inlineCode",{parentName:"li"},"anyOf"),", ",(0,r.yg)("inlineCode",{parentName:"li"},"oneOf"),", ",(0,r.yg)("inlineCode",{parentName:"li"},"allOf")," and polymorphic payloads.")),(0,r.yg)("h2",{id:"june-2023"},"June 2023"),(0,r.yg)("ul",null,(0,r.yg)("li",{parentName:"ul"},"Support for V4 Pacts added"),(0,r.yg)("li",{parentName:"ul"},"Added full ",(0,r.yg)("a",{parentName:"li",href:"https://www.rfc-editor.org/rfc/rfc9110.html#section-12.1"},"RFC 9110: HTTP Semantics \xa712")," support for content-types, content-negotiation and vendor specific media types"),(0,r.yg)("li",{parentName:"ul"},"Support for negative scenario testing")))}u.isMDXComponent=!0}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.