OpenDBX + PostgreSQL + MacOS ? [WAS] Re: [ANN] Pharo Glorp port release

MM
Mariano Martinez Peck
Mon, Sep 26, 2011 4:11 PM

On Mon, Sep 26, 2011 at 4:52 PM, James Robertson jarober@gmail.com wrote:

I figured that out easily enough.  The next question I have is - where can
I find current doc for using the lower level OpenDBX piece?  I'm trying to
connect to PostgreSQL on my Mac, if that matters

Well, that's the most complicated part and drawback of OpenDBXDriver: that
you need both, OpenDBX library and the database client library.
And there is even one more problem: SqueakVM FFI has problem with 64 bits...
So...you need the following:

  • Install OpenDBX. You can get the binaries or compile it.
  • Install PostgreSQL database client 32 bits.

The most documentation you can get is:

http://dbxtalk.smallworks.com.ar/Compiling%20and%20installing%20OpenDBX
http://dbxtalk.smallworks.com.ar/Compiling%20for%20different%20backends

What you can find there was mostly written by me, that means, there are the
backends that I have compiled. So for example, you won't find how to do it
with PostgreSQL in Mac because I never did it. Maybe someone did it and can
help you. I guess it should be similar to doing it in Linux.  Finally,
notice that for Windows you can download OpenDBX .dll, for Linux .rpm .deb
but for Mac there isn't any binary because we don't know how to do it.

Finally, notice that with our refactor of Glorp, you are able to use Glorp
with the Smalltalk native client (no usage of openDBX). For production env I
suggest using OpenDBX, but for a simple prototype or test, you can use the
native driver instead.

Cheers

On Sep 26, 2011, at 10:20 AM, Mariano Martinez Peck wrote:

On Mon, Sep 26, 2011 at 4:18 PM, James Robertson jarober@gmail.comwrote:

When trying that out in a freshly downloaded Pharo 1.3, I got an MNU on
#display sent to Transcript

Yes, sorry for the stupid mistake and thanks for letting us know. Please
take
#postLoadGlorpDriverDBXTalkPharo  and comment the line "Transcript
display." and proceed :)

We will fix it now anyway.

Cheers

On Sep 26, 2011, at 12:43 AM, Guillermo Polito wrote:

Hi!

We are reaaaaally happy to announce (at last) a very very stable release
of the new Glorp port :D.  We've done a lot to achieve the following results
with Glorp:

OpenDBX Oracle:

  • 7 errors related to Blobs, which are not supported by opendbx.
  • 1 failure related to timestamp cast (and I don't understand the test
    intention yet :P)

OpenDBX MySql:

  • 100% green tests :D

OpenDBX PostgreSQL:

  • 7 errors and 1 failure related to Blobs, which are not supported by
    opendbx (again).

OpenDBX SQLite:

  • 6 failures related to large objects, which are not supported by opendbx
    (again again).. 2 (expected) failures related to times & dates.

Native PostgresV2 Driver:

  • 2 failures with blobs

So far, some FAQs:

¿What is the difference between this port and the old one?
Almost 4 years of work of the VW team with tons of bugfixing (see the last
4 years release notes from Glorp for more detail :P)

¿How can I load it?
If you want to load Glorp + OpenDBX, you can try the following:

*Gofer it
squeaksource: 'MetacelloRepository';
package: 'ConfigurationOfGlorpDBX';
load.

(((Smalltalk at: #ConfigurationOfGlorpDBX) perform: #project) perform:
#version: with: #stable) load*

Also, you can try loading only Glorp (maybe because you want to integrate
it with your own database driver):

Gofer it
squeaksource: 'MetacelloRepository';
package: 'ConfigurationOfGlorp';
load.

(((Smalltalk at: #ConfigurationOfGlorp) perform: #project) perform:
#version: with: #stable) load

¿How did we test it?
We've tested it in Pharo 1.2 and Pharo 1.3 + Jenkins CogVms.

¿What's coming next?
We are working for your happiness (?).

Hehe, our next step is to release the DBXMagritte project, which aims to
allow people working in the Software business to create easy CRUD -the same
scaffolding idea from RoR for example- including some of the following
features:

  • (create a class model + magritte descriptions) from a database schema
  • [if you already have a descripted class model] use magritte descriptions
    to create a database schema
  • use magritte descriptions to create glorp mappings

And then, you can use the same descriptions for your Seaside app, or in
every magritte-friend framework you like ;)

So, thanks again to ESUG for sponsoring the project :).

Guillermo, Santiago, Gisela, Mariano, Esteban and Diogenes


Esug-list mailing list
Esug-list@lists.esug.org
http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org

James Robertson
http://www.jarober.com
jarober@gmail.com


Esug-list mailing list
Esug-list@lists.esug.org
http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org

On Mon, Sep 26, 2011 at 4:52 PM, James Robertson <jarober@gmail.com> wrote: > I figured that out easily enough. The next question I have is - where can > I find current doc for using the lower level OpenDBX piece? I'm trying to > connect to PostgreSQL on my Mac, if that matters > Well, that's the most complicated part and drawback of OpenDBXDriver: that you need both, OpenDBX library and the database client library. And there is even one more problem: SqueakVM FFI has problem with 64 bits... So...you need the following: - Install OpenDBX. You can get the binaries or compile it. - Install PostgreSQL database client 32 bits. The most documentation you can get is: http://dbxtalk.smallworks.com.ar/Compiling%20and%20installing%20OpenDBX http://dbxtalk.smallworks.com.ar/Compiling%20for%20different%20backends What you can find there was mostly written by me, that means, there are the backends that I have compiled. So for example, you won't find how to do it with PostgreSQL in Mac because I never did it. Maybe someone did it and can help you. I guess it should be similar to doing it in Linux. Finally, notice that for Windows you can download OpenDBX .dll, for Linux .rpm .deb but for Mac there isn't any binary because we don't know how to do it. Finally, notice that with our refactor of Glorp, you are able to use Glorp with the Smalltalk native client (no usage of openDBX). For production env I suggest using OpenDBX, but for a simple prototype or test, you can use the native driver instead. Cheers > > On Sep 26, 2011, at 10:20 AM, Mariano Martinez Peck wrote: > > > > On Mon, Sep 26, 2011 at 4:18 PM, James Robertson <jarober@gmail.com>wrote: > >> When trying that out in a freshly downloaded Pharo 1.3, I got an MNU on >> #display sent to Transcript >> >> > Yes, sorry for the stupid mistake and thanks for letting us know. Please > take > #postLoadGlorpDriverDBXTalkPharo and comment the line "Transcript > display." and proceed :) > > We will fix it now anyway. > > Cheers > > > > >> >> On Sep 26, 2011, at 12:43 AM, Guillermo Polito wrote: >> >> Hi! >> >> We are reaaaaally happy to announce (at last) a very very stable release >> of the new Glorp port :D. We've done a lot to achieve the following results >> with Glorp: >> >> OpenDBX Oracle: >> - 7 errors related to Blobs, which are not supported by opendbx. >> - 1 failure related to timestamp cast (and I don't understand the test >> intention yet :P) >> >> OpenDBX MySql: >> - 100% green tests :D >> >> OpenDBX PostgreSQL: >> - 7 errors and 1 failure related to Blobs, which are not supported by >> opendbx (again). >> >> OpenDBX SQLite: >> - 6 failures related to large objects, which are not supported by opendbx >> (again again).. 2 (expected) failures related to times & dates. >> >> Native PostgresV2 Driver: >> - 2 failures with blobs >> >> So far, some FAQs: >> >> *¿What is the difference between this port and the old one?* >> Almost 4 years of work of the VW team with tons of bugfixing (see the last >> 4 years release notes from Glorp for more detail :P) >> >> *¿How can I load it?* >> If you want to load Glorp + OpenDBX, you can try the following: >> >> *Gofer it >> squeaksource: 'MetacelloRepository'; >> package: 'ConfigurationOfGlorpDBX'; >> load. >> >> (((Smalltalk at: #ConfigurationOfGlorpDBX) perform: #project) perform: >> #version: with: #stable) load* >> >> Also, you can try loading only Glorp (maybe because you want to integrate >> it with your own database driver): >> >> Gofer it >> squeaksource: 'MetacelloRepository'; >> package: 'ConfigurationOfGlorp'; >> load. >> >> (((Smalltalk at: #ConfigurationOfGlorp) perform: #project) perform: >> #version: with: #stable) load >> >> *¿How did we test it?* >> We've tested it in Pharo 1.2 and Pharo 1.3 + Jenkins CogVms. >> >> *¿What's coming next?* >> *We are working for your happiness (?).* >> >> Hehe, our next step is to release the DBXMagritte project, which aims to >> allow people working in the Software business to create easy CRUD -the same >> scaffolding idea from RoR for example- including some of the following >> features: >> >> - (create a class model + magritte descriptions) from a database schema >> - [if you already have a descripted class model] use magritte descriptions >> to create a database schema >> - use magritte descriptions to create glorp mappings >> >> And then, you can use the same descriptions for your Seaside app, or in >> every magritte-friend framework you like ;) >> >> >> So, thanks again to ESUG for sponsoring the project :). >> >> Guillermo, Santiago, Gisela, Mariano, Esteban and Diogenes >> _______________________________________________ >> Esug-list mailing list >> Esug-list@lists.esug.org >> http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org >> >> >> James Robertson >> http://www.jarober.com >> jarober@gmail.com >> >> >> >> >> _______________________________________________ >> Esug-list mailing list >> Esug-list@lists.esug.org >> http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org >> >> > > > -- > Mariano > http://marianopeck.wordpress.com > > > James Robertson > http://www.jarober.com > jarober@gmail.com > > > > > _______________________________________________ > Esug-list mailing list > Esug-list@lists.esug.org > http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org > > -- Mariano http://marianopeck.wordpress.com