On 3/10/12 5:15 PM, Martin Aspeli wrote:
Hi,

Somewhat inspired by the goals of the ``plone.api`` initiative and based
on the experience of seeing many, many people struggle to get a "safe"
Plone development up and running due to problems with polluted system
Python interpreters, missing libraries and confusing buildouts, I have
created a script called ``plone-devstart.py``.


+0

In the interest of stop energy (kidding)… but seriously: can we not go in this direction, if at all possible? Or at least think out loud a bit more before first.

My thoughts:

We've spent years getting Plone situated in a "nice" place within the Python community. To address the concerns of the ``plone.api`` folks and anyone that has trouble installing or developing add-ons for Plone, I would strongly recommend that we adhere very closely to "Python best practices"[1].

Now, I completely understand Martin's motivation here and may personally be interested in trying plone-devstart.py to see what he has come up with. But I don't think, at least my gut reaction tells me, that a project-specific script is not what we need or want more of here[2].

Think about it this way: the Plone project has very ambitious goals with regard to CMS functionality, and a limited set of developers to accomplish those goals. We don't want those resources spent on Python module installation problems, if we can help it. Better to offload that problem to the worldwide community of Python folks IMHO for "free" support.


Alex


[1] Support: "pip install -r 4.2.x.txt Plone" ASAP. Failures with this process become "general Python failures" not "Plone specific failures". Don't have PIL? "pip install Pillow" and so on. Let requirements.txt equal versions.cfg in effect, and let's figure out how to build out a bunch of zcml slugs without buildout. (Actually, with Pillow, it's probably now "safe" to depend on it in the way we depend on Zope2. Installation problems have been practically eliminated for all major OSes. The only "gotcha" is C extensions, but Zope2 has those too. Oh and PIL's deps, but the Unified Installer includes those for its purposes and anyone that can type "pip install Plone" can probably type "{aptitude,brew,etc} install libjpeg-dev" and so on.)

[2] One exception may be if "pip install plone-devstart" were supported.



The idea is that you can use this to instantiate a new development
environment in a 'safe' way. It will perform some checks on your
environment to determine the likelihood of success. It then installs a
bunch of useful development tools, a basic deployment configuration, and
creates a simple (non-reusable) package where you can put your custom
Python code and templates.

For now it lives here: https://github.com/plone/plone-devstart/

It supports Plone 4.1, though I plan to add 4.2 support shortly.

You can download the one file you need here:
https://github.com/plone/plone-devstart/raw/master/plone-devstart.py

I've tested as much as I can, but if this is to work out for a broader
audience, we need lots of people to test. If you have a particularly
messed up environment, I'd like to hear about it. :)

Martin


_______________________________________________
Product-Developers mailing list
[email protected]
https://lists.plone.org/mailman/listinfo/plone-product-developers


--
Alex Clark · http://pythonpackages.com

_______________________________________________
Product-Developers mailing list
[email protected]
https://lists.plone.org/mailman/listinfo/plone-product-developers

Reply via email to