[Bf-python] BPyC repository revisited

Levi levischooley at eaglecom.net
Fri Sep 1 16:05:08 CEST 2006


To Toni,
> have you guys considered the tools that the
> python cheeseshop uses, the new setuptools,
> easy_install and friends?

I did not even realize that python had a repository. Thanks for
the info! Everything that you've listed looks good. As far as I
could see, it's basically just one more example of a software
repository. We've got quite a few others: Firefox extensions,
cygwin downloads, PEAR, RPM and other linux package systems, the
list could go on. The common elements are a central, global
repository that can be easily searched and browsed by the clients
for new packages or updates to their current packages, and that is
easily accessed and utilized by new developers for the
distribution of their packages.

That's the sort of thing I want to bring to Blender. I don't think
I'll be able to use the cheesecake system directly, but there may
be some software tools there that are worth playing with, and it
definitely gives me some more ideas for interface design.


To Willian,

Based on some of the things you mentioned, I took a look at CVS
and GForge (that is what projects.blender.org is running on,
right?). As I read a bit about what was all possible, I was both
excited and dismayed. It has almost everything a developer needs,
and almost nothing the users need from the standpoint of a
browseable repository and update manager.

So...I'm basically back to where I started a year ago, although I
now have a prototype to boast of, and a new option to rule out (I
think).
The options I've considered so far:
1. Let python script development and distribution continue as it
always has (and, really, not much has changed since python was
introduced to Blender; though we have script menus now).
2. Refine, reorganize, and advertise existing systems (apparently
the current goal of the foundation, i.e. you the developers).
3. Create a hybrid solution (where we use #2, but make it more
accessible via new "frontends" or package manager scripts).
4. Create a new system (my current goal, a daunting task).

Option #3 would have been nice, but I don't see it happening with
much more ease than #4, and a tailored solution (#4) should be a
lot cleaner and appealing.

Anyway, sorry to clutter up this mailing list with my random
thoughts. This repository doesn't even have much to do with
Blender python development (at least concerning the development of
Blender's code, that is).

> Anyway, looks like your objectives are a little different
> from ours right now, which doesn't mean we won't benefit
> from or help each other, of course.
> Let's see how things develop :).

Yeah, I'm approaching this from the user's and author's
perspective. You developers are very much in the forefront of my
mind as well, but I can't look at it from your perspective very
well, 'cause I've never been in your shoes. That brings me to the
point I should have specified earlier: Why am I bringing it to you
guys in the first place?

1. To determine if it is in the best interest of the future of
Blender.
 - The way I look at it, a global python script repository can
only benefit Blender. But I may be overlooking something. If there
would be any adverse affects, you guys would probably be the ones
who could spot them. So, concerning the future of Blender, how
would you rate a global script repository? Harmful ... Not in the
best interest ... Neutral ... Beneficial ... Vital. Why?

2. To determine whether you, as developers, would view it in a
favorable light.
 - I'm bringing it to you as developers first, because ultimately
the repository will need people of your caliber in the background
keeping a few loose strings together. In other words, probably at
some point in the future (assuming this thing takes off), this
repository will either start treading on your ground here at
blender.org, or you will be invited to help in its maintenance
elsewhere. NOTE: My intention is not to increase workload on
individuals by recruiting them to a new "project," but to provide
an environment where the workload can be more easily allocated to
other individuals. It would be nice to have knowledgeable people
for professional help and opinion, that is all.
Perhaps I'm making a bigger deal out of it than it is when I say
it, but I'm pretty sure a global repository will change the way
you currently work. So, IF this thing takes off, would it be
viewed by the developers in a favorable light, or do they see it
as just another potential chore to maintain?

3. To determine where our objectives differ.
 - As you mentioned, we may have some different objectives. Or
maybe not, and we're just expressing ourselves ineffectively. At
any rate, concerning the maintenance of scripts, what are your
current goals (both short and long-term)?
>From what I gather, your current, short-term goal for script
maintenance is to clean up the scripts distributed with Blender.
You want to develop a set of guidelines and best practices,
establish coding standards and stability/functionality tests, and
better stream-line the way scripts are included with Blender for
redistribution. What about two years from now? How do you invision
script management then?
If I've interpreted your current goals correctly, then I share
them, and whole-heartedly support you in them (and if there's
anything a novice like me can do to help, I'm here).

Here's what I would like to see, short-term:
 - A refining (indeed, perhaps a pruning) of the scripts included
with Blender. These should be the best of the best, in code as
well as in functionality and popularity.
 - Clearly established guidelines that help script authors refine
their scripts to the point that they can be included in Blender.

Here's what I *do not* want:
 - Scripts included with Blender that are of subquality. (Scripts
included with Blender should seek to be as professional as Blender
itself.)
 - A campaign to refine every script ever written and include them
with Blender. (Maybe that'd be neat, but I don't think it's
healthy, let alone possible.)

Here's what I see long-term (1-3 years from now):
 - A minimalistic set of scripts included with Blender (the best
of the best, or the most necessary, etc.). Basically, the
short-term goals don't cease.
 - Every script (or virtually/potentially every script) for
Blender residing in an online repository that is fully accessible
by anyone using Blender with an internet connection.
 - The ability for script maintainers to maintain a higher volume
of scripts in less time. My goal is to create a repository
maintained primarily by the authors and users who use it. The
maintainers are there mainly for top-level organization and security.

I have some other goals too, but those are the most relevant.

4. To determine the best course of action.
 - I have three options: a) Abandon the project, b) Pursue it
independently, or c) Integrate it with blender.org. Do you think
that this (like the PyPi Toni showed me) would be best integrated
with blender.org? Or, would it be best left to independent means
(like elysiun/blenderartists.org)? Or, should it be abandoned, and
alternative means of *global* script maintenance be sought (like
yet another list of links to scripts; see the most recent at
http://blenderartists.org/forum/showthread.php?t=74659 )? I may be
wrong, but I think that you as developers are the best ones to
help answer those questions (the community at large probably
doesn't care).

> Any chance of a user downloading a script that
> can damage (intentionally or not) or put privacy
> at risk will be considered a critical matter.

Yeah, security WILL be an issue. It's just the same old
controversy and compromise between security and user convenience.
I guess I'm just for a little more user convenience. I think there
are small things that can be done, though, that will reach a safe
and happy balance.

In closing, sorry for the long e-mail, and sorry I haven't been a
little more clear earlier. If you all as developers could give
some thoughts to those four points, and send me some feedback
(either privately or over the mailing list), I would really
appreciate it.
In the mean time, it's back to school for me. Based on your
feedback, I'll probably post a link to the prototype to the
community within a week or two to get their reaction. Then, there
probably won't be any more physical development on this thing
until December while I concentrate on school and refine some more
ideas.

Thanks!
Levi 
             



More information about the Bf-python mailing list