Commit Graph

887 Commits

Author SHA1 Message Date
quobix
e699968768 Working through windows support 2024-01-18 15:11:39 -05:00
quobix
f4647af7b4 Added switch to resolver for preventing duplication.
vacuum runs things multiple times. which is causing skew on references.

Signed-off-by: quobix <dave@quobix.com>
2024-01-13 10:21:21 -05:00
Amit Reinich
2a1e4e5b91 Modified toString function to encode a copy instead of the real (re-used) object, added schema tests for model.ChangeContext line and column on enum changes. 2024-01-11 06:28:05 -05:00
quobix
d7c6474908 Bumped last line of coverage
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
961fe76e7f fixed flaky test
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
202ae3365a updated coverage for timeout path lookup
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
15c53c1c2b Updated coverage
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
3263aeacbd Fixed borked tests
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
a53b3f8a13 tweak for visual clarity
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
9467282849 Added edge case to circular detection.
When a polymorphic type is used, that isn’t a ref, but contains a ref, is now picked up. Thank you vercel for this edge case. Please build better specs.

Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
cbdaac7374 cleaned up path handling a little
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
ee50403678 added circular trap, models cannot resolve circular refs
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
a16ff8f916 added some debug logging
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
5c04bb1494 Added root node into all low level models.
Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
quobix
63354654bf added in keynode support
soemthing that has been waiting to be filled in for some time.

Signed-off-by: quobix <dave@quobix.com>
2024-01-04 17:08:08 -05:00
Tom Fishman
3dafa57aa9 fix tests 2024-01-04 17:04:12 -05:00
Tom Fishman
b1afe0d2c9 Change operation's tags change is breaking 2024-01-04 17:04:12 -05:00
quobix
08571b7693 Removed JsonParsingChannel
It does no good to anyone, anywhere and is creating race conditions when using the stack in a multi-tenant fashion.

Signed-off-by: quobix <dave@quobix.com>
2023-12-20 13:08:51 -05:00
quobix
3b88510998 Added safety check for extracting refs from non-openapi files
mentioned in https://github.com/daveshanley/vacuum/issues/400

Signed-off-by: quobix <dave@quobix.com>
2023-12-19 05:31:43 -05:00
quobix
bc040de300 fixed formatting
Signed-off-by: quobix <dave@quobix.com>
2023-12-18 16:11:59 -05:00
quobix
961dca7ea0 added test for schema type
Signed-off-by: quobix <dave@quobix.com>
2023-12-18 16:11:59 -05:00
quobix
f67d666c4f Issue #214 cannot be re-created, added test to validate.
The correct values are be extracted in version `0.14`+

Signed-off-by: quobix <dave@quobix.com>
2023-12-18 16:11:59 -05:00
quobix
0b7f809ac6 Added in high level schema type ref #215
Missed capturing the high level schema. Added test to document to capture use case permanently.

Signed-off-by: quobix <dave@quobix.com>
2023-12-18 16:11:59 -05:00
quobix
9cf06d3986 Fixed glitch reported by #219
Context was not being carried through correctly when resolving using `Schema()` and using exploded files.

Signed-off-by: quobix <dave@quobix.com>
2023-12-18 09:51:18 -05:00
quobix
a912093804 Merge pull request #205 from speakeasy-api/ordered-libopenapi
feat: introduce ordered maps into libopenapi
2023-12-15 10:45:57 -05:00
Tristan Cartledge
f86d7bc47e Merge branch 'main' into ordered-libopenapi 2023-12-15 15:39:25 +00:00
Tristan Cartledge
e4a6c6516e chore: add more test coverage 2023-12-14 17:55:51 +00:00
Tristan Cartledge
13b97f84db chore: add more test coverage 2023-12-14 17:42:32 +00:00
Tristan Cartledge
a08b859904 chore: add more test coverage 2023-12-14 16:46:34 +00:00
Tristan Cartledge
55eb38c035 chore: add more test coverage 2023-12-14 14:56:19 +00:00
Tristan Cartledge
0119853344 chore: add more test coverage 2023-12-14 14:46:20 +00:00
Tristan Cartledge
eec2dfa29d chore: add more test coverage 2023-12-14 13:10:46 +00:00
Tristan Cartledge
80177d9be7 chore: add more test coverage 2023-12-14 13:00:21 +00:00
Tristan Cartledge
212724df2d chore: some cleanup 2023-12-14 12:30:27 +00:00
quobix
7917e6c285 Removed digital ocean rolodex size check from test
it keeps on changing, which it should, but updating the tests each time is dumb. Moved to a fixed size test.

Signed-off-by: quobix <dave@quobix.com>
2023-12-12 13:38:03 -05:00
quobix
1f5357ba45 Fixed deadlock causing 100% CPU spike
I have seen this issue appear online a few times, the CPU locks at 100% when throwing a bad reference.

This happened because the local ‘lock’ used by the rolodex file loader, was not releasing correctly when a
lookup occurred, that could not be found via a rolodex file lookup.

https://github.com/daveshanley/vacuum/issues/393
Signed-off-by: quobix <dave@quobix.com>
2023-12-12 13:38:03 -05:00
Tristan Cartledge
41557cebcb cleanup: add sync version of ExtractSpecInfoWithDocumentCheck 2023-12-07 12:57:46 +00:00
Tristan Cartledge
fac9a4b3b1 fix: attempted fix to infinite yaml parsing bug 2023-12-07 11:34:36 +00:00
Tristan Cartledge
53f342ba63 fix 2023-12-06 14:54:55 +00:00
Tristan Cartledge
367b64d6db fix 2023-12-06 14:36:24 +00:00
Tristan Cartledge
8b6a5ef486 fix: increase resolver max depth 2023-12-06 08:35:55 +00:00
Tristan Cartledge
c2b4b662ba Merge branch 'main' into ordered-libopenapi 2023-12-04 22:38:26 +00:00
quobix
1b079afad9 removed dead code.
Signed-off-by: quobix <dave@quobix.com>
2023-12-04 16:13:13 -05:00
quobix
909646cff1 removed debug code.
Signed-off-by: quobix <dave@quobix.com>

Move original ref resolving to end of resolving run

this prevents mid-recursion shifting of nodes.

Signed-off-by: quobix <dave@quobix.com>
2023-12-04 16:13:13 -05:00
quobix
bb41dd41a3 Fix resolver from getting muddled up with deeply recursive resolving
speakeasy have some crazy recursive tests. It highlighted an issue with nested resolving intriduced in 0.13.7 of libopenapi to resolve issue #195

This in fact created another bug that only shows up with deeply nested refs, the problem is that the resolver was stitching together references, whilst still burrowing, which means it lots it’s place when jumping around everywhere.

Signed-off-by: quobix <dave@quobix.com>
2023-12-04 16:13:13 -05:00
Tristan Cartledge
2b128cb465 fix: data race 2023-12-04 18:08:02 +00:00
Tristan Cartledge
eb0b10cbb6 fix: to callback path items ref issue 2023-12-04 17:50:44 +00:00
Tristan Cartledge
2ff7c59585 tests: add failing test case for recursive callback reference 2023-12-04 10:15:31 +00:00
Tristan Cartledge
69ba5b875a feat: add ordered json 2023-12-03 22:28:15 +00:00
Tristan Cartledge
a1bc5275ac Merge branch 'main' into ordered-libopenapi 2023-12-03 21:09:28 +00:00