Created by: UnsolvedCypher
This changes how x-enum-varnames behaves. Issue #3246 already describes the problem quite well, but to summarize, the current codegen just takes the value specified by x-enum-varnames and sets the enum variable name to it. This causes the generation of bad code when the specified name isn't a valid variable name, such as because it contains spaces. Additionally, different languages have different conventions for enum names, so for you may want Partly cloudy
to generate PARTLY_CLOUDY
in Java but PartyCloudy
in TypeScript.
This change now passes the user-specified name to the language-specific toEnumVarName
function for processing, so that the generated variable name is legal for the target language, and so that it conforms to language conventions or any other generator-specific settings that have been set. This is what issue #3246 refers to as "option 1" for a fix.
If there is any other information I can provide, please let me know
Fix #3246
PR checklist
-
Read the contribution guidelines. -
Pull Request title clearly describes the work in the pull request and Pull Request description provides details about how to validate the work. Missing information here may result in delayed response from the community. -
Run the following to build the project and update samples: ./mvnw clean package ./bin/generate-samples.sh ./bin/utils/export_docs_generators.sh
./bin/generate-samples.sh bin/configs/java*
. For Windows users, please run the script in Git BASH. -
File the PR against the correct branch: master
(5.3.0),6.0.x
-
If your PR is targeting a particular programming language, @mention the technical committee members, so they are more likely to review the pull request.