I'm currently in a project which develops using a framework developed by another department as the base. We are currently introducing quality standards (at last, yay!) in our department, but it's currently impossible to introduce those to the other department. As a consequence, we are working against a constant moving target without either API stability or stable releases, which is stressful at the very least.
Since we are trying to fix things at our end first, we'd like to secure ourselves as far as it gets against changes in the "upstream" a.k.a. framework code. We'd envisioned hard module dependencies:
- Using only certain version ranges of framework modules, defined in code.
- Using a unit-test check to ensure that all necessary versions are still available.
- Every version range extension requiring peer-review of framework code.
That's the plan so far. Now the questions:
- Is it sensible? If not, any other ideas?
- How does one implement this in perl? Using
use Module
we can only define the lowest version code is supposed to work with.