Thursday, July 06, 2006

sqlWrap and oraDifference, packaged right

In the past few months, I've written sqlWrap.py, a database connection convenience wrapper, and oraDifference.py (which depends on sqlWrap.py). I didn't have any particularly sane way to distribute them, though, and I apologize to anybody who made the attempt.

Well, it may amount to delusions of grandeur, but I registered them as a SourceForge project. Now they have
  • A single, sane place for downloads, properly versioned
  • A regular distutils python installer: unzip it, run
    python setup.py install
    , and everything goes where it belongs (sqlWrap.py in your Python library, oraDifference.py in your python Scripts directory)
  • a Windows executable installer (oooh, aaah)
  • Homepages with documentation: for sqlWrap.py and oraDifference.py
Because oraDifference.py depends on sqlWrap.py, I put them together in a single install for simplicity.

This has been my first time working with Python's distutils module (so much easier than I expected!) and Sourceforge (not so much). It's been fun!

4 comments:

Anonymous said...

Great, thanks Catherine. We're trying to use Python more and more in our production environment, and tools like these make it easier to help win over mind share!

Andy Todd said...

Good work, are you accepting patches?

Now all you need to do is create your distribution as an egg[1] and register the details at the cheese shop[2], although not necessarily in that order.

[1] http://peak.telecommunity.com/DevCenter/PythonEggs
[2] http://cheeseshop.python.org/pypi

Catherine said...

Andy,

Thanks! Yes, patches, bug reports, comments, whatever... all eagerly accepted!

My first crack (ha ha) at a Python egg didn't work out... I should keep trying, though, and when I've got it, I guess I'll go for the Cheese Shop. It's a little intimidating, because, well, it's the one and only Cheese Shop, and I've never seen any guideance on what exactly qualifies for it.

Geoff said...

How did you setup the Windows installer for the extension? I've got a Python extension (in C) which I need to create a windows installer for.