dlt-hub / dlt-hub/dlt-init-openapi

Update dependencies to make dlt-init-openapi compatible with dlt versions >= 0.5.1 (preferably >= 1.2.0)

Open
#127 3 comments 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
39
Forks
8
PR merge metrics
No merged PRs in 30d

Description

When using poetry, I run into dependency conflicts if I want to use the more recent stable versions of dlt. I would like to use the filesystem and Snowflake destinations with dlt-init-openapi and the rest_api source. This is preventing my team from adopting dlt.

Steps to reproduce:

My `pyproject.toml` file initially looks like this:
```
[tool.poetry.dependencies]
python = ">=3.11,<3.13"
```

Running `poetry add dlt; poetry add dlt-init-openapi;` results in the following dependency conflict:
```
Because no versions of dlt match >0.4.12,<0.4.13a0 || >0.4.13a0,<0.5.0
and dlt (0.4.13a0) depends on dlt (0.4.13a0), dlt (>0.4.12,<0.5.0) requires dlt (0.4.13a0).
And because dlt (0.4.12) depends on dlt (0.4.12), dlt (>=0.4.12,<0.5.0) requires dlt (0.4.12 || 0.4.13a0).
Because no versions of dlt-init-openapi match >0.1.0,<0.2.0
and dlt-init-openapi (0.1.0) depends on dlt (>=0.4.12,<0.5.0), dlt-init-openapi (>=0.1.0,<0.2.0) requires dlt (>=0.4.12,<0.5.0).
Thus, dlt-init-openapi (>=0.1.0,<0.2.0) requires dlt (0.4.12 || 0.4.13a0).
So, because depends on both dlt (^1.2.0) and dlt-init-openapi (^0.1.0), version solving failed.
```

After pinning the `dlt` version to `0.4.12`, I can successfully add `dlt-init-openapi` as a dependency. However, if I try to initialize a simple pipeline using `dlt init chess snowflake`, the console warns me about my dlt installation needing to be updated:
```
WARNING: This pipeline requires a newer version of dlt than your installed version (0.4.12). Pipeline requires 'dlt>=0.5.1'
```
I receive a similar warning if I change the destination to `filesystem` or the source to `rest_api`.

However, if I try to pin the dlt version to `0.5.1` with `poetry add dlt==0.5.1`, I again get a dependency conflict:
```
Because no versions of dlt match >0.4.12,<0.4.13a0 || >0.4.13a0,<0.5.0
and dlt (0.4.13a0) depends on dlt (0.4.13a0), dlt (>0.4.12,<0.5.0) requires dlt (0.4.13a0).
And because dlt (0.4.12) depends on dlt (0.4.12), dlt (>=0.4.12,<0.5.0) requires dlt (0.4.12 || 0.4.13a0).
Because no versions of dlt-init-openapi match >0.1.0,<0.2.0
and dlt-init-openapi (0.1.0) depends on dlt (>=0.4.12,<0.5.0), dlt-init-openapi (>=0.1.0,<0.2.0) requires dlt (>=0.4.12,<0.5.0).
Thus, dlt-init-openapi (>=0.1.0,<0.2.0) requires dlt (0.4.12 || 0.4.13a0).
So, because depends on both dlt-init-openapi (^0.1.0) and dlt (0.5.1), version solving failed.
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.