[Erp5-report] r37391 rafael - in /erp5/release/candidate: ./ helpers/ instance-profiles/ lo...

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Aug 2 06:06:42 CEST 2010


Author: rafael
Date: Mon Aug  2 06:06:40 2010
New Revision: 37391

URL: http://svn.erp5.org?rev=37391&view=rev
Log:
Updated Release Candidate for 5.4.6 to revision 37390.

Added:
    erp5/release/candidate/software-profiles/python-2.7.cfg
    erp5/release/candidate/software-profiles/xpdf.cfg
Modified:
    erp5/release/candidate/CANDIDATE.txt
    erp5/release/candidate/README-2.12.txt
    erp5/release/candidate/README.txt
    erp5/release/candidate/helpers/debian.lenny.sh
    erp5/release/candidate/helpers/mandriva2010.0.sh
    erp5/release/candidate/instance-profiles/apache.cfg
    erp5/release/candidate/instance-profiles/memcached.cfg
    erp5/release/candidate/instance-profiles/mysql.cfg
    erp5/release/candidate/instance-profiles/oood.cfg
    erp5/release/candidate/instance-profiles/testrunner.cfg
    erp5/release/candidate/local-eggs/   (props changed)
    erp5/release/candidate/local-eggs/EXTERNALS.TXT
    erp5/release/candidate/local-eggs/localbin/setup.py
    erp5/release/candidate/profiles/common.cfg
    erp5/release/candidate/profiles/deployment-2.12.cfg
    erp5/release/candidate/profiles/deployment.cfg
    erp5/release/candidate/profiles/development-2.12.cfg
    erp5/release/candidate/profiles/development.cfg
    erp5/release/candidate/profiles/minimal.cfg
    erp5/release/candidate/profiles/official-2.12.cfg
    erp5/release/candidate/profiles/official.cfg
    erp5/release/candidate/profiles/release.cfg
    erp5/release/candidate/profiles/software-definition.cfg
    erp5/release/candidate/profiles/test.cfg
    erp5/release/candidate/profiles/versions-2.12.cfg
    erp5/release/candidate/profiles/versions.cfg
    erp5/release/candidate/release-patch/unindexObject.patch
    erp5/release/candidate/software-profiles/apache.cfg
    erp5/release/candidate/software-profiles/erp5.cfg
    erp5/release/candidate/software-profiles/flare.cfg
    erp5/release/candidate/software-profiles/garbage-collector.cfg
    erp5/release/candidate/software-profiles/graphviz.cfg
    erp5/release/candidate/software-profiles/imagemagick.cfg
    erp5/release/candidate/software-profiles/memcached.cfg
    erp5/release/candidate/software-profiles/mysql-tritonn-5.0.cfg
    erp5/release/candidate/software-profiles/ocropus.cfg
    erp5/release/candidate/software-profiles/openoffice-bin.cfg
    erp5/release/candidate/software-profiles/python-2.4.cfg
    erp5/release/candidate/software-profiles/varnish.cfg
    erp5/release/candidate/software-profiles/w3m.cfg
    erp5/release/candidate/templates/httpd.conf.in
    erp5/release/candidate/templates/httpd.in
    erp5/release/candidate/templates/httpd.vhost.conf.in
    erp5/release/candidate/tests/assertSoftware.py

Modified: erp5/release/candidate/CANDIDATE.txt
URL: http://svn.erp5.org/erp5/release/candidate/CANDIDATE.txt?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/CANDIDATE.txt [utf8] (original)
+++ erp5/release/candidate/CANDIDATE.txt [utf8] Mon Aug  2 06:06:40 2010
@@ -1,8 +1,24 @@
 RELEASE CANDIDATE NOTES FOR 5.4.6 RELEASE
-==========================================
+============================================
 
 This release candidate buildout is temporary. This folder will be 
 kept during the tests and reviewing of Candidate, and it will be 
 removed after release be ready.
 
 DON'T USE THIS BUILDOUT FOR PRODUCTION ONLY FOR TESTING PROPOSE.
+
+CHANGE LOG
+============
+
+5.4.6 RC1 (2010-08-02)
+------------------------
+
+Updated Release Candidate for 5.4.6 using revision 37390
+[Rafael Monnerat]
+
+5.4.6 RC0 (2010-07-06)
+------------------------
+
+Initial Release Candidate for 5.4.6 using revision 36706
+[Rafael Monnerat]
+

Modified: erp5/release/candidate/README-2.12.txt
URL: http://svn.erp5.org/erp5/release/candidate/README-2.12.txt?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/README-2.12.txt [utf8] (original)
+++ erp5/release/candidate/README-2.12.txt [utf8] Mon Aug  2 06:06:40 2010
@@ -38,12 +38,15 @@ Run the Zope 2.12 buildout:
 
   $ cd ~/erp5.buildout
   $ python2.6 -S bootstrap/bootstrap.py -v 1.4.3
-  $ bin/buildout -v -c buildout-2.12.cfg
+  $ python2.6 -S bin/buildout -v -c buildout-2.12.cfg
 
 This will download and install the software components needed to run ERP5 on
 Zope 2.12 including Zope 2.12 plus dependencies (including
 Acquisition with _aq_dynamic patch) and CMF 2.2 plus dependencies.
 
+Note on -S: this switch is overridden by PYTHON_PATH environment variable. In
+doubt, unset it before invoking that command.
+
 System dependency check
 -----------------------
 
@@ -51,7 +54,7 @@ Each software component in this buildout
 dependencies, including development libraries and executables.
 To query what is required for all components, please run:
 
-  $ bin/buildout install show-requirements
+  $ python2.6 -S bin/buildout install show-requirements
 
 Minimal requirements
 --------------------
@@ -117,7 +120,7 @@ parts =
   supervisor-instance
 ^D
 $ ~/erp5.buildout/bin/bootstrap2.6      # 4
-$ bin/buildout -ov                      # 5
+$ python2.6 -S bin/buildout -ov         # 5
 
 Notice how we managed to run buildout in "offline-mode" (-o). The software-home
 configuration (along with the 'extends-cache' in the 'instance-profiles'
@@ -139,7 +142,7 @@ $ $EDITOR buildout.cfg                  
 
 Then run buildout again to finish the configuration
 
-$ bin/buildout -ov                      # 8
+$ python2.6 -S bin/buildout -ov         # 8
 
 Now a fully configured development instance will be available in the directory
 "var/development-instance", so you can do:

Modified: erp5/release/candidate/README.txt
URL: http://svn.erp5.org/erp5/release/candidate/README.txt?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/README.txt [utf8] (original)
+++ erp5/release/candidate/README.txt [utf8] Mon Aug  2 06:06:40 2010
@@ -108,11 +108,11 @@ parts =
 software_home = /home/MYUSER/erp5.buildout
 ^D
 $ ~/erp5.buildout/bin/python2.4 bootstrap/bootstrap.py -c my_instances.cfg
-$ bin/buildout -c my_instances.cfg
+$ python -S bin/buildout -c my_instances.cfg
 $ var/bin/supervisord # it will start supervisor and configured software
 $ $EDITOR my_instances.cfg
 # add "runUnitTest" and "development-site" to parts
-$ bin/buildout -c my_instances.cfg
+$ python -S bin/buildout -c my_instances.cfg
 
 Fully configured development instance will be available in var/development-site.
 
@@ -129,7 +129,10 @@ $ cd software
 $ echo '[buildout]' >> buildout.cfg
 $ echo 'extends = https://svn.erp5.org/repos/public/erp5/trunk/buildout/buildout.cfg' >> buildout.cfg
 $ wget -qO - http://svn.zope.org/*checkout*/zc.buildout/trunk/bootstrap/bootstrap.py | python -S -
-$ bin/buildout
+$ python -S bin/buildout
+
+Note on -S: this switch is overridden by PYTHON_PATH environment variable. In
+doubt, unset it before invoking that command.
 
 After some time everything shall be locally available.
 

Modified: erp5/release/candidate/helpers/debian.lenny.sh
URL: http://svn.erp5.org/erp5/release/candidate/helpers/debian.lenny.sh?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/helpers/debian.lenny.sh [utf8] (original)
+++ erp5/release/candidate/helpers/debian.lenny.sh [utf8] Mon Aug  2 06:06:40 2010
@@ -9,6 +9,9 @@ flex
 gcc
 gettext
 libboost-dev
+libboost-program-options-dev
+libboost-regex-dev
+libboost-serialization-dev
 libbz2-dev
 libgc-dev
 libgdbm-dev

Modified: erp5/release/candidate/helpers/mandriva2010.0.sh
URL: http://svn.erp5.org/erp5/release/candidate/helpers/mandriva2010.0.sh?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/helpers/mandriva2010.0.sh [utf8] (original)
+++ erp5/release/candidate/helpers/mandriva2010.0.sh [utf8] Mon Aug  2 06:06:40 2010
@@ -26,7 +26,6 @@ libSDL_gfx-devel
 libSDL_image-devel
 libboost-devel
 libbzip2-devel
-libgc-devel
 libgdbm-devel
 libglib2-devel
 libgomp-devel

Modified: erp5/release/candidate/instance-profiles/apache.cfg
URL: http://svn.erp5.org/erp5/release/candidate/instance-profiles/apache.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/instance-profiles/apache.cfg [utf8] (original)
+++ erp5/release/candidate/instance-profiles/apache.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -17,17 +17,29 @@ recipe = collective.recipe.template
 input = ${software_definition:software_home}/templates/httpd.in
 output = ${buildout:data-bin-directory}/httpd
 config-path = ${apache-conf:output}
+binary = ${software_definition:software_home}/parts/apache/bin/httpd
 mode = 755
 
 [apache-vhost]
 recipe = collective.recipe.template
 input = ${software_definition:software_home}/templates/httpd.vhost.conf.in
 output = ${buildout:var-directory}/etc/httpd.vhost.conf
+httpd_port = ${configuration:httpd_port}
+httpd_htdocs = ${configuration:httpd_htdocs}
+httpd_vhost_rewrite_rules = ${configuration:httpd_vhost_rewrite_rules}
 
 [apache-conf]
 recipe = collective.recipe.template
 input = ${software_definition:software_home}/templates/httpd.conf.in
 output = ${buildout:var-directory}/etc/httpd.conf
+server_root = ${software_definition:software_home}/parts/apache
+httpd_port = ${configuration:httpd_port}
+httpd_htdocs = ${configuration:httpd_htdocs}
+httpd_cgibin = ${configuration:httpd_cgibin}
+httpd_extra_conf = ${configuration:httpd_extra_conf}
+error_log = ${buildout:log-directory}/httpd/error_log
+access_log = ${buildout:log-directory}/httpd/access_log
+include_config = ${buildout:var-directory}/etc/*.vhost.conf
 
 [apache-instance]
 depends =

Modified: erp5/release/candidate/instance-profiles/memcached.cfg
URL: http://svn.erp5.org/erp5/release/candidate/instance-profiles/memcached.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/instance-profiles/memcached.cfg [utf8] (original)
+++ erp5/release/candidate/instance-profiles/memcached.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -3,6 +3,7 @@ parts = memcached-instance
 
 [memcached-instance]
 depends =
+  #XXX-JPS : NO PLURALS
   ${create-directories:command}
 recipe = erp5.recipe.memcachedserver
 
@@ -11,6 +12,11 @@ memcached_bin_folder = ${buildout:data-b
 memcached_conf_file = ${buildout:etc-directory}/memcached.conf
 instancehome = ${buildout:var-directory}/var/memcached
 
+
+### JPS : Problem : promise-based config : We don't know if goal is reached
+### + don't crush everything each time if nothing changed
+### + specify the goal
+
 # Configuration goes here
 # -p
 memcached_tcp_port = 11211

Modified: erp5/release/candidate/instance-profiles/mysql.cfg
URL: http://svn.erp5.org/erp5/release/candidate/instance-profiles/mysql.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/instance-profiles/mysql.cfg [utf8] (original)
+++ erp5/release/candidate/instance-profiles/mysql.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -8,7 +8,7 @@ parts =
 
 [configuration]
 mysql_port = 10002
-mysql_host = 127.0.0.1
+mysql_host = 0.0.0.0
 # below are candidates to be removed from global configuration
 mysql_datadir = ${buildout:var-directory}/mysql
 mysql_pid = ${:mysql_datadir}/mysql.pid

Modified: erp5/release/candidate/instance-profiles/oood.cfg
URL: http://svn.erp5.org/erp5/release/candidate/instance-profiles/oood.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/instance-profiles/oood.cfg [utf8] (original)
+++ erp5/release/candidate/instance-profiles/oood.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -24,7 +24,7 @@ oood_tmp = ${:oood_run}
 oood_host = 127.0.0.1
 oood_port = ${configuration:oood_port}
 oood_pool_host = localhost
-oood_pool_range_start = 4060
+oood_pool_range_start = ${configuration:oood_pool_range_start}
 oood_instance_load_time = 20
 oood_instance_timeout = 360
 oood_virtual_display_id = 99
@@ -34,6 +34,7 @@ oood_log_file = ${buildout:log-directory
 
 [configuration]
 oood_port = 8008
+oood_pool_range_start = 4060
 
 [oood-directories]
 recipe = plone.recipe.command

Modified: erp5/release/candidate/instance-profiles/testrunner.cfg
URL: http://svn.erp5.org/erp5/release/candidate/instance-profiles/testrunner.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/instance-profiles/testrunner.cfg [utf8] (original)
+++ erp5/release/candidate/instance-profiles/testrunner.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -5,6 +5,9 @@
 recipe = erp5.recipe.testrunner
 zope2-location = ${software_definition:zope_software}
 
+# For now it is required define location like this.
+location = ${buildout:parts-directory}/test-runner
+
 # Extend products, bt5_path should be always defined
 # when this template be used.
 products =
@@ -31,3 +34,5 @@ initialization =
   sys.argv.insert(1, '--erp5_sql_connection_string=${:mysql_database_name}@${configuration:mysql_host}:${configuration:mysql_port} ${:mysql_user}')
   sys.argv.insert(1, '--conversion_server_port=${configuration:oood_port}')
   sys.argv.insert(1, '--use_dummy_mail_host')
+  os.environ['REAL_INSTANCE_HOME'] = '${:location}'
+

Propchange: erp5/release/candidate/local-eggs/
------------------------------------------------------------------------------
--- svn:externals (original)
+++ svn:externals Mon Aug  2 06:06:40 2010
@@ -3,6 +3,5 @@
 # BEWARE: Any addition might be removed without further notice.
 # To play with eggs use mr.developer and publish eggs in proper places
 
-z3c.recipe.openoffice -r114272 http://svn.zope.org/repos/main/z3c.recipe.openoffice/branches/erp5-downloadcache
-Acquisition -r114272 svn://svn.zope.org/repos/main/Acquisition/branches/erp5-aq_dynamic
-Products.DCWorkflow -r114272 svn://svn.zope.org/repos/main/Sandbox/lra/branches/restore-WorkflowMethod-Products.DCWorkflow
+Acquisition -r115367 svn://svn.zope.org/repos/main/Acquisition/branches/erp5-aq_dynamic
+Products.DCWorkflow -r115367 svn://svn.zope.org/repos/main/Sandbox/lra/branches/restore-WorkflowMethod-Products.DCWorkflow

Modified: erp5/release/candidate/local-eggs/EXTERNALS.TXT
URL: http://svn.erp5.org/erp5/release/candidate/local-eggs/EXTERNALS.TXT?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/local-eggs/EXTERNALS.TXT [utf8] (original)
+++ erp5/release/candidate/local-eggs/EXTERNALS.TXT [utf8] Mon Aug  2 06:06:40 2010
@@ -3,6 +3,5 @@
 # BEWARE: Any addition might be removed without further notice.
 # To play with eggs use mr.developer and publish eggs in proper places
 
-z3c.recipe.openoffice -r114272 http://svn.zope.org/repos/main/z3c.recipe.openoffice/branches/erp5-downloadcache
-Acquisition -r114272 svn://svn.zope.org/repos/main/Acquisition/branches/erp5-aq_dynamic
-Products.DCWorkflow -r114272 svn://svn.zope.org/repos/main/Sandbox/lra/branches/restore-WorkflowMethod-Products.DCWorkflow
+Acquisition -r115367 svn://svn.zope.org/repos/main/Acquisition/branches/erp5-aq_dynamic
+Products.DCWorkflow -r115367 svn://svn.zope.org/repos/main/Sandbox/lra/branches/restore-WorkflowMethod-Products.DCWorkflow

Modified: erp5/release/candidate/local-eggs/localbin/setup.py
URL: http://svn.erp5.org/erp5/release/candidate/local-eggs/localbin/setup.py?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/local-eggs/localbin/setup.py [utf8] (original)
+++ erp5/release/candidate/local-eggs/localbin/setup.py [utf8] Mon Aug  2 06:06:40 2010
@@ -8,7 +8,10 @@ setup(
     version = version,
     author = "Lukasz Nowak",
     author_email = "luke at nexedi.com",
-    description = "ZC Buildout recipe to invoke full python interpreter",
+    description = "Generates python wrapper around python interpreter",
+    long_description = "Generates python wrapper, which acts like normal "\
+        "python interpreter, but containing full list of additional python "\
+        "paths",
     license = "ZPL 2.1",
     keywords = "python interpreter",
     packages = find_packages(),

Modified: erp5/release/candidate/profiles/common.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/common.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/common.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/common.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,7 @@
+# Common configuration for public erp5 code (business templates and products).
+# it also defines standard repository sources (find-link) and default structure
+# parts (create-directories).
+
 [buildout]
 find-links =
     http://download.zope.org/distribution/
@@ -7,6 +11,12 @@ find-links =
     http://www.nexedi.org/static/packages/source/
     http://ibid.omnia.za.net/eggs/
 
+extensions =
+  mr.developer
+  buildout.dumppickedversions
+
+dump-picked-versions-file = dumped-versions.cfg
+overwrite-picked-versions-file = true
 [create-directories]
 recipe = plone.recipe.command
 command =
@@ -192,7 +202,6 @@ urls =
 
 [products-erp5]
 recipe = infrae.subversion
-ignore_verification = true
 revision = ${versions:erp5_products_revision}
 base = https://svn.erp5.org/repos/public/erp5/trunk/products
 urls =

Modified: erp5/release/candidate/profiles/deployment-2.12.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/deployment-2.12.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/deployment-2.12.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/deployment-2.12.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,8 @@
+# This Configuration file is used to to define a standard deployment, without 
+# any create instances. This should create the basic services required for run 
+# one ERP5 instance, like MySQL server, Oood and so on. For use this configuration
+# it is required build a software home previously.
+
 [buildout]
 extends =
   ../instance-profiles/apache.cfg

Modified: erp5/release/candidate/profiles/deployment.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/deployment.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/deployment.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/deployment.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,7 @@
+# This Configuration file is used to to define a standard deployment, without 
+# any create instances. This should create the basic services required for run 
+# one ERP5 instance, like MySQL server, Oood and so on. For use this configuration
+# it is required build a software home previously.
 [buildout]
 extends =
   ../instance-profiles/apache.cfg

Modified: erp5/release/candidate/profiles/development-2.12.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/development-2.12.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/development-2.12.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/development-2.12.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,26 +1,35 @@
+# This Configuration file is used to create a standard instance for developers. 
+# You should build a software home before use this recipe.
+
 [buildout]
-extends =
-  ../profiles/deployment-2.12.cfg
+extends = ../profiles/deployment-2.12.cfg
 
 parts +=
   development-site
+  runUnitTest
+
+[configuration]
+development_site_bt5_path =
+
+development_site_products =
+  ${software_definition:products-erp5}
+  ${software_definition:products-erp5-development}
+  ${software_definition:products-deps}
+
+development_site_instancehome = ${buildout:var-directory}/development-site
 
 [software_definition]
 software_home = ${buildout:directory}
 
 [runUnitTest]
-recipe = erp5.recipe.testrunner
+<= test-runner-template
 eggs = ${development-site:eggs}
 extra-paths = ${development-site:extra-paths}
-products =
-  ${development-site:products}
+products = ${configuration:development_site_products}
 
-# XXX have this list be populated by software_definition keys. Maybe adjust
-# erp5.recipe.testrunner to accept this parameter in multiple lines and convert
-# to this comma separated list.  
-bt5_path = ${development-site:bt5-path},${business-templates:paths}
+bt5_path = ${configuration:development_site_bt5_path}
 
-instance-home = ${development-site:instancehome}
+instance-home = ${configuration:development_site_instancehome}
 initialization =
   import os
   os.environ['PATH'] = ':'.join(['${buildout:data-bin-directory}','${buildout:bin-directory}'] + os.environ.get('PATH','').split(':'))
@@ -53,15 +62,13 @@ mysql_superpassword =
 
 # zope.conf template part BEGIN
 debug-mode = on
-instancehome = ${buildout:var-directory}/development-site
+instancehome = ${configuration:development_site_instancehome}
 http-address = 18080
 # until we will have more control over products we need to redefine to insert
 # local products to be able to override
 products =
   ${:instancehome}/Products/
-  ${software_definition:products-erp5}
-  ${software_definition:products-erp5-development}
-  ${software_definition:products-deps}
+  ${configuration:development_site_products}
 # zope.conf template part ENDS
 
 [requirements]

Modified: erp5/release/candidate/profiles/development.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/development.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/development.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/development.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,6 @@
+# This Configuration file is used to create a standard instance for developers. 
+# You should build a software home before use this recipe.
+
 [buildout]
 extends = ../profiles/deployment.cfg
 
@@ -17,9 +20,8 @@ development_site_products =
   ${software_definition:products-cmf15}
 
 development_site_instancehome = ${buildout:var-directory}/development-site
-
-[software_definition]
-software_home = ${buildout:directory}
+# Use 0.0.0.0 makes site get broken.
+mysql_host = 127.0.0.1
 
 [runUnitTest]
 <= test-runner-template

Modified: erp5/release/candidate/profiles/minimal.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/minimal.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/minimal.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/minimal.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,6 @@
+# Minimial configuration
+# Generates minimal ERP5 software without any dependencies, only products used
+# in Zope
 [buildout]
 extends =
   ../profiles/versions.cfg

Modified: erp5/release/candidate/profiles/official-2.12.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/official-2.12.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/official-2.12.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/official-2.12.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,8 +1,5 @@
 [buildout]
 software_home = ${:directory}
-extensions +=
-  mr.developer
-  buildout.dumppickedversions
 
 extends =
   ../profiles/versions-2.12.cfg
@@ -26,6 +23,7 @@ extends =
   ../software-profiles/rdiff-backup.cfg
   ../software-profiles/w3m.cfg
   ../software-profiles/varnish.cfg
+  ../software-profiles/xpdf.cfg
   ../profiles/common.cfg
 
 python = software_definition
@@ -43,10 +41,11 @@ parts =
   rdiff-backup
   ocropus
   haproxy
+  varnish
   flare
   w3m
+  xpdf
   imagemagick
-  varnish
   mysql-tritonn-5.0
   mysql-python
   products-erp5

Modified: erp5/release/candidate/profiles/official.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/official.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/official.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/official.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,7 +1,8 @@
+# Official configuration
+# Generates full ERP5 software with all needed dependencies (including python,
+# mysql, frontend, load balancer, etc.)
 [buildout]
 software_home = ${:directory}
-extensions +=
-  buildout.dumppickedversions
 
 extends =
   ../profiles/versions.cfg
@@ -25,6 +26,7 @@ extends =
   ../software-profiles/rdiff-backup.cfg
   ../software-profiles/w3m.cfg
   ../software-profiles/varnish.cfg
+  ../software-profiles/xpdf.cfg
   ../software-profiles/zope-2.8.cfg
   ../profiles/common.cfg
 
@@ -33,16 +35,17 @@ versions = versions
 
 parts =
   eggs
+  rdiff-backup
   apache
   memcached
-  rdiff-backup
   ocropus
   haproxy
   varnish
   flare
   w3m
-  imagemagick
+  xpdf
   mysql-tritonn-5.0
+  imagemagick
   zope-2.8
   cmf15
   itools
@@ -55,6 +58,7 @@ parts =
   products-other
   openoffice-bin
   oood
+  software_home
 
 [show-requirements]
 recipe = plone.recipe.command
@@ -71,3 +75,11 @@ software_home = ${buildout:software_home
 # Thanks to this it is possible to build mysql-python part in own environment
 # with local mysql, but by default buildout mysql will be used.
 mysql_software = ${mysql-tritonn-5.0:location}
+executable = ${python2.4:executable}
+
+
+[software_home]
+recipe = collective.recipe.template
+input = ${buildout:software_home}/templates/software-home.inc.in
+output = ${buildout:software_home}/instance-profiles/software-home.inc
+

Modified: erp5/release/candidate/profiles/release.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/release.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/release.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/release.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,7 @@
+# This Configuration is used as a central local for define a release. All the 
+# additional configuration required for a certain release should be added into 
+# this file. This file should be kept empty by default and only be modified into 
+# during a release.
 [buildout]
 extends = ../profiles/official.cfg
 
@@ -7,5 +11,4 @@ parts += release-patch
 recipe = plone.recipe.command
 command =
   cd ${buildout:directory}/parts/products-erp5/ && patch -p2 < ${buildout:directory}/release-patch/unindexObject.patch
-  cd ${buildout:directory}/parts/products-erp5/ && patch -p0 < ${buildout:directory}/release-patch/ERP5-tests-from-instance.patch && patch -p0 < ${buildout:directory}/release-patch/ERP5Type-tests-from-instance.patch
 update-command = echo "Do nothing"

Modified: erp5/release/candidate/profiles/software-definition.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/software-definition.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/software-definition.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/software-definition.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,6 @@
+# Standard definition of where the softwares are located, this information
+# is used when build appliacations instances.
+
 [buildout]
 var-directory = ${:directory}/var
 etc-directory = ${:var-directory}/etc

Modified: erp5/release/candidate/profiles/test.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/test.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/test.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/test.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,7 @@
+# Configuration file for create a test envionment, this should
+# contains everything required (including dependencies) to run 
+# all unit tests. For use this build software in advance.
+
 [buildout]
 extends = ../profiles/development.cfg
 

Modified: erp5/release/candidate/profiles/versions-2.12.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/versions-2.12.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/versions-2.12.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/versions-2.12.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,3 +1,5 @@
+# Place for define the versions of libraries and source revision to
+# be used when build your system, for zope 2.12.
 [buildout]
 
 extends =
@@ -14,9 +16,10 @@ ipython = 0.10
 numpy = 1.3.0
 plone.recipe.zope2instance = 3.6
 erp5.recipe.standaloneinstance >= 0.4
+erp5.recipe.mysqlserver >= 1.1.3
 rdiff-backup = 1.0.5
 pysvn = 1.7.2
-xml-marshaller = 0.9a
+xml-marshaller >= 0.9.2
 lxml = 2.2.6
 # Use SOAPpy from http://ibid.omnia.za.net/eggs/ instead of
 # http://www.nexedi.org/static/packages/source/ due to SyntaxError on
@@ -29,3 +32,4 @@ Acquisition =
 
 erp5_products_revision =
 erp5_bt5_revision = ${:erp5_products_revision}
+z3c.recipe.openoffice = 0.3.1dev

Modified: erp5/release/candidate/profiles/versions.cfg
URL: http://svn.erp5.org/erp5/release/candidate/profiles/versions.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/profiles/versions.cfg [utf8] (original)
+++ erp5/release/candidate/profiles/versions.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,35 +1,40 @@
 [versions]
 # taken from https://svn.erp5.org/repos/public/experimental/erp5.buildout/profiles/versions.cfg
-ClientForm = 0.2.10  
-MySQL-python = 1.2.3 
-Products.ExternalEditor = 1.0a2
+ClientForm = 0.2.10
+MySQL-python = 1.2.3
+Products.ExternalEditor = 1.0
 PyXML = 0.8.4
-SOAPpy = 0.12.0.1  
-cElementTree = 1.0.5-20051216  
-collective.recipe.supervisor = 0.10 
-collective.recipe.template = 1.8 
-elementtree = 1.2.7-20070827-preview   
+SOAPpy = 0.12.0.1
+argparse = 1.1
+cElementTree = 1.0.5-20051216
+collective.recipe.supervisor = 0.10.1
+collective.recipe.template = 1.8
+elementtree = 1.2.7-20070827-preview
+erp5.recipe.bt5checkout = 0.1
 erp5.recipe.memcachedserver = 0.0.4
-erp5.recipe.mysqldatabase = 1.0.1  
-erp5.recipe.mysqlserver = 1.1.2  
+erp5.recipe.mysqldatabase = 1.0.2
+erp5.recipe.mysqlserver = 1.1.3
 erp5.recipe.ooodinstance = 0.0.1
-erp5.recipe.softwarebuild = 0.1.1  
-erp5.recipe.standaloneinstance = 0.4.1 
-erp5.recipe.testrunner = 1.0.4  
-erp5.recipe.zope2install = 1.0  
+erp5.recipe.softwarebuild = 0.1.1
+erp5.recipe.standaloneinstance = 0.4.1
+erp5.recipe.testrunner = 1.0.5
+erp5.recipe.zope2install = 1.0
+erp5.timmy = 0.5
 erp5_bt5_revision = ${:erp5_products_revision}
-erp5_products_revision = @36706
-erp5diff = 0.8.0   
+erp5_products_revision = @37390
+erp5diff = 0.8.1.0
 fpconst = 0.7.2
 hexagonit.recipe.cmmi = 1.3.0
 hexagonit.recipe.download = 1.4.1
 infrae.subversion = 1.4.5
+invokepython = 0.2
 ipdb = 0.1
 ipython = 0.10
 itools = 0.20.8
 lxml = 2.2.6
-mechanize = 0.2.1
+mechanize = 0.2.2
 meld3 = 0.6.6
+mr.developer = 1.15
 numpy = 1.3.0
 paramiko = 1.7.6
 plone.recipe.command = 1.1
@@ -37,12 +42,12 @@ plone.recipe.distros = 1.5
 plone.recipe.zope2install = 3.2
 plone.recipe.zope2instance = 3.6
 ply = 3.3
-py = 1.3.1
+py = 1.3.3
 pycrypto = 2.1.0
 pysvn = 1.7.2
 python-ldap = 2.3.11
 python-memcached = 1.45
-pytz = 2010h
+pytz = 2010k
 rdiff-backup = 1.0.5
 setuptools = 0.6c11
 simplejson = 2.1.1
@@ -50,8 +55,9 @@ supervisor = 3.0a8
 threadframe = 0.2
 timerserver = 2.0
 uuid = 1.30
-xml-marshaller = 0.9a
+xml-marshaller = 0.9.3
 xupdate-processor = 0.1
+z3c.recipe.openoffice = 0.3.1dev
 zc.buildout = 1.5.0b2
 zc.recipe.cmmi = 1.3.1
 zc.recipe.egg = 1.2.3b2

Modified: erp5/release/candidate/release-patch/unindexObject.patch
URL: http://svn.erp5.org/erp5/release/candidate/release-patch/unindexObject.patch?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/release-patch/unindexObject.patch [utf8] (original)
+++ erp5/release/candidate/release-patch/unindexObject.patch [utf8] Mon Aug  2 06:06:40 2010
@@ -1,28 +1,29 @@
 diff --git a/products/CMFActivity/Activity/SQLBase.py b/products/CMFActivity/Activity/SQLBase.py
-index 0ff6520..8f9317f 100644
+index 0ff6520..ec8f2ae 100644
 --- a/products/CMFActivity/Activity/SQLBase.py
 +++ b/products/CMFActivity/Activity/SQLBase.py
-@@ -33,8 +33,18 @@
+@@ -27,14 +27,20 @@
+ ##############################################################################
+ 
+ import sys
++import transaction
+ from zLOG import LOG, TRACE, INFO, WARNING, ERROR
+ from ZODB.POSException import ConflictError
+ from Products.CMFActivity.ActivityTool import (
    MESSAGE_NOT_EXECUTED, MESSAGE_EXECUTED)
  from Products.CMFActivity.ActiveObject import (
    INVOKE_ERROR_STATE, VALIDATE_ERROR_STATE)
--from Queue import VALIDATION_ERROR_DELAY
 +from Products.CMFActivity.ActivityRuntimeEnvironment import (
 +  ActivityRuntimeEnvironment, getTransactionalVariable)
-+from Queue import VALIDATION_ERROR_DELAY, abortTransactionSynchronously
+ from Queue import VALIDATION_ERROR_DELAY
  
-+try:
-+  from transaction import get as get_transaction
-+except ImportError:
-+  pass
-+
 +# Stop electing more messages for processing if more than this number of
 +# objects are impacted by elected messages.
 +MAX_GROUPED_OBJECTS = 100
  
  def sort_message_key(message):
    # same sort key as in SQL{Dict,Queue}_readMessageList
-@@ -129,6 +139,256 @@ def _log(self, severity, summary):
+@@ -129,6 +135,256 @@ def _log(self, severity, summary):
      LOG(self.__class__.__name__, severity, summary,
          error=severity>INFO and sys.exc_info() or None)
  
@@ -211,7 +212,7 @@ index 0ff6520..8f9317f 100644
 +      # version - to ZODB connector.
 +      # So all connectors must be committed now that we have selected
 +      # everything needed from MySQL to get a fresh view of ZODB objects.
-+      get_transaction().commit()
++      transaction.commit()
 +      tv = getTransactionalVariable(None)
 +      tv['activity_runtime_environment'] = activity_runtime_environment
 +      # Try to invoke
@@ -222,7 +223,7 @@ index 0ff6520..8f9317f 100644
 +          'Exception raised when invoking messages (uid, path, method_id) %r'
 +          % [(m.uid, m.object_path, m.method_id) for m in message_list])
 +        try:
-+          abortTransactionSynchronously()
++          transaction.abort()
 +        except:
 +          # Unfortunately, database adapters may raise an exception against
 +          # abort.
@@ -241,21 +242,21 @@ index 0ff6520..8f9317f 100644
 +          self._log(TRACE, 'Freed messages %r' % to_free_uid_list)
 +      # Abort if something failed.
 +      if [m for m in message_list if m.getExecutionState() == MESSAGE_NOT_EXECUTED]:
-+        endTransaction = abortTransactionSynchronously
++        endTransaction = transaction.abort
 +      else:
-+        endTransaction = get_transaction().commit
++        endTransaction = transaction.commit
 +      try:
 +        endTransaction()
 +      except:
 +        self._log(WARNING,
 +          'Failed to end transaction for messages (uid, path, method_id) %r'
 +          % [(m.uid, m.object_path, m.method_id) for m in message_list])
-+        if endTransaction == abortTransactionSynchronously:
++        if endTransaction == transaction.abort:
 +          self._log(PANIC, 'Failed to abort executed messages.'
 +            ' Some objects may be modified accidentally.')
 +        else:
 +          try:
-+            abortTransactionSynchronously()
++            transaction.abort()
 +          except:
 +            self._log(PANIC, 'Failed to abort executed messages which also'
 +              ' failed to commit. Some objects may be modified accidentally.')
@@ -273,22 +274,19 @@ index 0ff6520..8f9317f 100644
 +          self._log(TRACE, 'Freed messages %r' % (message_list, ))
 +      self.finalizeMessageExecution(activity_tool, message_list,
 +                                    uid_to_duplicate_uid_list_dict)
-+    get_transaction().commit()
++    transaction.commit()
 +    return not message_list
 +
    def finalizeMessageExecution(self, activity_tool, message_list,
                                 uid_to_duplicate_uid_list_dict=None):
      """
 diff --git a/products/CMFActivity/Activity/SQLDict.py b/products/CMFActivity/Activity/SQLDict.py
-index 6cf5b7f..43e72a8 100644
+index 85488b7..4ab082c 100644
 --- a/products/CMFActivity/Activity/SQLDict.py
 +++ b/products/CMFActivity/Activity/SQLDict.py
-@@ -27,18 +27,12 @@
- ##############################################################################
- 
+@@ -29,16 +29,10 @@
  from Products.CMFActivity.ActivityTool import registerActivity, MESSAGE_NOT_EXECUTED, MESSAGE_EXECUTED
--from Queue import VALID, INVALID_PATH, abortTransactionSynchronously
-+from Queue import VALID, INVALID_PATH
+ from Queue import VALID, INVALID_PATH
  from RAMDict import RAMDict
 -from Products.CMFActivity.ActiveObject import INVOKE_ERROR_STATE, VALIDATE_ERROR_STATE
  from Products.CMFActivity.Errors import ActivityFlushError
@@ -301,9 +299,9 @@ index 6cf5b7f..43e72a8 100644
 -  ActivityRuntimeEnvironment, getTransactionalVariable)
 -from zExceptions import ExceptionFormatter
  
- try:
-   from transaction import get as get_transaction
-@@ -51,9 +45,6 @@
+ import transaction
+ 
+@@ -48,9 +42,6 @@
  MAX_VALIDATED_LIMIT = 1000 
  # Read up to this number of messages to validate.
  READ_MESSAGE_LIMIT = 1000
@@ -313,7 +311,7 @@ index 6cf5b7f..43e72a8 100644
  
  MAX_MESSAGE_LIST_SIZE = 100
  
-@@ -134,33 +125,6 @@ def getRegisteredMessageList(self, activity_buffer, activity_tool):
+@@ -131,33 +122,6 @@ def getRegisteredMessageList(self, activity_buffer, activity_tool):
      message_list = activity_buffer.getMessageList(self)
      return [m for m in message_list if m.is_registered]
  
@@ -347,7 +345,7 @@ index 6cf5b7f..43e72a8 100644
    def getDuplicateMessageUidList(self, activity_tool, line, processing_node):
      """
        Reserve unreserved messages matching given line.
-@@ -191,202 +155,7 @@ def getDuplicateMessageUidList(self, activity_tool, line, processing_node):
+@@ -188,202 +152,7 @@ def getDuplicateMessageUidList(self, activity_tool, line, processing_node):
        raise
      return uid_list
  
@@ -494,7 +492,7 @@ index 6cf5b7f..43e72a8 100644
 -      # version - to ZODB connector.
 -      # So all connectors must be committed now that we have selected
 -      # everything needed from MySQL to get a fresh view of ZODB objects.
--      get_transaction().commit()
+-      transaction.commit()
 -      tv = getTransactionalVariable(None)
 -      tv['activity_runtime_environment'] = activity_runtime_environment
 -      # Try to invoke
@@ -503,7 +501,7 @@ index 6cf5b7f..43e72a8 100644
 -      except:
 -        LOG('SQLDict', WARNING, 'Exception raised when invoking messages (uid, path, method_id) %r' % ([(m.uid, m.object_path, m.method_id) for m in message_list], ), error=sys.exc_info())
 -        try:
--          abortTransactionSynchronously()
+-          transaction.abort()
 -        except:
 -          # Unfortunately, database adapters may raise an exception against abort.
 -          LOG('SQLDict', PANIC,
@@ -520,18 +518,18 @@ index 6cf5b7f..43e72a8 100644
 -          LOG('SQLDict', TRACE, 'Freed messages %r' % (to_free_uid_list))
 -      # Abort if something failed.
 -      if [m for m in message_list if m.getExecutionState() == MESSAGE_NOT_EXECUTED]:
--        endTransaction = abortTransactionSynchronously
+-        endTransaction = transaction.abort
 -      else:
--        endTransaction = get_transaction().commit
+-        endTransaction = transaction.commit
 -      try:
 -        endTransaction()
 -      except:
 -        LOG('SQLDict', WARNING, 'Failed to end transaction for messages (uid, path, method_id) %r' % ([(m.uid, m.object_path, m.method_id) for m in message_list], ), error=sys.exc_info())
--        if endTransaction == abortTransactionSynchronously:
+-        if endTransaction == transaction.abort:
 -          LOG('SQLDict', PANIC, 'Failed to abort executed messages. Some objects may be modified accidentally.')
 -        else:
 -          try:
--            abortTransactionSynchronously()
+-            transaction.abort()
 -          except:
 -            LOG('SQLDict', PANIC, 'Failed to abort executed messages which also failed to commit. Some objects may be modified accidentally.')
 -            raise
@@ -545,13 +543,13 @@ index 6cf5b7f..43e72a8 100644
 -        else:
 -          LOG('SQLDict', TRACE, 'Freed messages %r' % (message_list, ))
 -      self.finalizeMessageExecution(activity_tool, message_list, uid_to_duplicate_uid_list_dict)
--    get_transaction().commit()
+-    transaction.commit()
 -    return not message_list
 +  dequeueMessage = SQLBase.dequeueMessage
  
    def hasActivity(self, activity_tool, object, method_id=None, only_valid=None, active_process_uid=None):
      hasMessage = getattr(activity_tool, 'SQLDict_hasMessage', None)
-@@ -533,9 +302,10 @@ def distribute(self, activity_tool, node_count):
+@@ -530,9 +299,10 @@ def distribute(self, activity_tool, node_count):
                message_list.sort(key=sort_message_key)
                deletable_uid_list += [m.uid for m in message_list[1:]]
              message = message_list[0]
@@ -564,7 +562,7 @@ index 6cf5b7f..43e72a8 100644
                serialization_tag_dict.setdefault(serialization_tag,
                                                  []).append(message)
            # Don't let through if there is the same serialization tag in the
-@@ -545,15 +315,15 @@ def distribute(self, activity_tool, node_count):
+@@ -542,15 +312,15 @@ def distribute(self, activity_tool, node_count):
            # does not stop validating together. Because those messages should
            # be processed together at once.
            for message_list in serialization_tag_dict.itervalues():
@@ -586,16 +584,14 @@ index 6cf5b7f..43e72a8 100644
              activity_tool.SQLBase_delMessage(table=self.sql_table,
                                               uid=deletable_uid_list)
 diff --git a/products/CMFActivity/Activity/SQLQueue.py b/products/CMFActivity/Activity/SQLQueue.py
-index 4cd415d..bf2d217 100644
+index 53a6984..3a3bc9c 100644
 --- a/products/CMFActivity/Activity/SQLQueue.py
 +++ b/products/CMFActivity/Activity/SQLQueue.py
-@@ -28,16 +28,10 @@
- 
+@@ -29,15 +29,9 @@
  from Products.CMFActivity.ActivityTool import registerActivity, MESSAGE_NOT_EXECUTED, MESSAGE_EXECUTED
  from RAMQueue import RAMQueue
--from Queue import VALID, INVALID_PATH, abortTransactionSynchronously
+ from Queue import VALID, INVALID_PATH
 -from Products.CMFActivity.ActiveObject import INVOKE_ERROR_STATE, VALIDATE_ERROR_STATE
-+from Queue import VALID, INVALID_PATH
  from Products.CMFActivity.Errors import ActivityFlushError
  from ZODB.POSException import ConflictError
 -from types import ClassType
@@ -606,8 +602,8 @@ index 4cd415d..bf2d217 100644
 -  ActivityRuntimeEnvironment, getTransactionalVariable)
  from zExceptions import ExceptionFormatter
  
- try:
-@@ -51,17 +45,6 @@
+ import transaction
+@@ -48,17 +42,6 @@
  MAX_VALIDATED_LIMIT = 1000
  # Read this many messages to validate.
  READ_MESSAGE_LIMIT = 1000
@@ -625,7 +621,7 @@ index 4cd415d..bf2d217 100644
  
  MAX_MESSAGE_LIST_SIZE = 100
  
-@@ -86,6 +69,8 @@ def prepareQueueMessageList(self, activity_tool, message_list):
+@@ -83,6 +66,8 @@ def prepareQueueMessageList(self, activity_tool, message_list):
        method_id_list = [m.method_id for m in registered_message_list]
        priority_list = [m.activity_kw.get('priority', 1) for m in registered_message_list]
        date_list = [m.activity_kw.get('at_date', None) for m in registered_message_list]
@@ -634,7 +630,7 @@ index 4cd415d..bf2d217 100644
        tag_list = [m.activity_kw.get('tag', '') for m in registered_message_list]
        serialization_tag_list = [m.activity_kw.get('serialization_tag', '') for m in registered_message_list]
        dumped_message_list = [self.dumpMessage(m) for m in registered_message_list]
-@@ -95,6 +80,7 @@ def prepareQueueMessageList(self, activity_tool, message_list):
+@@ -92,6 +77,7 @@ def prepareQueueMessageList(self, activity_tool, message_list):
                                                method_id_list=method_id_list,
                                                priority_list=priority_list,
                                                message_list=dumped_message_list,
@@ -642,7 +638,7 @@ index 4cd415d..bf2d217 100644
                                                date_list=date_list,
                                                tag_list=tag_list,
                                                processing_node_list=None,
-@@ -113,162 +99,14 @@ def finishDeleteMessage(self, activity_tool_path, m):
+@@ -110,162 +96,14 @@ def finishDeleteMessage(self, activity_tool_path, m):
      # Nothing to do in SQLQueue.
      pass
  
@@ -750,7 +746,7 @@ index 4cd415d..bf2d217 100644
 -      # version - to ZODB connector.
 -      # So all connectors must be committed now that we have selected
 -      # everything needed from MySQL to get a fresh view of ZODB objects.
--      get_transaction().commit()
+-      transaction.commit()
 -      tv = getTransactionalVariable(None)
 -      for m in message_list:
 -        tv['activity_runtime_environment'] = ActivityRuntimeEnvironment(m)
@@ -763,15 +759,15 @@ index 4cd415d..bf2d217 100644
 -            # successfull messages to be rolled back. This commit might fail,
 -            # so it is protected the same way as activity execution by the
 -            # same "try" block.
--            get_transaction().commit()
+-            transaction.commit()
 -          else:
--            # This message failed, revert.
--            abortTransactionSynchronously()
+-            # This message failed, abort.
+-            transaction.abort()
 -        except:
 -          value = m.uid, m.object_path, m.method_id
 -          LOG('SQLQueue', WARNING, 'Exception raised when invoking message (uid, path, method_id) %r' % (value, ), error=sys.exc_info())
 -          try:
--            abortTransactionSynchronously()
+-            transaction.abort()
 -          except:
 -            # Unfortunately, database adapters may raise an exception against abort.
 -            LOG('SQLQueue', PANIC, 'abort failed, thus some objects may be modified accidentally')
@@ -802,7 +798,7 @@ index 4cd415d..bf2d217 100644
 -          LOG('SQLQueue', TRACE, 'Freed messages %r' % (to_free_uid_list, ))
 -      self.finalizeMessageExecution(activity_tool,
 -                                    message_list[:processed_count])
--    get_transaction().commit()
+-    transaction.commit()
 -    return not message_list
 +    return ()
  
@@ -810,7 +806,7 @@ index 4cd415d..bf2d217 100644
  
    def hasActivity(self, activity_tool, object, method_id=None, only_valid=None, active_process_uid=None):
      hasMessage = getattr(activity_tool, 'SQLQueue_hasMessage', None)
-@@ -419,6 +257,12 @@ def distribute(self, activity_tool, node_count):
+@@ -416,6 +254,12 @@ def distribute(self, activity_tool, node_count):
              # Sort list of messages to validate the message with highest score
              message_list.sort(key=sort_message_key)
              distributable_uid_set.add(message_list[0].uid)
@@ -824,7 +820,7 @@ index 4cd415d..bf2d217 100644
            if distributable_count:
              activity_tool.SQLBase_assignMessage(table=self.sql_table,
 diff --git a/products/CMFActivity/ActivityTool.py b/products/CMFActivity/ActivityTool.py
-index 1fe991e..adab3fb 100644
+index 1fe991e..2199f3f 100644
 --- a/products/CMFActivity/ActivityTool.py
 +++ b/products/CMFActivity/ActivityTool.py
 @@ -1172,16 +1172,18 @@ def invoke(self, message):
@@ -865,7 +861,7 @@ index 1fe991e..adab3fb 100644
 +            if m.hasExpandMethod():
 +              subobject_list = m.getObjectList(self)
 +            else:
-+              subobject_list = obj,
++              subobject_list = (obj,)
 +            for subobj in subobject_list:
                path = subobj.getPath()
 -              if path not in path_dict:
@@ -912,7 +908,7 @@ index 1fe991e..adab3fb 100644
          except:
            m.setExecutionState(MESSAGE_NOT_EXECUTED, context=self)
  
-@@ -1238,39 +1227,34 @@ def invokeGroup(self, method_id, message_list):
+@@ -1238,39 +1227,36 @@ def invokeGroup(self, method_id, message_list):
          if len(expanded_object_list) > 0:
            method = self.unrestrictedTraverse(method_id)
            # FIXME: how to apply security here?
@@ -956,6 +952,8 @@ index 1fe991e..adab3fb 100644
 -          m = new_message_list[i]
 -          if i in failed_message_dict:
 +        for m, obj in new_message_list:
++          # We use id of kw dict (persistent object) to know if there is a
++          # failed 3-tuple corresponding to Message m.
 +          if id(m.kw) in failed_message_set:
              m.setExecutionState(MESSAGE_NOT_EXECUTED, context=self)
            else:
@@ -1342,10 +1340,10 @@ index 17ca67a..8c22150 100644
    <dtml-sqlvar expr="serialization_tag_list[loop_item]" type="string">,
    <dtml-sqlvar expr="message_list[loop_item]" type="string">
 diff --git a/products/CMFActivity/tests/testCMFActivity.py b/products/CMFActivity/tests/testCMFActivity.py
-index ccb5aec..34f2857 100644
+index e92a255..2fc65d7 100644
 --- a/products/CMFActivity/tests/testCMFActivity.py
 +++ b/products/CMFActivity/tests/testCMFActivity.py
-@@ -433,7 +433,7 @@ def TryActiveProcess(self, activity):
+@@ -430,7 +430,7 @@ def TryActiveProcess(self, activity):
    def TryActiveProcessInsideActivity(self, activity):
      """
      Try two levels with active_process, we create one first
@@ -1354,7 +1352,7 @@ index ccb5aec..34f2857 100644
      uses another active process
      """
      portal = self.getPortal()
-@@ -1883,26 +1883,26 @@ def test_79_AbortTransactionSynchronously(self, quiet=0, run=run_all_test):
+@@ -1872,26 +1872,26 @@ def test_79_AbortTransactionSynchronously(self, quiet=0, run=run_all_test):
      getattr(organisation, 'uid')
  
  
@@ -1389,13 +1387,13 @@ index ccb5aec..34f2857 100644
      from Products.ERP5Type.Document.Folder import Folder
      Folder.setFoobar = setFoobar    
  
-@@ -1915,46 +1915,65 @@ def getFoobar(self):
+@@ -1904,46 +1904,65 @@ def getFoobar(self):
  
      # Test group_method_id is working without group_id
      for x in xrange(5):
 -      organisation.activate(activity='SQLDict', group_method_id="organisation_module/setFoobar").reindexObject(number=1)
 +      organisation.activate(activity=activity, group_method_id="organisation_module/setFoobar").reindexObject(number=1)
-       get_transaction().commit()      
+       transaction.commit()      
  
      message_list = portal.portal_activities.getMessageList()
      self.assertEquals(len(message_list),5)
@@ -1410,7 +1408,7 @@ index ccb5aec..34f2857 100644
      for x in xrange(5):
 -      organisation.activate(activity='SQLDict', group_method_id="organisation_module/setFoobar", group_id="1").reindexObject(number=1)
 +      organisation.activate(activity=activity, group_method_id="organisation_module/setFoobar", group_id="1").reindexObject(number=1)
-       get_transaction().commit()      
+       transaction.commit()      
  
      message_list = portal.portal_activities.getMessageList()
      self.assertEquals(len(message_list),5)
@@ -1426,16 +1424,16 @@ index ccb5aec..34f2857 100644
      for x in xrange(5):
 -      organisation.activate(activity='SQLDict', group_method_id="organisation_module/setFoobar", group_id="1").reindexObject(number=1)
 +      organisation.activate(activity=activity, group_method_id="organisation_module/setFoobar", group_id="1").reindexObject(number=1)
-       get_transaction().commit()      
+       transaction.commit()      
 -      organisation.activate(activity='SQLDict', group_method_id="organisation_module/setFoobar", group_id="2").reindexObject(number=3)
 +      organisation.activate(activity=activity, group_method_id="organisation_module/setFoobar", group_id="2").reindexObject(number=3)
-       get_transaction().commit()
+       transaction.commit()
 -      organisation.activate(activity='SQLDict', group_method_id="organisation_module/setFoobar", group_id="1").reindexObject(number=1)
 +      organisation.activate(activity=activity, group_method_id="organisation_module/setFoobar", group_id="1").reindexObject(number=1)
-       get_transaction().commit()
+       transaction.commit()
 -      organisation.activate(activity='SQLDict', group_method_id="organisation_module/setFoobar", group_id="3").reindexObject(number=5)
 +      organisation.activate(activity=activity, group_method_id="organisation_module/setFoobar", group_id="3").reindexObject(number=5)
-       get_transaction().commit()
+       transaction.commit()
  
      message_list = portal.portal_activities.getMessageList()
      self.assertEquals(len(message_list),20)
@@ -1465,8 +1463,8 @@ index ccb5aec..34f2857 100644
  
    def test_81_ActivateKwForWorkflowTransition(self, quiet=0, run=run_all_test):
      """
-@@ -2020,7 +2039,7 @@ def test_83_ActivityModificationsViaCMFActivityConnectionRolledBackOnErrorSQLDic
-     get_transaction().commit()
+@@ -2009,7 +2028,7 @@ def test_83_ActivityModificationsViaCMFActivityConnectionRolledBackOnErrorSQLDic
+     transaction.commit()
      self.tic()
      activity_tool = self.getActivityTool()
 -    def modifySQLAndFail(self, object_list, **kw):
@@ -1474,8 +1472,8 @@ index ccb5aec..34f2857 100644
        # Only create the dummy activity if none is present: we would just
        # generate missleading errors (duplicate uid).
        if activity_tool.countMessage(method_id='dummy_activity') == 0:
-@@ -2448,7 +2467,7 @@ def test_94_ActivityToolCommitFailureDoesNotCommitCMFActivitySQLConnectionSQLDic
-     get_transaction().commit()
+@@ -2437,7 +2456,7 @@ def test_94_ActivityToolCommitFailureDoesNotCommitCMFActivitySQLConnectionSQLDic
+     transaction.commit()
      self.tic()
      activity_tool = self.getActivityTool()
 -    def modifySQL(self, object_list, *arg, **kw):
@@ -1483,7 +1481,7 @@ index ccb5aec..34f2857 100644
        # Only create the dummy activity if none is present: we would just
        # generate missleading errors (duplicate uid).
        if activity_tool.countMessage(method_id='dummy_activity') == 0:
-@@ -3158,7 +3177,7 @@ def checkMessage(message, exception_type):
+@@ -3147,7 +3166,7 @@ def checkMessage(message, exception_type):
      self.assertEqual(len(message_list), 1)
      message = message_list[0]
      portal.organisation_module._delOb(organisation.id)
@@ -1492,7 +1490,7 @@ index ccb5aec..34f2857 100644
      checkMessage(message, KeyError)
      activity_tool.manageCancel(message.object_path, message.method_id)
      # 2: activity method does not exist when activity is executed
-@@ -3167,7 +3186,8 @@ def checkMessage(message, exception_type):
+@@ -3156,7 +3175,8 @@ def checkMessage(message, exception_type):
      message_list = activity_tool.getMessageList()
      self.assertEqual(len(message_list), 1)
      message = message_list[0]
@@ -1502,7 +1500,7 @@ index ccb5aec..34f2857 100644
      checkMessage(message, KeyError)
      activity_tool.manageCancel(message.object_path, message.method_id)
  
-@@ -3749,7 +3769,6 @@ def test_122_userNotificationSavedOnEventLogWhenSiteErrorLoggerRaisesWithSQLDict
+@@ -3738,7 +3758,6 @@ def test_122_userNotificationSavedOnEventLogWhenSiteErrorLoggerRaisesWithSQLDict
        LOG('Testing... ',0,message)
      self.TryNotificationSavedOnEventLogWhenSiteErrorLoggerRaises('SQLDict')
  
@@ -1510,7 +1508,7 @@ index ccb5aec..34f2857 100644
    def test_123_userNotificationSavedOnEventLogWhenSiteErrorLoggerRaisesWithSQLQueue(self, quiet=0, run=run_all_test):
      if not run: return
      if not quiet:
-@@ -3790,7 +3809,49 @@ def doSomething(self):
+@@ -3779,7 +3798,49 @@ def doSomething(self):
        activity_tool.manageClearActivities(keep=0)
      finally:
        SQLQueue.MAX_MESSAGE_LIST_SIZE = old_MAX_MESSAGE_LIST_SIZE
@@ -1520,7 +1518,7 @@ index ccb5aec..34f2857 100644
 +    activity_tool = self.portal.portal_activities
 +    obj1 = activity_tool.newActiveProcess()
 +    obj2 = activity_tool.newActiveProcess()
-+    get_transaction().commit()
++    transaction.commit()
 +    self.tic()
 +    group_method_call_list = []
 +    def doSomething(self, message_list):
@@ -1534,7 +1532,7 @@ index ccb5aec..34f2857 100644
 +                           group_method_id='portal_activities/doSomething')
 +        obj1.activate(**activity_kw).dummy(1, x=None)
 +        obj2.activate(**activity_kw).dummy(2, y=None)
-+        get_transaction().commit()
++        transaction.commit()
 +        activity_tool.distribute()
 +        activity_tool.tic()
 +        self.assertEqual(group_method_call_list.pop(),
@@ -1546,7 +1544,7 @@ index ccb5aec..34f2857 100644
 +        obj1.activate(priority=1, **activity_kw).dummy2(2, y=None)
 +        message1 = obj1.getPath(), (1,), dict(x=None)
 +        message2 = obj1.getPath(), (2,), dict(y=None)
-+        get_transaction().commit()
++        transaction.commit()
 +        activity_tool.distribute()
 +        self.assertEqual(len(activity_tool.getMessageList()), 2)
 +        activity_tool.tic()

Modified: erp5/release/candidate/software-profiles/apache.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/apache.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/apache.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/apache.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -4,8 +4,8 @@ parts = apache
 [apache]
 # inspired on http://old.aclark.net/team/aclark/blog/a-lamp-buildout-for-wordpress-and-other-php-apps/
 recipe = hexagonit.recipe.cmmi
-url = http://apache.multidist.com/httpd/httpd-2.2.15.tar.gz
-md5sum = 31fa022dc3c0908c6eaafe73c81c65df
+url = http://apache.multidist.com/httpd/httpd-2.2.16.tar.gz
+md5sum = 7f33f2c8b213ad758c009ae46d2795ed
 configure-options = --enable-authn-alias
                     --enable-bucketeer
                     --enable-cache

Modified: erp5/release/candidate/software-profiles/erp5.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/erp5.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/erp5.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/erp5.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -98,7 +98,6 @@ eggs =
   uuid
   xml_marshaller
   xupdate_processor
-  zope.testbrowser
 
 python = python2.4
 extra-paths =

Modified: erp5/release/candidate/software-profiles/flare.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/flare.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/flare.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/flare.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -8,4 +8,4 @@ md5sum = e59ccce1ba29e7edf6f665561678d5c
 configure-options =
   --with-tokyocabinet=${tokyocabinet:location}
 environment =
-  LDFLAGS =-Wl,-rpath=${tokyocabinet:location}/lib
+  LDFLAGS =-Wl,-rpath ${tokyocabinet:location}/lib

Modified: erp5/release/candidate/software-profiles/garbage-collector.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/garbage-collector.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/garbage-collector.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/garbage-collector.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -5,3 +5,8 @@ parts = garbage-collector
 recipe = hexagonit.recipe.cmmi
 md5sum = 2ff9924c7249ef7f736ecfe6f08f3f9b
 url = http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-7.1.tar.gz
+
+# workaround http://github.com/hexagonit/hexagonit.recipe.cmmi/issues#issue/1
+# in typical buildout run
+environment =
+  LDFLAGS =

Modified: erp5/release/candidate/software-profiles/graphviz.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/graphviz.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/graphviz.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/graphviz.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,2 +1,2 @@
 [buildout]
-# placeholder for graphiz software
+# placeholder for graphviz software

Modified: erp5/release/candidate/software-profiles/imagemagick.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/imagemagick.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/imagemagick.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/imagemagick.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -4,3 +4,10 @@ parts = imagemagick
 [imagemagick]
 recipe = hexagonit.recipe.cmmi
 url = http://ftp.nluug.nl/ImageMagick/ImageMagick-6.6.2-4.tar.gz
+
+# workaround http://github.com/hexagonit/hexagonit.recipe.cmmi/issues#issue/1
+# in typical buildout run
+environment =
+  CFLAGS =
+  CXXFLAGS =
+  LDFLAGS =

Modified: erp5/release/candidate/software-profiles/memcached.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/memcached.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/memcached.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/memcached.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -21,5 +21,5 @@ patches =
   ${memcached-strict-aliasing-patch:location}/${memcached-strict-aliasing-patch:filename}
 patch-options = -p1
 environment =
-    LDFLAGS =-Wl,-rpath=${libevent:location}/lib
+    LDFLAGS =-Wl,-rpath ${libevent:location}/lib
 

Modified: erp5/release/candidate/software-profiles/mysql-tritonn-5.0.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/mysql-tritonn-5.0.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/mysql-tritonn-5.0.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/mysql-tritonn-5.0.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -21,12 +21,19 @@ md5sum = 257abe9c4afdc9b08033687fd486a59
 filename = tritonn-1.0.12-mysql-5.0.87.diff
 download-only = true
 
+[mysql-tritonn-hooks-download]
+recipe = hexagonit.recipe.download
+url = https://svn.erp5.org/repos/public/erp5/trunk/buildout/hooks/${:filename}
+filename = mysql-tritonn-hooks.py
+md5sum = 484abb02375e354ef7be0438dc369f85
+download-only = true
+
 [mysql-tritonn-5.0]
 recipe = hexagonit.recipe.cmmi
-url = http://downloads.mysql.com/archives/mysql-5.0/mysql-5.0.87.tar.gz
+url = http://www.nexedi.org/static/tarballs/mysql/mysql-5.0.87.tar.gz
 md5sum = 65e6229cc98b6a8d4c5206d7fe16c7be
-pre-configure-hook = ${buildout:directory}/hooks/mysql-tritonn-hooks.py:pre_configure_hook
-post-make-hook = ${buildout:directory}/hooks/mysql-tritonn-hooks.py:post_make_hook
+pre-configure-hook = ${mysql-tritonn-hooks-download:location}/${mysql-tritonn-hooks-download:filename}:pre_configure_hook
+post-make-hook = ${mysql-tritonn-hooks-download:location}/${mysql-tritonn-hooks-download:filename}:post_make_hook
 # configure: how to avoid searching for my.cnf?
 #  - like in mysql part in http://svn.zope.org/zodbshootout/trunk/buildout.cfg?view=markup
 configure-options =

Modified: erp5/release/candidate/software-profiles/ocropus.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/ocropus.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/ocropus.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/ocropus.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -16,6 +16,10 @@ configure-options =
   ${iulib:location}
 patches = ${ocropus-patch-scons:location}/${ocropus-patch-scons:filename}
 patch-options = -p1
+# workaround http://github.com/hexagonit/hexagonit.recipe.cmmi/issues#issue/1
+# in typical buildout run
+environment =
+  LDFLAGS =
 
 [iulib]
 recipe = hexagonit.recipe.cmmi

Modified: erp5/release/candidate/software-profiles/openoffice-bin.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/openoffice-bin.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/openoffice-bin.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/openoffice-bin.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,8 +1,6 @@
 [buildout]
 parts =
   openoffice-bin
-develop +=
-  local-eggs/z3c.recipe.openoffice
 
 [openoffice-bin]
 #recipe = erp5.recipe.openoffice

Modified: erp5/release/candidate/software-profiles/python-2.4.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/python-2.4.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/python-2.4.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/python-2.4.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -1,11 +1,10 @@
 [buildout]
 extends = ../software-profiles/python-common.cfg
-
-develop += local-eggs/localbin
-
 parts =
     pythonbin2.4
 
+develop += local-eggs/localbin
+
 [python2.4-dbm-patch]
 recipe = hexagonit.recipe.download
 # original patch from http://bugs.gentoo.org/attachment.cgi?id=109117
@@ -18,7 +17,6 @@ filename = python2.4-dbm.patch
 <= python-common
 python_version_major = 2.4
 python_version_minor = 6
-# XXX maybe add the tarfile patch as well?
 patches =
 	${python2.4-dbm-patch:location}/${python2.4-dbm-patch:filename}
 
@@ -30,7 +28,6 @@ eggs = ${eggs:eggs}
   invokepython
 extra-paths =
   ${zope-2.8:location}/lib/python
-dependent-scripts = true
 scripts =
   invokepython=python${python2.4:python_version_major}
   ipython=ipython${python2.4:python_version_major}

Added: erp5/release/candidate/software-profiles/python-2.7.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/python-2.7.cfg?rev=37391&view=auto
==============================================================================
--- erp5/release/candidate/software-profiles/python-2.7.cfg (added)
+++ erp5/release/candidate/software-profiles/python-2.7.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -0,0 +1,29 @@
+[buildout]
+parts =
+    python2.7
+
+[python2.7]
+# This is actually the default setting for prefix, but we can't use it in
+# other settings in this part if we don't set it explicitly here.
+prefix = ${buildout:parts-directory}/${:_buildout_section_name_}
+version = 2.7
+executable = ${:prefix}/bin/python${:version}
+
+recipe = hexagonit.recipe.cmmi
+python_version_full = ${:python_version_major}
+url =
+  http://python.org/ftp/python/2.7/Python-2.7.tgz
+md5sum = 35f56b092ecf39a6bd59d64f142aae0f
+configure-options =
+  --enable-unicode=ucs4
+  --with-threads
+
+python_version_major = 2.7
+
+[bootstrap2.7]
+recipe = zc.recipe.egg
+eggs = zc.buildout
+python = python2.7
+scripts =
+    buildout=bootstrap2.7
+arguments = ["bootstrap"]

Modified: erp5/release/candidate/software-profiles/varnish.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/varnish.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/varnish.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/varnish.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -2,7 +2,7 @@
 parts = varnish
 
 [varnish]
-recipe = zc.recipe.cmmi
+recipe = hexagonit.recipe.cmmi
 url = http://sourceforge.net/projects/varnish/files/varnish/2.0.6/varnish-2.0.6.tar.gz/download
 md5sum = d91dc21c636db61c69b5e8f061c5bb95
 

Modified: erp5/release/candidate/software-profiles/w3m.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/w3m.cfg?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/software-profiles/w3m.cfg [utf8] (original)
+++ erp5/release/candidate/software-profiles/w3m.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -7,4 +7,4 @@ md5sum = ba06992d3207666ed1bf2dcf7c72bf5
 url = http://downloads.sourceforge.net/project/w3m/w3m/w3m-0.5.2/w3m-0.5.2.tar.gz
 configure-options = --with-gc=${garbage-collector:location}
 environment =
-  LDFLAGS =-Wl,-rpath=${garbage-collector:location}/lib
+  LDFLAGS =-Wl,-rpath ${garbage-collector:location}/lib

Added: erp5/release/candidate/software-profiles/xpdf.cfg
URL: http://svn.erp5.org/erp5/release/candidate/software-profiles/xpdf.cfg?rev=37391&view=auto
==============================================================================
--- erp5/release/candidate/software-profiles/xpdf.cfg (added)
+++ erp5/release/candidate/software-profiles/xpdf.cfg [utf8] Mon Aug  2 06:06:40 2010
@@ -0,0 +1,48 @@
+[buildout]
+parts = xpdf
+
+[xpdf]
+<= xpdf-3.02
+
+[xpdf-patch-download]
+recipe = hexagonit.recipe.download
+url = ftp://ftp.foolabs.com/pub/xpdf/${:filename}
+download-only = true
+
+[xpdf-3.02pl1.patch]
+<= xpdf-patch-download
+filename = xpdf-3.02pl1.patch
+md5sum = 877118786dfe27d1b7aa5a6759cc6e45
+
+[xpdf-3.02pl2.patch]
+<= xpdf-patch-download
+filename = xpdf-3.02pl2.patch
+md5sum = 3a5cb165ae66781e0b21e6219ae06795
+
+[xpdf-3.02pl3.patch]
+<= xpdf-patch-download
+filename = xpdf-3.02pl3.patch
+md5sum = 581963ede0fb5715e1a69f01b5b8ce63
+
+[xpdf-3.02pl4.patch]
+<= xpdf-patch-download
+filename = xpdf-3.02pl4.patch
+md5sum = 70b752716798dd341a4bf890df5f6fdc
+
+[xpdf-3.02]
+recipe = hexagonit.recipe.cmmi
+md5sum = 599dc4cc65a07ee868cf92a667a913d2
+url = ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02.tar.gz
+patch-options = -p1
+patches =
+  ${xpdf-3.02pl1.patch:location}/${xpdf-3.02pl1.patch:filename}
+  ${xpdf-3.02pl2.patch:location}/${xpdf-3.02pl2.patch:filename}
+  ${xpdf-3.02pl3.patch:location}/${xpdf-3.02pl3.patch:filename}
+  ${xpdf-3.02pl4.patch:location}/${xpdf-3.02pl4.patch:filename}
+
+# workaround http://github.com/hexagonit/hexagonit.recipe.cmmi/issues#issue/1
+# in typical buildout run
+environment =
+  LDFLAGS =
+
+

Modified: erp5/release/candidate/templates/httpd.conf.in
URL: http://svn.erp5.org/erp5/release/candidate/templates/httpd.conf.in?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/templates/httpd.conf.in [utf8] (original)
+++ erp5/release/candidate/templates/httpd.conf.in [utf8] Mon Aug  2 06:06:40 2010
@@ -1,7 +1,7 @@
-ServerRoot "${software_definition:software_home}/parts/apache"
+ServerRoot "${:server_root}"
 
 #Listen 12.34.56.78:80
-Listen ${configuration:httpd_port}
+Listen ${:httpd_port}
 
 # LoadModule foo_module modules/mod_foo.so
 LoadModule authn_file_module modules/mod_authn_file.so
@@ -86,7 +86,7 @@ Group daemon
 
 ServerAdmin you at example.com
 
-DocumentRoot "${configuration:httpd_htdocs}"
+DocumentRoot "${:httpd_htdocs}"
 
 <Directory />
     Options FollowSymLinks
@@ -95,7 +95,7 @@ DocumentRoot "${configuration:httpd_htdo
     Deny from all
 </Directory>
 
-<Directory "${configuration:httpd_htdocs}">
+<Directory "${:httpd_htdocs}">
     Options Indexes FollowSymLinks
     AllowOverride None
     Order allow,deny
@@ -112,7 +112,7 @@ DocumentRoot "${configuration:httpd_htdo
     Satisfy All
 </FilesMatch>
 
-ErrorLog "${buildout:log-directory}/httpd/error_log"
+ErrorLog "${:error_log}"
 LogLevel warn
 
 <IfModule log_config_module>
@@ -124,15 +124,15 @@ LogLevel warn
       LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
     </IfModule>
 
-    CustomLog "${buildout:log-directory}/httpd/access_log" common
+    CustomLog "${:access_log}" common
 
 </IfModule>
 
 <IfModule alias_module>
-    ScriptAlias /cgi-bin/ "${configuration:httpd_cgibin}"
+    ScriptAlias /cgi-bin/ "${:httpd_cgibin}"
 </IfModule>
 
-<Directory "${configuration:httpd_cgibin}">
+<Directory "${:httpd_cgibin}">
     AllowOverride None
     Options None
     Order allow,deny
@@ -154,6 +154,6 @@ SSLRandomSeed startup builtin
 SSLRandomSeed connect builtin
 </IfModule>
 
-${configuration:httpd_extra_conf}
+${:httpd_extra_conf}
 
-Include ${buildout:var-directory}/etc/*.vhost.conf
+Include ${:include_config}

Modified: erp5/release/candidate/templates/httpd.in
URL: http://svn.erp5.org/erp5/release/candidate/templates/httpd.in?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/templates/httpd.in [utf8] (original)
+++ erp5/release/candidate/templates/httpd.in [utf8] Mon Aug  2 06:06:40 2010
@@ -1,2 +1,2 @@
 #!/bin/bash
-${software_definition:software_home}/parts/apache/bin/httpd -f ${apache-conf:output} $*
+${:binary} -f ${:config-path} $*

Modified: erp5/release/candidate/templates/httpd.vhost.conf.in
URL: http://svn.erp5.org/erp5/release/candidate/templates/httpd.vhost.conf.in?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/templates/httpd.vhost.conf.in [utf8] (original)
+++ erp5/release/candidate/templates/httpd.vhost.conf.in [utf8] Mon Aug  2 06:06:40 2010
@@ -1,6 +1,6 @@
-<VirtualHost *:${configuration:httpd_port}>
+<VirtualHost *:${:httpd_port}>
   ServerName       localhost
-  DocumentRoot     ${configuration:httpd_htdocs}
+  DocumentRoot     ${:httpd_htdocs}
   HostnameLookups  Off
   UseCanonicalName Off
   ServerSignature  Off
@@ -8,7 +8,7 @@
   ProxyVia         on
   ProxyTimeout     1200
 
-${configuration:httpd_vhost_rewrite_rules}
+${:httpd_vhost_rewrite_rules}
 
   <Location "/">
     Order Allow,Deny

Modified: erp5/release/candidate/tests/assertSoftware.py
URL: http://svn.erp5.org/erp5/release/candidate/tests/assertSoftware.py?rev=37391&r1=37390&r2=37391&view=diff
==============================================================================
--- erp5/release/candidate/tests/assertSoftware.py [utf8] (original)
+++ erp5/release/candidate/tests/assertSoftware.py [utf8] Mon Aug  2 06:06:40 2010
@@ -177,12 +177,6 @@ class AssertSoftwareRunable(unittest.Tes
     self.assertEqual(stderr, '')
     self.assertTrue(stdout.startswith('w3m version w3m/0.5.2'))
 
-  def test_lynx(self):
-    stdout, stderr = subprocess.Popen(["parts/lynx/bin/lynx", "-version"],
-        stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()
-    self.assertEqual(stderr, '')
-    self.assertTrue(stdout.startswith('Lynx Version 2.8.7'))
-
 class AssertApache(unittest.TestCase):
   """Tests for built apache"""
 




More information about the Erp5-report mailing list