Golden Rule of Dependency Management

LMAX Exchange

There’s a huge amount of complaining and problem solving for various
dependency management solutions (particularly maven, but ivy and friends
certainly aren’t immune). Problems range from having optional
dependencies unnecessarily included  to having duplicate classes or
class conflicts and the solutions tend to be complex and involve a lot
of trade offs. All these problems stem from breaking the golden rule of
dependency management:

Own your own repository

Sutton’s golden rule of dependency management

The
vast majority, if not all, problems with dependency management comes
from having incorrect, conflicting or imprecise meta-data in the
repository of dependencies. Maintaining a public repository of perfectly
accurate, precise and flexible dependency metadata is next to
impossible there are just too many libraries and the
interrelationships are too complex. Fortunately, even extremely large
companies only use a tiny subset of these libraries. With the scope
reduced it’s much easier to ensure the metadata is correct and
consistent.

Any time you need to introduce a new dependency, very
carefully review the metadata associated it and correct any errors or
inconsistencies before importing it into the repository you administer
and control.

You don’t let anyone commit to your source code repository, don’t let anyone commit to your dependency repository either.

Any opinions, news, research, analyses, prices or other information ("information") contained on this Blog, constitutes marketing communication and it has not been prepared in accordance with legal requirements designed to promote the independence of investment research. Further, the information contained within this Blog does not contain (and should not be construed as containing) investment advice or an investment recommendation, or an offer of, or solicitation for, a transaction in any financial instrument. LMAX Group has not verified the accuracy or basis-in-fact of any claim or statement made by any third parties as comments for every Blog entry.

LMAX Group will not accept liability for any loss or damage, including without limitation to, any loss of profit, which may arise directly or indirectly from use of or reliance on such information. No representation or warranty is given as to the accuracy or completeness of the above information. While the produced information was obtained from sources deemed to be reliable, LMAX Group does not provide any guarantees about the reliability of such sources. Consequently any person acting on it does so entirely at his or her own risk. It is not a place to slander, use unacceptable language or to promote LMAX Group or any other FX and CFD provider and any such postings, excessive or unjust comments and attacks will not be allowed and will be removed from the site immediately.