
Your project's architecture has nothing to do with 3rd party major updates. v4 means 4.x.x, which means major version, which means a lot of breaking changes, which means there should be an upgrade guide. You also don't have to upgrade everything to latest version all the time, however, in ideal case, you should. That is part of the "maintenance".
When new major release is available and I make a decision to upgrade, I just follow the guide, search for occurrences in codebase and do refactoring wherever needed and if you have problems here...
Stop writing code in Notepad and have some tests.
Only if you want to use small own changes in the original 3rd party product, you either do a fork, or add additional abstraction layer between your main codebase and 3rd party product. In any decent framework you should be able to extend/inject/replace core components easily.
If you ever wondered how to pronounce software architecture, it is "changes af".