Open jonschumacher opened 8 months ago
If we go down that road, why stop at checking the Julia version? If A depends on B 1.0 and C 1.0; but B depends on C 1.1, then that could also warrant a warning.
I think that this is not a future-proof way to do things.
Assume that A depends on julia 1.9 and B, and B depends on julia 1.10. You now suggest that A should update its compat bound to julia 1.10 as well. But my view is the following: If A does not use any features that are only available in 1.10 and later, the compat bound can stay at 1.9. If, in the future, B gets an update relaxing the required julia version to, say, 1.6, A would unnecessarily restrict users from using julia 1.9 (what would be fine according to everything earlier here).
So I am not a fan of this kind of test in Aqua.
Yes, that’s why I said that this could warrant a warning. As an option this could be changed to a strict mode that lets the test fail.
Since Aqua now tests for the definition of the Julia version (https://github.com/JuliaTesting/Aqua.jl/pull/236), it would make sense to check if dependencies at their respective defined compat have a higher Julia version compat than the tested package. In that case, the required Julia version would essentially be the one of the dependency with the highest Julia requirement which should trigger at least a warning.
I am not aware of easy API e.g. in Pkg for checking this but maybe I am missing something.