scorpio 0.6.4 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +6 -1
  3. data/CHANGELOG.md +10 -2
  4. data/LICENSE.md +2 -4
  5. data/README.md +81 -67
  6. data/documents/{github.com/OAI/OpenAPI-Specification/blob/oas3-schema/schemas/v3.0 → spec.openapis.org/oas/3.0}/schema.yaml +164 -628
  7. data/documents/spec.openapis.org/oas/3.1/dialect/base.schema.yaml +22 -0
  8. data/documents/spec.openapis.org/oas/3.1/meta/base.schema.yaml +71 -0
  9. data/documents/spec.openapis.org/oas/3.1/schema-base.yaml +21 -0
  10. data/documents/spec.openapis.org/oas/3.1/schema.yaml +980 -0
  11. data/documents/swagger.io/v2/schema.json +1 -1
  12. data/documents/www.googleapis.com/discovery/v1/apis/discovery/v1/rest.yml +44 -4
  13. data/lib/scorpio/google_api_document.rb +121 -193
  14. data/lib/scorpio/openapi/document.rb +63 -31
  15. data/lib/scorpio/openapi/operation.rb +114 -96
  16. data/lib/scorpio/openapi/operations_scope.rb +35 -19
  17. data/lib/scorpio/openapi/reference.rb +88 -23
  18. data/lib/scorpio/openapi/schema_elements/type_nullable.rb +38 -0
  19. data/lib/scorpio/openapi/schema_elements.rb +7 -0
  20. data/lib/scorpio/openapi/server.rb +34 -0
  21. data/lib/scorpio/openapi/tag.rb +19 -3
  22. data/lib/scorpio/openapi/v2/dialect.rb +66 -0
  23. data/lib/scorpio/openapi/v2.rb +124 -0
  24. data/lib/scorpio/openapi/v3_0/dialect.rb +76 -0
  25. data/lib/scorpio/openapi/v3_0.rb +130 -0
  26. data/lib/scorpio/openapi/v3_1.rb +243 -0
  27. data/lib/scorpio/openapi.rb +23 -203
  28. data/lib/scorpio/request.rb +67 -61
  29. data/lib/scorpio/resource_base.rb +57 -49
  30. data/lib/scorpio/response.rb +28 -10
  31. data/lib/scorpio/ur.rb +7 -3
  32. data/lib/scorpio/version.rb +1 -1
  33. data/lib/scorpio.rb +12 -6
  34. data/pages/Request_Configuration.md +69 -0
  35. data/pages/Security.md +50 -0
  36. data/scorpio.gemspec +6 -5
  37. metadata +28 -15
  38. data/documents/www.googleapis.com/discovery/v1/apis/discovery/v1/rest +0 -684
  39. data/lib/scorpio/openapi/v3/server.rb +0 -44
@@ -0,0 +1,22 @@
1
+ # Scorpio::OpenAPI::V3_1::Ext::MetaSchema
2
+ $id: https://spec.openapis.org/oas/3.1/dialect/2024-11-10
3
+ $schema: https://json-schema.org/draft/2020-12/schema
4
+
5
+ title: OpenAPI 3.1 Schema Object Dialect
6
+ description: A JSON Schema dialect describing schemas found in OpenAPI v3.1 Descriptions
7
+
8
+ $dynamicAnchor: meta
9
+
10
+ $vocabulary:
11
+ https://json-schema.org/draft/2020-12/vocab/applicator: true
12
+ https://json-schema.org/draft/2020-12/vocab/content: true
13
+ https://json-schema.org/draft/2020-12/vocab/core: true
14
+ https://json-schema.org/draft/2020-12/vocab/format-annotation: true
15
+ https://json-schema.org/draft/2020-12/vocab/meta-data: true
16
+ https://json-schema.org/draft/2020-12/vocab/unevaluated: true
17
+ https://json-schema.org/draft/2020-12/vocab/validation: true
18
+ https://spec.openapis.org/oas/3.1/vocab/base: false
19
+
20
+ allOf:
21
+ - $ref: https://json-schema.org/draft/2020-12/schema
22
+ - $ref: https://spec.openapis.org/oas/3.1/meta/2024-11-10
@@ -0,0 +1,71 @@
1
+ # Scorpio::OpenAPI::V3_1::Ext::VocabSchema
2
+ $id: https://spec.openapis.org/oas/3.1/meta/2024-11-10
3
+ $schema: https://json-schema.org/draft/2020-12/schema
4
+
5
+ title: OAS Base Vocabulary
6
+ description: A JSON Schema Vocabulary used in the OpenAPI Schema Dialect
7
+
8
+ $dynamicAnchor: meta
9
+
10
+ $vocabulary:
11
+ https://spec.openapis.org/oas/3.1/vocab/base: true
12
+
13
+ type:
14
+ - object
15
+ - boolean
16
+ properties:
17
+ discriminator:
18
+ $ref: '#/$defs/discriminator'
19
+ example: true
20
+ externalDocs:
21
+ $ref: '#/$defs/external-docs'
22
+ xml:
23
+ $ref: '#/$defs/xml'
24
+
25
+ $defs:
26
+ discriminator:
27
+ $ref: '#/$defs/extensible'
28
+ properties:
29
+ mapping:
30
+ additionalProperties:
31
+ type: string
32
+ type: object
33
+ propertyName:
34
+ type: string
35
+ required:
36
+ - propertyName
37
+ type: object
38
+ unevaluatedProperties: false
39
+
40
+ extensible:
41
+ patternProperties:
42
+ ^x-: true
43
+ external-docs:
44
+ $ref: '#/$defs/extensible'
45
+ properties:
46
+ description:
47
+ type: string
48
+ url:
49
+ format: uri-reference
50
+ type: string
51
+ required:
52
+ - url
53
+ type: object
54
+ unevaluatedProperties: false
55
+
56
+ xml:
57
+ $ref: '#/$defs/extensible'
58
+ properties:
59
+ attribute:
60
+ type: boolean
61
+ name:
62
+ type: string
63
+ namespace:
64
+ format: uri
65
+ type: string
66
+ prefix:
67
+ type: string
68
+ wrapped:
69
+ type: boolean
70
+ type: object
71
+ unevaluatedProperties: false
@@ -0,0 +1,21 @@
1
+ # Scorpio::OpenAPI::V3_1::Ext::ExtDocument
2
+ $id: 'https://spec.openapis.org/oas/3.1/schema-base/2025-11-23'
3
+ $schema: 'https://json-schema.org/draft/2020-12/schema'
4
+
5
+ description: The description of OpenAPI v3.1.x Documents using the OpenAPI JSON Schema dialect
6
+
7
+ $ref: 'https://spec.openapis.org/oas/3.1/schema/2025-11-23'
8
+ properties:
9
+ jsonSchemaDialect:
10
+ $ref: '#/$defs/dialect'
11
+
12
+ $defs:
13
+ dialect:
14
+ const: 'https://spec.openapis.org/oas/3.1/dialect/2024-11-10'
15
+
16
+ schema:
17
+ $dynamicAnchor: meta
18
+ $ref: 'https://spec.openapis.org/oas/3.1/dialect/2024-11-10'
19
+ properties:
20
+ $schema:
21
+ $ref: '#/$defs/dialect'