Re: staging libraries



On 2/24/02 5:54 PM, "Jody Goldberg" <jody gnome org> wrote:

> I'll chime in on this.  Although I understand the control issues
> that make having multiple staging libraries convenient,  IMO having
> multiple sets of libraries is detrimental to the project.

Principles aside, my experience with eel has been positive. I didn't favor
creating it in the first place, because I normally think about end-user
experience, and for the end-user, it's just another library they have to
install for no apparent reason to install nautilus.

But when the stuff that's now in eel was in a private library called
libnautilus-extensions, it was constantly getting mixed together with truly
nautilus-specific code. Once it was separated out into eel, it was a lot
clearer how to draw the line.

During the Gnome 2 development process, I was able to remove a lot of this
code much more quickly than I would have been had it been inside the
Nautilus source tree. But if there were many other eel clients besides
Nautilus, I'm not sure I could have quickly determined that things weren't
used, or eradicated all use of them, and then removed them.

Ramiro did the eel cut very quickly, and there is still plenty more code in
Nautilus that should be moved there (and he moved at least one thing that
should not have been moved). This separate step of "moving to eel" and
teasing out from the rest of the Nautilus code is a great clarifying step
that helps determine if the code is really good enough to keep around, or
should just be deleted. I still hope that we can some day tease out
NautilusIconContainer and some of the other stuff in libnautilus-private.

On the other hand, having the eel library as a separate package on end
users' machines hasn't been valuable, and leads to confusion. I don't know
how to achieve the clarity of separation without having a separate cvs
module and package. But I do know that having eel has helped make Nautilus
easier to work on.

    -- Darin




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]