singer-io / tap-postgres

tap-postgres
GNU Affero General Public License v3.0
67 stars 63 forks source link

tap-postgres incompatible with singer-target-postgres #99

Open brian-bk opened 3 years ago

brian-bk commented 3 years ago

This is a pretty annoying aspect between packages maintained between singer-io and datamill-co orgs. This project seems to be the more out-of-date one.

Compare this project (tap-postgres): https://github.com/singer-io/tap-postgres/blob/e990e88e4c41720e982c49f77dee8fc6149124de/setup.py#L13

to the datamill maintained project (singer-target-postgres): setup.py link which contains

        'psycopg2==2.8.5',

This makes it impossible to install both tap-postgres and singer-target-postgres in the same python environment.

Another side-issue is in the singer docs page for the target, it recommends installing target-postgresql, which does not exist on pypi. There's a package target-postgres maintained by statsbot but the docs link to datamill's maintained project singer-target-postgres. It's a bit risky to not reference a clear package.

astrojuanlu commented 2 years ago

From the Singer FAQ:

https://github.com/singer-io/getting-started/blob/master/docs/FAQ.md#how-do-i-prevent-dependency-conflicts-between-my-tap-and-target

To prevent conflicts, we recommend running taps and targets in separate virtual environments. That helps isolate the dependencies for each. See instructions for doing this here.

I believe taps and targets are not meant to be installed in the same environment.