fab-user
[Top][All Lists]
Advanced

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

Re: [Fab-user] Re: module -> package


From: Christian Vest Hansen
Subject: Re: [Fab-user] Re: module -> package
Date: Tue, 9 Dec 2008 11:38:36 +0100

On Tue, Dec 9, 2008 at 3:22 AM, Jeff Forcier <address@hidden> wrote:
> Hi Christian, just read over the new code branch.
>
> The overall splitting up looks pretty good, although core.py's still a
> little bigger than I'd like. Otherwise, on an organizational level
> it's far better than it used to be, so great job :D Two complaints and
> a question:

Thanks.

>
> First, I don't really like many of the names of files/modules/etc.
> They don't feel Pythonic and you know how much of a stickler I am
> about names ;) There were also some whitespace issues. Both of these
> things are pretty easily addressed and I hope to offer suggested
> changes soon :)

I knew something like this would pop up. Looking forward to your suggestions :)

>
> Secondly, I'm getting worried at the amount of decorator usage: as
> much as I love decorators, when just about every single object has one
> or two tacked on, something's gone wrong. Ditto on
> functions-within-functions. Due to these things, Fabric doesn't really
> feel as Pythonic anymore -- instead it feels hard to follow and
> unnecessarily complex.
>
> This is not something so easily fixed, of course, it has to do with
> wide-reaching design decisions and ways we keep track of all the
> moving parts; I'm just mentioning it for now. When I have time to get
> my hands dirty I'm hoping to re-wrap my head around the code, and
> ideally rip things apart and rearrange in a clearer, simpler fashion,
> if that's possible.

Indeed, the only thing that has really changed in the design, is the
use of more than one source file. While I can think of a couple of
ways to reduce the functions-in-functions and decorator usage in the
code (like moving all of those functions out of `plugin_main` and
instead call the decorators as functions), I don't know if it makes
sense since we might have a more fundamental issue in the that needs
work.

>
> Finally: what's up with the "core plugin *" nomenclature? I don't see
> how those things are really plugins per se, nor is it immediately
> apparent to me (tho it's been a long day ;)) how those files set up an
> actual "plugins" framework, if that's what is going on.

What plugin? Oh, _that_ plugin! Uhm.... Yeah, that's a really bad name
and no, there's no framework.

I was trying to imagine what a plugin might look like. The `plug_main`
function would be a setuptools entry-point (if they were actual
plugins and we had a framework).

That was the idea. I don't know if it's good or bad, but right now I
can understand that it would be in the way.

>
> Despite all that -- thanks again for doing this, we need to get away
> from the huge file-o-death no matter what and this does the job :)
>
> Thanks,
> Jeff
>
> On Tue, Dec 2, 2008 at 1:49 PM, Christian Vest Hansen
> <address@hidden> wrote:
>> And here we go:
>>
>> http://github.com/karmazilla/fabric/tree/as-package
>>
>>
>>
>> On Mon, Dec 1, 2008 at 6:50 PM, Christian Vest Hansen
>> <address@hidden> wrote:
>>> Just for your information.
>>>
>>> I'm working on refactorig the fabric.py module into a package, in a
>>> local branch. When I get the basics up and running again, I will make
>>> the branch public.
>>>
>>> It's a relatively big and risky change, so I hope people will give the
>>> tires a good kicking, as I'd like to merge it into master sooner
>>> rather than later (because merging patches & changes between the two
>>> is troublesome).
>>>
>>> --
>>> Venlig hilsen / Kind regards,
>>> Christian Vest Hansen.
>>>
>>
>>
>>
>> --
>> Venlig hilsen / Kind regards,
>> Christian Vest Hansen.
>>
>>
>> _______________________________________________
>> Fab-user mailing list
>> address@hidden
>> http://lists.nongnu.org/mailman/listinfo/fab-user
>>
>



-- 
Venlig hilsen / Kind regards,
Christian Vest Hansen.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]