Skip to content

Implement detection rules for adding / removing x-nullable attribute #22

@macisamuele

Description

@macisamuele

Changing the nullability of an object or property might lead to backward incompatible specs.

For easier understanding we can use the following example

definitions:
  model:
    type: object
    x-model: Model
    properties:
      prop:
        type: string

with the above example we should consider {"prop": "a"} or {} as valid Model and {"prop": null} as invalid.
But adding x-model: true into prop property it makes {"prop": null} a valid Model.

This change is:

  • backward compatible if the object is used in requests parameters, as old clients would continue to send Model instances
  • backward incompatible if the object is used in responses, as old clients might start receiving null values which were not supposed to receive

The objective of this issue is to track the implementation of two complementary rules

  • add x-nullable into response models
  • removing x-nullable from request models

Internal reference: CORESERV-9265

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions