Skip to content

Conversation

@devhl-labs
Copy link
Contributor

@devhl-labs devhl-labs commented Jun 11, 2023

Adds x-nullable-value-type which is true if the isNullable == true and x-is-value-type == true
Adds x-nullable-type if nrt is on or if the object is a nullable value type.

Here is the documentation on nullable value types. The tldr is that a nullable value type is really a class of type Nullable<T> where T is a value type.
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/nullable-value-types

In another pr I plan on

  • removing the ? that is hard coded into data types
  • removing x-csharp-value-type
  • changing x-is-value-type to only return true for value types
  • removing nullableType
  • adding more value types to valueTypes

@mandrean (2017/08) @frankyjuang (2019/09) @shibayan (2020/02) @Blackclaws (2021/03) @lucamazzanti (2021/05)

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
    
    Commit all changed files.
    This is important, as CI jobs will verify all generator outputs of your HEAD commit as it would merge with master.
    These must match the expectations made by your contribution.
    You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example ./bin/generate-samples.sh bin/configs/java*.
    For Windows users, please run the script in Git BASH.
  • In case you are adding a new generator, run the following additional script :
    ./bin/utils/ensure-up-to-date
    
    Commit all changed files.
  • File the PR against the correct branch: master (6.3.0) (minor release - breaking changes with fallbacks), 7.0.x (breaking changes without fallbacks)
  • If your PR is targeting a particular programming language, @mention the technical committee members, so they are more likely to review the pull request.

@wing328
Copy link
Member

wing328 commented Jun 11, 2023

removing the ? that is hard coded into data types

i'm ok with that but previously some users want to have the ? hard coded as they don't want to add nullable to the schema definition one by one.

if that's still an use case, we can then add a rule in the openapi normalizer to add nullable: true to all schemas in the spec.

@devhl-labs
Copy link
Contributor Author

You're talking about whether isNullable is true. Removing the hard coded ? from the data type is not related. If anyone wants all schemas to be nullable then the normalizer seems like a good idea, though it kind of pains me that the spec is incorrect. This pr and the plan for the next should not really be related though.

@wing328 wing328 merged commit 3ea09c2 into OpenAPITools:master Jun 13, 2023
@wing328 wing328 added this to the 7.0.0 milestone Jun 13, 2023
@devhl-labs devhl-labs deleted the add-x-nullable-value-type branch June 13, 2023 12:04
fmoraespadtec pushed a commit to padteclab/openapi-generator that referenced this pull request Jun 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants