maxmind / GeoIP2-php

PHP API for GeoIP2 webservice client and database reader
https://maxmind.github.io/GeoIP2-php/
Apache License 2.0
2.33k stars 276 forks source link

Remove Guzzle dependency #37

Closed gjuric closed 9 years ago

gjuric commented 9 years ago

Please remove the Guzzle library as a dependency.

Having Guzzle as a dependency clashes with the projects already using an another version of Guzzle.

It can be added as a recommendation for people who want to use the web services.

oschwald commented 9 years ago

We cannot remove the Guzzle dependency as this would break existing installations. At some point we may replace our use of Guzzle completely, but that is not currently in the works.

Out of curiosity, what version of Guzzle does the existing dependency clash with? As far as I know, newer Guzzle versions (4 & 5) use a different namespace and do not conflict. Any 3.x version satisfies our dependency so different versions of that do not conflict either.

gjuric commented 9 years ago

You are right.

First I tested it on an empty project and saw Guzzle 3.x and was sure this was not going to work when I try to add it to the project where I am running Guzzle 5.

Still, it feels dirty to bring in dependencies that are not actuall dependencies.

oschwald commented 9 years ago

It is an actual dependency of the package. It is just not a dependency of the part of the package you are using. We could split the package into three packages (web service, database, and model classes), but that would introduce a lot of overhead for such a small distribution.