Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CPPSDK: parameter/result handling for method and events + inner object handling #140

Merged
merged 2 commits into from
Oct 25, 2023

Conversation

HaseenaSainul
Copy link
Contributor

@HaseenaSainul HaseenaSainul commented Oct 10, 2023

  1. Handle parameters/result sections for method and callbacks based on templateDir passed
  2. Handle Inner type inside object properties. For that introduced sub-property folder and keeps template for sub properties inside this folder. In CPP case need to handle sub property differently
    Note: some templates already introduced in previous PRs anyOfSchemaShape/additionalProperties are already with these too, since this also comes under the parameter/result templates. will merge these only on top previous PR to ensure any change in these templates are in place

@rdkcmf-jenkins
Copy link

Blackduck scan failure details

Summary: 0 violations, 0 files pending approval, 2 files pending identification.

  • Protex Server Path: /home/blackduck/github/firebolt-openrpc/140/rdkcentral/firebolt-openrpc

  • Commit: b6767e3

Report detail: gist

@rdkcmf-jenkins
Copy link

Blackduck scan failure details

Summary: 0 violations, 0 files pending approval, 1 file pending identification.

  • Protex Server Path: /home/blackduck/github/firebolt-openrpc/140/rdkcentral/firebolt-openrpc

  • Commit: b6767e3

Report detail: gist

@rdkcmf-jenkins
Copy link

Blackduck scan failure details

Summary: 0 violations, 0 files pending approval, 1 file pending identification.

  • Protex Server Path: /home/blackduck/github/firebolt-openrpc/140/rdkcentral/firebolt-openrpc

  • Commit: b6767e3

Report detail: gist

@rdkcmf-jenkins
Copy link

WARNING: A Blackduck scan failure has been waived

A prior failure has been upvoted

  • Upvote reason: boilerplate

  • Commit: b6767e3

@HaseenaSainul HaseenaSainul force-pushed the development/inner-object-handling branch from b6767e3 to 9babd2f Compare October 13, 2023 06:42
@rdkcmf-jenkins
Copy link

Blackduck scan failure details

Summary: 0 violations, 0 files pending approval, 1 file pending identification.

  • Protex Server Path: /home/blackduck/github/firebolt-openrpc/140/rdkcentral/firebolt-openrpc

  • Commit: 9babd2f

Report detail: gist

@HaseenaSainul HaseenaSainul force-pushed the development/inner-object-handling branch 5 times, most recently from 05d890c to 88ef20c Compare October 24, 2023 09:53
Copy link
Contributor

@jlacivita jlacivita left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay this looks good, but I do believe that the 'generic' primitive is really just a default, and we should rename the template (and the code that loads it) to 'default'

@HaseenaSainul HaseenaSainul force-pushed the development/inner-object-handling branch from 88ef20c to 887c8b4 Compare October 25, 2023 04:08
@HaseenaSainul HaseenaSainul merged commit 24eedc4 into features/cpp Oct 25, 2023
1 check passed
@HaseenaSainul HaseenaSainul deleted the development/inner-object-handling branch October 25, 2023 04:36
jlacivita added a commit that referenced this pull request Mar 26, 2024
BREAKING CHANGE: Generalized templating engine to support both JavaScript and CPP (and other languages).

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: In progress commit

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* feat(macrofier): Add dynamic schema template output

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* fix: Split c-structs from c (w/ Accessors)

* fix: Latest work

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* Create namespaces only if there is value to put (#117)

* Changes to avoid duplication of sub-array schema with same reference (#116)

* detach setter declaration from property template and add setter templ… (#118)

Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* SubArray generation issue fix (#121)

* cmake changes to install proper files (#119)

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* Create namespaces only if there is value to put (#117)

* Changes to avoid duplication of sub-array schema with same reference (#116)

* detach setter declaration from property template and add setter templ… (#118)

Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* SubArray generation issue fix (#121)

* cmake changes to install proper files (#119)

* native code: changed return type from uint32_t to int32_t (#127)

* fix: Provider Interfaces and Tuples in JS

* feat: Initial commit of cpp sdk

* feat: Fix issues in generated headers

* CPPSDK: static code + template changes (#137)

* CPPSDK: static code + template changes

* CPPSDK: static code updates

* CPPSDK: updates in error handling

* CPPSDK: namespace settings changes (#135)

* CPP SDK : changes to handle additional Properties (#134)

CPP SDK : changes to handle additional Properties

* CPPSDK: parameter and result handling changes (#136)

CPPSDK:
1. parameter and result handling changes
2. anyOf type handling
3. reference schema handling

* CPPSDK: aggregate files based on suffix type handling added, module and override module generation also handled (#139)

CPPSDK: aggregate files based on suffix type handling added, module and override module generation also handled

* CPPSDK: changes to handle enum and x-schema enum without title (#138)

* CPPSDK: parameter/result handling for method and events + inner object handling (#140)

* CPPSDK: template added for capabilties-method (#142)

* CPPSDK: method name changed to camel case (#144)

* CPPSDK: event name changed to camelcase (#145)

* CPPSDK: add overrideRule to handle template generation + remove enum level checking (#141)

1. Add properties to the template only if object has properties or additionalProperties
2. use primitive types from templates, instead defined variable

* CPPSDK: remove const from return type (#149)

* CPPSDK: typo fix (#150)

* CPPSDK: handle empty properties and propertyNames with templates (#152)

* CPPSDK: code generation template and engine changes (#151)

1. Callback generation + types: with generation changes + template updates
2.Set title for properties inside x-schemas

* CPPSDK: template updates based on more complex schema generation (#153)

* CPPSDK: polymorphic-pull method/event generation support added (#154)

* CPPSDK: provider support added (#156)

* CPPSDK: check jsonrpc response values are set or not before assigning based on optional types (#157)

* fix: Copy allow-focus tag to use methods

* CPPSDK: calls metrics support added (#158)

* CPPSDK: calls metrics support added

* CPPSDK: handle patternProperties (#160)

* CPPSDK: polymorphic method schema creation changes (#159)

* CPPSDK: changes to handle context params (#161)

* CPPSDK: warning fix during promoteAndNameSubSchemas (#163)

* Check template for codeblocks exists or not before trying to generate (#164)

* Optimization of generation time: generate macros only based on the schemhema template requirement if it is set (#165)

* Updates based on MAC testing (#167)

* CPPSDK: proceed to install only the build is successfully done and some cleanup (#169)

* merge conflict fixes

* feature/cpp branch alignment based on next branch merging for both openrpc and apis (#171)

* CPPSDK: update install script to handle version parsing for file based and prebuild install cases (#173)

* Update to align generated firebolt.d.ts sync with same is next branch (#172)

* CPPSDK : Add Async communication support and CPP code generation for x-uses + x-allow-focus=true (#170)

---------

Co-authored-by: Jeremy LaCivita <[email protected]>
Co-authored-by: sramani-metro <[email protected]>
Co-authored-by: Santhosh Ramani <[email protected]>
kschrief pushed a commit that referenced this pull request Mar 26, 2024
# [3.0.0-next.1](v2.3.0-next.1...v3.0.0-next.1) (2024-03-26)

* Integration of CPPSDK support (#176) ([89294cc](89294cc)), closes [#176](#176) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#127](#127) [#137](#137) [#135](#135) [#134](#134) [#136](#136) [#139](#139) [#138](#138) [#140](#140) [#142](#142) [#144](#144) [#145](#145) [#141](#141) [#149](#149) [#150](#150) [#152](#152) [#151](#151) [#153](#153) [#154](#154) [#156](#156) [#157](#157) [#158](#158) [#160](#160) [#159](#159) [#161](#161) [#163](#163) [#164](#164) [#165](#165) [#167](#167) [#169](#169) [#171](#171) [#173](#173) [#172](#172) [#170](#170)

### BREAKING CHANGES

* Generalized templating engine to support both JavaScript and CPP (and other languages).

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors
kschrief added a commit that referenced this pull request Apr 8, 2024
* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: In progress commit

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* feat(macrofier): Add dynamic schema template output

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* fix: Split c-structs from c (w/ Accessors)

* fix: Latest work

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* Create namespaces only if there is value to put (#117)

* Changes to avoid duplication of sub-array schema with same reference (#116)

* detach setter declaration from property template and add setter templ… (#118)

Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* SubArray generation issue fix (#121)

* cmake changes to install proper files (#119)

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* Create namespaces only if there is value to put (#117)

* Changes to avoid duplication of sub-array schema with same reference (#116)

* detach setter declaration from property template and add setter templ… (#118)

Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* SubArray generation issue fix (#121)

* cmake changes to install proper files (#119)

* native code: changed return type from uint32_t to int32_t (#127)

* fix: Provider Interfaces and Tuples in JS

* feat: Initial commit of cpp sdk

* feat: Fix issues in generated headers

* CPPSDK: static code + template changes (#137)

* CPPSDK: static code + template changes

* CPPSDK: static code updates

* CPPSDK: updates in error handling

* CPPSDK: namespace settings changes (#135)

* CPP SDK : changes to handle additional Properties (#134)

CPP SDK : changes to handle additional Properties

* CPPSDK: parameter and result handling changes (#136)

CPPSDK:
1. parameter and result handling changes
2. anyOf type handling
3. reference schema handling

* CPPSDK: aggregate files based on suffix type handling added, module and override module generation also handled (#139)

CPPSDK: aggregate files based on suffix type handling added, module and override module generation also handled

* CPPSDK: changes to handle enum and x-schema enum without title (#138)

* CPPSDK: parameter/result handling for method and events + inner object handling (#140)

* CPPSDK: template added for capabilties-method (#142)

* CPPSDK: method name changed to camel case (#144)

* CPPSDK: event name changed to camelcase (#145)

* CPPSDK: add overrideRule to handle template generation + remove enum level checking (#141)

1. Add properties to the template only if object has properties or additionalProperties
2. use primitive types from templates, instead defined variable

* CPPSDK: remove const from return type (#149)

* CPPSDK: typo fix (#150)

* CPPSDK: handle empty properties and propertyNames with templates (#152)

* CPPSDK: code generation template and engine changes (#151)

1. Callback generation + types: with generation changes + template updates
2.Set title for properties inside x-schemas

* CPPSDK: template updates based on more complex schema generation (#153)

* CPPSDK: polymorphic-pull method/event generation support added (#154)

* CPPSDK: provider support added (#156)

* CPPSDK: check jsonrpc response values are set or not before assigning based on optional types (#157)

* fix: Copy allow-focus tag to use methods

* CPPSDK: calls metrics support added (#158)

* CPPSDK: calls metrics support added

* CPPSDK: handle patternProperties (#160)

* CPPSDK: polymorphic method schema creation changes (#159)

* CPPSDK: changes to handle context params (#161)

* CPPSDK: warning fix during promoteAndNameSubSchemas (#163)

* Check template for codeblocks exists or not before trying to generate (#164)

* Optimization of generation time: generate macros only based on the schemhema template requirement if it is set (#165)

* Updates based on MAC testing (#167)

* CPPSDK: proceed to install only the build is successfully done and some cleanup (#169)

* merge conflict fixes

* feature/cpp branch alignment based on next branch merging for both openrpc and apis (#171)

* CPPSDK: update install script to handle version parsing for file based and prebuild install cases (#173)

* Update to align generated firebolt.d.ts sync with same is next branch (#172)

* CPPSDK : Add Async communication support and CPP code generation for x-uses + x-allow-focus=true (#170)

* CPPSDK: remove reduntant code

---------

Co-authored-by: Jeremy LaCivita <[email protected]>
Co-authored-by: sramani-metro <[email protected]>
Co-authored-by: Santhosh Ramani <[email protected]>
Co-authored-by: kschrief <[email protected]>
jlacivita added a commit that referenced this pull request May 14, 2024
* chore(release): 2.1.1 [skip ci]

## [2.1.1](v2.1.0...v2.1.1) (2023-11-01)

### Bug Fixes

* Errors thrown in async provider methods do not send the JSONRPC error response ([#143](#143)) ([ec8e259](ec8e259))
* Macro not replaced for provider docs ([ef1aecd](ef1aecd))

* chore(release): 2.1.2 [skip ci]

## [2.1.2](v2.1.1...v2.1.2) (2023-11-09)

### Bug Fixes

* Provider openrpc response and error methods have a wrapper object ([#148](#148)) ([373626e](373626e))

* chore(release): 2.2.0 [skip ci]

# [2.2.0](v2.1.2...v2.2.0) (2023-11-30)

### Features

* Improve generated doc formatting ([#155](#155)) ([4613281](4613281))

* Update NOTICE

* chore(release): 2.3.0-next.1 [skip ci]

# [2.3.0-next.1](v2.2.0...v2.3.0-next.1) (2024-01-12)

### Bug Fixes

* Insert 'v' in front of version enum names ([d8b9ada](d8b9ada))
* Proper param handling for x-subscriber-type: global ([02204e5](02204e5))

### Features

* Support for context-free property subscribers ([9809273](9809273))

* Integration of CPPSDK support (#176)

BREAKING CHANGE: Generalized templating engine to support both JavaScript and CPP (and other languages).

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: In progress commit

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* feat(macrofier): Add dynamic schema template output

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* fix: Split c-structs from c (w/ Accessors)

* fix: Latest work

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* Create namespaces only if there is value to put (#117)

* Changes to avoid duplication of sub-array schema with same reference (#116)

* detach setter declaration from property template and add setter templ… (#118)

Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* SubArray generation issue fix (#121)

* cmake changes to install proper files (#119)

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* Create namespaces only if there is value to put (#117)

* Changes to avoid duplication of sub-array schema with same reference (#116)

* detach setter declaration from property template and add setter templ… (#118)

Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* SubArray generation issue fix (#121)

* cmake changes to install proper files (#119)

* native code: changed return type from uint32_t to int32_t (#127)

* fix: Provider Interfaces and Tuples in JS

* feat: Initial commit of cpp sdk

* feat: Fix issues in generated headers

* CPPSDK: static code + template changes (#137)

* CPPSDK: static code + template changes

* CPPSDK: static code updates

* CPPSDK: updates in error handling

* CPPSDK: namespace settings changes (#135)

* CPP SDK : changes to handle additional Properties (#134)

CPP SDK : changes to handle additional Properties

* CPPSDK: parameter and result handling changes (#136)

CPPSDK:
1. parameter and result handling changes
2. anyOf type handling
3. reference schema handling

* CPPSDK: aggregate files based on suffix type handling added, module and override module generation also handled (#139)

CPPSDK: aggregate files based on suffix type handling added, module and override module generation also handled

* CPPSDK: changes to handle enum and x-schema enum without title (#138)

* CPPSDK: parameter/result handling for method and events + inner object handling (#140)

* CPPSDK: template added for capabilties-method (#142)

* CPPSDK: method name changed to camel case (#144)

* CPPSDK: event name changed to camelcase (#145)

* CPPSDK: add overrideRule to handle template generation + remove enum level checking (#141)

1. Add properties to the template only if object has properties or additionalProperties
2. use primitive types from templates, instead defined variable

* CPPSDK: remove const from return type (#149)

* CPPSDK: typo fix (#150)

* CPPSDK: handle empty properties and propertyNames with templates (#152)

* CPPSDK: code generation template and engine changes (#151)

1. Callback generation + types: with generation changes + template updates
2.Set title for properties inside x-schemas

* CPPSDK: template updates based on more complex schema generation (#153)

* CPPSDK: polymorphic-pull method/event generation support added (#154)

* CPPSDK: provider support added (#156)

* CPPSDK: check jsonrpc response values are set or not before assigning based on optional types (#157)

* fix: Copy allow-focus tag to use methods

* CPPSDK: calls metrics support added (#158)

* CPPSDK: calls metrics support added

* CPPSDK: handle patternProperties (#160)

* CPPSDK: polymorphic method schema creation changes (#159)

* CPPSDK: changes to handle context params (#161)

* CPPSDK: warning fix during promoteAndNameSubSchemas (#163)

* Check template for codeblocks exists or not before trying to generate (#164)

* Optimization of generation time: generate macros only based on the schemhema template requirement if it is set (#165)

* Updates based on MAC testing (#167)

* CPPSDK: proceed to install only the build is successfully done and some cleanup (#169)

* merge conflict fixes

* feature/cpp branch alignment based on next branch merging for both openrpc and apis (#171)

* CPPSDK: update install script to handle version parsing for file based and prebuild install cases (#173)

* Update to align generated firebolt.d.ts sync with same is next branch (#172)

* CPPSDK : Add Async communication support and CPP code generation for x-uses + x-allow-focus=true (#170)

---------

Co-authored-by: Jeremy LaCivita <[email protected]>
Co-authored-by: sramani-metro <[email protected]>
Co-authored-by: Santhosh Ramani <[email protected]>

* chore(release): 3.0.0-next.1 [skip ci]

# [3.0.0-next.1](v2.3.0-next.1...v3.0.0-next.1) (2024-03-26)

* Integration of CPPSDK support (#176) ([89294cc](89294cc)), closes [#176](#176) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#127](#127) [#137](#137) [#135](#135) [#134](#134) [#136](#136) [#139](#139) [#138](#138) [#140](#140) [#142](#142) [#144](#144) [#145](#145) [#141](#141) [#149](#149) [#150](#150) [#152](#152) [#151](#151) [#153](#153) [#154](#154) [#156](#156) [#157](#157) [#158](#158) [#160](#160) [#159](#159) [#161](#161) [#163](#163) [#164](#164) [#165](#165) [#167](#167) [#169](#169) [#171](#171) [#173](#173) [#172](#172) [#170](#170)

### BREAKING CHANGES

* Generalized templating engine to support both JavaScript and CPP (and other languages).

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* feat: CI/CD Merging from next (#183)

* Push new workflows

* chore(release): 3.0.0-next.2 [skip ci]

# [3.0.0-next.2](v3.0.0-next.1...v3.0.0-next.2) (2024-04-08)

### Features

* CI/CD Merging from next ([#183](#183)) ([14476a9](14476a9))

* CPPSDK: ensure array has enough data before trying to access (#184)

* CPPSDK: cmake prefix to support older release as well (#180)

Co-authored-by: kschrief <[email protected]>

* CPPSDK: remove reduntant code (#178)

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: In progress commit

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* feat(macrofier): Add dynamic schema template output

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* fix: Split c-structs from c (w/ Accessors)

* fix: Latest work

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* Create namespaces only if there is value to put (#117)

* Changes to avoid duplication of sub-array schema with same reference (#116)

* detach setter declaration from property template and add setter templ… (#118)

Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* SubArray generation issue fix (#121)

* cmake changes to install proper files (#119)

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors

* fix: Sort the macrofied schemas based on schema refs (#90)

* fix: Sort the macrofied schemas based on schema refs

* fix: Sort the schemas before macrofying

* fix: Handle the schemas part

* Enum fixes (#93)

Enum fixes :
1. missing description added
2. alignment fixes
3. implementation added for enum inside properties
4. Enum to String value Conversion logic added for C

* Types and Accessor related fixes (#94)

Types and Accessor related fixes:
1. Accessor creation
2. JsonContainer creation
3. Types order placed based on depenedencies
4. filtered redundant new lines
5. UnamedSchema issue fixes
6. Types and Accessors:  generation added for objects inside methods result/params
7. AnyOf support added

* Static code implementation updates (#96)

Static code implementation updates
Co-authored-by: Jeremy LaCivita <[email protected]>

* Add support to generate file inclusion for common schema also (#97)

Add support to generate file inclusion for common schema also

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* feat: Add template for polymorphic-pull

* fix: Promote and name sub-schemas in one place

* fix: Add extractSubSchemas flag to C language

* fix: Uncomment writeFilePermissions

* polymorphic-pull: method and event implementation added (#107)

* SchemaSorting: logic updated to consider all schemas (#106)

* fix: Fix the reentrancy of methods from callback (#105)

* Default template implementation added (#103)

Default template implementation added

* Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix (#109)

Naming + void* to struct* changes based on sky review, removed redundant code, array handling fix

* language-c: re-arrange files locations (#112)

language-c: re-arrange files locations

* fixes to generate array inside subschemas (#111)

* include test always (#113)

* use String type if there is any issue with anyOf merge (#114)

* calls-metrics: support added (#115)

* Generate polymorphci methods for anyOf param/result case (#110)

* Create namespaces only if there is value to put (#117)

* Changes to avoid duplication of sub-array schema with same reference (#116)

* detach setter declaration from property template and add setter templ… (#118)

Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* SubArray generation issue fix (#121)

* cmake changes to install proper files (#119)

* native code: changed return type from uint32_t to int32_t (#127)

* fix: Provider Interfaces and Tuples in JS

* feat: Initial commit of cpp sdk

* feat: Fix issues in generated headers

* CPPSDK: static code + template changes (#137)

* CPPSDK: static code + template changes

* CPPSDK: static code updates

* CPPSDK: updates in error handling

* CPPSDK: namespace settings changes (#135)

* CPP SDK : changes to handle additional Properties (#134)

CPP SDK : changes to handle additional Properties

* CPPSDK: parameter and result handling changes (#136)

CPPSDK:
1. parameter and result handling changes
2. anyOf type handling
3. reference schema handling

* CPPSDK: aggregate files based on suffix type handling added, module and override module generation also handled (#139)

CPPSDK: aggregate files based on suffix type handling added, module and override module generation also handled

* CPPSDK: changes to handle enum and x-schema enum without title (#138)

* CPPSDK: parameter/result handling for method and events + inner object handling (#140)

* CPPSDK: template added for capabilties-method (#142)

* CPPSDK: method name changed to camel case (#144)

* CPPSDK: event name changed to camelcase (#145)

* CPPSDK: add overrideRule to handle template generation + remove enum level checking (#141)

1. Add properties to the template only if object has properties or additionalProperties
2. use primitive types from templates, instead defined variable

* CPPSDK: remove const from return type (#149)

* CPPSDK: typo fix (#150)

* CPPSDK: handle empty properties and propertyNames with templates (#152)

* CPPSDK: code generation template and engine changes (#151)

1. Callback generation + types: with generation changes + template updates
2.Set title for properties inside x-schemas

* CPPSDK: template updates based on more complex schema generation (#153)

* CPPSDK: polymorphic-pull method/event generation support added (#154)

* CPPSDK: provider support added (#156)

* CPPSDK: check jsonrpc response values are set or not before assigning based on optional types (#157)

* fix: Copy allow-focus tag to use methods

* CPPSDK: calls metrics support added (#158)

* CPPSDK: calls metrics support added

* CPPSDK: handle patternProperties (#160)

* CPPSDK: polymorphic method schema creation changes (#159)

* CPPSDK: changes to handle context params (#161)

* CPPSDK: warning fix during promoteAndNameSubSchemas (#163)

* Check template for codeblocks exists or not before trying to generate (#164)

* Optimization of generation time: generate macros only based on the schemhema template requirement if it is set (#165)

* Updates based on MAC testing (#167)

* CPPSDK: proceed to install only the build is successfully done and some cleanup (#169)

* merge conflict fixes

* feature/cpp branch alignment based on next branch merging for both openrpc and apis (#171)

* CPPSDK: update install script to handle version parsing for file based and prebuild install cases (#173)

* Update to align generated firebolt.d.ts sync with same is next branch (#172)

* CPPSDK : Add Async communication support and CPP code generation for x-uses + x-allow-focus=true (#170)

* CPPSDK: remove reduntant code

---------

Co-authored-by: Jeremy LaCivita <[email protected]>
Co-authored-by: sramani-metro <[email protected]>
Co-authored-by: Santhosh Ramani <[email protected]>
Co-authored-by: kschrief <[email protected]>

* fix: Account for new OpenRPC spec URL contents (#186)

* fix: Account for new openRpcSpec URL contents

* chore(release): 3.0.0-next.3 [skip ci]

# [3.0.0-next.3](v3.0.0-next.2...v3.0.0-next.3) (2024-05-09)

### Bug Fixes

* Account for new OpenRPC spec URL contents ([#186](#186)) ([66bd6ac](66bd6ac))

---------

Co-authored-by: semantic-release-bot <[email protected]>
Co-authored-by: Kevin Pearson <[email protected]>
Co-authored-by: Jeremy LaCivita <[email protected]>
Co-authored-by: HaseenaSainul <[email protected]>
Co-authored-by: sramani-metro <[email protected]>
Co-authored-by: Santhosh Ramani <[email protected]>
Co-authored-by: kschrief <[email protected]>
kevinshahfws added a commit that referenced this pull request Jun 14, 2024
* Integration of CPPSDK support (#176)

* BREAKING CHANGE: Generalized templating engine to support both JavaScript and CPP (and other languages).

* feat(languages): Add support for a distinct JSON-type for each schema

* feat(accessors): New macro section for schema property accessors

* Add support to generate file inclusion for common schema also (#97)

* Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* CPPSDK : Add Async communication support and CPP code generation for x-uses + x-allow-focus=true (#170)


* chore(release): 3.0.0-next.1 [skip ci]

# [3.0.0-next.1](v2.3.0-next.1...v3.0.0-next.1) (2024-03-26)

* Integration of CPPSDK support (#176) ([89294cc](89294cc)), closes [#176](#176) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#127](#127) [#137](#137) [#135](#135) [#134](#134) [#136](#136) [#139](#139) [#138](#138) [#140](#140) [#142](#142) [#144](#144) [#145](#145) [#141](#141) [#149](#149) [#150](#150) [#152](#152) [#151](#151) [#153](#153) [#154](#154) [#156](#156) [#157](#157) [#158](#158) [#160](#160) [#159](#159) [#161](#161) [#163](#163) [#164](#164) [#165](#165) [#167](#167) [#169](#169) [#171](#171) [#173](#173) [#172](#172) [#170](#170)

* chore: Copy JS templates to C and create language.config.json

* feat(accessors): New macro section for schema property accessors

* feat: CI/CD Merging from next (#183)

# [3.0.0-next.2](v3.0.0-next.1...v3.0.0-next.2) (2024-04-08)

### Features

* CI/CD Merging from next ([#183](#183)) ([14476a9](14476a9))


* Detach setter declaration from property template and add setter template, remove unredundant warnings
Cleanup changes, add separator between prefix and subSchema name generation
Introduce excludeDeclarations flag to handle declaration exclusion specific to language
Alignement changes + cleanup + OUT params support added to differentiate method signature parameters
Update in static code

* Add support to generate file inclusion for common schema also (#97)

* C-Language: Templates based property methods (#100)

* feat: Add method templates for properties

* feat: Property setters using templates

* fix: Macro name correction

* Add support to keep original file permissions of template/sdk files (#99)

* Event template implementation added (#101)

* Template for Polymorphic pull method (#102)



* chore(release): 3.0.0-next.3 [skip ci]

# [3.0.0-next.3](v3.0.0-next.2...v3.0.0-next.3) (2024-05-09)

### Bug Fixes

* Account for new OpenRPC spec URL contents ([#186](#186)) ([66bd6ac](66bd6ac))

* feat: App Pass-through (#188)

This feature enables one Firebolt App to provide a capability that may be used by another Firebolt App, with the platform as a permission broker that passes the requests and responses to each app without feature-specific logic.

This document covers the App Pass-through Firebolt OpenRPC extension as well as how Firebolt implementations should detect and execute app provided pass-through APIs.

Some APIs require an app to fulfill the request on behalf of another app, e.g. to provide a UX or cross-app data sharing. Generally the calling app doesn't care, or have a say in, which other app provides the API, that is up to the Firebolt distributor.

To facilitate these APIs, Firebolt denotes an `x-provided-by` OpenRPC tag with OpenRPC extensions to connect the `provide` API to the `use` API.

* chore(release): 3.0.0-next.4 [skip ci]

# [3.0.0-next.4](v3.0.0-next.3...v3.0.0-next.4) (2024-06-06)

### Features

* App Pass-through ([#188](#188)) ([83fa0fc](83fa0fc))

* chore(release): 3.0.0-next.5 [skip ci]

# [3.0.0-next.5](v3.0.0-next.4...v3.0.0-next.5) (2024-06-13)
kschrief pushed a commit that referenced this pull request Jun 14, 2024
# [3.0.0](v2.3.0...v3.0.0) (2024-06-14)

* 3.0.0 Release (#194) ([b374818](b374818)), closes [#194](#194) [#176](#176) [#97](#97) [#170](#170) [#176](#176) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#127](#127) [#137](#137) [#135](#135) [#134](#134) [#136](#136) [#139](#139) [#138](#138) [#140](#140) [#142](#142) [#144](#144) [#145](#145) [#141](#141) [#149](#149) [#150](#150) [#152](#152) [#151](#151) [#153](#153) [#154](#154) [#156](#156) [#157](#157) [#158](#158) [#160](#160) [#159](#159) [#161](#161) [#163](#163) [#164](#164) [#165](#165) [#167](#167) [#169](#169) [#171](#171) [#173](#173) [#172](#172) [#170](#170) [#183](#183) [#183](#183) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#186](#186) [#188](#188) [#188](#188)

### BREAKING CHANGES

* Generalized templating engine to support both JavaScript and CPP (and other languages).

* feat(languages): Add support for a distinct JSON-type for each schema

* feat(accessors): New macro section for schema property accessors
kschrief pushed a commit that referenced this pull request Aug 8, 2024
# [3.0.0](v2.3.0...v3.0.0) (2024-08-08)

### Bug Fixes

* Account for new OpenRPC spec URL contents ([#186](#186)) ([66bd6ac](66bd6ac))
* Added CPP Event prioritization ([#197](#197)) ([11d25e9](11d25e9))
* Added firebolt header to the call-metrics ([#201](#201)) ([1b3f261](1b3f261))
* Added x-response-name in EventTag ([#200](#200)) ([d2130a8](d2130a8))
* Build issues with CPP Manage SDK ([#203](#203)) ([e06f6e2](e06f6e2))
* Manually update version to 3.1.0-next.1 ([#204](#204)) ([699fd65](699fd65))
* Resolve conflicts ([adf6762](adf6762))
* SchemasMatch handling null ([#199](#199)) ([07c47db](07c47db))

* Integration of CPPSDK support (#176) ([89294cc](89294cc)), closes [#176](#176) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#127](#127) [#137](#137) [#135](#135) [#134](#134) [#136](#136) [#139](#139) [#138](#138) [#140](#140) [#142](#142) [#144](#144) [#145](#145) [#141](#141) [#149](#149) [#150](#150) [#152](#152) [#151](#151) [#153](#153) [#154](#154) [#156](#156) [#157](#157) [#158](#158) [#160](#160) [#159](#159) [#161](#161) [#163](#163) [#164](#164) [#165](#165) [#167](#167) [#169](#169) [#171](#171) [#173](#173) [#172](#172) [#170](#170)

### Features

* App Pass-through ([#188](#188)) ([83fa0fc](83fa0fc))
* CI/CD Merging from next ([#183](#183)) ([14476a9](14476a9))
* CPP App-Passthrough ([#196](#196)) ([eeabccb](eeabccb))

### BREAKING CHANGES

* Generalized templating engine to support both JavaScript and CPP (and other languages).

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors
kschrief pushed a commit that referenced this pull request Aug 8, 2024
# [3.0.0](v2.3.0...v3.0.0) (2024-08-08)

### Bug Fixes

* Account for new OpenRPC spec URL contents ([#186](#186)) ([66bd6ac](66bd6ac))
* Added CPP Event prioritization ([#197](#197)) ([11d25e9](11d25e9))
* Added firebolt header to the call-metrics ([#201](#201)) ([1b3f261](1b3f261))
* Added x-response-name in EventTag ([#200](#200)) ([d2130a8](d2130a8))
* Build issues with CPP Manage SDK ([#203](#203)) ([e06f6e2](e06f6e2))
* Manually create 3.1.0-next.2 ([f9c2c3c](f9c2c3c))
* Manually update version to 3.1.0-next.1 ([#204](#204)) ([699fd65](699fd65))
* Resolve conflicts ([adf6762](adf6762))
* SchemasMatch handling null ([#199](#199)) ([07c47db](07c47db))

* Integration of CPPSDK support (#176) ([89294cc](89294cc)), closes [#176](#176) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#127](#127) [#137](#137) [#135](#135) [#134](#134) [#136](#136) [#139](#139) [#138](#138) [#140](#140) [#142](#142) [#144](#144) [#145](#145) [#141](#141) [#149](#149) [#150](#150) [#152](#152) [#151](#151) [#153](#153) [#154](#154) [#156](#156) [#157](#157) [#158](#158) [#160](#160) [#159](#159) [#161](#161) [#163](#163) [#164](#164) [#165](#165) [#167](#167) [#169](#169) [#171](#171) [#173](#173) [#172](#172) [#170](#170)

### Features

* App Pass-through ([#188](#188)) ([83fa0fc](83fa0fc))
* CI/CD Merging from next ([#183](#183)) ([14476a9](14476a9))
* CPP App-Passthrough ([#196](#196)) ([eeabccb](eeabccb))

### BREAKING CHANGES

* Generalized templating engine to support both JavaScript and CPP (and other languages).

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors
kschrief pushed a commit that referenced this pull request Aug 8, 2024
# [3.0.0](v2.3.0...v3.0.0) (2024-08-08)

### Bug Fixes

* Account for new OpenRPC spec URL contents ([#186](#186)) ([66bd6ac](66bd6ac))
* Added CPP Event prioritization ([#197](#197)) ([11d25e9](11d25e9))
* Added firebolt header to the call-metrics ([#201](#201)) ([1b3f261](1b3f261))
* Added x-response-name in EventTag ([#200](#200)) ([d2130a8](d2130a8))
* Build issues with CPP Manage SDK ([#203](#203)) ([e06f6e2](e06f6e2))
* Manually create 3.1.0-next.2 ([f9c2c3c](f9c2c3c))
* Manually release 3.1.0-next.3 ([e8b0075](e8b0075))
* Manually update version to 3.1.0-next.1 ([#204](#204)) ([699fd65](699fd65))
* Resolve conflicts ([adf6762](adf6762))
* SchemasMatch handling null ([#199](#199)) ([07c47db](07c47db))

* Integration of CPPSDK support (#176) ([89294cc](89294cc)), closes [#176](#176) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#90](#90) [#93](#93) [#94](#94) [#96](#96) [#97](#97) [#100](#100) [#99](#99) [#101](#101) [#102](#102) [#107](#107) [#106](#106) [#105](#105) [#103](#103) [#109](#109) [#112](#112) [#111](#111) [#113](#113) [#114](#114) [#115](#115) [#110](#110) [#117](#117) [#116](#116) [#118](#118) [#121](#121) [#119](#119) [#127](#127) [#137](#137) [#135](#135) [#134](#134) [#136](#136) [#139](#139) [#138](#138) [#140](#140) [#142](#142) [#144](#144) [#145](#145) [#141](#141) [#149](#149) [#150](#150) [#152](#152) [#151](#151) [#153](#153) [#154](#154) [#156](#156) [#157](#157) [#158](#158) [#160](#160) [#159](#159) [#161](#161) [#163](#163) [#164](#164) [#165](#165) [#167](#167) [#169](#169) [#171](#171) [#173](#173) [#172](#172) [#170](#170)

### Features

* App Pass-through ([#188](#188)) ([83fa0fc](83fa0fc))
* CI/CD Merging from next ([#183](#183)) ([14476a9](14476a9))
* CPP App-Passthrough ([#196](#196)) ([eeabccb](eeabccb))

### BREAKING CHANGES

* Generalized templating engine to support both JavaScript and CPP (and other languages).

* chore: Copy JS templates to C and create language.config.json

* feat(languages): Add support for a distinct JSON-type for each schema

Also started tweaking C templates and adding a few useful macros.

* chore: Dropped debug logs

* fix: Stop passing non-schemas in to getSchemaType

* feat(accessors): New macro section for schema property accessors
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants