Relation between Garage PG and PGv2
Hi all, and Guille Polito in particular, I'm loading the Garage classes into Pharo 4, and I see the Garage-Postgres package "duplicates" the classes of the PostgresV2 package, but instead of using the PG prefix, it uses the GA prefix. This is in particular with the case of Garage-Postgres-Protocol package. Why is it so? Because even GAConnection>>#buildDefaultConnectionArgs (which is a replica of PGConnection) references PGConnectionArgs instead of GAConnectionArgs, which is the replica of the first. QUESTION: Isn't Garage a "common API" for the *existing* drivers? (like a common wrapper), and if so it delegates the protocol handling to the real driver? In the PostgresV2 package in this case, to PG prefixed classes. Regards! Esteban A. Maringolo
Hi Esteban, we noticed the same "copy reuse" issue with NBSQlite. See this thread: http://forum.world.st/Garage-and-SQLite-file-databases-general-project-struc... which ended up in a different discussion on URLs. I did not really understood but had not time to look deeper and reproduce Guilles arguments clearly. Thanks T.  Gesendet: Montag, 12. Oktober 2015 um 16:57 Uhr Von: "Esteban A. Maringolo" <emaringolo@gmail.com> An: "Pharo Developers" <pharo-dev@lists.pharo.org> Betreff: [Pharo-dev] Relation between Garage PG and PGv2 Hi all, and Guille Polito in particular,  I'm loading the Garage classes into Pharo 4, and I see the Garage-Postgres package "duplicates" the classes of the PostgresV2 package, but instead of using the PG prefix, it uses the GA prefix. This is in particular with the case of Garage-Postgres-Protocol package.  Why is it so?  Because even GAConnection>>#buildDefaultConnectionArgs (which is a replica of PGConnection) references PGConnectionArgs instead of GAConnectionArgs, which is the replica of the first.  QUESTION: Isn't Garage a "common API" for the *existing* drivers? (like a common wrapper), and if so it delegates the protocol handling to the real driver? In the PostgresV2 package in this case, to PG prefixed classes.  Regards!   Esteban A. Maringolo
2015-10-12 14:05 GMT-03:00 Torsten Bergmann <astares@gmx.de>:
Hi Esteban,
we noticed the same "copy reuse" issue with NBSQlite.
See this thread: http://forum.world.st/Garage-and-SQLite-file-databases-general-project-struc...
which ended up in a different discussion on URLs. I did not really understood but had not time to look deeper and reproduce Guilles arguments clearly.
Yeap, I remember seeing such discussion. But I got on it when it was a discussion about URLs, didn't see the part of the fork. But if it is the same with NBSQlite as it is with PostgresV2 then it's a waste of resources[1], as I suspected, it is not an "common API" for Database connectivity, but instead it is a fork of database drivers to work under a common API using inheritance rather than composition to reach the multi-driver approach. :-/ Regards, Esteban A. Maringolo [1]: It breaks rules #1, #3, #4, #13, #16 and #17 of the unix philosophy :)
Thanks T.
Gesendet: Montag, 12. Oktober 2015 um 16:57 Uhr Von: "Esteban A. Maringolo" <emaringolo@gmail.com> An: "Pharo Developers" <pharo-dev@lists.pharo.org> Betreff: [Pharo-dev] Relation between Garage PG and PGv2
Hi all, and Guille Polito in particular,
I'm loading the Garage classes into Pharo 4, and I see the Garage-Postgres package "duplicates" the classes of the PostgresV2 package, but instead of using the PG prefix, it uses the GA prefix. This is in particular with the case of Garage-Postgres-Protocol package.
Why is it so?
Because even GAConnection>>#buildDefaultConnectionArgs (which is a replica of PGConnection) references PGConnectionArgs instead of GAConnectionArgs, which is the replica of the first.
QUESTION: Isn't Garage a "common API" for the *existing* drivers? (like a common wrapper), and if so it delegates the protocol handling to the real driver? In the PostgresV2 package in this case, to PG prefixed classes.
Regards!
Esteban A. Maringolo
participants (2)
-
Esteban A. Maringolo -
Torsten Bergmann