Code review comment for lp:~posulliv/drizzle-interface/ruby-interface

Revision history for this message
Monty Taylor (mordred) wrote :

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Padraig O'Sullivan wrote:
> Padraig O'Sullivan has proposed merging
> lp:~posulliv/drizzle-interface/ruby-interface into
> lp:drizzle-interface.
>
> Requested reviews: Monty Taylor (mordred)
>
>
> I was messing around with the SWIG generated ruby interface to
> drizzle tonight and I've started thinking about how we are going to
> distribute this. I'm guessing we are going to want to create a ruby
> gem since that seems to be the standard way.

Totally agree.

> I've created the various files in this branch I'm proposing for a
> merge for creating a ruby gem and am currently working on writing
> some unit tests for it. I'm trying to do this in what appears to be
> the standard way that things like this are done in the ruby
> community.

Looks good to me.

> How would we distribute something like this? It seems that most ruby
> folks use github and not launchpad. Is there a way to mirror a
> launchpad branch on github? What are your plans for the python
> interface?

The way I've been doing this for the python interface is similar. I use
python setuptools to create python packages and upload those to PyPI
(the python packaging system) In general, the thought is this:

root makefile generates the C code into language subdir
language subdir should be self-sufficient, so it (including the
generated file) can be tarred up and distributed

If you want to just install the code, you can grab a tarball we'll
publish of just your language. (python-libdrizzle-0.1.tar.gz or
ruby-libdrizzle-0.1.tar.gz)

If you want to hack on the _C_ part, you can grab the bzr branch from
launchpad and run SWIG and all of that. (less people will want to do this)

For distribution, I make a source tarball of just the python dir (using
python setup.py sdist) and I upload that to launchpad
(http://edge.launchpad.net/drizzle-interface/trunk/ongoing-development/+download/python-libdrizzle-0.3.0.tar.gz)
and also to PyPI (http://pypi.python.org/pypi/python-libdrizzle/ -
http://pypi.python.org/packages/source/p/python-libdrizzle/python-libdrizzle-0.3.0.tar.gz#md5=a938eb02df37168a2aa7ec0cf3b0b7fe)

I think a similar pattern can be used for Ruby. Make a gemspec file in
the ruby dir which assumes that the ruby dir is actually the root dir.
That can be used to create the tarballs for ruby, and then we can use
that to create gems to upload as well.

I'm not sure we need to do anything with github unless we were going to
move development to use git from bzr.

> Sorry for all the questions on this! Software distribution is
> something I'm really not familiar with at all.

Only one way to learn... :)

This reminds me - I _really_ need to make some .debs for these...

Monty

PS. Your branch is merged, btw.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkrf7wUACgkQ2Jv7/VK1RgH1fACgxvpzGovjvZMP6768yjpztYE5
4XkAoJ7x2YBSrJSZmrzMFHaJ0w9F1UQ8
=0aOg
-----END PGP SIGNATURE-----

« Back to merge proposal