Hello,
I find upgrading to 4.x quite challenging. Many dependencies still rely on Hackney versions prior to 4.x, which means we have to fork each of them, investigate exactly which parts of the old API they use, and migrate them to the new interface.
This is a significant backward compatibility break. It seems it could have been made much easier by providing a temporary hackney_old compatibility layer that emulates the previous API, allowing existing projects to migrate incrementally instead of requiring all dependent libraries to be updated at once.
There are probably thousands of projects on GitHub that depend on Hackney, and some of them have little or no ongoing maintenance. In those cases, users are effectively forced to fork the projects themselves just to make them compatible with Hackney 4.x, even if the libraries only use a small subset of the old API.
Silviu
Hello,
I find upgrading to 4.x quite challenging. Many dependencies still rely on Hackney versions prior to 4.x, which means we have to fork each of them, investigate exactly which parts of the old API they use, and migrate them to the new interface.
This is a significant backward compatibility break. It seems it could have been made much easier by providing a temporary
hackney_oldcompatibility layer that emulates the previous API, allowing existing projects to migrate incrementally instead of requiring all dependent libraries to be updated at once.There are probably thousands of projects on GitHub that depend on Hackney, and some of them have little or no ongoing maintenance. In those cases, users are effectively forced to fork the projects themselves just to make them compatible with Hackney 4.x, even if the libraries only use a small subset of the old API.
Silviu