Add support for controlling output of OpenAPI Generator version in generated files (#17952)

* add initial openapi config and java generated files

* add java implementation for adding generator version

* regenerate sample client files

* remove tabs

* only show generated version if build info exists

* set build info for batch generation

* update generator doc for new global flag

* use existing property for generator version

* update templates to include generator version

* update templates for better generator version syntax

* revert undesired changes

* regenerate samples for openapi client

* update templates to correct formatting/newlines

* correct description text and add to usage doc

* add generator cli option for all codegen types

* use more concise version info; update existing codegens to support new prop

* correct wrong prop reference

* add initial test coverage for new prop

* update last (scala) templates with new prop

* update samples after upstream merge

* use consistent version output

* use better sample project id/name

* revert using option for generator version in templates
This commit is contained in:
Ross Bender
2024-03-09 01:52:08 -06:00
committed by GitHub
parent c87ad561f1
commit cf2435f335
5612 changed files with 34853 additions and 5131 deletions

View File

@@ -17,7 +17,7 @@ import java.util.Optional;
import jakarta.annotation.Generated;
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public interface AnotherFakeApi {
/**

View File

@@ -27,7 +27,7 @@ import java.util.Optional;
import jakarta.annotation.Generated;
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public interface FakeApi {
/**

View File

@@ -17,7 +17,7 @@ import java.util.Optional;
import jakarta.annotation.Generated;
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public interface FakeClassnameTags123Api {
/**

View File

@@ -20,7 +20,7 @@ import java.util.Optional;
import jakarta.annotation.Generated;
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public interface PetApi {
/**

View File

@@ -18,7 +18,7 @@ import java.util.Optional;
import jakarta.annotation.Generated;
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public interface StoreApi {
/**

View File

@@ -18,7 +18,7 @@ import java.util.Optional;
import jakarta.annotation.Generated;
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public interface UserApi {
/**

View File

@@ -22,7 +22,7 @@ import com.fasterxml.jackson.annotation.JsonAnySetter;
*/
@JsonTypeName("AdditionalPropertiesAnyType")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AdditionalPropertiesAnyTypeDto {
private String name;

View File

@@ -23,7 +23,7 @@ import com.fasterxml.jackson.annotation.JsonAnySetter;
*/
@JsonTypeName("AdditionalPropertiesArray")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AdditionalPropertiesArrayDto {
private String name;

View File

@@ -22,7 +22,7 @@ import com.fasterxml.jackson.annotation.JsonAnySetter;
*/
@JsonTypeName("AdditionalPropertiesBoolean")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AdditionalPropertiesBooleanDto {
private String name;

View File

@@ -25,7 +25,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("AdditionalPropertiesClass")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AdditionalPropertiesClassDto {

View File

@@ -22,7 +22,7 @@ import com.fasterxml.jackson.annotation.JsonAnySetter;
*/
@JsonTypeName("AdditionalPropertiesInteger")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AdditionalPropertiesIntegerDto {
private String name;

View File

@@ -23,7 +23,7 @@ import com.fasterxml.jackson.annotation.JsonAnySetter;
*/
@JsonTypeName("AdditionalPropertiesNumber")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AdditionalPropertiesNumberDto {
private String name;

View File

@@ -23,7 +23,7 @@ import com.fasterxml.jackson.annotation.JsonAnySetter;
*/
@JsonTypeName("AdditionalPropertiesObject")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AdditionalPropertiesObjectDto {
private String name;

View File

@@ -22,7 +22,7 @@ import com.fasterxml.jackson.annotation.JsonAnySetter;
*/
@JsonTypeName("AdditionalPropertiesString")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AdditionalPropertiesStringDto {
private String name;

View File

@@ -31,7 +31,7 @@ import jakarta.annotation.Generated;
@JsonSubTypes.Type(value = DogDto.class, name = "Dog")
})
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class AnimalDto {
private String className;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("ApiResponse")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ApiResponseDto {
private Integer code;

View File

@@ -22,7 +22,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("ArrayOfArrayOfNumberOnly")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ArrayOfArrayOfNumberOnlyDto {

View File

@@ -22,7 +22,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("ArrayOfNumberOnly")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ArrayOfNumberOnlyDto {

View File

@@ -22,7 +22,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("ArrayTest")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ArrayTestDto {

View File

@@ -24,7 +24,7 @@ import jakarta.annotation.Generated;
@JsonTypeName("BigCat")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class BigCatDto extends CatDto {
/**

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Capitalization")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class CapitalizationDto {
private String smallCamel;

View File

@@ -30,7 +30,7 @@ import jakarta.annotation.Generated;
@JsonSubTypes.Type(value = BigCatDto.class, name = "BigCat")
})
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class CatDto extends AnimalDto {
private Boolean declawed;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Category")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class CategoryDto {
private Long id;

View File

@@ -26,7 +26,7 @@ import jakarta.annotation.Generated;
@JsonTypeName("ChildWithNullable")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ChildWithNullableDto extends ParentWithNullableDto {
private String otherProperty;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("ClassModel")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ClassModelDto {
private String propertyClass;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Client")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ClientDto {
private String client;

View File

@@ -23,7 +23,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("ContainerDefaultValue")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ContainerDefaultValueDto {

View File

@@ -23,7 +23,7 @@ import jakarta.annotation.Generated;
@JsonTypeName("Dog")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class DogDto extends AnimalDto {
private String breed;

View File

@@ -22,7 +22,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("EnumArrays")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class EnumArraysDto {
/**

View File

@@ -18,7 +18,7 @@ import com.fasterxml.jackson.annotation.JsonValue;
* Gets or Sets EnumClass
*/
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public enum EnumClassDto {
_ABC("_abc"),

View File

@@ -20,7 +20,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Enum_Test")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class EnumTestDto {
/**

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("File")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class FileDto {
private String sourceURI;

View File

@@ -22,7 +22,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("FileSchemaTestClass")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class FileSchemaTestClassDto {
private FileDto file;

View File

@@ -24,7 +24,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("format_test")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class FormatTestDto {
private Integer integer;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("hasOnlyReadOnly")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class HasOnlyReadOnlyDto {
private String bar;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("List")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ListDto {
private String _123list;

View File

@@ -21,7 +21,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("MapTest")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class MapTestDto {

View File

@@ -24,7 +24,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("MixedPropertiesAndAdditionalPropertiesClass")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class MixedPropertiesAndAdditionalPropertiesClassDto {
private UUID uuid;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("200_response")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class Model200ResponseDto {
private Integer name;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Name")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class NameDto {
private Integer name;

View File

@@ -23,7 +23,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("NullableMapProperty")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class NullableMapPropertyDto {

View File

@@ -19,7 +19,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("NumberOnly")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class NumberOnlyDto {
private BigDecimal justNumber;

View File

@@ -21,7 +21,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Order")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class OrderDto {
private Long id;

View File

@@ -19,7 +19,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("OuterComposite")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class OuterCompositeDto {
private BigDecimal myNumber;

View File

@@ -18,7 +18,7 @@ import com.fasterxml.jackson.annotation.JsonValue;
* Gets or Sets OuterEnum
*/
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public enum OuterEnumDto {
PLACED("placed"),

View File

@@ -33,7 +33,7 @@ import jakarta.annotation.Generated;
@JsonSubTypes.Type(value = ChildWithNullableDto.class, name = "ChildWithNullable")
})
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ParentWithNullableDto {
/**

View File

@@ -27,7 +27,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Pet")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class PetDto {
private Long id;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("ReadOnlyFirst")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ReadOnlyFirstDto {
private String bar;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("ResponseObjectWithDifferentFieldNames")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ResponseObjectWithDifferentFieldNamesDto {
private String normalPropertyName;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Return")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class ReturnDto {
private Integer _return;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("_special_model.name_")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class SpecialModelNameDto {
private Long $specialPropertyName;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("Tag")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class TagDto {
private Long id;

View File

@@ -22,7 +22,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("TypeHolderDefault")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class TypeHolderDefaultDto {
private String stringItem = "what";

View File

@@ -22,7 +22,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("TypeHolderExample")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class TypeHolderExampleDto {
private String stringItem;

View File

@@ -18,7 +18,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("User")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class UserDto {
private Long id;

View File

@@ -22,7 +22,7 @@ import jakarta.annotation.Generated;
*/
@JsonTypeName("XmlItem")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen")
@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", comments = "Generator version: 7.4.0-SNAPSHOT")
public class XmlItemDto {
private String attributeString;