Skip to content

Make fastapi dependency optional [QUESTION FOR ALL] #330

Open
@dariogoetz

Description

@dariogoetz

Describe why it is important and where it will be useful

The fastapi dependency is only necessary when implementing an "app", i.e. using NextCloudApp or AsyncNextCloudApp. If one is only interested in using the nextcloud API, i.e. NextCloud and AsyncNextCloud, the fastapi dependency is simply "dead weight" (in my specific case, it generated a version conflict because I need to use an older version of fastapi for some reason).

Describe your proposed solution

Is it possible to make fastapi an optional dependency for the app option? This would, however, probably entail moving the NextCloudApp and AsyncNextCloudApp into the ex_app package (which is a breaking change...?).

It would probably also mean that the whole ex_app package could be imported "optionally" (guarded with a try...except block similarly to the uvicorn import in the ex_app.uvicorn_fastapi module).

Describe alternatives you've considered, if relevant

No response

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions