Bug#509225: ITP: tevent -- talloc-based event loop library

2009-01-04 Thread Jelmer Vernooij
Am Montag, den 05.01.2009, 08:45 +1100 schrieb Robert Collins: 
> On Sat, 2008-12-20 at 01:57 +0100, Jelmer Vernooij wrote:
> > Am Samstag, den 20.12.2008, 11:10 +1100 schrieb Robert Collins:
> > > libevent + libtevent-which-wraps-libevent is better than
> > > libtevent-which-duplicates-much-of-libevent. :)
> > In theory, I agree. However, in this case libevents is about a factor 10
> > larger in terms of source code than libtevent, and that's even without
> > the wrapper that would add talloc support and the support for AIO.
> > 
> > But more importantly (with my upstream hat on): we have to support a lot
> > of folks that are not running fancy systems like Debian (apt FTW), and
> > who have to still install everything manually. This means another
> > dependency for them to install. 
> 
> There are other ways to solve that - e.g. provide a bundle of source
> packages. That said, gentoo, rpm-based systems, ports-based systems,
> conary, heck even cygwin support dependency chaining on installs -
> surely anyone outside that collection of platforms is already manually
> building their kernel and up - they are choosing that environment. Bit
> of a tail-wagging-the-dog as far as I can tell without more information.
I didn't mean any other Linux distributions or Cygwin, but platforms
like AIX, HPUX, IRIX, etc that already contain all of the other
dependencies (shell, make, C compiler).

Providing a bundle of source packages would be a way around that,
indeed, but that requires some significant infrastructure changes (among
other things, the Samba buildfarm would have to know how to fetch, build
and link against libevent on different platforms, for example). 

In other words, as I mentioned earlier: yes, I agree; in a perfect
world, libtevent would be a thin wrapper around libevent. The amount of
work to change this (instead of trying to get Samba 4.0 out) outweighs
the small benefits (a couple of thousand lines less code duplication on
your average Debian system).

Cheers,

Jelmer
-- 
Jelmer Vernooij  - http://samba.org/~jelmer/
Jabber: jel...@jabber.fsfe.org


signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil


Bug#509225: ITP: tevent -- talloc-based event loop library

2009-01-04 Thread Robert Collins
On Sat, 2008-12-20 at 01:57 +0100, Jelmer Vernooij wrote:
> Am Samstag, den 20.12.2008, 11:10 +1100 schrieb Robert Collins:
> > libevent + libtevent-which-wraps-libevent is better than
> > libtevent-which-duplicates-much-of-libevent. :)
> In theory, I agree. However, in this case libevents is about a factor 10
> larger in terms of source code than libtevent, and that's even without
> the wrapper that would add talloc support and the support for AIO.
> 
> But more importantly (with my upstream hat on): we have to support a lot
> of folks that are not running fancy systems like Debian (apt FTW), and
> who have to still install everything manually. This means another
> dependency for them to install. 

There are other ways to solve that - e.g. provide a bundle of source
packages. That said, gentoo, rpm-based systems, ports-based systems,
conary, heck even cygwin support dependency chaining on installs -
surely anyone outside that collection of platforms is already manually
building their kernel and up - they are choosing that environment. Bit
of a tail-wagging-the-dog as far as I can tell without more information.

-Rob

 
GPG key available at: .


signature.asc
Description: This is a digitally signed message part


Bug#509225: ITP: tevent -- talloc-based event loop library

2008-12-19 Thread Jelmer Vernooij
Am Samstag, den 20.12.2008, 11:10 +1100 schrieb Robert Collins:
> On Fri, 2008-12-19 at 23:49 +0100, Jelmer Vernooij wrote:
> 
> > An alternative would be to implement tevent as a wrapper around libev or
> > libevents that added talloc support to the API but that's hardly worth
> > the trouble as that would add another dependency and the library is
> > pretty small itself as is.
> 
> It would however prevent further fragmentation in this space ;)
> 
> libevent + libtevent-which-wraps-libevent is better than
> libtevent-which-duplicates-much-of-libevent. :)
In theory, I agree. However, in this case libevents is about a factor 10
larger in terms of source code than libtevent, and that's even without
the wrapper that would add talloc support and the support for AIO.

But more importantly (with my upstream hat on): we have to support a lot
of folks that are not running fancy systems like Debian (apt FTW), and
who have to still install everything manually. This means another
dependency for them to install. 

Cheers,

Jelmer
-- 
Jelmer Vernooij  - http://samba.org/~jelmer/
Jabber: jel...@jabber.fsfe.org


signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil


Bug#509225: ITP: tevent -- talloc-based event loop library

2008-12-19 Thread Robert Collins
On Fri, 2008-12-19 at 23:49 +0100, Jelmer Vernooij wrote:

> An alternative would be to implement tevent as a wrapper around libev or
> libevents that added talloc support to the API but that's hardly worth
> the trouble as that would add another dependency and the library is
> pretty small itself as is.

It would however prevent further fragmentation in this space ;)

libevent + libtevent-which-wraps-libevent is better than
libtevent-which-duplicates-much-of-libevent. :)

-Rob
-- 
GPG key available at: .


signature.asc
Description: This is a digitally signed message part


Bug#509225: ITP: tevent -- talloc-based event loop library

2008-12-19 Thread Jelmer Vernooij
Hoi Guus,

Am Freitag, den 19.12.2008, 23:14 +0100 schrieb Guus Sliepen:
> On Fri, Dec 19, 2008 at 10:53:47PM +0100, Jelmer Vernooij wrote:
> 
> >Package name: tevent
> > Description: talloc-based event  loop library
> > 
> > tevent is a simple library that can handle the main event loop for an
> > application. It supports three kinds of events: timed events, file
> > descriptors becoming readable or writable and signals.
> > 
> > Talloc is used for memory management, both internally and for private
> > data provided by users of the library.
> 
> It seems very similar to libevent and libev, both already in Debian. Is there
> anything special about tevent using talloc? Is upstream aware of these other
> projects? If possible, try to get them to work with each other to merge their
> features and reduce the number of event loop libraries.
We're certainly aware of these other two projects - the name tevent was
picked to avoid naming conflicts or confusion with them.

The talloc integration is one of the main advantages for us, since LDB
(and Samba 4, which also uses this library heavily but includes a copy
of it at the moment) use talloc pretty heavily. 

Also, as far as I can tell neither libevent nor libev provide AIO
support at the moment.

An alternative would be to implement tevent as a wrapper around libev or
libevents that added talloc support to the API but that's hardly worth
the trouble as that would add another dependency and the library is
pretty small itself as is.

Cheers,

Jelmer

-- 
Jelmer Vernooij  - http://samba.org/~jelmer/
Jabber: jel...@jabber.fsfe.org


signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil


Bug#509225: ITP: tevent -- talloc-based event loop library

2008-12-19 Thread Guus Sliepen
On Fri, Dec 19, 2008 at 10:53:47PM +0100, Jelmer Vernooij wrote:

>Package name: tevent
> Description: talloc-based event  loop library
> 
> tevent is a simple library that can handle the main event loop for an
> application. It supports three kinds of events: timed events, file
> descriptors becoming readable or writable and signals.
> 
> Talloc is used for memory management, both internally and for private
> data provided by users of the library.

It seems very similar to libevent and libev, both already in Debian. Is there
anything special about tevent using talloc? Is upstream aware of these other
projects? If possible, try to get them to work with each other to merge their
features and reduce the number of event loop libraries.

-- 
Met vriendelijke groet / with kind regards,
  Guus Sliepen 


signature.asc
Description: Digital signature


Bug#509225: ITP: tevent -- talloc-based event loop library

2008-12-19 Thread Jelmer Vernooij
Package: wnpp
Severity: wishlist
X-Debbugs-CC: debian-de...@lists.debian.org

--- Please fill out the fields below. ---

   Package name: tevent
Version: 1.0.0
Upstream Author: Samba Team
URL: http://www.samba.org/
License: LGPLv3
Description: talloc-based event  loop library

tevent is a simple library that can handle the main event loop for an
application. It supports three kinds of events: timed events, file
descriptors becoming readable or writable and signals.

Talloc is used for memory management, both internally and for private
data provided by users of the library.

This library is used by newer versions of libldb, which is already in
Debian.
-- 
Jelmer Vernooij  - http://samba.org/~jelmer/
Jabber: jel...@jabber.fsfe.org


signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil