# PSA: Add Downgrade CI to Better Check Version Compatibility

**URL:** <https://discourse.julialang.org/t/psa-add-downgrade-ci-to-better-check-version-compatibility/110063>\
**Category:** Community\
**Tags:** package, package-manager, semver, versioning\
**Created:** [February 11, 2024, 12:56pm UTC](https://discourse.julialang.org/t/psa-add-downgrade-ci-to-better-check-version-compatibility/110063 "2024-02-11T12:56:01Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![aplavin](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/aplavin/32/222056_2.png) [@aplavin](https://discourse.julialang.org/u/aplavin)\
**Post date:** [February 11, 2024, 1:55pm UTC](https://discourse.julialang.org/t/psa-add-downgrade-ci-to-better-check-version-compatibility/110063/2 "2024-02-11T13:55:48Z")

</div>

Glad to finally see someone trying to popularize this kind of testing!

Multiple approaches for it were suggested in [another thread](https://discourse.julialang.org/t/project-toml-compat-best-practice-should-i-manually-remove-incompatible-old-dependency-versions/103530/9) last year.  
The one I put there ([oldnew\_compat.yml · GitHub](https://gist.github.com/aplavin/ec1024d00db6ebe8a7fa0a38aa8cca6c)) gives nicer reports:

- doesn’t even try testing unresolvable combinations, no point in doing that
- indicates which specific dependency downgrade breaks the tests and how:  
 ![image](https://global.discourse-cdn.com/julialang/original/3X/9/8/98a3f67cc94c5a2fd6e7a258c0d77a6902a7c415.png)  
each GH job can be clicked on.
- but is more expensive to run, does 2n tests – oldest/newest of each dep

So it can be applied to basically any package without fiddling with compats beforehand.

---

_[View the full topic](https://discourse.julialang.org/t/psa-add-downgrade-ci-to-better-check-version-compatibility/110063)._
