Skip to content

Set minimum supported versions for docassemble.base and webapp.#975

Merged
BryceStevenWilley merged 1 commit into
mainfrom
fix_da_version_limits
May 18, 2026
Merged

Set minimum supported versions for docassemble.base and webapp.#975
BryceStevenWilley merged 1 commit into
mainfrom
fix_da_version_limits

Conversation

@BryceStevenWilley

Copy link
Copy Markdown
Contributor

TL;DR: uv tries to do the right thing and avoid a conflict between boto3's deps and docassemble's overly strict deps. This prevents that from breaking things.

The docassemble.base and webapp versions are only used for testing, as all other times, we're installing this package on a server that has a fixed docassemble version.

When using uv to install all of the group dependencies, it will check all of the dependencies down the tree. With docassemble 1.9.11 (and 1.9.12 too), it directly has a dependency on s3transfer 0.16.0. However, it also has a dependency on boto3 1.42.17, which directly depends on s3transfer 0.17.0 (https://github.com/boto/boto3/blob/df96d6dc6d8faca315b905732bdcb89eeb0a252c/setup.py#L19). uv correctly recognizes this as a conflict, and since we don't have a lower limit on the version of docassemble we work with, it tries a slightly older version of docassemble. In short, for some reeason or another, there are dependency conflicts with all versions of docassemble, going all the way back to v 0.4.47. However, that version uses six as a dependency, but doesn't declare it, so the tests error out.

If instead, we give a lower limit of the docassemble version we should work with, uv finds that there's always a dependency error, and just uses the latest version available (1.9.11). Not sure why it doesn't make the error clearer, but idk.

Should fix the job failing in #974.

@BryceStevenWilley BryceStevenWilley self-assigned this May 18, 2026
TL;DR: uv tries to do the right thing and avoid a conflict between
boto3's deps and docassemble's overly strict deps. This prevents that
from breaking things.

The docassemble.base and webapp versions are only used for testing,
as all other times, we're installing this package on a server that has
a fixed docassemble version.

When using `uv` to install all of the group dependencies, it will
check all of the dependencies down the tree. With docassemble 1.9.11
(and 1.9.12 too), it directly has a dependency on s3transfer 0.16.0.
However, it also has a dependency on boto3 1.42.17, which directly
depends on s3transfer 0.17.0 (https://github.com/boto/boto3/blob/df96d6dc6d8faca315b905732bdcb89eeb0a252c/setup.py#L19).
uv correctly recognizes this as a conflict, and since we don't have
a lower limit on the version of docassemble we work with, it tries
a slightly older version of docassemble. In short, for some reeason
or another, there are dependency conflicts with all versions of
docassemble, going all the way back to v 0.4.47. However, that version
uses `six` as a dependency, but doesn't declare it, so the tests error
out.

If instead, we give a lower limit of the docassemble version we should
work with, uv finds that there's always a dependency error, and just
uses the latest version available (1.9.11). Not sure why it doesn't
make the error clearer, but idk.
@BryceStevenWilley BryceStevenWilley merged commit 741936e into main May 18, 2026
7 checks passed
@BryceStevenWilley BryceStevenWilley deleted the fix_da_version_limits branch May 18, 2026 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant