Skip to content

Latest commit

 

History

History
191 lines (150 loc) · 5.84 KB

CHANGELOG.rst

File metadata and controls

191 lines (150 loc) · 5.84 KB

5.0.2

  • Fixed parameters with dots in py client (#145)

5.0.1

  • Checked that description is an Array/Object first (#141)

5.0.0

  • Added support for Python 3.9 and 3.10 (#136)
  • Upgraded to jinja2 >=3 (#137)
  • Fixed endless loops due to recursive definitions (#131)
  • Added quotes to type annotations in py client (#130)

Breaking change

  • We had to drop the support for Python 3.6 since jinja2 >= 3 does not support it anymore.

4.1.1

  • Supported Any type value (i.e. empty type) (#126)
  • Removed support for Python 3.5 (#127)

4.1.0

  • Propagated produces and consumes (#123)
  • Fixed handling of spaces in names in py client (#122)
  • Made allOf imply the type "object" (#119)
  • Handled allOf (#116)
  • Made format optional (#115)
  • Escaped operation IDs for valid Elm identifiers (#113)
  • Assumed type object if properties (#112)
  • Fixed line number while parsing Swagger spec (#110)
  • Support common parameters in a path (#103)
  • Added JSON schema validation before parsing (#102)
  • Fixed bin scripts not executing under Unix (#101)

4.0.1

  • made py_client use get for optionals so that None values are treated as unspecified
  • made py_client accept custom requests.Session object
  • fixed py_client for operation IDs with dashes

4.0.0

Breaking change:

  • made py-client give back streams on file responses

Non-breaking changes:

  • added support for empty schema type (i.e. arbitrary type)
  • added boolean argument support in go-server
  • added "generated code" comment based on official format of golang
  • fixed indent of structs in go-server

3.1.4

  • fixed JSON pointer representation.
  • tested against multiple Python version (3.5, 3.6, 3.7 and 3.8).
  • upgraded mypy to 0.782 and pylint to 2.5.3 and fixed the resulting issues.

3.1.3

  • made py-client more robust to parameter names (e.g., those with non-letter prefix or suffix such as _fields)

3.1.2

  • fixed a bug when generating python code for a request which does not provide any parameters. From now on, authentication is provided in such requests.

3.1.1

  • swagger-style exempts descriptions of responses to start with a verb. This is necessary since certain clients produce illegible descriptions in their code (e.g., Python client).

3.1.0

  • swagger-to-go-server and py-client support header parameters.
  • swagger-to-go-server and py-client resolve parameter name conflicts by prefixing.
  • swagger-to-py-client stringifies primitive parameters with json.dumps when passing them in headers, queries and form data.
  • Endpoint paths are escaped in documentation generated by swagger-to-elm-client.

3.0.1

  • Added new line before :return: in swagger-to-py-client.
  • swagger-to-py-client capitalizes the first letter of class and request function docstrings, respectively.
  • Stripped trailing white spaces in swagger-to-go-server and py-client templates.
  • Added date-time test case for swagger-to-go-server and py-client.
  • Fixed contract violation in go server due to one-line imports ending in a superfluous new line.

3.0.0

The major change is:

  • Made all functions protected in the modules responsible for code generation.

    This impacts only the users which used swagger-to as a library. This change does not affect users which use swagger-to only as CLI.

The minor changes are:

  • Rewritten go-server and py-client generation with jinja2 template engine.

    The generated code is semantically equal to the previous version, but a bit more readable and easier to diff since we enforce now the line width of 100 columns and split argument lists into multiple lines.

  • swagger-to-py-client includes a response description in the docstring of the request function.

  • Refactored tests into a hierarchy of test case directories

  • Added test cases with files, empty objects and objects with optional fields to swagger-to-py-client and go-server.

2.4.0

  • swagger-to-elm-client ignores formData parameters gracefully
  • Added no_samples flag to swagger-to-elm-client and swagger-to-go-server to avoid generating sample files.

2.3.0

  • swagger-to-elm-client allows non-JSON endpoints
  • swagger-to-elm-client uses standard library for encoding URLs

2.2.4

  • swagger-to-py-client sets the correct type for the optional properties to make the generated code compliant with mypy 0.630

2.2.3

  • Fixed swagger-to-py-client to include suffixes in the names of intermediate representations of the optional properties in X_from_obj

2.2.2

  • swagger-to-py-client suffixes values parsed from an object to avoid conflicts with path field
  • swagger-to-py-client adds type assertions to make the generated code compliant with mypy 0.630

2.2.1

  • Fixed that anonymous types of body parameters are named in intermediate representation.

2.2.0

  • Added options to style checks to include line numbers of failed checks and verbose error messages.
  • Added tests for comparing the output of all generation scripts against expected values.

2.1.0

  • Added a script to generate Elm client code.
  • Added a script to check Swagger files for style (descriptions, definition names, property names).

2.0.2

  • Moved to github.com.
  • Added py.typed to comply with mypy.

2.0.1

  • Swagger-to-python-client generates the code conform to PEP 257.

2.0.0

  • Added swagger-to-elm-client.
  • Renamed x-pqry-no-go to x-swagger-to-skip.
  • Fixed error messages in Python client copy/pasted from Typsecript client.

1.1.1

  • Default parameters values explicitly not supported.

1.1.0

  • Swagger-to-go-server does not generate code to extract the parameters from form data.

1.0.2

  • Added more related projects to the Readme.

1.0.1

  • Changed the copyright to Parquery from Marko Ristin (mistake in the initial version).
  • Added versioning description to Readme.

1.0.0

  • Initial version.