Skip to content
This repository has been archived by the owner on Oct 11, 2024. It is now read-only.

Reset master and merge the commits ahead #4

Merged
merged 261 commits into from
Apr 6, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
261 commits
Select commit Hold shift + click to select a range
6a5d509
add couple tests around multiple file-specs (one needs fixing) + some…
fenollp Jul 15, 2020
62affaa
Fix wrong `Found unresolved ref` error when converting from Swagger/O…
fenollp Jul 16, 2020
8459893
various fixes mainly to openapi2<->openapi3 conversion (#239)
fenollp Jul 17, 2020
2392e46
Add deprecated field in Schema (#242)
Tevic Aug 6, 2020
ceae068
Fix openapi3.referencedDocumentPath (#248)
kshlm Sep 4, 2020
5f67f43
follow lint rules (#250)
fenollp Sep 6, 2020
e5faea2
Fix broken link to alternative projects (#255)
kdisneur Sep 28, 2020
07f8b18
openapi2 security scheme requires accessCode not accesscode (#256)
fenollp Sep 30, 2020
5c863af
Validator: check readOnly/writeOnly properties (#246)
fenollp Oct 21, 2020
a7795f5
feat: add Goa to README (#261)
utamori Oct 25, 2020
d9b54af
swagger2 formData & request body refs (#260)
Oct 26, 2020
25cec2f
Add support for error aggregation for request/response validation (#259)
zlozano Oct 26, 2020
fc3f90d
Prevent a panic in the error encoder (#262)
richard-rance Oct 27, 2020
d96b816
Adds ipv4 and ipv6 formats support (#258)
riccardomanfrin Nov 12, 2020
738fe87
validate pattern or schema, not pattern xor schema anymore (#265)
fenollp Nov 12, 2020
2e4cbb2
Consumes request bodies (#263)
Nov 14, 2020
da714f4
fixed panic in path validation (issue #264) (#266)
schmilmo Nov 15, 2020
c928496
Update doc.go (#272)
duohedron Nov 20, 2020
254be12
Exposing Components 'IdentifierRegExp' to enable customized component…
heyvister Nov 22, 2020
e8b3436
Add support for application/problem+json (#275)
DanielXu77 Nov 25, 2020
9b9280d
Enables jsonpointer support in openapi3 (#276)
gordallott Dec 8, 2020
f05a913
Fix flaky CI (#278)
fenollp Dec 23, 2020
4bb44a2
Fix failfast flag handling (#284)
fenollp Jan 5, 2021
d4df86a
Add OIDC Schema format as per spec (#287)
krotscheck Jan 19, 2021
be070be
Support for alternate http auth mechanisms (#291)
jake-scott Jan 29, 2021
aa9a5c3
Return a more specific error when more than oneOf schemas match (#292)
fenollp Jan 29, 2021
66309f4
fix bug on indice to compare (#295)
chemidy Feb 4, 2021
33fc721
support extensions in oasv3.Server (#302)
fenollp Feb 23, 2021
66fba45
Add an example showing how to decode some extension props (#304)
fenollp Feb 23, 2021
b2761ee
clarify defaults around openapi3filter.Options and openapi3filter.Aut…
fenollp Feb 23, 2021
6d6f1ef
Add extensions in missing resources (#306)
sergicastro Feb 23, 2021
bdba5d1
Enlarge support for JSON Path in $ref resolution (#307)
fenollp Feb 25, 2021
89012b7
Prevent infinite loop while loading openapi spec with recursive refer…
hottestseason Mar 1, 2021
4c01aae
nitpicks (#313)
fenollp Mar 2, 2021
49752fc
mention alternatives in README.md (#315)
fenollp Mar 2, 2021
ea43ca7
Bypass any file/URL reading by ReadFromURIFunc (#316)
hottestseason Mar 3, 2021
f598766
Drop `sl.LoadSwaggerFromURIFunc` (#317)
fenollp Mar 3, 2021
96aeb23
Add an openapi3gen example + options (#320)
fenollp Mar 4, 2021
1286d06
Adds oneOf/discriminator/mapping management (#321)
riccardomanfrin Mar 8, 2021
0ef6b18
reproduce incorrect discriminator handling with ValidateRequest (#323)
fenollp Mar 10, 2021
d28d2bb
prepare for #210 (#325)
fenollp Mar 18, 2021
3794d14
go:embed loader.ReadFromURIFunc example (#319)
fenollp Mar 18, 2021
3690b66
Rework router (#210)
fenollp Mar 19, 2021
2b6e6b5
Reset compiledPattern when updating Pattern (#327)
Mar 20, 2021
0973da5
address #326 (#330)
fenollp Mar 23, 2021
1715334
Drop test dependency on go:embed (#331)
fenollp Mar 23, 2021
45c1543
Update README.md (#333)
Mar 25, 2021
13a1398
introduce openapi3filter.RegisteredBodyDecoder (#340)
fenollp Apr 12, 2021
349fb58
openapi3: allow variables in schemes in gorillamux router + better se…
fenollp Apr 17, 2021
751a395
Fix following refs to non-openapi3 root documents (but that are sub-d…
fenollp Apr 23, 2021
61b5dd9
reproduce failing to load JSON refs in non-openapi document (#314)
fenollp Apr 23, 2021
983bf11
repro #341 (#342)
fenollp Apr 23, 2021
8407517
[Bugfix] fail readURL on http code > 399 (#345)
steffakasid Apr 23, 2021
a4e36cd
Support loading documents with `filepath.FromSlash` (#251)
fenollp Apr 23, 2021
1b47cce
[Bugfix] fixed error message when only file is referenced (#348)
steffakasid Apr 23, 2021
f6c20c3
Follow callbacks references (#347)
fenollp Apr 23, 2021
38a7368
CI: test go1.14 (#349)
fenollp Apr 26, 2021
cc9e37b
Clean APIs from trademarked name "Swagger" (#351)
fenollp Apr 26, 2021
abfd78f
Fix CI (#352)
fenollp Apr 26, 2021
070c628
cannot reproduce #353 (#354)
fenollp Apr 29, 2021
7be9302
add example usage of request validation with gorilla/mux router (#359)
fenollp May 6, 2021
56338d2
Have Header Object follow the structure of the Parameter Object (#355)
fenollp May 20, 2021
93b7798
CI: fix tests after tag (#363)
fenollp May 20, 2021
707e4ba
Update openapi2_conv.go (#365)
jasmanx11 Jun 7, 2021
9f8b1ac
update that tag again... (#374)
fenollp Jun 21, 2021
5ffbbe3
fix drilling down struct looking for additionalProperties (#377)
fenollp Jun 23, 2021
d308378
fix drilling down additionalProperties in the boolean case (#378)
fenollp Jun 23, 2021
19ba1f8
Compile pattern on validate (#375)
alexanderbolgov-ef Jun 24, 2021
6b4444b
Add uint type to openapi3gen (#379)
biancarosa Jun 28, 2021
bde5325
reproduce and fix issue #382 (#383)
fenollp Jul 23, 2021
7ee1637
Detect if a field is anonymous and handle the indirection (#386)
DerekStrickland Jul 29, 2021
ed98f50
Add missing yaml tags in marshaling openapi2.T (#391)
fenollp Jul 29, 2021
7fd2ca1
Support reference cycles (#393)
DerekStrickland Aug 3, 2021
fba0a14
Add support for embedded struct pointers (#396)
DerekStrickland Aug 7, 2021
b35b144
fix: Allow encoded path parameters with slashes (#400)
rtfpessoa Aug 10, 2021
f16058d
Accept multipart/form-data's part without Content-Type (#399)
stakme Aug 11, 2021
ebccd50
fix that CI go:embed test forever, again (#405)
fenollp Aug 13, 2021
4a3eb86
fix bad ci script. I was under the impression this was working when I…
fenollp Aug 13, 2021
9b79d5d
Fix handling recursive refs (#403)
stakme Aug 14, 2021
e2c8b0c
fix issue 407, where if server URL has no path it throws exception (#…
NaerChang2 Aug 16, 2021
dc944ad
feature: Add more discriminator error messages and return specific er…
rtfpessoa Aug 16, 2021
a70f372
Add nomad to list of projects using kin-openapi in README (#413)
DerekStrickland Aug 27, 2021
34cafec
Schema customization plug-point (#411)
peterbroadhurst Aug 28, 2021
c50a458
Update README: remove github.com/getkin/kin (#414)
alexandear Aug 30, 2021
de8fc7e
fix alters by LGTM.com (#415)
fenollp Aug 31, 2021
f589245
Add support for "application/x-yaml" (#421)
luminoso Sep 21, 2021
9b46ae7
sort out possible mishandling of ipv4 vs v6 (#431)
fenollp Oct 2, 2021
47bb0b2
Panic with customizer and embedded structs (#434)
peterbroadhurst Oct 7, 2021
5a162f6
Fix #422 added support for error unwrapping for errors with a single …
bionoren Oct 7, 2021
1231120
Do not escape regular expressions again (getkin#429) (#435)
jmml97 Oct 8, 2021
d5022c7
improve response validation error (#437)
muir Oct 11, 2021
4cb78ee
Define const schema types (#438)
nanorobocop Oct 12, 2021
e83ebc0
reproduce issue #436 (#439)
fenollp Oct 12, 2021
e9b36da
Fix scheme handling in v2->v3 conversion (#441)
fenollp Oct 21, 2021
7aa3c9e
reproduce + fix #444: ValidateRequest for application/x-yaml (#445)
fenollp Nov 8, 2021
1cb0303
Internalize references (#443)
jhwz Nov 11, 2021
41c2da7
ClientCredentials conversion to OpenAPI v2 (#449)
Luukvdm Nov 18, 2021
0db2d4c
Fix issue https://github.com/getkin/kin-openapi/issues/410 (#450)
adyatlov Nov 22, 2021
eb43e20
try reproducing #447 (#448)
fenollp Dec 2, 2021
f7c80fe
fix: duplicate error reason when parameter is required but not presen…
NickUfer Dec 2, 2021
f1075be
Provide support for generating recursive types into OpenAPI doc #451 …
fenollp Dec 2, 2021
fd08c7f
v2Tov3: handle parameter schema refs (#455)
fenollp Dec 2, 2021
a2254d9
nitpicking: use type openapi3.Schemas (#456)
fenollp Dec 3, 2021
ceb64e7
Create FUNDING.yml (#458)
fenollp Dec 8, 2021
2c128ab
Insert produces field (#461)
ilteoood Dec 12, 2021
f13ef7f
fix error reason typo (#466)
fenollp Dec 18, 2021
4ce78d8
Update rfc422 regex as per spec: 'case insensitive on input' (#463)
karl-dau Dec 18, 2021
e4ff797
work around localhost host mismatch with relative server url (#467)
fenollp Dec 20, 2021
389b5e2
Add openapi3 validator middleware (#462)
cmars Dec 20, 2021
2a1c4b1
document union behaviour of XyzRef.s (#468)
fenollp Dec 20, 2021
c95dd68
extensible-paths (#470)
general-kroll-4-life Jan 4, 2022
e02b3c0
fix recipe for validating http requests/responses (#474)
xorpaul Jan 13, 2022
a99f24a
amend README.md to reflect BodyDecoder type (#475)
fenollp Jan 14, 2022
0846d70
openapi2conv: Convert response headers (#483)
SVilgelm Feb 3, 2022
124b07e
Fix oauth2 in openapi2conv.FromV3SecurityScheme (#491)
ckaznocha Feb 21, 2022
7027e1b
Fix openapi3 validation: path param must be required (#490)
vasayxtx Feb 21, 2022
ed20aa7
updated date-time string format regexp to fully comply to standard (#…
Cr4psy Feb 21, 2022
69874b2
distinguish form data in fromV3RequestBodies (#494)
ckaznocha Feb 23, 2022
d54840d
feat: cache resolved refs, improve URI reader extensibility (#469)
cmars Feb 23, 2022
1f72b37
Fix OpenAPI 3 validation: request body content is required (#498)
vasayxtx Feb 27, 2022
5352767
Add OpenAPI 3 externalDocs validation (#497)
vasayxtx Feb 27, 2022
dfd16a7
issue/500 (#501)
cochran-at-niche Mar 2, 2022
1013da3
Fix OpenAPI 3 validation: operationId must be unique (#504)
vasayxtx Mar 7, 2022
1b3c813
Check response headers and links (#505)
peteole Mar 10, 2022
32d9f54
fix that test situation (#506)
fenollp Mar 10, 2022
590c85c
Define missing XML in schema, minor fixes and doc additions (#508)
fenollp Mar 11, 2022
943ee05
discriminator value should verify the type is string to avoid panic (…
kandaaaaa Mar 14, 2022
1a03b66
Add nilness check to CI (#510)
fenollp Mar 14, 2022
6c261ce
Add support for formats defined in JSON Draft 2019-09 (#512)
slessard Mar 23, 2022
b29c7b7
Change the order of request validation to validate the Security schem…
Yarn-e Mar 24, 2022
a5284e9
Add support for allowEmptyValue (#515)
Yarn-e Mar 24, 2022
ca21ef5
RequestError Error() does not include reason if it is the same as err…
kandaaaaa Mar 30, 2022
cd4e291
Fix ExampleValidator test for 32-bit architectures (#516)
anthonyfok Mar 30, 2022
4053935
openapi2: add missing schemes field of operation object (#519)
fenollp Mar 30, 2022
8287d36
Run CI tests on 386 too cc #516 (#518)
fenollp Mar 30, 2022
136a868
Add ExcludeSchema sentinel error for schemaCustomizer (#522)
nguyer Apr 1, 2022
173d9bf
test link refs (#525)
fenollp Apr 1, 2022
97370eb
add missing validation of components: examples, links, callbacks (#526)
fenollp Apr 2, 2022
d32b516
openapi2: remove undefined tag (#527)
fenollp Apr 3, 2022
4ecabc1
testing: fix incorrect document (#529)
fenollp Apr 3, 2022
869d5df
testing: compare graphs using graph tools (#528)
fenollp Apr 3, 2022
ebcbb72
Fix some golints (#530)
fenollp Apr 3, 2022
c35b46e
Internalize parameter references in the path as well (#540)
hikhvar May 30, 2022
770fcc5
fix bad error message on invalid value parse on query parameter (#541)
kandaaaaa May 30, 2022
121fc06
Follow up to #540 with more tests (#549)
fenollp May 30, 2022
7f8f768
feat: handling `default` in request body and parameter schema (#544)
nic-6443 May 30, 2022
221a292
following up on #544: do not pass through on unhandled case (#550)
fenollp May 30, 2022
39add0a
Fix for CVE-2022-28948 (#552)
fenollp May 31, 2022
12540af
TestIssue430: fix racey behavior (#553)
fenollp May 31, 2022
142adad
Handle port number variable of servers given to gorillamux.NewRouter …
fenollp May 31, 2022
bcecaee
update README.md with newer router/validator example (#554)
fenollp May 31, 2022
416e53f
Unit tests (#556)
slessard Jun 1, 2022
648d6b9
add gitlab.com/jamietanna/httptest-openapi to README.md (#557)
fenollp Jun 1, 2022
3244585
fix: add deprecated field to openapi2.Operation (#559)
FrimIdan Jun 12, 2022
fd4bae8
fix: openapi2conv respects produces field (#575)
nirhaas Jul 31, 2022
00d1ae8
Use go1.19 formatting (#584)
fenollp Aug 26, 2022
8154829
Fix `resolveSchemaRef()` to load correctly an other spec. file refere…
masu-mi Aug 29, 2022
2470727
Protect from recursion in openapi3.InternaliseRefs (#578)
wtertius Aug 29, 2022
efe7ae9
cleanup after #583 (#585)
fenollp Aug 29, 2022
40bb5a1
upgrade CI tools (#586)
fenollp Aug 29, 2022
14af893
#482 integer support broken with yaml (#577)
cboitel Aug 31, 2022
5a61040
Match on overridden servers at the path level, fixes #564 (#565)
sonu27 Aug 31, 2022
de022f1
feat: support validation options specifically for disabling pattern v…
TristanSpeakEasy Sep 14, 2022
46603c3
Add sponsor logo (#595)
fenollp Sep 14, 2022
68016e0
Examples validation (#592)
danicc097 Sep 16, 2022
d12860c
use %w to wrap the errors (#596)
SVilgelm Sep 19, 2022
6610338
Expose request/response validation options in the middleware Validato…
sorintm Sep 21, 2022
a8f69f4
fix: detects circular references that can't be handled at the moment …
TristanSpeakEasy Sep 21, 2022
e03b5a8
Validate default values against schema (#610)
fenollp Sep 21, 2022
b304f8c
fix: only inject default value for matched oneOf or anyOf (#604)
nic-6443 Sep 21, 2022
62f85cf
Deterministic validation (#602)
fenollp Sep 22, 2022
fa5d9a9
Improve error message when path validation fails (#605)
praneetloke Sep 22, 2022
db52673
Correctly resolve path of yaml resource if double referenced. (#611)
d-sauer Oct 7, 2022
2fd9aa2
Fix second level relative ref in property resolving (#622)
wtertius Oct 7, 2022
8588ab8
rework convertError Example code to show query schema error (#626)
fenollp Oct 7, 2022
d4c06af
Allow validations options when creating legace Router (#614)
yclybouw Oct 7, 2022
59dbc9a
Additional error information (#617)
danicc097 Oct 7, 2022
ac594bc
Add SIMITGROUP`s repo to dependants shortlist (#627)
fenollp Oct 7, 2022
b31a4bb
Introduce package-wide CircularReferenceCounter to work around #615 (…
fenollp Oct 7, 2022
fc05f1c
fix: embedded struct handling (#630)
nrwiersma Oct 11, 2022
138bfa0
openapi3filter: Fallback to string when decoding request parameters (…
fenollp Oct 12, 2022
e887ba8
Introduce `(openapi3.*Server).BasePath()` and `(openapi3.Servers).Bas…
fenollp Oct 13, 2022
330c142
Actually #624, thanks to @orensolo (#634)
fenollp Oct 13, 2022
e95ed34
Check for superfluous trailing whitespace (#636)
fenollp Oct 13, 2022
ac18113
show errors in security requirements (#637)
danicc097 Oct 16, 2022
e56a195
Fix validation of complex enum values (#647)
fenollp Oct 24, 2022
285135d
readOnly writeOnly validation (#599)
danicc097 Oct 27, 2022
0a4abfc
fix: yaml marshal output (#649)
stevenh Oct 28, 2022
9ea22ae
openapi3filter: add missing response headers validation (#650)
fenollp Oct 28, 2022
d5c7ac5
Fix lost error types in oneOf (#658)
micronull Nov 7, 2022
ee909dc
Add RegisterBodyEncoder (#656)
kkroo Nov 9, 2022
bd74bbf
fix panic slice out of range error #652 (#654)
nk2ge5k Nov 9, 2022
d89a84e
Fixed recurive reference resolving when property referencies local co…
derbylock Nov 9, 2022
871e029
Add CodeQL workflow for GitHub code scanning (#661)
lgtm-com[bot] Nov 11, 2022
cadbdda
Support x-nullable (#670)
krak3n Nov 17, 2022
657743e
Update content length after replacing request body (#672)
borodiychuk Nov 20, 2022
4a7405d
fix: optional defaults (#662)
orensolo Nov 22, 2022
0d3c179
fix: wrap the error that came back from the callback (#674) (#675)
micronull Nov 22, 2022
cd217fe
fix: openapi3.SchemaError message customize (#678) (#679)
micronull Nov 22, 2022
8a66010
openapi3filter: fix crash when given arrays of objects as query param…
orensolo Nov 24, 2022
83dd2ff
fix: error path is lost (#681) (#682)
micronull Nov 28, 2022
8165c43
feat: formatting some error messages (#684)
eloycoto Nov 29, 2022
df9133b
fix: query param pattern (#665)
orensolo Nov 29, 2022
c793660
fix: errors in oneOf not contain path (#676) (#677)
micronull Nov 29, 2022
834a791
fix tests after merge train (#686)
fenollp Nov 29, 2022
7f75486
Internalize recursive external references #618 (#655)
kkroo Nov 29, 2022
b4b41f3
Add variadic options to Validate method (#692)
fenollp Dec 3, 2022
ebbf60d
fix: setting defaults for oneOf and anyOf (#690)
tomato0111 Dec 6, 2022
8718011
Try decoding as JSON first then YAML, for speed (#693)
fenollp Dec 7, 2022
f136047
Use and update GetBody() member of request (#704)
ShouheiNishi Dec 14, 2022
c1219e3
Bugfix/issue638 (#700)
ShouheiNishi Dec 14, 2022
b003421
Add json patch support (#702)
ShouheiNishi Dec 14, 2022
7413c27
openapi3filter: Include schema ref or title in response body validati…
slessard Dec 14, 2022
6cbc1b0
openapi3filter: parse integers with strconv.ParseInt instead of Parse…
slessard Dec 16, 2022
6a3b779
Fix inconsistent processing of server variables in gorillamux router …
slessard Dec 16, 2022
35bb627
Fix links to OpenAPI spec after GitHub changes (#714)
fenollp Dec 16, 2022
2975a21
openapi3: patch YAML serialization of dates (#698)
cosnicolaou Dec 16, 2022
25a5fe4
Leave allocation capacity guessing to the runtime (#716)
fenollp Dec 17, 2022
3be535f
openapi3filter: validate non-string headers (#712)
slessard Dec 17, 2022
de2455e
openapi3: unexport ValidationOptions fields and add some more (#717)
fenollp Dec 19, 2022
1490eae
openapi3: introduce (Paths).InMatchingOrder() paths iterator (#719)
fenollp Dec 19, 2022
1f680b5
feat: improve error reporting for bad/missing discriminator (#718)
gward Dec 19, 2022
a0b67a0
openapi3: continue validation on valid oneOf properties (#721)
fenollp Dec 19, 2022
46e0df8
openapi3filter: use option to skip setting defaults on validation (#708)
orensolo Dec 20, 2022
92d47ad
openapi3: remove email string format (#727)
zekth Dec 30, 2022
19556cf
openapi3filter: support for allOf request schema in multipart/form-da…
k2tzumi Jan 2, 2023
2ed340d
Disallow unexpected fields in validation and drop `jsoninfo` package …
fenollp Jan 3, 2023
2175b2a
openapi3filter: RegisterBodyDecoder for application/zip (#730)
k2tzumi Jan 4, 2023
e7d649f
Keep track of API changes with CI (#732)
fenollp Jan 4, 2023
f0dcc53
openapi3filter: RegisterBodyDecoder for text/csv (#734)
k2tzumi Jan 8, 2023
1e5c86e
#741 uri cache mutex (#742)
grahamcrowell Jan 12, 2023
3077c08
Specify UseNumber() in the JSON decoder during JSON validation (#738)
ShouheiNishi Jan 20, 2023
ef2fe1b
openapi3: fix error phrase in security scheme (#745)
Jefftree Jan 20, 2023
5c0555e
openapi3: remove value data from `SchemaError.Reason` field (#737)
ori-shalom Jan 20, 2023
abdca6c
fix additional properties false not validated (#747)
ori-shalom Jan 22, 2023
9f99fee
Refine schema error reason message (#748)
ori-shalom Jan 23, 2023
a3a19f0
openapi3: fix validation of non-empty interface slice value against a…
andrewyang96 Jan 25, 2023
84703aa
openapi3: empty scopes are valid (#754)
nodar963 Jan 28, 2023
6e233af
openapi3: fix integer enum schema validation after json.Number PR (#755)
k2tzumi Jan 28, 2023
9145563
optional readOnly and writeOnly validations (#758)
orshlom Feb 1, 2023
546590b
openapi3: fix resolving Callbacks (#757)
ShouheiNishi Feb 1, 2023
ac2fd9b
fixup some coding style divergences (#760)
fenollp Feb 1, 2023
409e0dc
openapi3: make `bad data ...` error more actionable (#761)
fenollp Feb 1, 2023
ecb06bc
openapi3: add test from #731 showing validating doc first is required…
fenollp Feb 2, 2023
28d8a4e
cmd/validate: more expressive errors (#769)
fenollp Feb 13, 2023
47d329d
openapi3: fix an infinite loop that may have been introduced in #700 …
fenollp Feb 13, 2023
cb687bf
openapi3: fix default values count even when disabled (#767) (#770)
orshlom Feb 14, 2023
e53fe38
openapi3: sort extra fields only once, during deserialization (#773)
fenollp Feb 27, 2023
cc09e84
feat: support nil uuid (#778)
zekth Mar 24, 2023
628d39f
sync from upstream
QifanWuCFLT Apr 5, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.yml text eol=lf
12 changes: 12 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# These are supported funding model platforms

github: [fenollp] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
#patreon: # Replace with a single Patreon username
#open_collective: # Replace with a single Open Collective username
#ko_fi: # Replace with a single Ko-fi username
#tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
#community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
#liberapay: # Replace with a single Liberapay username
#issuehunt: # Replace with a single IssueHunt username
#otechie: # Replace with a single Otechie username
#custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
9 changes: 9 additions & 0 deletions .github/docs/openapi2.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
type Header struct{ ... }
type Operation struct{ ... }
type Parameter struct{ ... }
type Parameters []*Parameter
type PathItem struct{ ... }
type Response struct{ ... }
type SecurityRequirements []map[string][]string
type SecurityScheme struct{ ... }
type T struct{ ... }
25 changes: 25 additions & 0 deletions .github/docs/openapi2conv.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
func FromV3(doc3 *openapi3.T) (*openapi2.T, error)
func FromV3Headers(defs openapi3.Headers, components *openapi3.Components) (map[string]*openapi2.Header, error)
func FromV3Operation(doc3 *openapi3.T, operation *openapi3.Operation) (*openapi2.Operation, error)
func FromV3Parameter(ref *openapi3.ParameterRef, components *openapi3.Components) (*openapi2.Parameter, error)
func FromV3PathItem(doc3 *openapi3.T, pathItem *openapi3.PathItem) (*openapi2.PathItem, error)
func FromV3Ref(ref string) string
func FromV3RequestBody(name string, requestBodyRef *openapi3.RequestBodyRef, ...) (*openapi2.Parameter, error)
func FromV3RequestBodyFormData(mediaType *openapi3.MediaType) openapi2.Parameters
func FromV3Response(ref *openapi3.ResponseRef, components *openapi3.Components) (*openapi2.Response, error)
func FromV3Responses(responses map[string]*openapi3.ResponseRef, components *openapi3.Components) (map[string]*openapi2.Response, error)
func FromV3SchemaRef(schema *openapi3.SchemaRef, components *openapi3.Components) (*openapi3.SchemaRef, *openapi2.Parameter)
func FromV3Schemas(schemas map[string]*openapi3.SchemaRef, components *openapi3.Components) (map[string]*openapi3.SchemaRef, map[string]*openapi2.Parameter)
func FromV3SecurityRequirements(requirements openapi3.SecurityRequirements) openapi2.SecurityRequirements
func FromV3SecurityScheme(doc3 *openapi3.T, ref *openapi3.SecuritySchemeRef) (*openapi2.SecurityScheme, error)
func ToV3(doc2 *openapi2.T) (*openapi3.T, error)
func ToV3Headers(defs map[string]*openapi2.Header) openapi3.Headers
func ToV3Operation(doc2 *openapi2.T, components *openapi3.Components, pathItem *openapi2.PathItem, ...) (*openapi3.Operation, error)
func ToV3Parameter(components *openapi3.Components, parameter *openapi2.Parameter, ...) (*openapi3.ParameterRef, *openapi3.RequestBodyRef, ...)
func ToV3PathItem(doc2 *openapi2.T, components *openapi3.Components, pathItem *openapi2.PathItem, ...) (*openapi3.PathItem, error)
func ToV3Ref(ref string) string
func ToV3Response(response *openapi2.Response, produces []string) (*openapi3.ResponseRef, error)
func ToV3SchemaRef(schema *openapi3.SchemaRef) *openapi3.SchemaRef
func ToV3Schemas(defs map[string]*openapi3.SchemaRef) map[string]*openapi3.SchemaRef
func ToV3SecurityRequirements(requirements openapi2.SecurityRequirements) openapi3.SecurityRequirements
func ToV3SecurityScheme(securityScheme *openapi2.SecurityScheme) (*openapi3.SecuritySchemeRef, error)
155 changes: 155 additions & 0 deletions .github/docs/openapi3.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
const ParameterInPath = "path" ...
const TypeArray = "array" ...
const FormatOfStringForUUIDOfRFC4122 = `^(?:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$` ...
const SerializationSimple = "simple" ...
var SchemaErrorDetailsDisabled = false ...
var CircularReferenceCounter = 3
var CircularReferenceError = "kin-openapi bug found: circular schema reference not handled"
var DefaultReadFromURI = URIMapCache(ReadFromURIs(ReadFromHTTP(http.DefaultClient), ReadFromFile))
var ErrURINotSupported = errors.New("unsupported URI")
var IdentifierRegExp = regexp.MustCompile(identifierPattern)
var SchemaStringFormats = make(map[string]Format, 4)
func BoolPtr(value bool) *bool
func DefaultRefNameResolver(ref string) string
func DefineIPv4Format()
func DefineIPv6Format()
func DefineStringFormat(name string, pattern string)
func DefineStringFormatCallback(name string, callback FormatCallback)
func Float64Ptr(value float64) *float64
func Int64Ptr(value int64) *int64
func ReadFromFile(loader *Loader, location *url.URL) ([]byte, error)
func RegisterArrayUniqueItemsChecker(fn SliceUniqueItemsChecker)
func Uint64Ptr(value uint64) *uint64
func ValidateIdentifier(value string) error
func WithValidationOptions(ctx context.Context, opts ...ValidationOption) context.Context
type AdditionalProperties struct{ ... }
type Callback map[string]*PathItem
type CallbackRef struct{ ... }
type Callbacks map[string]*CallbackRef
type Components struct{ ... }
func NewComponents() Components
type Contact struct{ ... }
type Content map[string]*MediaType
func NewContent() Content
func NewContentWithFormDataSchema(schema *Schema) Content
func NewContentWithFormDataSchemaRef(schema *SchemaRef) Content
func NewContentWithJSONSchema(schema *Schema) Content
func NewContentWithJSONSchemaRef(schema *SchemaRef) Content
func NewContentWithSchema(schema *Schema, consumes []string) Content
func NewContentWithSchemaRef(schema *SchemaRef, consumes []string) Content
type Discriminator struct{ ... }
type Encoding struct{ ... }
func NewEncoding() *Encoding
type Example struct{ ... }
func NewExample(value interface{}) *Example
type ExampleRef struct{ ... }
type Examples map[string]*ExampleRef
type ExternalDocs struct{ ... }
type Format struct{ ... }
type FormatCallback func(value string) error
type Header struct{ ... }
type HeaderRef struct{ ... }
type Headers map[string]*HeaderRef
type Info struct{ ... }
type License struct{ ... }
type Link struct{ ... }
type LinkRef struct{ ... }
type Links map[string]*LinkRef
type Loader struct{ ... }
func NewLoader() *Loader
type MediaType struct{ ... }
func NewMediaType() *MediaType
type MultiError []error
type OAuthFlow struct{ ... }
type OAuthFlows struct{ ... }
type Operation struct{ ... }
func NewOperation() *Operation
type Parameter struct{ ... }
func NewCookieParameter(name string) *Parameter
func NewHeaderParameter(name string) *Parameter
func NewPathParameter(name string) *Parameter
func NewQueryParameter(name string) *Parameter
type ParameterRef struct{ ... }
type Parameters []*ParameterRef
func NewParameters() Parameters
type ParametersMap map[string]*ParameterRef
type PathItem struct{ ... }
type Paths map[string]*PathItem
type ReadFromURIFunc func(loader *Loader, url *url.URL) ([]byte, error)
func ReadFromHTTP(cl *http.Client) ReadFromURIFunc
func ReadFromURIs(readers ...ReadFromURIFunc) ReadFromURIFunc
func URIMapCache(reader ReadFromURIFunc) ReadFromURIFunc
type Ref struct{ ... }
type RefNameResolver func(string) string
type RequestBodies map[string]*RequestBodyRef
type RequestBody struct{ ... }
func NewRequestBody() *RequestBody
type RequestBodyRef struct{ ... }
type Response struct{ ... }
func NewResponse() *Response
type ResponseRef struct{ ... }
type Responses map[string]*ResponseRef
func NewResponses() Responses
type Schema struct{ ... }
func NewAllOfSchema(schemas ...*Schema) *Schema
func NewAnyOfSchema(schemas ...*Schema) *Schema
func NewArraySchema() *Schema
func NewBoolSchema() *Schema
func NewBytesSchema() *Schema
func NewDateTimeSchema() *Schema
func NewFloat64Schema() *Schema
func NewInt32Schema() *Schema
func NewInt64Schema() *Schema
func NewIntegerSchema() *Schema
func NewObjectSchema() *Schema
func NewOneOfSchema(schemas ...*Schema) *Schema
func NewSchema() *Schema
func NewStringSchema() *Schema
func NewUUIDSchema() *Schema
type SchemaError struct{ ... }
type SchemaRef struct{ ... }
func NewSchemaRef(ref string, value *Schema) *SchemaRef
type SchemaRefs []*SchemaRef
type SchemaValidationOption func(*schemaValidationSettings)
func DefaultsSet(f func()) SchemaValidationOption
func DisablePatternValidation() SchemaValidationOption
func DisableReadOnlyValidation() SchemaValidationOption
func DisableWriteOnlyValidation() SchemaValidationOption
func EnableFormatValidation() SchemaValidationOption
func FailFast() SchemaValidationOption
func MultiErrors() SchemaValidationOption
func SetSchemaErrorMessageCustomizer(f func(err *SchemaError) string) SchemaValidationOption
func VisitAsRequest() SchemaValidationOption
func VisitAsResponse() SchemaValidationOption
type Schemas map[string]*SchemaRef
type SecurityRequirement map[string][]string
func NewSecurityRequirement() SecurityRequirement
type SecurityRequirements []SecurityRequirement
func NewSecurityRequirements() *SecurityRequirements
type SecurityScheme struct{ ... }
func NewCSRFSecurityScheme() *SecurityScheme
func NewJWTSecurityScheme() *SecurityScheme
func NewOIDCSecurityScheme(oidcUrl string) *SecurityScheme
func NewSecurityScheme() *SecurityScheme
type SecuritySchemeRef struct{ ... }
type SecuritySchemes map[string]*SecuritySchemeRef
type SerializationMethod struct{ ... }
type Server struct{ ... }
type ServerVariable struct{ ... }
type Servers []*Server
type SliceUniqueItemsChecker func(items []interface{}) bool
type T struct{ ... }
type Tag struct{ ... }
type Tags []*Tag
type ValidationOption func(options *ValidationOptions)
func AllowExtraSiblingFields(fields ...string) ValidationOption
func DisableExamplesValidation() ValidationOption
func DisableSchemaDefaultsValidation() ValidationOption
func DisableSchemaFormatValidation() ValidationOption
func DisableSchemaPatternValidation() ValidationOption
func EnableExamplesValidation() ValidationOption
func EnableSchemaDefaultsValidation() ValidationOption
func EnableSchemaFormatValidation() ValidationOption
func EnableSchemaPatternValidation() ValidationOption
type ValidationOptions struct{ ... }
type XML struct{ ... }
54 changes: 54 additions & 0 deletions .github/docs/openapi3filter.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
const ErrCodeOK = 0 ...
var DefaultOptions = &Options{}
var ErrAuthenticationServiceMissing = errors.New("missing AuthenticationFunc")
var ErrInvalidEmptyValue = errors.New("empty value is not allowed")
var ErrInvalidRequired = errors.New("value is required but missing")
var JSONPrefixes = []string{ ... }
func DefaultErrorEncoder(_ context.Context, err error, w http.ResponseWriter)
func FileBodyDecoder(body io.Reader, header http.Header, schema *openapi3.SchemaRef, ...) (interface{}, error)
func NoopAuthenticationFunc(context.Context, *AuthenticationInput) error
func RegisterBodyDecoder(contentType string, decoder BodyDecoder)
func RegisterBodyEncoder(contentType string, encoder BodyEncoder)
func TrimJSONPrefix(data []byte) []byte
func UnregisterBodyDecoder(contentType string)
func UnregisterBodyEncoder(contentType string)
func ValidateParameter(ctx context.Context, input *RequestValidationInput, ...) error
func ValidateRequest(ctx context.Context, input *RequestValidationInput) (err error)
func ValidateRequestBody(ctx context.Context, input *RequestValidationInput, ...) error
func ValidateResponse(ctx context.Context, input *ResponseValidationInput) error
func ValidateSecurityRequirements(ctx context.Context, input *RequestValidationInput, ...) error
type AuthenticationFunc func(context.Context, *AuthenticationInput) error
type AuthenticationInput struct{ ... }
type BodyDecoder func(io.Reader, http.Header, *openapi3.SchemaRef, EncodingFn) (interface{}, error)
func RegisteredBodyDecoder(contentType string) BodyDecoder
type BodyEncoder func(body interface{}) ([]byte, error)
func RegisteredBodyEncoder(contentType string) BodyEncoder
type ContentParameterDecoder func(param *openapi3.Parameter, values []string) (interface{}, *openapi3.Schema, error)
type CustomSchemaErrorFunc func(err *openapi3.SchemaError) string
type EncodingFn func(partName string) *openapi3.Encoding
type ErrCode int
type ErrFunc func(w http.ResponseWriter, status int, code ErrCode, err error)
type ErrorEncoder func(ctx context.Context, err error, w http.ResponseWriter)
type Headerer interface{ ... }
type LogFunc func(message string, err error)
type Options struct{ ... }
type ParseError struct{ ... }
type ParseErrorKind int
const KindOther ParseErrorKind = iota ...
type RequestError struct{ ... }
type RequestValidationInput struct{ ... }
type ResponseError struct{ ... }
type ResponseValidationInput struct{ ... }
type SecurityRequirementsError struct{ ... }
type StatusCoder interface{ ... }
type ValidationError struct{ ... }
type ValidationErrorEncoder struct{ ... }
type ValidationErrorSource struct{ ... }
type ValidationHandler struct{ ... }
type Validator struct{ ... }
func NewValidator(router routers.Router, options ...ValidatorOption) *Validator
type ValidatorOption func(*Validator)
func OnErr(f ErrFunc) ValidatorOption
func OnLog(f LogFunc) ValidatorOption
func Strict(strict bool) ValidatorOption
func ValidationOptions(options Options) ValidatorOption
Empty file.
11 changes: 11 additions & 0 deletions .github/docs/openapi3gen.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
var RefSchemaRef = openapi3.NewSchemaRef("Ref", ...)
func NewSchemaRefForValue(value interface{}, schemas openapi3.Schemas, opts ...Option) (*openapi3.SchemaRef, error)
type CycleError struct{}
type ExcludeSchemaSentinel struct{}
type Generator struct{ ... }
func NewGenerator(opts ...Option) *Generator
type Option func(*generatorOpt)
func SchemaCustomizer(sc SchemaCustomizerFn) Option
func ThrowErrorOnCycle() Option
func UseAllExportedFields() Option
type SchemaCustomizerFn func(name string, t reflect.Type, tag reflect.StructTag, schema *openapi3.Schema) error
5 changes: 5 additions & 0 deletions .github/docs/routers.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
var ErrMethodNotAllowed error = &RouteError{ ... }
var ErrPathNotFound error = &RouteError{ ... }
type Route struct{ ... }
type RouteError struct{ ... }
type Router interface{ ... }
2 changes: 2 additions & 0 deletions .github/docs/routers_gorillamux.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
func NewRouter(doc *openapi3.T) (routers.Router, error)
type Router struct{ ... }
3 changes: 3 additions & 0 deletions .github/docs/routers_legacy.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
func NewRouter(doc *openapi3.T, opts ...openapi3.ValidationOption) (routers.Router, error)
type Router struct{ ... }
type Routers []*Router
9 changes: 9 additions & 0 deletions .github/docs/routers_legacy_pathpattern.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
const SuffixKindConstant = SuffixKind(iota) ...
var DefaultOptions = &Options{ ... }
func EqualSuffix(a, b Suffix) bool
func PathFromHost(host string, specialDashes bool) string
type Node struct{ ... }
type Options struct{ ... }
type Suffix struct{ ... }
type SuffixKind int
type SuffixList []Suffix
Binary file added .github/sponsors/speakeasy.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 41 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: "CodeQL"

on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
schedule:
- cron: "4 8 * * 4"

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ go ]

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
queries: +security-and-quality

- name: Autobuild
uses: github/codeql-action/autobuild@v2

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:${{ matrix.language }}"
Loading