On Mar 16, 2010, at 8:18 AM, Chris Rossi wrote:
> On Tue, Mar 16, 2010 at 11:14 AM, Chris Calloway <c...@unc.edu> wrote:
> On 3/16/2010 10:37 AM, Chris Rossi wrote:
> If I may play devil's advocate here, isn't the very idea that zopeskel
> would do your svn checkin for you a bit overwrought? Is it so hard to run
> the template and then do svn add? The easiest features to support are the
> features you don't have, and with a feature like this it's going to be
> especially hard to get right because different users are going to have
> different expectations. I would, for example, consider anything that tried
> to check in .egg-info to be broken. I would argue that maybe the right
> choice is to drop this feature altogether and assume users can handle their
> own source control.
> If we were going to add this feature today, yeah, we should think better of
> But at the sprint we agreed on a "do no harm" policy to the ZopeSkel users
> who already use pre-existing features of ZopeSkel, however ill-considered
> those features may be.
> That's part of why we made the zopeskel wrapper binary: so we could make
> usability changes to ZopeSkel for the benefit of themers and integrators,
> without impacting the developers who already depend on ZopeSkel as it is (and
> who use an unwrapped paster binary).
> So as far as the zopeskel binary goes, --svn-repository is probably a paster
> option it should either:
> a) not be passing along to paster (and maybe warning about it), or
> b) doing a combination of:
> i) checking for non-egg templates, and
> ii) Clayton's good idea (setting svn:ignore on egg-info) for egg templates
> Obviously, my vote is for a) with a warning, but I have little stake in this
> either way.
I'm leaning towards a) myself. Having walked my way through the process
yesterday, There doesn't seem to be much of a place to wedge the code that
would add an svn:ignore in zopeskel code. The property would have to be added
_before_ the egg-info directory was added to svn, or it wouldn't work. Right
now, the control flow appears to be:
zopeskel is called w/ --svn-repository -> paster creates, and then checks out
trunk of an empty repository -> check-vars [zopeskel version] is run, gathering
the needed info to build the skeleton -> all files and folders are created and
added to the repository immediately afterwards (in the same chunk of
[pastescript] code) -> finish up.
The logical place to do any setting of svn:ignore might be in the 'check-vars'
code, but it's not a particularly logical space to put things.
My instinct is to swallow the --svn-repository option and notify the user that
we are doing so. We can leave it so that the option would still work if you
use 'paster create -t template_name' instead of 'zopskel template_name'.
Any final thoughts? (And thanks for all the input. Nice to know you all are
out there ;) )
Webmaster, Lead Developer
Department of Radiology Web Services
University of Washington
School of Medicine
Work Phone: (206) 616-1288
Cell Phone: (206) 708-9083
ZopeSkel mailing list