You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Yoshiki Hayashi <yo...@xemacs.org> on 2001/10/08 08:33:31 UTC

Native ruby binding

I've been working on writing native Ruby binding (non SWIG)
for several weeks and it's near completion.  It will
probably need a few more weeks before I make it publicly
available but I'd like to ask a question before completion
to decide what license to use.

Are you interested in including it as part of Subversion or
do you want it be an independent project?

I'm happy with both option but inclined to make it an
independent project.  If we agree with that, I'm thinking
about using the same license as Ruby, which is an Artistic
like license.  http://www.ruby-lang.org/en/LICENSE.txt If it
becomes a part of Subversion project, then naturally it will
be distributed under the Subversion license.

The progress of the native Ruby binding is:
svn_fs: 70%
svn_repos: 0%
svn_ra: 90%
svn_wc: 50%
svn_client: 50%
test cases: 10%

My rough development plan related Subversion are like this.
When this is done, I'm going to implement CVS pserver on top
of Subversion using this Ruby binding.  After that, perhaps
I'll start writing SWIG binding if no one has written by
that time or I might write XEmacs lisp binding of
svn_client.h and svn_wc.h.

-- 
Yoshiki Hayashi

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Native ruby binding

Posted by Daniel Rall <dl...@finemaltcoding.com>.
Greg Stein <gs...@lyra.org> writes:

>> or I might write XEmacs lisp binding of
>> svn_client.h and svn_wc.h.
>
> Cool. I'd love to have it integrated into XEmacs (my editor of choice).

ditto!

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Native ruby binding

Posted by Yoshiki Hayashi <yo...@xemacs.org>.
Yoshiki Hayashi <yo...@xemacs.org> writes:

> http://www.sodan.org/~penny/tmp/svn-ruby-01.tar.gz

Sorry, I don't know how I managed to screw it up (I cut and
pasted from my web browser) but above URL is incorrect.

http://www.sodan.org/~penny/tmp/svn-ruby-0.1.tar.gz

is the correct one.

-- 
Yoshiki Hayashi

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Native ruby binding

Posted by Yoshiki Hayashi <yo...@xemacs.org>.
Yoshiki Hayashi <yo...@xemacs.org> writes:

> OK.  I want to clean up source code before opening it to
> public and it will take a few days.  I don't want people to
> see some sloppy code.  I hope no one will mind this little
> delay. :-)

There are still some hackish code in it but here's the one I
promised.  The content of README files is attached below.

http://www.sodan.org/~penny/tmp/svn-ruby-01.tar.gz

Subversion Ruby binding

This package contains Subversion Ruby binding.  Please understand this
is just a temporary distribution.  This packages is going to be
included in Subversion distribution.  Also note that this package is
still under heavy development.  There might be some severe bugs and
there are many features remain unimplemented.  It is possible that
this might not be even built on your environment.

If you have questions, bug reports, patches or suggestions, please
send them to dev@subversion.tigris.org where Subversion development is
taking place.

INSTALL

ruby extconf.rb  (It might be necessary to hand edit extconf.rb)
make
make install or make site-install

API

I tried to make API similar to Subversion C API as much as possible.
Perhaps this might change in near future if better class hierarchy or
class and method name are proposed.  Client API is quite stable but FS
interface and Repos interface are in flux.  The latter does not even exist!

Svnmirror

There's only one application of this binding right now.  It's called
svnmirror and located in svnmirror directory.  It is the tool to
mirror repository.  To test it, edit svnmirror-conf.rb and run
svnmirror.  The current implementation allows you to copy all
directory structure including properties.  However, you cannot mirror
log messages and author.  Those are stored as revision properties and
currently Subversion provides no way to retrieve them.  When it
becomes possible, svnmirror will be able to mirror logical copy of
repository in pull mode.  Note that your copy of revision properties
might become out of date because revision properties are not
versioned.  You cannot detect properties' change efficiently without
the assistance of push mode.

TODO

If you want to help this project, see the TODO file.  If you find
something interesting, please mail your interest to avoid duplicate of
work.

LICENSE

This package is distributed under the same license as Subversion.  It
is available at http://subversion.tigris.org/license-1.html.  If newer
versions of this license are posted there (the same URL, but with the
version number incremented: .../license-2.html, .../license-3.html,
and so on), you may use a newer version instead, at your option.

Yoshiki Hayashi <yo...@xemacs.org>

-- 
Yoshiki Hayashi

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Native ruby binding

Posted by Yoshiki Hayashi <yo...@xemacs.org>.
Greg Stein <gs...@lyra.org> writes:

> I'd prefer to see it as part of Subversion itself. Checked directly into a
> subdirectory of bindings/ruby. We'd take your code, check it in, and give
> you access to the repository so you could work on the bindings directly.

OK.  I want to clean up source code before opening it to
public and it will take a few days.  I don't want people to
see some sloppy code.  I hope no one will mind this little
delay. :-)

I also need to cook up configure.in patch so that it will be
automatically built if possible.

"Julian Fitzell" <ju...@beta4.com> writes:

> I'd love to give you a hand on these.  It'll probably be next week before I have time but I've been meaning to work on this myself for some time...
> 
> I agree having it as part of the subversion repository is probably a good thing.  Let me know if I can help,

Your help is very welcome.  I'll write TODO file to list
remaining tasks.  You can take whatever task you want from
that list (except the one I'm working on :-).

-- 
Yoshiki Hayashi

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Native ruby binding

Posted by Greg Stein <gs...@lyra.org>.
On Mon, Oct 08, 2001 at 05:33:31PM +0900, Yoshiki Hayashi wrote:
> I've been working on writing native Ruby binding (non SWIG)
> for several weeks and it's near completion.  It will
> probably need a few more weeks before I make it publicly
> available

Personally, I'd recommend making it available sooner rather than later.
There is very little benefit to keeping it private, and a lot of potential
benefit to releasing it.

> but I'd like to ask a question before completion
> to decide what license to use.
> 
> Are you interested in including it as part of Subversion or
> do you want it be an independent project?

I'd prefer to see it as part of Subversion itself. Checked directly into a
subdirectory of bindings/ruby. We'd take your code, check it in, and give
you access to the repository so you could work on the bindings directly.

The presence of the bindings will be much more helpful for Ruby users than
if those users need to go elsewhere to get them. Having them as part of the
SVN repository could also mean better synchronization.

>...
> The progress of the native Ruby binding is:
> svn_fs: 70%
> svn_repos: 0%
> svn_ra: 90%
> svn_wc: 50%
> svn_client: 50%
> test cases: 10%

Excellent! Again: I'd recommend releasing it sooner rather than later.
Somebody out there could find them very helpful *today*. And they could even
assist with their development by providing feedback or patches.

> My rough development plan related Subversion are like this.
> When this is done, I'm going to implement CVS pserver on top
> of Subversion using this Ruby binding.  After that, perhaps

Neat :-)

> I'll start writing SWIG binding if no one has written by
> that time

I believe the SWIG bindings will be picked back up in November. They are
definitely an optimal way to create bindings for Subversion, as the tracking
of the API will be automatic at that point. A SWIG release has been made
since I took an initial stab at some SWIG work. I'm going to work on the
SWIG stuff some more to enable the cvs2svn work.

> or I might write XEmacs lisp binding of
> svn_client.h and svn_wc.h.

Cool. I'd love to have it integrated into XEmacs (my editor of choice).

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Native ruby binding

Posted by Julian Fitzell <ju...@beta4.com>.
Hi,

I'd love to give you a hand on these.  It'll probably be next week before I have time but I've been meaning to work on this myself for some time...

I agree having it as part of the subversion repository is probably a good thing.  Let me know if I can help,

Julian


On 08/10/2001 at 5:33 PM Yoshiki Hayashi wrote:

>I've been working on writing native Ruby binding (non SWIG)
>for several weeks and it's near completion.  It will
>probably need a few more weeks before I make it publicly
>available but I'd like to ask a question before completion
>to decide what license to use.
>
>Are you interested in including it as part of Subversion or
>do you want it be an independent project?
>
>I'm happy with both option but inclined to make it an
>independent project.  If we agree with that, I'm thinking
>about using the same license as Ruby, which is an Artistic
>like license.  http://www.ruby-lang.org/en/LICENSE.txt If it
>becomes a part of Subversion project, then naturally it will
>be distributed under the Subversion license.
>
>The progress of the native Ruby binding is:
>svn_fs: 70%
>svn_repos: 0%
>svn_ra: 90%
>svn_wc: 50%
>svn_client: 50%
>test cases: 10%
>
>My rough development plan related Subversion are like this.
>When this is done, I'm going to implement CVS pserver on top
>of Subversion using this Ruby binding.  After that, perhaps
>I'll start writing SWIG binding if no one has written by
>that time or I might write XEmacs lisp binding of
>svn_client.h and svn_wc.h.
>
>-- 
>Yoshiki Hayashi
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
>For additional commands, e-mail: dev-help@subversion.tigris.org




---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org