You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.
Currently, when a downstream consumer calls find_package(Thrust ...) and passes an explicit version, we handle version compatibility as follows:
If EXACT version matching is requested, all four version components (X.Y.Z.W) must match.
Otherwise, only the first three components (X.Y.Z) must match.
Our contributor guide specifies that Thrust will follow semantic versioning, and as such the above scheme is too restrictive. According to our stated rules for version increases, I propose moving to the following scheme:
If EXACT version matching is requested, X.Y.Z.W must match.
Otherwise, only X must match, and the package's X.Y.Z.W must be >= the requested X.Y.Z.W.
Thanks for taking up my comment. Just FWIW, as long as you're expecting that the cmake config stuff is still settling down, I think it's reasonable to enforce the stricter compatibility requirements.
The nice thing is that you can make the decision when 1.11.0 (or 1.10.1) is released -- if the config is compatible you can allow find_package(Thrust 1.10.0) to accept 1.11.0 by means of the config you distribute with the latter.
Currently, when a downstream consumer calls
find_package(Thrust ...)
and passes an explicit version, we handle version compatibility as follows:EXACT
version matching is requested, all four version components (X.Y.Z.W) must match.Our contributor guide specifies that Thrust will follow semantic versioning, and as such the above scheme is too restrictive. According to our stated rules for version increases, I propose moving to the following scheme:
EXACT
version matching is requested, X.Y.Z.W must match.Thanks to @germasch to pointing this out here.
Refs:
find_package
version lookup docsThe text was updated successfully, but these errors were encountered: