Skip to content

Test minimum dependency bounds - #103

Merged
ctrueden merged 1 commit into
mainfrom
test-minimum-dependencies
Oct 23, 2026
Merged

ctrueden merged 1 commit into
mainfrom
test-minimum-dependencies

Conversation

@gselzer

@gselzer gselzer commented May 6, 2026 •

Copy link
Copy Markdown
Contributor

It'd be great to verify that jgo works with all of the dependency versions it claims to support. Of course, testing all combinations is infeasible, but we could test other combinations (namely, the minimum bound, in addition to the maximum bounds currently tested)

Note that this PR adds in a number of dependency bounds, namely:

  • psutil>=1 - we just want a minimum bound, this one works despite being very old
  • All of the dev dependencies - I see no problem with restricting to the current maximum versions?

@ctrueden

ctrueden commented May 6, 2026

Copy link
Copy Markdown
Member

@gselzer Thanks! I took a look at the requests source code; it seems that 2.16.0 is the first version that removed the vendored packages/urllib3/packages/six.py. Setting that bound accordingly results in make test-lowest passing locally for me, so I'm going to see if it works on CI as well.

@gselzer

gselzer commented May 6, 2026

Copy link
Copy Markdown
Contributor Author

Thanks @ctrueden!

Looks like we'll need an even newer version of requests though? (Or, maybe better, a pin on a newer urllib)

@gselzer

gselzer commented May 6, 2026

Copy link
Copy Markdown
Contributor Author

How do you feel about the expansion of the matrix to test highest and lowest for both? We could exclude some of these tests if you'd like (I just wanted to get things working before I pruned them down)

@gselzer
gselzer force-pushed the test-minimum-dependencies branch 2 times, most recently from da52862 to 8df6bc7 Compare May 6, 2026 21:12
@gselzer
gselzer force-pushed the test-minimum-dependencies branch from 8df6bc7 to b49d22d Compare May 19, 2026 16:37
@gselzer gselzer mentioned this pull request May 19, 2026
@ctrueden
ctrueden force-pushed the test-minimum-dependencies branch 2 times, most recently from a4c79d0 to f9f4858 Compare October 23, 2026 20:55
Add CI jobs that resolve direct dependencies to their declared lower
bounds (UV_RESOLUTION=lowest-direct) on Python 3.10 across all three
OSes, plus a `make test-lowest` target to do the same locally. Those
jobs skip linting, since linting with the oldest dev tools says nothing
about jgo's own bounds. Disable fail-fast so that one failing job (e.g.
a network flake) does not cancel the others.

Raise lower bounds to versions that actually pass:
- psutil>=7
- requests>=2.30.0 (first version supporting urllib3 2)
- rich>=14.3.0 (14.2.0 renders table titles differently)

Dev tools also need floors, since lowest-direct applies to them too.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@ctrueden
ctrueden force-pushed the test-minimum-dependencies branch from f9f4858 to 10c335d Compare October 23, 2026 20:59
@ctrueden
ctrueden merged commit fbe2d10 into main Oct 23, 2026
9 checks passed
@ctrueden

Copy link
Copy Markdown
Member

@gselzer Thank you very much!

@ctrueden
ctrueden deleted the test-minimum-dependencies branch October 23, 2026 21:33
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.

2 participants