It's been decided that we need to drop support for optional path parameters in our swagger specifications to become swagger spec compliant. That will allow us to drop Wikimedia [[ https://github.com/wikimedia/swagger-ui | swagger-ui fork ]] and switch to upstream UI. Additionally, we would be able to use new features of Swagger 3.
In case the service does not optional path parameters, the task is only about using new features of Swagger 3. In case optional parameters are used, each path should be split into several declarations with only required parameters. So,
should become 3 paths:
In order to minimize copy-pasting, it's would be preferred to use swagger 3 [[ https://swagger.io/docs/specification/components/ | components ]] feature or YAML references.
The resulting spec has to pass swagger spec validation.
[x] **service-template** - should be updated to depend on the upstream Swagger UI version.