[Cubicweb] A newbie on Windows - installation pitfalls

Sylvain Thénault sylvain.thenault at logilab.fr
Wed Sep 8 08:48:50 CEST 2010

On 07 septembre 23:36, Dr.Leo wrote:
>  Hi there,

> I am new to this list and to web frameworks and clearly to CW.
> Considering whether to prefer Django or CW, I found the docs of CW
> very promising especially as I tend to be too lazy to learn a
> templating language. So I have decided to have a closer look at CW
> before Django.

> I must admit that CW has not even been installed on my WinXP
> machine. Here is why
> While the docs are very well written, I tend to have some doubts on
> whether they encourage newbies like me to go for CW. This is for the
> following reasons:

First note we're definitly willing to enhance this first experience,
and you should find the support you need on this mailing-list. 

> 1. Which python distribution?
> For Windows, it is suggested to use a scientific Python distribution
> vrom www.pythonxy.com.
>  (http://docs.cubicweb.org/admin/setup#base-elements)
> People who have Python already installed will wonder what is really
> needed in addition to the Python standard distribution. Other people
> don't like eclipse or do not want to learn it now as they are happy
> with their favorite editor. So why not the Standard Python
> distribution? Well, there might be hidden reasons. Perhaps CW
> requires extra packages contained in Pythonxy. This should either be
> made explicit or denied. Otherwise people get upset. Also, there is
> no indication on which Python version. Is 2.5 required, does 2.6 or
> 2.7 do as well? - The docs mention simplejson. This indicates that
> 2.5 is required; 2.6 has a json module included. Does it work as
> well??? Probably not. Please confirm and clarify in the docs more
> prominently, not just in the context of PostgreSQL...

I don't remember why pythonxy is recommended. Maybe someone else on the 
list does? Regarding python version, you'll need python >= 2.5. If you're
using python 2.6, simplejson is not necessary.

> By the way, in chapter 1.2 it is said that CW should become pip
> installable from v3.8. Today we are at 3.9.5. Please update the
> docs. Is it already pip-installable??? I'd like to know this!

CubicWeb is pip/easy installable since version 3.8. At least it should
be, they're may be some unnoticed pbs using this install method since 
we don't use it daily. But we should fix them quickly.

This is definitly the recommended way to install cubicweb on windows.
> 2. Mercurial-related stuff
> I would expect to download a tarball, the dependencies and that's
> it. The chapter on windows installation does not mention this option
> alongside with installing from the repo. I am confused.

We never found the time to generated such a tarball. We currently 
handle 3 way to install cubicweb:

* debian/ubuntu packages
* pip/easy_install
* mercurial

Do you feel we're missing something here ?

> OK. Let's assume I use mercurial which makes it easier to upgrade
> etc. I guess most people don't want to become familiar with a new
> version control system just because they want to have the greatest
> web framework. Well, I have TortoiseHG and I like it. Lucky me. But
> I don't have the forest extention. So let's try to follow the
> instructions given in chapter 1.4.1. TortoiseHG does not include the
> Forest extention. Too bad. OK. let's grab it from:
> http://mercurial.selenic.com/wiki/ForestExtension. There you can
> read that forest does not seem to be actively maintained and that I
> should consider using Mercurials native subrepo feature... Too bad.
> But I have no choice as CW sources live in a forest... OK. Let's
> follow the instructions and edit tortoiseHG/mercurial.ini. Oups!
> there is no such file in my tortoisehg dir... Too bad.

We started using forest before the subrepo feature goes in. We should
switch but didn't found the time to do it.
> I stop here to pick up later. Meanwhile I remember having installed
> pinax with a single command: pip pinax, and it has everything built
> in... I guess CW has a long way to go in terms of user-friendly
> installation. Yet I don't give up yet.

We should not be that far from that. Though things needs to be polished...
Thank you for not giving up yet and giving use feedback on how to improve
> 3. Choosing the database
> The installation guide for windows just talks about PostrgreSQL.
> This is a huge software. Python ships with sqlite which allegedly
> works as well. Even better: I could use a hg repo to store the data
> if I understand the docs correctly. So why start with PostgreSQL???
> Why don't you explain how to use sqlite or Mercurial as a backend?

Actually, while it's not suited for production suite, you can use
sqlite to quickly setup an instance without having to install an whole
RDBMS. While we support reading/writing from mercurial, it can't be
used to replace the database.

> I know, it takes time and efforts to write user-friendly docs. But I
> asume it would be worthwhile. 

Definitly. We'll try to make the doc clearer with regards to the point
you've listed, that's already a good start.

> Also, you may wish to consider getting rid of forest using subrepo 
> instead. - 

Just a matter of time.

> Shortly I'll come up with more of these presumptuous proposals...


Thanks again for your feedback.

Sylvain Thénault                               LOGILAB, Paris (France)
Formations Python, Debian, Méth. Agiles: http://www.logilab.fr/formations
Développement logiciel sur mesure:       http://www.logilab.fr/services
CubicWeb, the semantic web framework:    http://www.cubicweb.org

More information about the Cubicweb mailing list