Since third-party dependencies get automatically updated to the latest version, there will be times when an unintended bug introduced in a third-party dependency will break your app.
It’d be really nice if we could specify the version of the third-party dependency we wanted to use. That way we could evaluate the update in a dev/test branch to ensure nothing breaks because of the update, then update the production branch to use it.
Right now we could maintain our own copy of the third-party dependency to ensure we didn’t automatically get the latest version, but it doesn’t look like we can update it for a dev/test branch only to test the integration before rolling it out.
We’re now halfway there, you can now specify the exact version of a third-party dependency, but it’s still global. So you can prevent a third-party dependency change from breaking your app unexpectedly, but the upgrade path would require a clone of your app to use for testing.
It’s not global.
If you switch branch, change the version you depend on, then switch back to the other branch you’ll see that each branch will depend on a different version of the dependency
So no need to create a clone for testing.