fix: remove upper bounds from runtime dependencies#132
Closed
stark256-spec wants to merge 3 commits into
Closed
Conversation
harmony-py is a library installed into user environments alongside other packages. Tight compatible-release pins like ~=1.1.0 (which resolves to >=1.1.0,<1.2) block installation whenever any other package in the environment requires a newer patch or minor release. This is a common source of dependency conflicts reported by users. Replace all ~= specifiers in [project.dependencies] with >= lower bounds, keeping only the minimum version that is known to work. The shapely <3 upper bound is also removed since no incompatibility with shapely 3.x has been identified. Fixes nasa#79
Member
|
I like this, but I'd like to make sure we're not going to run into any issues if we try to run with the latest versions available and keep up with that on a nightly basis. Can you make sure the build and tests actions run every night on this repo? |
Adds a cron schedule (02:00 UTC daily) alongside the existing push/PR triggers. This ensures the full test matrix runs against the latest available versions of all dependencies every night, consistent with the relaxed lower-bound pins introduced in this PR.
Author
|
Added a nightly cron schedule ( |
https://github.com/shapely/shapely/releases/tag/2.0.7 Fixes crash when reading nonlinear geometry types (CircularString, CompoundCurve, MultiCurve, CurvePolygon, MultiSurface) from WKB/WKT with GEOS >= 3.13; these types are not yet supported in Shapely and now raise a NotImplementedError
Member
|
This will keep your contribution but pull it into #133 |
Member
|
closing for parallel PR #133 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #79
Problem
All runtime dependencies in
pyproject.tomlused~=X.Y.Z(compatible release) pins, which Python resolves as>=X.Y.Z, <X.Y+1. For a library likeharmony-pythat is installed into user environments alongside other packages, this creates unnecessary dependency conflicts whenever any transitive dependency requires a newer minor version of the same package.Fix
Replace all
~=specifiers in[project.dependencies]with>=lower bounds, retaining only the minimum version known to work. Theshapely <3upper bound is also removed as no incompatibility with shapely 3.x has been identified.Dev and docs optional dependencies are left unchanged as those are developer-controlled environments where tighter pins are acceptable.
Test plan