Skip to content

Python generator produces unnecessary imports to __init__.py #18144

@fingon

Description

@fingon

Is your feature request related to a problem? Please describe.

In Python, speed of imports of larger codebases is quite crucial. Therefore, minimising the number of imports makes sense. Currently the generated Python code includes every sub-module in the __init__.py (for both main module, as well as api/ and models/) sub directories).

Describe the solution you'd like

The extra imports should be an option (if we want to be backwards compatible, by default on).

Describe alternatives you've considered

My current alternative is horrifying - post-processor step which does:

	echo > X/openapi_client/__init__.py
	echo > X/openapi_client/api/__init__.py
	echo > X/openapi_client/models/__init__.py

(where X is where I'm generating them)

Additional context

By doing ^ the import speed for tools which e.g. import ApiClient and use only one API over doubled. This is for project with few api/models to boot - with more, it gets even faster (in relation).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions