Commit 8eb7426
feat(ruby): add support for discriminated unions, enums, and undiscriminated unions in dynamic snippets (#11099)
* feat(ruby-v2): add support for discriminated unions, enums, and undiscriminated unions in dynamic snippets
Co-Authored-By: [email protected] <[email protected]>
* test(ruby): update snapshot for big-entity test with discriminated union and enum values
Co-Authored-By: [email protected] <[email protected]>
* fix(ruby): handle non-object request body types (arrays, undiscriminated unions) in dynamic snippets
Co-Authored-By: [email protected] <[email protected]>
* chore(ruby):update seed
* fix(ruby): prevent duplicate errors in undiscriminated union conversion
Return the already-converted result from the cloned context instead of
calling convert() again on the main context. This prevents duplicate
errors when the same conversion is performed twice.
Co-Authored-By: [email protected] <[email protected]>
* bump version
---------
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>1 parent d81401b commit 8eb7426
File tree
1,022 files changed
+9571
-2873
lines changed- generators/ruby-v2
- dynamic-snippets/src
- __test__/__snapshots__
- context
- sdk
- seed/ruby-sdk-v2
- accept-header
- lib/seed/internal/types
- test/unit/internal/iterators
- alias-extends
- lib/seed/internal/types
- test/unit/internal/iterators
- alias
- lib/seed/internal/types
- test/unit/internal/iterators
- any-auth
- lib/seed
- auth
- internal/types
- test/unit/internal/iterators
- api-wide-base-path
- lib/seed/internal/types
- test/unit/internal/iterators
- audiences
- lib/seed
- folder_a/service
- foo
- internal/types
- test/unit/internal/iterators
- basic-auth-environment-variables
- lib/seed/internal/types
- test/unit/internal/iterators
- basic-auth
- lib/seed/internal/types
- test/unit/internal/iterators
- bearer-token-environment-variable
- lib/seed/internal/types
- test/unit/internal/iterators
- bytes-download
- lib/seed/internal/types
- test/unit/internal/iterators
- bytes-upload
- lib/seed/internal/types
- test/unit/internal/iterators
- circular-references-advanced
- lib/seed
- ast/types
- internal/types
- test/unit/internal/iterators
- circular-references
- lib/seed/internal/types
- test/unit/internal/iterators
- client-side-params
- lib/seed
- internal/types
- service
- types
- types/types
- test/unit/internal/iterators
- content-type
- lib/seed
- internal/types
- service
- types
- test/unit/internal/iterators
- cross-package-type-names
- lib/seed
- foo
- internal/types
- test/unit/internal/iterators
- empty-clients
- lib/seed/internal/types
- test/unit/internal/iterators
- enum
- dynamic-snippets
- example0
- example1
- example2
- example3
- example4
- example5
- example6
- lib/seed
- headers/types
- inlined_request
- types
- internal/types
- query_param
- types
- test/unit/internal/iterators
- error-property
- lib/seed/internal/types
- test/unit/internal/iterators
- errors
- lib/seed/internal/types
- test/unit/internal/iterators
- examples
- no-custom-config
- dynamic-snippets
- example0
- example19
- example1
- example21
- example22
- example2
- lib/seed
- internal/types
- service
- types/types
- test/unit/internal/iterators
- readme-config
- dynamic-snippets
- example0
- example19
- example1
- example21
- example22
- example2
- lib/seed
- internal/types
- service
- types/types
- test/unit/internal/iterators
- wire-tests
- dynamic-snippets
- example0
- example19
- example1
- example21
- example22
- example2
- lib/seed
- internal
- iterators
- types
- types/types
- test
- unit/internal/iterators
- wire
- wiremock
- exhaustive/wire-tests
- dynamic-snippets
- example0
- example1
- example20
- example27
- example28
- example29
- example2
- example30
- example31
- example32
- example33
- example34
- example35
- example36
- example37
- example3
- example4
- example5
- example6
- example9
- lib/seed
- endpoints/put/types
- inlined_requests/types
- internal
- iterators
- types
- req_with_headers/types
- types
- object/types
- union/types
- test
- unit/internal/iterators
- wire
- wiremock
- extends
- lib/seed/internal/types
- test/unit/internal/iterators
- extra-properties
- lib/seed
- internal/types
- user
- test/unit/internal/iterators
- file-download
- lib/seed/internal/types
- test/unit/internal/iterators
- file-upload-openapi
- lib/seed/internal/types
- test/unit/internal/iterators
- file-upload
- lib/seed
- internal/types
- service/types
- test/unit/internal/iterators
- folders
- lib/seed/internal/types
- test/unit/internal/iterators
- header-auth-environment-variable
- lib/seed/internal/types
- test/unit/internal/iterators
- header-auth
- lib/seed/internal/types
- test/unit/internal/iterators
- http-head
- lib/seed
- internal/types
- user
- test/unit/internal/iterators
- idempotency-headers
- dynamic-snippets/example0
- lib/seed
- internal/types
- payment
- test/unit/internal/iterators
- imdb
- lib/seed/internal/types
- test/unit/internal/iterators
- inferred-auth-explicit
- lib/seed
- auth
- internal
- types
- test/unit/internal/iterators
- inferred-auth-implicit-no-expiry
- lib/seed
- auth
- internal
- types
- test/unit/internal/iterators
- inferred-auth-implicit
- lib/seed
- auth
- internal
- types
- test/unit/internal/iterators
- license
- lib/seed/internal/types
- test/unit/internal/iterators
- literals-unions
- lib/seed/internal/types
- test/unit/internal/iterators
- literal
- lib/seed
- headers
- inlined
- types
- internal/types
- query
- reference/types
- test/unit/internal/iterators
- mixed-case
- lib/seed
- internal/types
- service
- types
- test/unit/internal/iterators
- mixed-file-directory
- lib/seed
- internal/types
- user
- events
- metadata
- test/unit/internal/iterators
- multi-line-docs
- lib/seed
- internal/types
- user
- test/unit/internal/iterators
- multi-url-environment-no-default
- lib/seed/internal
- http
- iterators
- json
- multipart
- types
- model
- test/unit/internal
- iterators
- types
- multi-url-environment
- lib/seed/internal
- http
- iterators
- json
- multipart
- types
- model
- test/unit/internal
- iterators
- types
- multiple-request-bodies
- lib/seed/internal/types
- test/unit/internal/iterators
- no-environment
- lib/seed/internal/types
- test/unit/internal/iterators
- no-retries
- lib/seed/internal/types
- test/unit/internal/iterators
- nullable-allof-extends
- .fern
- dynamic-snippets
- example0
- example1
- example2
- example3
- lib
- seed
- errors
- internal
- errors
- http
- iterators
- json
- multipart
- types
- model
- types
- test
- unit/internal
- iterators
- types
- nullable-optional
- dynamic-snippets
- example5
- example7
- example8
- example9
- lib/seed
- internal/types
- nullable_optional
- types
- test/unit/internal/iterators
- nullable-request-body
- lib/seed
- internal/types
- test_group
- test/unit/internal/iterators
- nullable
- dynamic-snippets/example1
- lib/seed
- internal/types
- nullable
- types
- test/unit/internal/iterators
- oauth-client-credentials-custom
- lib/seed
- auth
- internal/types
- test/unit/internal/iterators
- oauth-client-credentials-default
- lib/seed
- auth
- internal/types
- test/unit/internal/iterators
- oauth-client-credentials-environment-variables
- lib/seed
- auth
- internal/types
- test/unit/internal/iterators
- oauth-client-credentials-nested-root
- lib/seed
- auth
- internal/types
- test/unit/internal/iterators
- oauth-client-credentials-with-variables
- lib/seed
- auth
- internal/types
- test/unit/internal/iterators
- oauth-client-credentials
- lib/seed
- auth
- internal/types
- test/unit/internal/iterators
- objects-with-imports
- lib/seed
- file/directory/types
- internal/types
- test/unit/internal/iterators
- object
- lib/seed
- internal/types
- types
- test/unit/internal/iterators
- optional
- dynamic-snippets
- example0
- example1
- example2
- lib/seed/internal/types
- test/unit/internal/iterators
- package-yml
- lib/seed/internal/types
- test/unit/internal/iterators
- pagination-custom
- .fern
- dynamic-snippets/example0
- lib
- seed
- errors
- internal
- errors
- http
- iterators
- json
- multipart
- types
- model
- types
- users
- types
- test
- unit/internal
- iterators
- types
- pagination
- dynamic-snippets
- example0
- example13
- example16
- example17
- example19
- example1
- example20
- example4
- example5
- example7
- example8
- lib/seed
- inline_users/inline_users
- users
- path-parameters
- lib/seed
- internal/types
- organizations
- user
- test/unit/internal/iterators
- plain-text
- lib/seed/internal/types
- test/unit/internal/iterators
- property-access
- lib/seed/internal/types
- test/unit/internal/iterators
- public-object
- lib/seed/internal/types
- test/unit/internal/iterators
- query-parameters-openapi-as-objects
- dynamic-snippets/example0
- lib/seed/internal/types
- test/unit/internal/iterators
- query-parameters-openapi
- dynamic-snippets/example0
- lib/seed/internal/types
- test/unit/internal/iterators
- query-parameters
- lib/seed
- internal/types
- user
- types
- test/unit/internal/iterators
- request-parameters
- dynamic-snippets
- example2
- example3
- lib/seed
- internal/types
- user
- types
- test/unit/internal/iterators
- required-nullable
- lib/seed/internal/types
- test/unit/internal/iterators
- reserved-keywords
- lib/seed
- internal/types
- package
- test/unit/internal/iterators
- response-property
- dynamic-snippets
- example0
- example1
- example2
- example3
- example4
- example5
- example6
- lib/seed/internal/types
- test/unit/internal/iterators
- ruby-reserved-word-properties
- lib/seed
- internal/types
- service/types
- test/unit/internal/iterators
- server-sent-event-examples
- lib/seed
- completions
- internal/types
- test/unit/internal/iterators
- server-sent-events
- lib/seed
- completions
- internal/types
- test/unit/internal/iterators
- simple-api
- lib/seed/internal/types
- test/unit/internal/iterators
- simple-fhir
- lib/seed
- internal/types
- types
- test/unit/internal/iterators
- single-url-environment-default
- lib/seed/internal
- http
- iterators
- json
- multipart
- types
- model
- test/unit/internal
- iterators
- types
- single-url-environment-no-default
- lib/seed/internal
- http
- iterators
- json
- multipart
- types
- model
- test/unit/internal
- iterators
- types
- streaming-parameter
- lib/seed
- dummy
- internal/types
- test/unit/internal/iterators
- streaming
- lib/seed
- dummy
- internal/types
- test/unit/internal/iterators
- trace
- dynamic-snippets
- example10
- example17
- example18
- example1
- example20
- example21
- example23
- example24
- example28
- example2
- example3
- example4
- example5
- example6
- example7
- example8
- lib/seed
- admin
- types
- commons/types
- homepage
- internal/types
- migration
- playlist
- types
- problem
- types
- submission
- types
- sysprop
- v_2
- problem
- types
- v_3/problem
- types
- test/unit/internal/iterators
- undiscriminated-union-with-response-property
- lib/seed/internal/types
- test/unit/internal/iterators
- undiscriminated-unions
- dynamic-snippets
- example0
- example10
- example3
- example4
- example5
- example6
- example7
- example8
- example9
- lib/seed
- internal/types
- union
- types
- test/unit/internal/iterators
- unions-with-local-date
- dynamic-snippets
- example10
- example2
- example6
- example7
- example8
- lib/seed/internal/types
- test/unit/internal/iterators
- unions
- dynamic-snippets
- example2
- example4
- lib/seed/internal/types
- test/unit/internal/iterators
- unknown
- lib/seed/internal/types
- test/unit/internal/iterators
- url-form-encoded
- lib/seed/internal/types
- test/unit/internal/iterators
- validation
- dynamic-snippets/example0
- lib/seed/internal/types
- test/unit/internal/iterators
- variables
- lib/seed/internal/types
- test/unit/internal/iterators
- version-no-default
- lib/seed/internal/types
- test/unit/internal/iterators
- version
- lib/seed/internal/types
- test/unit/internal/iterators
- websocket-bearer-auth
- lib/seed/internal/types
- test/unit/internal/iterators
- websocket-inferred-auth
- lib/seed
- auth
- internal
- types
- test/unit/internal/iterators
- websocket
- lib/seed/internal/types
- test/unit/internal/iterators
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
1,022 files changed
+9571
-2873
lines changedLines changed: 147 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
553 | 553 | | |
554 | 554 | | |
555 | 555 | | |
556 | | - | |
| 556 | + | |
557 | 557 | | |
558 | 558 | | |
559 | 559 | | |
| |||
563 | 563 | | |
564 | 564 | | |
565 | 565 | | |
566 | | - | |
567 | | - | |
568 | | - | |
569 | | - | |
570 | | - | |
571 | | - | |
572 | | - | |
573 | | - | |
574 | | - | |
575 | | - | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
| 571 | + | |
| 572 | + | |
| 573 | + | |
| 574 | + | |
576 | 575 | | |
577 | 576 | | |
578 | 577 | | |
579 | 578 | | |
580 | 579 | | |
581 | 580 | | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
582 | 605 | | |
583 | 606 | | |
584 | 607 | | |
| |||
591 | 614 | | |
592 | 615 | | |
593 | 616 | | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
| 658 | + | |
| 659 | + | |
| 660 | + | |
| 661 | + | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
| 669 | + | |
| 670 | + | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
594 | 730 | | |
595 | 731 | | |
596 | 732 | | |
| |||
Lines changed: 35 additions & 17 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
34 | 38 | | |
35 | 39 | | |
36 | 40 | | |
| |||
43 | 47 | | |
44 | 48 | | |
45 | 49 | | |
46 | | - | |
| 50 | + | |
| 51 | + | |
47 | 52 | | |
48 | 53 | | |
49 | 54 | | |
| |||
109 | 114 | | |
110 | 115 | | |
111 | 116 | | |
112 | | - | |
113 | | - | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
114 | 128 | | |
115 | 129 | | |
116 | 130 | | |
117 | 131 | | |
118 | 132 | | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
126 | 145 | | |
127 | 146 | | |
128 | 147 | | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
136 | 154 | | |
137 | 155 | | |
138 | 156 | | |
| |||
0 commit comments