대부분의 패키지는 단일 버전 업그레이드만을 지원한다. 예를 들어 Elasticsearch는 5에서 6으로 업그레이드할 것을 가정하고 업그레이드 방법에 대한 가이드라인을 제공한다. 5에서 7로 업그레이드하기 위한 가이드라인은 존재하지 않는다. 각 업그레이드 단계를 개별적으로 적용해야 한다. 일부 업그레이드에서는 상당히 많은 코드를 수정해야 한다. Elasticsearch 7은 거의 처음부터 코드를 다시 작성해야 될 정도다.
코드를 변경하지 않고 안전하게 이전 버전을 유지하는 것이 좋을 수도 있지만, 어느 시점이 되면 이전 버전에 대한 지원은 끝나고 설명서와 예제 코드도 더 이상 유지되지 않는다. 사람들은 새로운 프로젝트를 시작할 때 최신 버전을 사용하기 때문에 스택 오버플로는 새로운 버전에 대한 답변으로 채워지게 된다. 이전 버전을 지원해주던 네트워크는 시간이 지남에 따라 약해진다. 이는 매년 패키지를 업그레이드하는 것을 더욱 어렵게 만들고, 우리를 절망으로 밀어넣는다.
이 문제에 대한 나의 해결책은 미래를 향한 경주에 동참하는 것이다. 즉, 라이브러리를 최신 상태로 유지하는 것이다. 라이브러리 업그레이드를 습관화하라. 이렇게 하면 코드에 가끔씩 문제가 생기고, 그 덕분에 코드의 어느 부분이 더 취약한지 알 수 있으며, 테스트의 범위를 추가할 수 있다.