<?xml version="1.0" ?>

<rss version="2.0">

    <channel>

        <title>Weblog</title>
        <link>http://www.jfroche.be/blogging</link>
        <description>tail /dev/mind &gt; blog</description>

        <generator>basesyndication</generator>
        <!-- TODO
        <lastBuildDate>Mon, 30 Sep 2002 11:00:00 GMT</lastBuildDate>
        <copyright>Copyright 1997-2002 Dave Winer</copyright>
        <docs>http://backend.userland.com/rss</docs>
        <category domain="Syndic8">1765</category>
        <managingEditor>dave@userland.com</managingEditor>
        <webMaster>dave@userland.com</webMaster>
        -->

        <!-- TODO: Should there be an individual image associatable with each
        Weblog object?  I think so... -->
        <image>
            <title>Weblog</title>
            <url>http://www.jfroche.be/logo.png</url>
            <link>http://www.jfroche.be/blogging</link>
        </image>

        
            <item>
                <title>OpenOffice with buildouts</title>
                <guid>http://www.jfroche.be/blogging/archive/2008/01/08/writing-openoffice-documents-from-zope</guid>
                <link>http://www.jfroche.be/blogging/archive/2008/01/08/writing-openoffice-documents-from-zope</link>
                <description>
&lt;p&gt;This recipe was started by &lt;a href="http://www.infrae.com/"&gt;Infrae&lt;/a&gt;, I have added the pyuno egg creation within the recipe. It is so nice to be able to share code so easily !&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Download &lt;a href="http://www.openoffice.org"&gt;OpenOffice&lt;/a&gt; in a buildout might sound odd but &lt;br /&gt;&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;You got used (and I think you are right) to isolate your python environment for each projects (e.g using buildout &amp;amp; virtualenv)&lt;/li&gt;&lt;li&gt;You want to control OpenOffice components with your favourite python using the official OpenOffice library: pyuno&lt;br /&gt;&lt;/li&gt;&lt;li&gt;If you already installed OpenOffice, you might not see how to link your favourite python with the pyuno library provided by the OpenOffice package of your favourite distribution&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;
The &lt;a href="http://udk.openoffice.org/python/python-bridge.html"&gt;python uno library&lt;/a&gt; (aka pyuno) is only delivered with OpenOffice. The library provides access to all OpenOffice UNO api which means:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;read and write doc, odt, rdf, xls and the most common file extension known in the different well known office suites&lt;br /&gt;&lt;/li&gt;&lt;li&gt;generate nice pdf&lt;/li&gt;&lt;li&gt;no xml parsing/transforms when you want to read odt &amp;amp; co&lt;br /&gt;&lt;/li&gt;&lt;li&gt;fill in templates with content (e.g. &lt;a href="http://appyframework.org/pod.html"&gt;pod &lt;/a&gt;)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;drawing shapes&lt;/li&gt;&lt;li&gt;... (you might want to have a look at &lt;a href="http://api.openoffice.org/docs/DevelopersGuide/DevelopersGuide.xhtml"&gt;the OO developper guide&lt;/a&gt; for more informations even if there is lot's of java examples )&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;The only major disadvantage is that it requires to connect to an openoffice process. This can be a problem if your sysadmin don't want to  install a real X server in a production environment but this disadvantage is quickly fixed if you install and use &lt;a href="http://en.wikipedia.org/wiki/Xvfb"&gt;Xvfb&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;This recipe can&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;download OpenOffice from any url (default to OpenOffice 2.3) and extract it in your buildout&lt;br /&gt;&lt;/li&gt;&lt;li&gt;replace the default python interpreter delivered with OO with the one you are using in your buildout&lt;/li&gt;&lt;li&gt;create an egg with pyuno and link it inside your buildout&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;More info about installation and usage of this recipe &lt;a href="http://pypi.python.org/pypi/z3c.recipe.openoffice/0.2"&gt;on pypi&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Linux is only supported by now (and I don't want to be sorry for not having a mac), if you want to fix this the code is &lt;a href="http://svn.zope.org/z3c.recipe.openoffice/trunk"&gt;here&lt;/a&gt; ;)</description>
                <author>jfroche</author>

                
                    <category>Work</category>
                
                
                    <category>plone</category>
                
                
                    <category>zope-3</category>
                

                <pubDate>Tue, 08 Jan 2008 23:13:24 +0100</pubDate>

                
            </item>
        
        
            <item>
                <title>Zope 3 dependencies in Zope 2 buildout</title>
                <guid>http://www.jfroche.be/blogging/archive/2007/12/10/avoid-fetching-zope-3-libraries-in-buildout</guid>
                <link>http://www.jfroche.be/blogging/archive/2007/12/10/avoid-fetching-zope-3-libraries-in-buildout</link>
                <description>
&lt;p&gt;I got tired removing zope.interface, zope.component, zope.deferredimport, zope.event, ... of my eggs folder inside my buildout when installing package such as z3c.sqlalchemy in my Zope2 / Plone buildouts ... &lt;br /&gt;&lt;br /&gt;After the &lt;a href="http://www.nabble.com/buildout-and-egg-depedencies-to14192774.html"&gt;discussion on Zope3-users list&lt;/a&gt; and thanks to Jim lights, I wrote a really &lt;a href="http://pypi.python.org/pypi/affinitic.recipe.fakezope2eggs/0.1"&gt;simple recipe&lt;/a&gt; which just create egg links to zope libraries in your develop-eggs so that setuptools can see that the dependencies are
already satisfied.&lt;/p&gt;
&lt;p&gt;So if you list your zope library :&lt;/p&gt;
&lt;pre&gt;
&lt;p&gt;$ ls yourbuildout/parts/yourzope2/lib/python/zope&lt;br /&gt;&lt;br /&gt;app               configuration    documenttemplate  exceptions  i18n           __init__.py  pagetemplate  schema    structuredtext  testbrowser  viewlet&lt;br /&gt;cachedescriptors  contentprovider  dottedname        formlib     i18nmessageid  interface    proxy         security  tal             testing&lt;br /&gt;component         deprecation      event             hookable    index          modulealias  publisher     server    tales           thread&lt;/p&gt;
&lt;/pre&gt;
&lt;p&gt;You will get &lt;br /&gt;&lt;/p&gt;
&lt;pre&gt;
&lt;p&gt;$ ls yourbuildout/develop-eggs&lt;/p&gt;
&lt;p&gt;zope.app.component.egg-info     zope.app.security.egg-info      zope.dottedname.egg-info     zope.interface.egg-info     zope.structuredtext.egg-info&lt;br /&gt;zope.app.egg-info               zope.app.testing.egg-info       zope.event.egg-info          zope.modulealias.egg-info   zope.tal.egg-info&lt;br /&gt;zope.app.event.egg-info         zope.cachedescriptors.egg-info  zope.exceptions.egg-info     zope.pagetemplate.egg-info  zope.tales.egg-info&lt;br /&gt;zope.app.i18n.egg-info          zope.component.egg-info         zope.formlib.egg-info        zope.proxy.egg-info         zope.testbrowser.egg-info&lt;br /&gt;zope.app.interface.egg-info     zope.configuration.egg-info     zope.hookable.egg-info       zope.publisher.egg-info     zope.testing.egg-info&lt;br /&gt;zope.app.pagetemplate.egg-info  zope.contentprovider.egg-info   zope.i18n.egg-info           zope.schema.egg-info        zope.thread.egg-info&lt;br /&gt;zope.app.publisher.egg-info     zope.deprecation.egg-info       zope.i18nmessageid.egg-info  zope.security.egg-info      zope.viewlet.egg-info&lt;br /&gt;zope.app.schema.egg-info        zope.documenttemplate.egg-info  zope.index.egg-info          zope.server.egg-info&lt;br /&gt;&lt;/p&gt;
&lt;/pre&gt;
&lt;p&gt;Where each of these file will be seen for setuptools as an egg:&lt;br /&gt;&lt;/p&gt;
&lt;pre&gt;$ cat yourbuildout/develop-eggs/zope.app.component.egg-info&lt;br /&gt;&lt;br /&gt;Metadata-Version: 1.0&lt;br /&gt;Name: zope.app.component&lt;br /&gt;Version: 0.0&lt;br /&gt;&lt;/pre&gt;
&lt;p&gt;Sure this might look like an ugly hook but I can't wait for zope 2 eggification&lt;br /&gt;&lt;/p&gt;
</description>
                <author>jfroche</author>

                
                    <category>plone</category>
                
                
                    <category>zope-3</category>
                

                <pubDate>Mon, 10 Dec 2007 18:23:37 +0100</pubDate>

                
            </item>
        
        
            <item>
                <title>Buildout and Virtualenv</title>
                <guid>http://www.jfroche.be/blogging/archive/2007/12/06/buildout-and-virtualenv</guid>
                <link>http://www.jfroche.be/blogging/archive/2007/12/06/buildout-and-virtualenv</link>
                <description>
&lt;p&gt;&lt;a href="http://pypi.python.org/pypi/zc.buildout"&gt;Buildout&lt;/a&gt; is this wonderful tool which helps you to automate setup and configuration of your applications.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://pypi.python.org/pypi/virtualenv"&gt;Virtualenv&lt;/a&gt; is a tool which will help you to isolate your python environment&lt;/p&gt;
A few days ago I got stuck during a long time because I didn't see that one library I installed in my global site-packages of my favourite python 2.4  (on my ubuntu: /usr/lib/python2.4/site-packages/) was a lower version of a library I was using in my buildout. Package was &lt;a href="http://www.sqlalchemy.org"&gt;sqlalchemy&lt;/a&gt; 0.4 in my global sites-package and my buildout based application was using &lt;a href="http://www.sqlalchemy.org"&gt;sqlalchemy&lt;/a&gt; 0.3.8 ... Here is a simple solution to avoid this kind of things. &lt;br /&gt;&lt;br /&gt;Idea is to start buildout with a python free of any external library. &lt;a href="http://pypi.python.org/pypi/virtualenv"&gt;Virtualenv&lt;/a&gt; is the answer.&lt;br /&gt;
&lt;p&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;h3&gt;Install Virtualenv&lt;/h3&gt;
Easy:&lt;br /&gt;&lt;br /&gt;
&lt;pre&gt;&lt;b&gt;$ easy_install virtualenv&lt;/b&gt;&lt;/pre&gt;
&lt;br /&gt;you will have then a file that you can run: &lt;b&gt;/usr/bin/virtualenv&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;Let's say you have a buildout configuration go into it:&lt;br /&gt;&lt;br /&gt;
&lt;pre&gt;&lt;b&gt;$ cd myApp.buildout&lt;br /&gt;$ ls -l&lt;br /&gt;bootstrap.py&lt;br /&gt;buildout.cfg&lt;/b&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/pre&gt;
Now you just have to create the python environment without any access to the global site-packages with virtualenv:&lt;b&gt;&lt;br /&gt;
&lt;pre&gt;$ virtualenv --no-site-packages .&lt;br /&gt;&lt;/pre&gt;
&lt;/b&gt;You will have then your new python in the bin folder :&lt;br /&gt;
&lt;pre&gt;&lt;b&gt;$ ls -l bin&lt;br /&gt;activate&lt;br /&gt;easy_install&lt;br /&gt;easy_install-2.4&lt;br /&gt;python2.4&lt;/b&gt;&lt;br /&gt;&lt;/pre&gt;
You can now run the buildout configuration with your new python:&lt;br /&gt;&lt;b&gt;
&lt;pre&gt;$ ./bin/python2.4 bootstrap.py&lt;br /&gt;$ ./bin/buildout&lt;br /&gt;&lt;/pre&gt;
&lt;/b&gt;This will create you a nice and totally isolated environment ...&lt;br /&gt;&lt;b&gt; &lt;br /&gt;&lt;/b&gt;</description>
                <author>jfroche</author>

                
                    <category>plone</category>
                
                
                    <category>zope-3</category>
                

                <pubDate>Thu, 06 Dec 2007 18:38:16 +0100</pubDate>

                
            </item>
        
        
            <item>
                <title>Write nicer Python code</title>
                <guid>http://www.jfroche.be/blogging/archive/2007/04/28/write-nicer-python-code</guid>
                <link>http://www.jfroche.be/blogging/archive/2007/04/28/write-nicer-python-code</link>
                <description>&lt;p&gt;Starting from the basic facts:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;you can't always code in pair&lt;/li&gt;&lt;li&gt;you don't want to compile &amp;amp; tests to check that is fine in the last few line you have just written&lt;/li&gt;&lt;li&gt;you want to write nice python code&lt;/li&gt;&lt;li&gt;you want to improve the way you write python&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;It exists a few very interesting softwares that can help you.&lt;br /&gt;&lt;br /&gt;Here is a list of the one I am using really often:&lt;br /&gt;&lt;br /&gt;PyFlakes - &lt;a href="http://www.divmod.org/projects/pyflakes" target="_self"&gt;http://www.divmod.org/projects/pyflakes&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;PyLint - &lt;a href="http://www.logilab.org/view?rql=Any%20X%20WHERE%20X%20eid%20857" target="_self"&gt;http://www.logilab.org/view?rql=Any%20X%20WHERE%20X%20eid%20857&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;These two are nice also but not as good as the previous one:&lt;br /&gt;&lt;br /&gt;PyMetrics - &lt;a href="http://sourceforge.net/projects/pymetrics" target="_self"&gt;http://sourceforge.net/projects/pymetrics&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;PyChecker - &lt;a href="http://pychecker.sourceforge.net/" target="_self"&gt;http://pychecker.sourceforge.net/&lt;/a&gt;&lt;br /&gt;  &lt;br /&gt;These tool are directly linked to my favourite editor VI: &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;command Pyflakes :call Pyflakes()&lt;br /&gt;function! Pyflakes()&lt;br /&gt;    let tmpfile = tempname()&lt;br /&gt;    execute "w" tmpfile&lt;br /&gt;    execute "set makeprg=(pyflakes\\ " . tmpfile . "\\\\\\|sed\\ s@" . tmpfile ."@%@)"&lt;br /&gt;    make&lt;br /&gt;    cw&lt;br /&gt;endfunction&lt;/pre&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;command Pylint :call Pylint()&lt;br /&gt;function! Pylint()&lt;br /&gt;    setlocal makeprg=(echo\ '[%]';\ pylint\ %)&lt;br /&gt;    setlocal efm=%+P[%f],%t:\ %#%l:%m&lt;br /&gt;    silent make&lt;br /&gt;    cwindow&lt;br /&gt;    endfunction&lt;/pre&gt;&lt;p&gt;&lt;br /&gt;And better each time you save your python file in vim , I check for wrong imports with Pyflakes with:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;autocmd BufWrite *.{py} :call Pyflakes()&lt;/pre&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description>
                <author>jfroche</author>

                
                    <category>general</category>
                
                
                    <category>plone</category>
                
                
                    <category>zope-3</category>
                

                <pubDate>Sat, 28 Apr 2007 14:09:49 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Watch my new commit...</title>
                <guid>http://www.jfroche.be/blogging/archive/2006/10/24/watch-my-new-commit</guid>
                <link>http://www.jfroche.be/blogging/archive/2006/10/24/watch-my-new-commit</link>
                <description>&lt;p&gt;We will make this in 4 steps.&lt;br /&gt;&lt;br /&gt; &lt;/p&gt;&lt;h3 class="Subheading"&gt;&lt;b&gt;Step 1: Installing pysvn&lt;/b&gt;&lt;/h3&gt;Check that you don't have it yet:&lt;br /&gt;&lt;pre&gt;$ python2.4&lt;br /&gt;Python 2.4.3 (#2, Oct  6 2006, 07:52:30)&lt;br /&gt;[GCC 4.0.3 (Ubuntu 4.0.3-1ubuntu5)] on linux2&lt;br /&gt;Type "help", "copyright", "credits" or "license" for more information.&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; import svn&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/pre&gt;If you get something else (e.g ImportError: No module named svn) you will need to do this step:&lt;br /&gt;&lt;br /&gt;You will need the python library to access subversion: &lt;b&gt;pysvn. &lt;/b&gt;Note that header of the libsvn are required [should come with your subversion install]!&lt;b&gt;&lt;br /&gt;&lt;/b&gt;Go to  &lt;a href="http://pysvn.tigris.org/project_downloads.html" target="_self"&gt;http://pysvn.tigris.org/project_downloads.html&lt;/a&gt; and fetch last tarball (MacOSX version also available). Note that&lt;br /&gt;pysvn is noted there as "Extension". I fetched last stable version: &lt;a href="http://pysvn.tigris.org/files/documents/1233/34994/pysvn-1.5.0.tar.gz" target="_self"&gt;http://pysvn.tigris.org/files/documents/1233/34994/pysvn-1.5.0.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ tar xvzf pysvn-1.5.0.tar.gz &lt;br /&gt; ...&lt;br /&gt;$ cd pysvn-1.5.0/Source&lt;br /&gt;$ python2.4 setup.py configure &lt;br /&gt;...&lt;br /&gt;$ make&lt;br /&gt;...[pray]...&lt;br /&gt;$ mkdir /usr/lib/python2.4/site-packages/pysvn&lt;br /&gt;$ cp pysvn/__init__.py /usr/lib/python2.4/site-packages/pysvn&lt;br /&gt;$ cp pysvn/_pysvn.so /usr/lib/python2.4/site-packages/pysvn&lt;br /&gt;&lt;/pre&gt;
Now try again and you should get something like:&lt;br /&gt;
&lt;pre&gt;$ python2.4&lt;br /&gt;Python 2.4.3 (#2, Oct  6 2006, 07:52:30)&lt;br /&gt;[GCC 4.0.3 (Ubuntu 4.0.3-1ubuntu5)] on linux2&lt;br /&gt;Type "help", "copyright", "credits" or "license" for more information.&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; import svn&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;h3 class="Subheading"&gt;&lt;b&gt;Step 2: Installing SVNMailer&lt;/b&gt;&lt;/h3&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;Go to &lt;a href="http://storage.perlig.de/svnmailer/" target="_self"&gt;http://storage.perlig.de/svnmailer/&lt;/a&gt; and fetch last tarball (stable actual one is: &lt;a href="http://storage.perlig.de/svnmailer/svnmailer-1.0.8.tar.gz" target="_self"&gt;http://storage.perlig.de/svnmailer/svnmailer-1.0.8.tar.gz&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Fallow these steps:&lt;br /&gt;&lt;pre&gt;$ tar xvzf svnmailer-1.0.8.tar.gz&lt;br /&gt;   ...&lt;br /&gt;&lt;br /&gt;$ cd svnmailer-1.0.8&lt;br /&gt;$ /usr/bin/python2.4 setup.py install&lt;br /&gt;   ...&lt;br /&gt;&lt;/pre&gt;&lt;p&gt; You have now a brand new svnmailer installed. Check it with:&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;$ ls -l /usr/bin/svnmailer&lt;br /&gt;-rwxr-xr-x 1 root root 2192 2006-10-24 17:00 /usr/bin/svn-mailer&lt;/pre&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;h3 class="Subheading"&gt;&lt;b&gt;3) Configure your repository to use svnmailer&lt;/b&gt;&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;We created a svn repository:&lt;/p&gt;&lt;pre&gt;$ svnadmin create /var/svn/repos1&lt;/pre&gt;So we have a repository on our local filesystem in&lt;b&gt; /var/svn/repos1&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;Go into the hooks directory:&lt;br /&gt;&lt;pre&gt;$ cd /var/svn/repos1/hooks&lt;/pre&gt;Add/edit &lt;b&gt;post-commit&lt;/b&gt; file.&lt;br /&gt;And add the fallowing lines:&lt;br /&gt;&lt;pre&gt;#!/bin/sh&lt;br /&gt;REPOS="$1"&lt;br /&gt;REV="$2"&lt;br /&gt;/usr/bin/svn-mailer commit "$REPOS" "$REV" /etc/svn-mailer.conf&lt;/pre&gt;Change execute permission on post-commit&lt;br /&gt;&lt;pre&gt;chmod 755 post-commit&lt;br /&gt;&lt;/pre&gt;It's time to configure SVNMailer&lt;br /&gt;&lt;br /&gt;&lt;h3 class="Subheading"&gt;4) Configure SVNMailer&lt;/h3&gt;&lt;br /&gt;Edit/Add the file &lt;b&gt;/etc/svn-mailer.conf&lt;br /&gt;&lt;/b&gt;And add the fallowing lines [you might edit few things...]. Imagine that I have mymodule in my repository (so that i can do svn co file:///var/svn/repos1/mymodule)&lt;b&gt;&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;pre&gt;[general]&lt;br /&gt;# see &lt;a href="http://opensource.perlig.de/svnmailer/doc-1.0/#general" target="_self"&gt;http://opensource.perlig.de/svnmailer/doc-1.0/#general&lt;/a&gt; for details.&lt;br /&gt;&lt;br /&gt;# the diff command to be used ... just copy it...&lt;br /&gt;diff = /usr/bin/diff -u -L %(label_from)s -L %(label_to)s %(from)s %(to)s&lt;br /&gt;# the sendmail location&lt;br /&gt;mail_command = /usr/sbin/sendmail&lt;br /&gt;&lt;br /&gt;[mymodule]&lt;br /&gt;# see &lt;a href="http://opensource.perlig.de/svnmailer/doc-1.0/#groups" target="_self"&gt;http://opensource.perlig.de/svnmailer/doc-1.0/#groups&lt;/a&gt; for details&lt;br /&gt;# this part of the config apply only for commits under mymodule&lt;br /&gt;for_paths = mymodule/.*&lt;br /&gt;&lt;br /&gt;# the subject of the email&lt;br /&gt;commit_subject_prefix = [MYMODULE]&lt;br /&gt;&lt;br /&gt;# From address in the mail&lt;br /&gt;from_addr = jfroche@jfroche.be&lt;br /&gt;&lt;br /&gt;# To address ...&lt;br /&gt;to_addr = peopleinterestinginmymodule@foo.bar&lt;br /&gt;&lt;br /&gt;[defaults]&lt;br /&gt;# see &lt;a href="http://opensource.perlig.de/svnmailer/doc-1.0/#groups" target="_self"&gt;http://opensource.perlig.de/svnmailer/doc-1.0/#groups&lt;/a&gt; for details&lt;br /&gt;# this part of the config apply for all the other module&lt;br /&gt;&lt;br /&gt;# Default From address template&lt;br /&gt;from_addr = %(author)s@localhost.localdomain&lt;br /&gt;&lt;br /&gt;# the subject of the email &lt;br /&gt;commit_subject_prefix = [SVN]&lt;br /&gt;to_addr = jeff@jfroche.be foo@skynet.be bar@gmail.com&lt;br /&gt;generate_diffs = add copy modify&lt;br /&gt;suppress_deletes = yes&lt;br /&gt;&lt;/pre&gt;Here it is... Try to commit and you should get email...&lt;br /&gt;&lt;br /&gt;If you want to traceback error, go to edit /var/svn/repos1/hooks/post-commit and for example log to a file by changing the line&lt;br /&gt;&lt;pre&gt;/usr/bin/svn-mailer commit "$REPOS" "$REV" /etc/svn-mailer.conf&lt;/pre&gt;In &lt;br /&gt;&lt;pre&gt;/usr/bin/svn-mailer commit "$REPOS" "$REV" /etc/svn-mailer.conf 2&amp;gt; 1&amp;gt; /tmp/svnmailer.log&lt;/pre&gt;
Hope this helps ...&lt;br /&gt;</description>
                <author>jfroche</author>

                
                    <category>general</category>
                

                <pubDate>Tue, 24 Oct 2006 18:10:28 +0200</pubDate>

                
            </item>
        
        
            <item>
                <title>Blogging...</title>
                <guid>http://www.jfroche.be/blogging/archive/2006/04/05/blogging</guid>
                <link>http://www.jfroche.be/blogging/archive/2006/04/05/blogging</link>
                <description>&lt;p&gt;Having a blog seems to be a really new fashion among differents communities (young people, developpeurs, scientists, artists ...). &lt;br /&gt;&lt;/p&gt;&lt;p&gt;Blog is a short form for weblog in fact, principe is simple: display at the top the newest written article. &lt;br /&gt;There is different kind of weblog:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Personal : express the life's thoughts&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Professional : express professional experiences&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Cultural : express all your culural (music, movie, paintings...) thoughts&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;Most of my stuffs will be about personal and professional expericences, General will be my personnal thoughts and the others will be topic oriented.&lt;/p&gt;&lt;p&gt;As Zope and Plone are part of my professional fun for the moment these are the actual topics. Don't know if I will be enough talkative to express what I see, feel but it's a good exercice for me. Taking also my place into this so big world...&lt;/p&gt;&lt;p&gt;My previous thoughts about blogging were very negative, thinking that most are unuseful and never read. They were like books inside a cellar that nobody read. Things are changing as you see. While working on a zope 3 stuff, I was yesterday thinking  "hey I should put that somewhere on a page..." and the weblog idea came up again. Don't want to tell myself "you should go there every night and at least write something", something that I will do during few days and stop, I know me. So let's say I will write here when i feel so without any dates constraints.&lt;/p&gt;&lt;p&gt;Spelling, grammar... I am a native french speaker that should take more english lessons. I don't want to write here in french as english is thecommon language in the zope/plone community. I hope people don't mind too much about that ?&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;</description>
                <author>jfroche</author>

                
                    <category>general</category>
                

                <pubDate>Wed, 05 Apr 2006 17:30:03 +0200</pubDate>

                
            </item>
        

    </channel>
</rss>


