minitage, python and UCS

While upgrading my gentoo based laptop after 8monthes of lazy abandonness in profit of exiting projects, i saw that the gentoo's python was forced to use UCS==4.

What an heck while dealing with the 'minitage env' file which mix the system and project environment resulting in a mixin of the system and project python.

Normally, there are no problem, unless your pythons come with different UCS flavors.

Cool thing is that those errors are not silent, and you see them if you are hitted by this flaw :

Tags:

minitage & ohloh gives us minitage.ohloh

I refreshed a little the ohloh minitage's related page to have some marketing analysis around minitage basecode.

For this, i wanted to add all repositories, what a heck for 200 repos...

Time to create minitage.ohloh to create the repositories for me using some fake browser ;-).

This package uses lxml (XPath), zope.testbrowser (fake browser) and urllib (some handmade http requests) to make the work done.

Tags:

Python and oldies or ValueError: year=1876 is before 1900; the datetime strftime() methods require year >= 1900

Calling strftime on a date/datetime instance on py24/py26 will raise a value error like this:

>>> from datetime import date
>>> date(1800,1,1).strftime('%d%m%Y')
Traceback (most recent call last):
  File "", line 1, in 
ValueError: year=1800 is before 1900; the datetime strftime() methods require year >= 1900

Quite annoying heh ?

There is a bug related on the python bugtracker here : http://bugs.python.org/issue1777412

 

Tags:

little minitage.core improvments

 

GIVE ME ONLY DEPENDENCIES

You can know select to build all dependencies but not the package.

For exemple, to build all python-2.4 dependencies but not python-2.4 itself, you can do:

minimerge -v --only-dependencies python-2.4

 

BUILD THIS PYTHON PACKAGE FOR THIS PYTHON

For 'eggs' packages, the default was to make come in dependencies all python avaiable in minitage and to build the 'site-packages-Major.Minor' part if it was a buildout build..

 

Tags:

Snowleopard revival

Just a little post to say that snowleopard let run minitage.

As a note, you must have all SDK installed, specially the 10.4!

Tags:

Webservers flooding minitage

Now, nginx and apache are packaged inside minitage.

 

You have :

  • two templates initiating instance of both webservers in minitage.paste.extras
  • the related packages to be build via minitage (nginx-0.8, apache-2.2)

 

Enjoy running:

easy_install -U minitage.paste
paster create -t minitage.instances.nginx myproject #deploy some nginx instance (init scripts, logrotates, docroot)
paster create -t minitage.instances.apacher myproject #deploy some nginx instance (init scripts, logrotates, docroot)
Tags:

hudson deployment made easy

I have added recently the support for standalone tomcat instances and running applications in those tomcat instances.

For example, to initiate a great hudson (contineous integration), you can run the following:

If you are not inside a minitage environment:

easy_install -U minitage.paste.extras
paster create -t minitage.instances.tomcat myproject # it will ask you for the location of a tomcat extracted tarball
paster create -t minitage.instances.hudson myproject

And if you are not inside a minitage environment, to deploy in a myproject subdirectory

Tags:

A more simple editorial process in Plone: Classic CMS + InPlace Topic view

For a project I have tried to create a more simple editorial process for Plone.To understand this you have first to know the normal editorial process of Plone:
* First you have to go to the folder where you want to add your article.
* Next you click on add an article
* You fill the form (content [...]

Tags:

A more simple editorial process in Plone: Classic CMS + InPlace Topic view

For a project I have tried to create a more simple editorial process for Plone.To understand this you have first to know the normal editorial process of Plone:
* First you have to go to the folder where you want to add your article.
* Next you click on add an article
* You fill the form (content [...]

Tags:

Personal reminder about Drupal's settings.php

Because I often duplicate a production site on a local machine in order to do some debugging/bugfixes, I like everything to be ready the sooner as possible without having to do a lot of clicks.

Here is how I override values in my custom settings.php file instead of loosing time clicking into the administration pages or even doing configuration alteration with Drush.

Here is a common production site settings.php $conf variable alteration :

Tags:

Tuning a bit Eclipse

I promised to some colleagues that someday, I will make a short post about my Eclipse eclipse.ini file, there it is!

Using Eclipse with some fancy plugins, you may experience a lot of the infamous quite annoying OutOfMemoryException or some incredible slowness sometime.

Tags:

WTF is that!? - PHP will drive me crazy; Drupal FAPI too!

What do you think this code will output:

<?php
  $foo
= '7rray';
  echo (int)
$foo;
?>

If you answered NULL, 0 or '7rray', you're absolutely wrong. The magic with PHP is whatever you use (int) or intval() you get absolutely weird results, because it'll try to parse your string as an integer whatever is in it.

Tags:

Playing with Python, D-Bus and Pidgin

Since last week, I finally can use my own domain name as jabber domain Yay! Thanks to http://jabber.apinc.org public free server, I used some DNS SRV records, and with the agreement of server owners let them handle my domain.

Tags:

MDrush, a Drush python wrapper

Some months ago, I was developing some Drupal modules for my Company, I noticed the time I loose each time I have to run a Drush command (such as clear cache) in order to do basic Drupal developer stuff.

coreutils en français

Dorénavant,  vous ne lirez plus la question suivante en ligne de commande :

rm: détruire fichier régulier `toto.c’?

mais

rm : supprimer fichier « toto.c » ?

Tags:

Functional doctest snippet of the day

I was looking for an easy way to get the current browser.contents in my real browser to easy debug what is happening in my doctest.
Here is the snippet:
Updated the 01/13/2009

>>> import tempfile as tmp
>>> def contents():
... fd, fn = tmp.mkstemp(suffix=".html", prefix="testbrowser-")
... file = open(fn, 'w')
... file.write(browser.contents)
... [...]

Tags:

Functional doctest snippet of the day

I was looking for an easy way to get the current browser.contents in my real browser to easy debug what is happening in my doctest.
Here is the snippet:
Updated the 01/13/2009

>>> import tempfile as tmp
>>> def contents():
... fd, fn = tmp.mkstemp(suffix=".html", prefix="testbrowser-")
... file = open(fn, 'w')
... file.write(browser.contents)
... [...]

Tags:

Fedora user again

I was a Fedora user until Fedora Core 6 but the second Ubuntu distribution was a really nice experience so I made the jump (fast packaging system, huge repo, etc).

Since 9.04 (or just before) I have been annoyed by the notification system NotifyOSD, I find disturbing to blur (or hide w/o compositing) the message on mouseover and the popup doesn’t provide contextual actions. The Ayatana project get Ubuntu away from the upstream development (many patches to integrate libindicate, etc).

Tags:

collective.dewplayer: display video content in Plone

I have release a simple package using Dewplayer for video content in Plone.

Tags:

Les slides officielles Ploss disponibles en ligne

L'association Ploss met son modèle de slide officielle à disposition de tous pour assurer une homogénéité lors des diverses présentations.

Tags:

Integrate dynamic charts in Plomino

Linked projects: 

A new (unreleased) feature allows you to integrate Google charts into your plomino form.
More information here: http://www.brehault.net/plomino/news/integrating-charts-into-plomino

Tags:

OpenERP: rapide présentation

OpenERP est un ERP distribué gratuitement sous une licence libre (GPL). Développé pour répondre aux besoins complexes et évolutifs d'entreprises en pleine croissance, il est à la fois flexible et puissant. Avec plus de 200 modules, son champ fonctionnel très large couvre la plupart des besoins de l'entreprise.

Tags:

Première réunion de Ploss Rhône Alpes le 2 décembre 2009

La première réunion de Ploss Rhône Alpes aura lieu le mercredi 2 décembre 2009, sur le salon Entreprise Numérique à Lyon (Eurexpo) à 15h. Rendez-vous à l'Espace club 2 à 15h.

Tags:

collective.remove

Plone has lots of features. collective.remove is a project to remove some features from Plone and be usefull to integrators.
Why ? My customer don’t need them and for performance purpose, it’s good to remove things not used.
What ? This project has three eggs at the moment:

collective.remove.kss
collective.remove.kupu
collective.remove.rules

To know what to remove, it’s per project need. [...]

Tags:

collective.remove

Plone has lots of features. collective.remove is a project to remove some features from Plone and be usefull to integrators.
Why ? My customer don’t need them and for performance purpose, it’s good to remove things not used.
What ? This project has three eggs at the moment:

collective.remove.kss
collective.remove.kupu
collective.remove.rules

To know what to remove, it’s per project need. [...]

Tags:

Permission required decorator for django

Very long time since last post. The new thing in my geek life is I’ve switched to Django.

My last issue today was to display an error message instead of redirecting to login page when the use doesn’t have permission. Here is a decorator which replace the permission_required of django. Feel free to rename it to avoid confusion ;-)

Tags:

How to get rid of intrusive Ubuntu's Notify-OSD

Some people like Ubuntu's Notify-OSD deamon, because black bubbles are good looking; but in everyday's life, these are so intrusive that it becomes really anoying.

Browsing the internet, I found some a nice blog post linking to gnome-stracciatella-session. This ubuntu package was done to get rid of all gnome ubuntu modification, it contains a single xsession file which runs a vanilla gnome, getting rid of Notify-OSD, reverting to gnome default notification-deamon.

Tags:

HOWTO Create complex editable fields with JEditable and make it sending all form content.

Linked projects: 

Problem description

If you are using JEditable, you probably know the nice tutorial and all its very useful comments to create custom editable fields : Create custom input types with JEditable

But JEditable has a point that may be blocking in more complex applications: it only returns one input field to the submitted form/request in charge of editing the record.

And some time this simply does not do the trick.

In a lot of cases you will have to use complex widgets:

Tags:

Import contents & keywords with generic setup

I really like generic setup to build plone instance.
But, I was not able to do some things like setup contents (folders for structure, documents to make some example pages, …), keywords and portlets.
Note: The default import structure step of Plone doesn’t do enought things for me, and I find it hard to use. So I [...]

Tags:

Import contents & keywords with generic setup

I really like generic setup to build plone instance.
But, I was not able to do some things like setup contents (folders for structure, documents to make some example pages, …), keywords and portlets.
Note: The default import structure step of Plone doesn’t do enought things for me, and I find it hard to use. So I [...]

Tags:

More on Static file redirector

So On a previous blog entry http://www.makina-corpus.org/blog/use-rewritemap-prevent-proxying-some-s... I presented the base for a rewriteRule settings to serve some targeted plone static files directly from apache and without proxying to Plone. No let's make this solution even better.
* use a hash map for url mappings
* create a virtual /static url and apply some cache managment rules on his contents
* allow the use of the /satic/ url directly
* ensure only mapped static files are served via this static directory

Tags:

Use RewriteMap to prevent proxying for some static contents

Let's say we would like to prevent an application server to serve static content. And let's take a complex example, Plone. Plone is a Zope based application server and is not using a clean url-map for static contents. We'll take plone as an example but it's not the only app which is not handling static files outside general uri-application-mapping.

Tags:

My Sprint Report : Funkload and Buildbot @ ploneconf2009

Plone need to reach a new QA level: Adding nightly performance tests. It is important when you make a modification on the code to know if there is a impact on the performance of the application. As Elisabeth said in the “unloading plone” conference, measure !
To understand and use technologies, you first need to know [...]

Tags:

My Sprint Report : Funkload and Buildbot @ ploneconf2009

Plone need to reach a new QA level: Adding nightly performance tests. It is important when you make a modification on the code to know if there is a impact on the performance of the application. As Elisabeth said in the “unloading plone” conference, measure !
To understand and use technologies, you first need to know [...]

Tags:

System Theme 6.x-1.0 module released

System theme administration page with Slate theme

Today I released the System Theme++ module on drupal.org. This module is a simple administration theme admin page alteration.

Tags:

Grok 1.0 released

L'équipe de développement "Grok" vient tout juste de publier Grok 1.0 ! Grok 1.0 est l'aboutissement de 3 années de travail depuis le démarrage du projet fin 2006. Grok offre une plateforme de développement stable et puissante permettant de développer toutes sortes d'applications web en mettant l'accent sur l'extensibilité et la réutilisabilité.
[Ce post est une traduction partielle et adaptée de l'annonce officielle de la publication de Grok 1.0]

Tags:

Collection + related items: A great feature of Plone

Today I have worked on Collection (ATTopic). I have discovered a great feature.
You can use related items to choose first results. It can be very useful to manage a home page. First results are the most important items because they are the most read.
So choosing first items is important and at the same time [...]

Tags:

Collection + related items: A great feature of Plone

Today I have worked on Collection (ATTopic). I have discovered a great feature.
You can use related items to choose first results. It can be very useful to manage a home page. First results are the most important items because they are the most read.
So choosing first items is important and at the same time [...]

Tags:

Import data massively in Plone using Talend + csvreplicata

Linked projects: 

Typical use case: you need to migrate an existing web site to Plone and this web site is using a relational database to store its content.

Talend ( http://www.talend.com ) is a well-known opensource ETL able to read, convert and store data from/to almost any format. Unfortunately, it cannot access a ZODB.

Csvreplicata ( http://www.makina-corpus.org/project/csvreplicata and http://plone.org/products/csvreplicata ) is a Plone product able to import/export any Plone archetypes-based contents (including folder/sub-folder structures).

Tags:

chameleon.zpt versus standard Zope page templates

Chameleon.zpt is a fast Zope Page Template implementation based on the Chameleon template compiler. It's largely compatible with zope.pagetemplate. Some benchmarks says Chameleon is 16x faster !

Chameleon page templates differ from standard Zope page templates in a few simple aspects which I propose to discover.

Tags:

Assises du numérique 2009 : interview de David Sapiro, président de PLOSS

Les Assises du numériques 2009 se dérouleront le 1er octobre à l'Université Paris Dauphine. A cette occasion, David Sapiro, président de PLOSS, explique le rôle de l'association et son implication dans ce programme gouvernemental.

Tags:

How to install Oracle 10g (Full 64 bits version, not XE) and Tora on GNU Linux Ubuntu Karmic 9.10 (64 bits version)

Linked projects: 

Why installing Oracle 64 bits

Ubuntu provides a nice and easy tutorial for installing Oracle 10 XE on 32 bits systems, thats works also on 64bits sytems, but:

  • This is for Oracle XE, non standard or enterprise edition
  • Database is limited to 5 simultaneous connections
  • Default Tora 64 bits won't work on 64 bits systems with the Oralce XE 32 bits editions
  • Oracle XE is limited in functionalities, url_quote, for example, is not provided with this distribution
Tags:

Private Pypi setup

I have succeed in seting up a full private pypi. So I want to share this.
First you need to install a Plone on a server with plone software center. Our system administrators has setup DNS to this plone with apache + http auth + SSL (https) and has given me one login / password.
Next you [...]

Tags:

Private Pypi setup

I have succeed in seting up a full private pypi. So I want to share this.
First you need to install a Plone on a server with plone software center. Our system administrators has setup DNS to this plone with apache + http auth + SSL (https) and has given me one login / password.
Next you [...]

Tags:

Cherokee, to deploy and serve faster

I’ve been deploying a new Django application at work with Apache and mod_wsgi (it’s now the recommended way, instead of mod_python) but that still painful and slow to serve static content.
proud

Les membres de l'association PLOSS soutiennent massivement l'événement Open World Forum 2009

Réunis autour du thème « les logiciels libres, au cœur de la relance numérique », les acteurs mondiaux de l'Open Source organisent les 1er et 2 octobre 2009 le deuxième sommet international (Open World Forum – OWF) dédié aux décideurs pour débattre de l'impact technologique, économique et social des technologies ouvertes.

Tags:

13 membres de l'association PLOSS seront présents à Solutions Linux 2009

L'association PLOSS (Paris Libre Open Source Software) sera largement représentée au prochain salon « Solutions Linux 2009 » par treize (13) de ses membres et une présence active sur le village du Libre parrainé par la région Île de France et les Pôles de Compétitivité Cap Digital et System@tic Paris Region.

Tags:

Daily WTF

What The Fuck Cat

Today, I found the strangiest bug of the month; I was parsing some date parts with JavaScript to properly set default month of a YUI Calendar instance.

var month = parseInt(Drupal.settings.mymodule.date.month) - 1;
myCalendar.setMonth(month);

Why -1? Because month count starts with 0 in YUI Calendar, January is 0, december is 11; everything is fine until here.

Why the FUCK does my calendar always get to december?

Tags:

A word about version number in packaging / release with pypi

I often see lots of information about version number on release. I would like to explain it. For sure their is lots of different use case but here, I speak about a code you are writing and want to package.
For me there are 4 parts:

Major version number
Feature version indice
Current level of release
Status of the release

Major [...]

Tags:

A word about version number in packaging / release with pypi

I often see lots of information about version number on release. I would like to explain it. For sure their is lots of different use case but here, I speak about a code you are writing and want to package.
For me there are 4 parts:

Major version number
Feature version indice
Current level of release
Status of the release

Major [...]

Tags: