- update Golang template, so that the builder pattern is supported
- update Dockerfile to add 'validateSchemas' script
- add 'validateSchemas' script, to check for JSON issues in schemas
- add 'getProperty' function to modelFuncs
- add additional functions to modelFuncs
- fix error with black- and white-lists in mixed usage scenarios of config files and commandline switches
- Handle arrays of DictionaryType in javaFuncs.getJavaType()
- Introduce 'format' attribute to StringType
- Introduce new (non-standard) formats to the IntType
- fix error where constraints for int types where not handled for arrays
- introduce switch
ignoreXref
to exclude pure x-ref types from loading
master
- enable http/s sources for templates
- enable http/s sources for models
- add additional functions to modelFuncs
- fix random date generation in a way, that it produces ISO strings
- improve the python bean template
- fix complex value type issue for dictionaries (issue139)
- prevent empty output from random genenrated data
- add missing file to docker image
- fix error with wrong array sizes for random data, when defaultConfig.defaultElemCount is set
- fix error in random array handling
- fix error in handling of random dates
- increment defaultTypeDepth for random data generation
- improved GO template
- introduce
allTypes
switch tocreateRandomData.py
- add missing
createRandomData
andrandomDataServer
scripts to the docker image - fix random data issues for uuids and enum types
- fix bug in golang template
- remove RandomDataGenerator from config and implementation
- add
createRandomData.py
script to create random data - add
randomDataServer.py
script to deliver random data over http
- add command line switches for better handling of Dictionary- and ArrayTypes
- improve plantuml template
- improve top level type detection - even in an non performant way xD
- fix bug for dictionaries in models that contains arrays as value
- CI fixes
- fix bug with not detected enum values, caused by a specific order of type declaration
- add file validation against a schema function to the package
- CI fixes
- fix bug with array constraints for nested arrays
- enable additional enum types: numeric, date, date-time, uuid, time
- fix nomalizeSchema bug for missing
- harden 'initFromDict' for non dictionary types
- add types with top-level '$ref' entry
- allow allOf for inner types
- removed AsyncApi PublishOperation type
- fix bugs in normalizeSchema
- introduce addtional switches for normalizeSchema
- fix bug in normalizeSchema
- bug fixes for parsing openapi files
- missing operationId doesn't hurt any longer
- add 'getTypeAndAllRelatedTypes' modelfunc
- tool to create normalized schemas
- fix error, that only the first tag with values is used
- add golang type template
- add modelFuncs func 'isComplexType'
- introduce ArrayType
- usage of top-level Array- and DictionaryTypes in the JSON schemas enabled
- Introduce Duration type
- modelFuncs: added function, which checks for property of type TimeType
- modelFuncs: added function where the target type can be provided as parameter.
- xsdFuncs: added handling for formats of IntegerType and NumberType
- xsdFuncs: added handling for ObjectType and BytesType
- javaFuncs: map array of ObjectType to java.util.List<Object>
- Added prefix to templateHelper.addLineBreakToDescription (and removed leading space from first line)
- Added TimeType to model
- Bugfix: update docker image to python:3.10-slim-buster
- Bugfix: read tags for enum types
- add additional commandline switch for domain black- and whitelists
- apply commandline black- and whitelists to the given configuration via file
- addes some convenience functions for Java templates
- add basic asyncapi support
- introduce config option and commandline switch for failing when there are not unique type names
- javaFuncs: added method to sanitize property named (class->clazz etc.) and another one to restore them at the end of the template
- javaFuncs: fixed typos
- javaFuncs: map to wrapper types Float and Long when applicable
- stringUtils: methods for converting snake_case to CamelCase
- modelFuncs: added some methods to work with the properties of a type (none recursive)
- Create missing directories for output files on singleFileGenerator
- add model
hasPropertyWithTag
- yacg commandline switch to protocol the codegen
- yacg commandline switch to skip codegen when model version hasn't change to the last protocolled run
- add typescript helper funcs
- enable plantuml template to visualize type and property tags
- introduce handling of multidimensional arrays
- fixed bug for x-enumValues
- add key related model funcs
- fix bug with 'additionalProperties'. From JSON schema specs this value can be boolean or object. The boolean version can't used before.
- add enum values
- add
doesTypeOrAttribContainsType
to modelFuncs
- extend x-ref/foreign key reference with a properties reference. Attention this may break some templates (e.g. plantUml)
- shows foreign key references in puml diagrams
- enable automatic releases with github actions
- enable http references in schemas
- fix 'allOf' bug in cases that a model is referenced multiple times
- add 'tasks' switch to yacg command line to include only named tasks in the codegen run
- add 'jobs' switch to yacg command line to include only named jobs in the codegen run
- add minLength, maxLength, pattern validation to StringType
- fix bug in calculating absolute filenames for referenced yaml files
- improve openApi templates
- model2yaml - remove alphabetical sorting of the output
- include also a latest container image into the CI
- move to GitHub container registry for publishing via CI
- improve Map handling in javaBeans template
- implement model support for dictionaries
- introduce pure object type
- improved Python object initialization - inspired by a contribution of Paul Way [https://github.com/PaulWay]
- fix bug when extracting formats for numbers and integers
- replace '__' prefix for custom extensions with 'x-' prefix
- add some modelFuncs to facilitate the usage of openApi models in templates
- fix a bug in handling single type models w/o any title
- put the new helper scripts to the docker image
- fix reference extentions to yaml or json depending the convertion
- modelToYaml script
- modelToJson script
- enable usage of stdin for modelTo[Json|Yaml] scripts
- rename ByteType to BytesType
- introduction of a ByteType
- add new funcs to stringUtils
- fix enum bug in python template
- add '--flattenInheritance' command line switch
- introduce 'yacgFlattenType' type tag
- introduce 'yacgIgnoreForModel' type tag
- add '--usedFilesOnly' command line switch
- add model version to complex types and enums
- add increment version script for json schemas
- mix in models given per cmd param into the file configuration
- bump dependency version
- add min/max handling for properties
- add original format string to the Properties type
- handle ordinal value in protobuf template
- enable generation of test data
- rename property attrib 'implicitRef' to 'foreignKey'
- introduce '__key' model extension, to mark properties as logical keys
- introduce '__visualKey' model extension, to mark properties as visual key (e.g. name, label, ...)
- add protobuffer template
- add ordinal attribute to complex type properties
- implement required constraint for model attributes
- add krakend example
- fix error in the javaFuncs helper
- extend internal model with minItems and maxItems restrictions for array properties
- extend internal model with uniqueItems for array properties
- improvements for the Java bean template
- include implicit references for properties
- fix error in initializing additional vars from command line
- fix error for usages of global command line give template parameters
Yacg docker images can run as normal user.
Enable config file customization via env variables or command line switches.