[Bf-python] BPyC repository revisited

levischooley levischooley at eaglecom.net
Thu Aug 31 01:18:55 CEST 2006


Thanks Willian,

> We've been slowly working on improving scripts in Blender,
> starting with guidelines and a plan:
> http://mediawiki.blender.org/index.php/ScriptDev

Excellent. I've been quietly observing your discussion and
following your progress via this mailing list.

> We will use the scripts project cvs at projects.blender.org
> for all scripts (bundled, extra package(s) and others
> (betas, not updated ones, alternatives, etc)).

Are you saying that you will eventually use the CVS for *every*
python script (even "subquality" ones?)? I guess that's great, but
speaking for myself as an "outsider" who has played around with
scripting, I would need some special direction for exactly how to
go about publishing and maintaining my script in the CVS. I'm not
a developer, and although I'm sure it's fun and easy, I've never
touched a versioning system before except to download some of the
Blender sources nearly a year ago. In other words, CVS for
"everyone" isn't the final answer I'm looking for.

> Your project may be a good frontend for it (and so not
> need trackers itself), with links to our planned
> wiki documentation, too.

Ah! That was one option I had not contemplated: using a versioning
system such as CVS as a backend and merely managing it with an
external "wrapper." I'll need to think that over and do some
research into CVS. (BTW, is that the best, or should I be looking
at subversion, too; I hear some rumors that Blender is switching.)
Some immediate questions I have are:
1. How easy is it to interact with CVS via a PHP-driven website?
2. Can you associate the necessary metadata with the scripts in
CVS for effective searching and sorting (and number of downloads,
user ratings, or other information)?
3. I'm assuming this will be the easy part, but can you work with
a remote cvs using a local python script?
If the answer to any of those questions amounts to "not very
well," I'm game for another solution.

> Security is a serious matter, probably it's better not to
> give automatic access to everyone, but rather have their
> first script be tested before they get an account (and only
> accept text scripts).

A novel idea. In some of the things I roughed out on paper last
year, that was one of the solutions I had devised. It will work,
but I'm a little afraid that such an approach may frighten away
new authors, as well as create a lot of trivial work for an
already bogged-down set of developers. It may be good to at least
have an application process with a human (almost) transparently
involved, but I wouldn't necessarily recommend a "script approval"
process (because of time constraints and impatient people, not
because it wouldn't be a good thing). Also, about "only text
scripts," I would like to agree, and if safety was the ultimate
goal, I would agree. However, I see a future (though dim) of
non-GPL scripts and compiled libraries that may not want to meet
that standard, but that I would still want to be distributable
through the repository.

> It may also be a good idea to have two distinct sections,
> one for "officially supported" scripts (links point to
> scripts in the cvs) and another for all others.

A year ago (again on my rough paper scriblings) I had contemplated
something such as this, where scripts were assigned to certain
"packages" that could be selected for download. Each package could
be given a unique flavor, such as "top UV tools," or "official
Blender recommendations," or "GPL only," or "tested and meets
certain guidelines," and downloaded/updated as an entity. I didn't
include such functionality in the prototype (nor quite a few other
things I had on paper), but I think it could be implemented fairly
seamlessly. The main concern I have is that it may tend to require
a lot of effort by only a few (sound familiar?) to upkeep these
packages/sections.

> BTW, consider yourself invited to participate in this
> scripts restructuring project (don't worry, it shouldn't
> eat all your free time :) ). Just get in touch with me,
> Campbell or LetterRip, if you're interested.

I can't commit to anything right now (school is very intense), and
I have some pretty strong views about where I'd like to see the
BPy heading from a user's perspective, but I'm pretty much fair
game otherwise. We'll just play it by ear. I'm destined to become
involved at some point, it's just a matter of when, how, and how much.

The short of it all:
In the next year, I want installing a python script to be as easy
as installing a linux package or a Firefox extension. I don't want
the user to even realize they've left or modified Blender at all
except that they now have a new script to play with. I want users
to have instant access to updates of their installed scripts. And,
I want to do this all in such a way that the people responsible
for managing Blender's python scripts don't have to feel
disorganized or "behind," and that they can still spend time with
their friends or families.
I'm willing to do my part to make sure that all happens.

Thanks!
Levi 
             



More information about the Bf-python mailing list