[Checkins] SVN: bluebream/website/docs/v1.0/ Updated the docs for the merged template and Distribute

Christophe Combelles ccomb at free.fr
Wed Mar 31 17:09:26 EDT 2010


Log message for revision 110380:
  Updated the docs for the merged template and Distribute
  

Changed:
  U   bluebream/website/docs/v1.0/dev/decisions.rst
  U   bluebream/website/docs/v1.0/gettingstarted.rst
  U   bluebream/website/docs/v1.0/glossary.rst
  U   bluebream/website/docs/v1.0/howto/newdependency.rst
  U   bluebream/website/docs/v1.0/images/gettingstarted1.png
  U   bluebream/website/docs/v1.0/new/whatsnew-1.0.rst
  U   bluebream/website/docs/v1.0/tutorial1.rst

-=-
Modified: bluebream/website/docs/v1.0/dev/decisions.rst
===================================================================
--- bluebream/website/docs/v1.0/dev/decisions.rst	2010-03-31 18:57:56 UTC (rev 110379)
+++ bluebream/website/docs/v1.0/dev/decisions.rst	2010-03-31 21:09:25 UTC (rev 110380)
@@ -6,35 +6,38 @@
 - Shortening BlueBream as Bream or BB is acceptable.  As of now, the
   "BB" shortening is getting popular in community.
 
-- There are only two public APIs exposed by "bluebream - the package"
-  Those APIs are two entry points provided by setuptools which use
+- There is only one public API exposed by "bluebream - the package"
+  This API is an entry point provided by setuptools which use
   PasteScript::
 
     entry_points={
     "paste.paster_create_template":
         ["bluebream = bluebream.bluebream_base.template:BlueBream",
-         "bluebream_simple = bluebream.bluebream_simple.template:BlueBream"
          ]}
 
-- All the framework code will be using "zope" or "zope.app" namespace
-  packages.  Although "bb" could be used as a namespace in future.
+- All the framework code is using "zope" or "zope.app" namespace
+  packages. Although "bb" could be used as a namespace in future.
 
-- "bluebream" the project consists of project templates
+- "bluebream the project" consists of project templates.
 
 - "bluebream_website" is the location where web content is stored.
 
 - "bbkit" is where KGS infrastructure located.
 
-- BlueBream 1.0 should provide an up-gradation path from Zope 3.4 KGS
+- BlueBream 1.0 should provide an upgrade path from Zope 3.4 KGS.
 
-- Any "shell command" required to be repeated should not be automated
-  by the project template.
+- Any "shell command" required to be repeated after project creation should not
+  be automated by the project template.
 
-- Running ``bootstrap.py`` and ``buildout`` inside project should not
-  be added to project template creation for the previous reason.
+- Running ``bootstrap.py`` and ``buildout`` in the project should not
+  be done during project template creation for the previous reason.
   Another supporting reason is the easiness of adding sources to
-  version controlling system.
+  version control systems.
 
+- additional packages contained in namespaces such as "zc", "z3c", or others will
+  be added in the near future, but won't be part of the 1.0 release.
+
+
 .. raw:: html
 
   <div id="disqus_thread"></div><script type="text/javascript"

Modified: bluebream/website/docs/v1.0/gettingstarted.rst
===================================================================
--- bluebream/website/docs/v1.0/gettingstarted.rst	2010-03-31 18:57:56 UTC (rev 110379)
+++ bluebream/website/docs/v1.0/gettingstarted.rst	2010-03-31 21:09:25 UTC (rev 110380)
@@ -32,94 +32,95 @@
 Before proceeding further, let's have an overview of the sections.
 
 - **Preparations:** -- This section discusses about the prerequisites
-  and preparations user need to start a web application project using
+  and preparations the user needs to start a web application project using
   BlueBream.
 
 - **Installation:** -- It gives the user instructions for installing
   BlueBream.
 
 - **Creating a sample project:** -- This section explains the user
-  how to create a sample web application project using ``bluebream``
+  how to create a sample web application project using the ``bluebream``
   project template.
 
-- **Building the application:** -- This section explains the user to
+- **Building the application:** -- This section explains the user how to
   build the application using Buildout.
 
 - **Basic usage:** -- This section explains the basic usage of
-  BlueBream commands.
+  the BlueBream commands.
 
 - **Package directory structure:** -- This section shows the
   directory structure and describes the purpose of each directory and
-  files.
+  file.
 
 - At the end, a few hello world examples are also given.
 
 
 .. _started-preparations:
 
-Preparations
+Requirements
 ------------
 
-This document assumes that user has already installed `Python 2.6
-<http://www.python.org>`_ and `setuptools
-<http://pypi.python.org/pypi/setuptools>`_.  As an alternative to
-setuptools, user can install `distribute
-<http://pypi.python.org/pypi/distribute>`_.  If setuptools or
-distribute is installed then user will get an ``easy_install``
-command which can be used to install ``bluebream`` distribution.
+This document assumes that user has already installed Python_ 2.4, 2.5 or 2.6
+and Distribute_ (or Setuptools_).  If Distribute (or Setuptools) is installed,
+the user will get an ``easy_install`` command which can be used to install the
+``bluebream`` distribution.  Another way of installing ``bluebream`` is by using
+`PIP`_, a replacement for ``easy_install`` which is meant to improve on it.
+Among advantages, you will be able to uninstall packages.
 
-User can also install BlueBream inside a Python environment created
-using `virtualenv <http://pypi.python.org/pypi/virtualenv>`_.
-Although, *virtualenv* may not be required when user is working on
-the application itself because, `Buildout <http://www.buildout.org>`_
-support will be available in the application created.  Buildout is
-the recommended approach to create repeatable, isolated working
-environments.  Buildout is a declarative, configuration driven build
-system created by Jim Fulton.
+The user can also install BlueBream inside an isolated Python environment
+created using `Virtualenv`_.  Although, *virtualenv* is not required when
+working on the application itself, because `Buildout`_ is available by default
+in the application created.  Buildout is the recommended approach to create
+repeatable, isolated working environments.  Buildout is a declarative,
+configuration-driven build system created by Jim Fulton.
 
-It is recommended to use a custom built Python for working with
-BlueBream.  User required to install a C compiler (gcc) in his
-system.  User is required to have internet access to `PyPI
-<http://pypi.python.org/pypi>`_ to perform installation of
-``bluebream`` distribution, to build the application using Buildout
-and to bootstrap the buildout itself.  Internet access is not
-required for deployment if `zc.sourcerelease
-<http://pypi.python.org/pypi/zc.sourcerelease>`_ package is used.
+It is recommended to use a custom-built Python for working with BlueBream. The
+user is required to install a C compiler (gcc) in his system, and to have
+internet access to PyPI_ to perform installation
+of the ``bluebream`` distribution, to bootstrap the buildout, and to build the
+application using Buildout. Internet access is not required for deployment if
+`zc.sourcerelease <http://pypi.python.org/pypi/zc.sourcerelease>`_ package is
+used.
 
 .. _started-installation:
 
 Installation
 ------------
 
-If user has installed `setuptools
-<http://pypi.python.org/pypi/setuptools>`_ or `distribute
-<http://pypi.python.org/pypi/distribute>`_, ``easy_install`` command
-will be available and can be used to install BlueBream.
+If the user has installed Distribute_ (or Setuptools_), an ``easy_install``
+command will be available and can be used to install BlueBream.
 
 ::
 
-  $ easy_install bluebream
+  # easy_install bluebream
 
-As mentioned earlier, Internet access to `PyPI
-<http://pypi.python.org/pypi>`_ is required to perform installation
-of ``bluebream`` distribution.  If user is using any proxy, its upto
-the user to make sure it works.  The ``easy_install`` will look for
-the environment variable named ``http_proxy`` in GNU/Linux platforms.
-User can set it like this::
+or::
 
+  $ sudo easy_install bluebream
+
+Try to avoid running "easy_install" commands as ``root`` or with ``sudo`` for
+larger installation because it can lead to conflicts with the packaging system
+of your OS. Installing the bluebream template like this is ok, because it does
+not pull a lot of dependencies.)
+
+As mentioned earlier, Internet access to PyPI_ is required to perform installation
+of the ``bluebream`` distribution.  If the user is behind a proxy, it's up to
+him to make sure it works.  The ``easy_install`` will look for
+the environment variable named ``http_proxy`` on a GNU/Linux platforms.
+The user can set it like this::
+
  $ export http_proxy="http://username:password@PROXY-IP-ADDRESS:PORT"
 
-Apart from ``bluebream`` distribution, easy_install will download and
-install its dependencies.  The dependencies are:
+Apart from the ``bluebream`` distribution, easy_install will download and
+install a few dependencies.  The dependencies are:
 
-- `PasteScript <http://pypi.python.org/pypi/PasteScript>`_
-- `PasteDeploy <http://pypi.python.org/pypi/PasteDeploy>`_
-- `Paste <http://pypi.python.org/pypi/Paste>`_
+- PasteScript_
+- PasteDeploy_
+- Paste_
 
-The installation of ``bluebream`` project template package is a one
-time process.  Once the project package is ready, user need not
-require the ``bluebream`` project template package anymore because
-the project package user is going to create will be
+Installing the ``bluebream`` template package is a one time process.  Once the
+project package is ready, the user does not need the ``bluebream`` template
+package anymore because the package user is about to create will be
 self-bootstrappable.
 
 .. _started-sample-project:
@@ -127,39 +128,41 @@
 Creating a sample project
 -------------------------
 
-The ``bluebream`` distribution provides project templates based on
-`PasteScript template
-<http://pythonpaste.org/script/developer.html>`_.  Once BlueBream is
-installed, run ``paster`` command to create the project directory
-structure.  The ``create`` sub-command provided by ``paster`` will
-show a wizard to create the project directory structure.
+The ``bluebream`` distribution provides a project template based on PasteScript_
+templates.  Once BlueBream is installed, run the ``paster`` command to create
+the project directory structure.  The ``create`` sub-command provided by
+``paster`` will show a command-line wizard to create the project directory
+structure.
 
 ::
 
   $ paster create -t bluebream
 
-This will bring a wizard asking details about the new project.  User
-can choose to provide package name, namespace package name and
-version number in the wizard itself otherwise these details can also
-be modified later.  Now, user gets a working application with project
-name as the name of the egg.
+This will bring a wizard asking details about the new project.  The user can
+choose the package name and version number in the wizard itself. These details
+can also be modified later.  Now, the user gets a working application with the
+project name as the name of the egg. The project name can be a dotted name, if
+the user wants his project to be part of a namespace. Any number of namespace
+levels can be used. The project can be called 'sample', 'sample.main' or
+'sample.app.main' or anything deeper if necessary. The subfolder structure will
+be created accordingly.
 
 Here is a screenshot of sample project creation:
 
 .. image:: images/gettingstarted1.png
 
-The project name as well as namespace package name can be given as a
+The project name and other parameters can be given as a
 command line argument::
 
   $ paster create -t bluebream sampleproject
 
-  $ paster create -t bluebream sampleproject namespace_package=mycompany
+  $ paster create -t bluebream sampleproject version=0.1
 
-User does not get asked by the wizard for the options whose values
-are already passed through command line.Other variables can also be
-given values from command line, if required:
+The user does not get asked by the wizard for the options whose values
+are already passed through command line. Other variables can also be
+given values from the command line, if required:
 
-- ``interpreter`` -- Name of custom Python interpreter
+- ``interpreter`` -- Name of the custom Python interpreter
 
 - ``version`` -- Version (like 0.1)
 
@@ -186,76 +189,83 @@
    user can choose to provide the details at a later stage by simply
    pressing *Enter/Return* key.
 
-.. note:: Alternate Project Templates
 
-   An alternate project template named ``bluebream_simple`` is also
-   available, and its `documented in the wiki
-   <http://wiki.zope.org/bluebream/AlternateProjectTemplates>`_.
-
 .. _started-building:
 
 Building the application
 ------------------------
 
-As mentioned earlier, the generated package is bundled with Buildout
-configuration (``buildout.cfg``) and Buildout bootstrap script
-(``bootstrap.py``).  First, user needs to bootstrap the buildout
+As mentioned earlier, the generated package is bundled with a Buildout
+configuration (``buildout.cfg``) and a bootstrap script
+(``bootstrap.py``).  First, the user needs to bootstrap the buildout
 itself::
 
   $ cd sampleproject
   $ python bootstrap.py
 
-The bootstrap script will install ``zc.buildout`` and ``setuptools``
-package.  Also, it will create the basic directory structure.
+The bootstrap script will download and install the ``zc.buildout`` and
+``distribute`` packages.  Also, it will create the basic directory structure.
 
 Here is a screenshot of bootstrapping the buildout:
 
 .. image:: images/gettingstarted2.png
 
-Next step is building the application.  To build the application, run
+The next step is building the application.  To build the application, run
 the buildout::
 
   $ ./bin/buildout
 
-Here is a screenshot of building the application:
+Here is a screenshot of the application being built:
 
 .. image:: images/gettingstarted3.png
 
-The buildout script will download all dependencies and setup the
-environment to run your application.  The next section will show the
-basic usage.
+The buildout script will download all dependencies and setup the environment to
+run your application. This can take some time because many packages are
+downloaded. If you don't want these packages to be downloaded again the next
+time you create a project, you can set a shared directory in your personal
+buildout configuration: create a file ``~/.buildout/default.cfg`` (and the .buildout
+folder if needed), with the following contents (replace 'user' with the real
+username)::
 
+    [buildout]
+    eggs-directory = /home/user/buildout-eggs
+
+You can choose any value for the eggs-directory, buildout will create it for
+you.
+
+The next section will show the basic usage.
+
 .. _started-basic-usage:
 
 Basic usage
 -----------
 
-The most common thing user need while developing application is
-running the server.  BlueBream use ``paster`` command provided by
-PasteScript to run the WSGI server.  To run the server, user can pass
-the PasteDeploy configuration file as the argument to ``serve``
+The most common thing a user needs while developing an application is
+running the server.  BlueBream uses the ``paster`` command provided by
+PasteScript to run the WSGI server.  To run the server, the user can pass
+the PasteDeploy configuration file as the argument to the ``serve``
 sub-command as given here::
 
   $ ./bin/paster serve debug.ini
 
-After running the server, user can access the site from browser by
+After starting the server, the user can access the site from his browser on
 this URL: http://localhost:8080/ .  The port number (``8080``) can be
 changed in PasteDeploy configuration file (``debug.ini``) to user
 choice.
 
-When user opens the browser, it will look like as shown in this
+When the user opens the browser, it will look like as shown in this
 screenshot:
 
 .. image:: images/gettingstarted4.png
 
-The second most common thing that must be running are the test cases.
-BlueBream creates a testrunner using the ``zc.recipe.testrunner``
-Buildout recipe.  User can see a ``test`` command inside the ``bin``
-directory.  To run test cases, following command is used::
+The second (mmh no, first!) most common thing that should be run are the unit
+tests.  BlueBream creates a testrunner using the ``zc.recipe.testrunner``
+Buildout recipe.  User can see a ``test`` command inside the ``bin`` directory.
+To run the test cases, the following command is used::
 
   $ ./bin/test
 
-Sometimes user may want to get the debug shell.  BlueBream provides a
+Sometimes the user may want to get the debug shell. BlueBream provides a
 Python prompt with your application object.  You can invoke the debug
 shell in the following way::
 
@@ -272,101 +282,114 @@
 The default directory structure created by the ``bluebream`` paster
 project template is as shown::
 
-  myproject/
-  |-- bootstrap.py
-  |-- buildout.cfg
-  |-- debug.ini
-  |-- deploy.ini
-  |-- etc/
-  |   |-- site.zcml
-  |   `-- zope.conf
-  |-- setup.py
-  |-- src/
-  |   |-- mynamespace.egg-info/
-  |   `-- mynamespace/
-  |       |-- __init__.py
-  |       `-- main/
-  |           |-- configure.zcml
-  |           |-- debug.py
-  |           |-- __init__.py
-  |           |-- securitypolicy.zcml
-  |           |-- startup.py
-  |           |-- tests/
-  |           |   |-- ftesting.zcml
-  |           |   |-- __init__.py
-  |           |   `-- tests.py
-  |           `-- welcome/
-  |-- templates/
-  |   `-- zope_conf.in
-  |-- var/
-  `-- versions.cfg
-  
-The name of top-level directory will always be the project name as
-given in the wizard.  The name of egg also will be same as that of
-package name by default.  User can change it to something else from
-``setup.py``.  Here are the details about other files inside the
-project.
+    myproject/
+    |-- bootstrap.py
+    |-- buildout.cfg
+    |-- debug.ini
+    |-- deploy.ini
+    |-- etc
+    |   `-- site.zcml
+    |-- setup.py
+    |-- src
+    |   |-- myproject
+    |   |   |-- __init__.py
+    |   |   |-- configure.zcml
+    |   |   |-- debug.py
+    |   |   |-- securitypolicy.zcml
+    |   |   |-- startup.py
+    |   |   |-- tests
+    |   |   |   |-- __init__.py
+    |   |   |   |-- ftesting.zcml
+    |   |   |   `-- tests.py
+    |   |   `-- welcome
+    |   |       |-- __init__.py
+    |   |       |-- app.py
+    |   |       |-- configure.zcml
+    |   |       |-- ftests.txt
+    |   |       |-- index.pt
+    |   |       |-- interfaces.py
+    |   |       |-- static
+    |   |       |   |-- logo.png
+    |   |       |   `-- style.css
+    |   |       `-- views.py
+    |   `-- myproject.egg-info
+    |       |-- PKG-INFO
+    |       |-- SOURCES.txt
+    |       |-- dependency_links.txt
+    |       |-- entry_points.txt
+    |       |-- not-zip-safe
+    |       |-- requires.txt
+    |       `-- top_level.txt
+    |-- templates
+    |   `-- zope_conf.in
+    |-- var
+    |   |-- filestorage
+    |   |   `-- README.txt
+    |   `-- log
+    |       `-- README.txt
+    `-- versions.cfg
 
+The name of the top-level directory will always be the project name as given in
+the wizard.  The name of the egg will also be the same as the package name by
+default. The user can change it to something else from ``setup.py``.  Here are
+the details about the other files in the project.
+
 Files &  Purpose
 ~~~~~~~~~~~~~~~~
 
 - ``bootstrap.py`` --  Bootstrap script for Buildout
 
-- ``buildout.cfg`` -- The buildout configuration                      
+- ``buildout.cfg`` -- The buildout configuration
 
-- ``debug.ini`` -- The PasteDeploy configuration for development
+- ``debug.ini`` -- The PasteDeploy WSGI configuration for development
 
-- ``deploy.ini`` -- The PasteDeploy configuration for deployment
+- ``deploy.ini`` -- The PasteDeploy WSGI configuration for deployment
 
-- ``etc/`` -- A location to add configuration files            
+- ``etc/`` -- A location to add configuration files
 
-- ``etc/site.zcml`` -- The main ZCML file                               
+- ``etc/site.zcml`` -- The toplevel ZCML file (from which all others are loaded)
 
-- ``etc/zope.conf`` -- The main Zope configuration file (generated
-  from template)
+- ``etc/zope.conf`` -- The main Zope and ZODB configuration file (generated
+  from the template)
 
-- ``setup.py`` -- Project meta-data for creating distribution 
+- ``setup.py`` -- Project meta-data to create a distributable archive (a
+  distribution)
 
-- ``src/`` -- All source code will be residing inside this directory
+- ``src/`` -- All the application source code will reside in this directory
 
-- ``src/mynamespace.egg-info/`` -- This is where all distribution
-  related info residing
+- ``src/myproject.egg-info/`` -- This is where all the generated distribution
+  related info resides
 
-- ``src/mynamespace/`` -- The namespace package                            
-
-- ``src/mynamespace/__init__.py`` -- This file with default content
-  would be enough to make this a namespace package.
-
-- ``src/mynamespace/main/`` -- This is the main package which
+- ``src/myproject/`` -- This is the main package which
   contains your application code.
 
-- ``src/mynamespace/main/configure.zcml`` -- User can customize this
-  ZCML which is included from ``etc/site.zcml``
+- ``src/myproject/configure.zcml`` -- The user can customize this
+  ZCML configuration file which is included from ``etc/site.zcml``
 
-- ``src/mynamespace/main/debug.py`` -- The debug application object.
+- ``src/myproject/debug.py`` -- The debug application object.
   The class given here will be registered from an entry point.
 
-- ``src/mynamespace/main/__init__.py`` -- Boiler plate file to make
+- ``src/myproject/__init__.py`` -- Boiler plate file to make
   this directory as a Python package.
 
-- ``src/mynamespace/main/securitypolicy.zcml`` -- security policy
+- ``src/myproject/securitypolicy.zcml`` -- security policy
   declarations which is included from site.zcml
 
-- ``src/mynamespace/main/startup.py`` This script is called by WSGI
+- ``src/myproject/startup.py`` This script is called by the WSGI
   server to start the application. (Mostly boiler plate code)
 
-- ``src/mynamespace/main/tests/`` -- The tests package
+- ``src/myproject/tests/`` -- The tests package
 
-- ``src/mynamespace/main/tests/ftesting.zcml`` -- ZCML for functional
+- ``src/myproject/tests/ftesting.zcml`` -- ZCML configuration for functional
   testing
 
-- ``src/mynamespace/main/tests/__init__.py`` -- Boiler plate file to
+- ``src/myproject/tests/__init__.py`` -- Boiler plate file to
   make this directory as a Python package.
 
-- ``src/mynamespace/main/tests/tests.py`` -- Boiler plate to register
+- ``src/myproject/tests/tests.py`` -- Boiler plate to register
   tests.
 
-- ``src/mynamespace/main/welcome/`` -- A sample application.
+- ``src/myproject/welcome/`` -- A sample application.
 
 - ``templates/`` -- Buildout specific templates used by
   "collective.recipe.template"
@@ -374,13 +397,13 @@
 - ``templates/zope_conf.in`` -- Zope conf template, modify this file
   for any change in zope.conf
 
-- ``var/`` -- A place holder directory for storing all ZODB files,
+- ``var/`` -- A place holder directory for storing all database files,
   log files etc.
 
-- ``versions.cfg`` -- All versions of files can be pinned down here.
+- ``versions.cfg`` -- All dependant package versions can be pinned down here.
 
 
-The next few sections will explain how to create hello world
+The next few sections will explain how to create a hello world
 applications.
 
 .. _started-example-1:
@@ -395,25 +418,25 @@
   <object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/Onuq2PnFnZ8&hl=en_US&fs=1&rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/Onuq2PnFnZ8&hl=en_US&fs=1&rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object>
 
 To create a web page which displays ``Hello World!``, you need to
-create a view class and register it using ``browser:page`` ZCML
-directive.  In BlueBream, this is called as *Browser Page*.
-Sometimes more generic term, *View* is used instead of *Browser Page*
+create a view class and register it using the ``browser:page`` ZCML
+directive.  In BlueBream, this is called a *Browser Page*.
+Sometimes more generic term, *Browser View* is used instead of *Browser Page*
 which can be used to refer to HTTP, XMLRPC, REST and other views.  By
-default, the default page which you are getting when you access:
+default, the page which you are getting when you access:
 http://localhost:8080 is a page registered like this.  You can see
-the registration inside ``configure.zcml``, the name of view will be
+the registration inside ``configure.zcml``, the name of the view will be
 ``index``.  You can access the default page by explicitly mentioning
 the page name in the URL like this: http://localhost:8080/@@index.
 You can refer the :ref:`howto-default-view` HOWTO for more details
 about how the default view for a container object is working.
 
 First you need to create a Python file named ``myhello.py`` at
-``src/mynamespace/main/myhello.py``::
+``src/myproject/myhello.py``::
 
-  $ touch src/mynamespace/main/myhello.py
+  $ touch src/myproject/myhello.py
 
 You can define your browser page inside this module.  All browser
-pages should implement
+pages should implement the
 ``zope.publisher.interfaces.browser.IBrowserView`` interface.  An
 easy way to do this would be to inherit from
 ``zope.publisher.browser.BrowserView`` which is already implementing
@@ -449,7 +472,7 @@
      xmlns:browser="http://namespaces.zope.org/browser">
 
 You can add this configuration to:
-``src/mynamespace/main/configure.zcml``.  Now you can access the view
+``src/myproject/configure.zcml``.  Now you can access the view
 by visiting this URL: http://localhost:8080/@@hello
 
 .. note:: The ``@@`` symbol for view
@@ -476,7 +499,7 @@
 ~~~~~~~~~~~~~~~~~~~~~~
 
 First you need to create a page template file inside your package.
-You can save it as ``src/mynamespace/main/helloworld.pt``, with the
+You can save it as ``src/myproject/helloworld.pt``, with the
 following content::
 
   <html>
@@ -527,7 +550,7 @@
 Python class
 ~~~~~~~~~~~~
 
-In the ``src/mynamespace/main/hello.py`` file, add few lines of
+In the ``src/myproject/hello.py`` file, add a few lines of
 Python code like this::
 
   class Hello(object):
@@ -545,8 +568,8 @@
 Page template
 ~~~~~~~~~~~~~
 
-Now you need a page template to render the page content in html. So
-let's add a ``hello.pt`` in the ``src/mynamespace/main`` directory::
+Now you need a page template to render the page content in HTML. So
+let's add a ``hello.pt`` in the ``src/myproject`` directory::
 
   <html>
     <head>
@@ -559,8 +582,8 @@
     </body>
   </html>
 
-The ``tal:content`` directive tells zope to replace the fake content
-of the tag with the output of the getText method of the view class.
+The ``tal:content`` directive tells BlueBream to replace the fake content
+of the tag with the output of the ``getText`` method of the view class.
 
 ZCML registration
 ~~~~~~~~~~~~~~~~~
@@ -610,11 +633,23 @@
 ----------
 
 This chapter walked through the process of getting started with web
-application development with BlueBream.  Also introduced few simple
+application development with BlueBream.  It also introduced a few simple
 ``Hello World`` example applications.  The :ref:`tut1-tutorial`
 chapter will go through a bigger application to introduce more
 concepts.
 
+
+.. _Python: http://www.python.org
+.. _Distribute: http://pypi.python.org/pypi/distribute
+.. _Setuptools: http://pypi.python.org/pypi/setuptools
+.. _PIP: http://pip.openplans.org/
+.. _Virtualenv: http://pypi.python.org/pypi/virtualenv
+.. _Buildout: http://www.buildout.org
+.. _PyPI: http://pypi.python.org/pypi
+.. _PasteScript: http://pythonpaste.org/script/developer.html
+.. _PasteDeploy: http://pythonpaste.org/deploy/
+.. _Paste: http://pythonpaste.org/
+
 .. raw:: html
 
   <div id="disqus_thread"></div><script type="text/javascript"

Modified: bluebream/website/docs/v1.0/glossary.rst
===================================================================
--- bluebream/website/docs/v1.0/glossary.rst	2010-03-31 18:57:56 UTC (rev 110379)
+++ bluebream/website/docs/v1.0/glossary.rst	2010-03-31 21:09:25 UTC (rev 110380)
@@ -6,7 +6,7 @@
 .. glossary::
 
   BlueBream
-    BlueBream is a renaming of :term:`Zope 3`, `started in 2010`_ 
+    BlueBream is a renaming of :term:`Zope 3`, `started in 2010`_
 
   Setuptools
     Using Setuptools_, developers can distribute Python packages.  It
@@ -18,11 +18,12 @@
     An Egg is a deployment format created by :term:`Setuptools`.
 
   Buildout
-    A `Python based Build system`_ created by Jim Fulton. 
+    A `Python-based build system`_ created by Jim Fulton.
     See the `Buildout PyPI page`_ for more detailed documentation.
 
   Zope 2
-    `The Z Object Publishing Framework`_, a Python based web application server.
+    `The Z Object Publishing Framework`_, a Python based web application server,
+    used in production for more than a decade.
 
   Zope
 
@@ -37,7 +38,7 @@
   Distribute
     A `community developed fork`_ of the :term:`Setuptools` project.
 
-  Zope Tool Kit
+  Zope Toolkit
     The `Zope Tool Kit`_ (ZTK) is a set of libraries intended for
     reuse by projects to develop web applications or web frameworks.
 
@@ -59,55 +60,57 @@
     The `Web Server Gateway Interface`_ defines a simple and
     universal interface between web servers and web applications or
     frameworks for the Python programming language.  The latest
-    version 3.0 of Python, released in December 2008, is already
+    version 3 of Python, released in December 2008, is already
     supported by :term:`mod_wsgi` (a module for the Apache Web
     server).
-   
+
   Paste
     Paste_ is a tool for using a Web Server Gateway Interface stack
-   
+
   PasteDeploy
-    PasteDeploy_ provides code to load WSGI applications and servers 
-    from URIs; these URIs can refer to Python Eggs for INI-style 
-    configuration files. Paste Script provides commands to serve applications 
+    PasteDeploy_ provides code to load WSGI applications and servers
+    from URIs; these URIs can refer to Python Eggs for INI-style
+    configuration files. Paste Script provides commands to serve applications
     based on this configuration file.
-   
+
   PasteScript
-    PasteScript_ is a pluggable command-line frontend, including commands 
+    PasteScript_ is a pluggable command-line frontend, including commands
     to setup package file layouts
-   
+
   Separation of concerns
-    `Separation of concerns`_ (SoC) is the process of separating a computer 
-    program into distinct features that overlap in functionality as 
+    `Separation of concerns`_ (SoC) is the process of separating a computer
+    program into distinct features that overlap in functionality as
     little as possible.
-   
+
   ZODB
-    The `Zope Object Database`_ provides an object-oriented database 
-    for Python that provides a high-degree of transparency. Applications 
-    can take advantage of object database features with few, if any, changes 
-    to application logic. ZODB includes features such as a pluggable storage 
+    The `Zope Object Database`_ provides an object-oriented database
+    for Python that provides a high-degree of transparency. Applications
+    can take advantage of object database features with few, if any, changes
+    to application logic. ZODB includes features such as a pluggable storage
     interface, rich transaction support, and undo.
-    
+
   ZCML
-    The `Zope Configuration Markup Language`_
-   
+    The `Zope Configuration Markup Language`_ is an XML configuration
+    language used to populate the global component registry of an application
+    that makes use of the Zope Component Architecture.
+
   Jim Fulton
-    `James Fulton`_ - Chief Technology Officer, Zope Corp, AKA the 
+    `James Fulton`_ - Chief Technology Officer, Zope Corp, AKA the
     *Zope Pope*, J1m in IRC.  He's the man.
-   
+
   Bobo
     Jim Fulton's original design of object oriented internet
     publishing technology, implemented in Python. Jim has recently
-    come full circle, releasing Bobo_, a *Web application framework 
+    come full circle, releasing Bobo_, a *Web application framework
     for the impatient*.
-   
+
   CGI
     `Common Gateway Interface`_
-   
+
   Grok
-    Grok_ is a web application framework for Python developers. 
+    Grok_ is a web application framework for Python developers.
     It is aimed at both beginners and very experienced web developers.
-    Grok has an emphasis on agile development. Grok is easy and powerful.   
+    Grok has an emphasis on agile development. Grok is easy and powerful.
 
   mod_wsgi
     `Apache module`_ to host any Python application which supports
@@ -139,7 +142,7 @@
 .. _started in 2010: https://mail.zope.org/pipermail/zope-dev/2010-January/039072.html
 .. _ZPL: http://foundation.zope.org/agreements/ZPL_2.1.pdf
 .. _Web Server Gateway Interface: http://en.wikipedia.org/wiki/Web_Server_Gateway_Interface
-.. _Paste: http://pypi.python.org/pypi/Paste/
+.. _Paste: http://pypi.python.org/pypi/Paste/
 .. _PasteDeploy: http://pypi.python.org/pypi/PasteDeploy/
 .. _PasteScript: http://pypi.python.org/pypi/PasteScript
 .. _Separation of concerns: http://en.wikipedia.org/wiki/Separation_of_concerns

Modified: bluebream/website/docs/v1.0/howto/newdependency.rst
===================================================================
--- bluebream/website/docs/v1.0/howto/newdependency.rst	2010-03-31 18:57:56 UTC (rev 110379)
+++ bluebream/website/docs/v1.0/howto/newdependency.rst	2010-03-31 21:09:25 UTC (rev 110380)
@@ -26,7 +26,7 @@
 
     $ ./bin/buildout
 
-Finally, remember to register the new package at ``etc/site.zcml``::
+Finally, remember to register the new package in ``etc/site.zcml``::
 
     <configure xmlns="http://namespaces.zope.org/zope"
       ...
@@ -34,7 +34,7 @@
       ...
     </configure>
 
-If there is any new directive required for this package, you need to
+If there is any new ZCML directive declared in this package, you need to
 include the configuration file where the directive is registered.
 Normally the ZCML directives will be registered in meta package.  You
 can use the ``file`` option as given below::
@@ -46,7 +46,7 @@
       ...
     </configure>
 
-And restart application::
+Then restart the application::
 
   $ ./bin/paster serve debug.ini
 

Modified: bluebream/website/docs/v1.0/images/gettingstarted1.png
===================================================================
(Binary files differ)

Modified: bluebream/website/docs/v1.0/new/whatsnew-1.0.rst
===================================================================
--- bluebream/website/docs/v1.0/new/whatsnew-1.0.rst	2010-03-31 18:57:56 UTC (rev 110379)
+++ bluebream/website/docs/v1.0/new/whatsnew-1.0.rst	2010-03-31 21:09:25 UTC (rev 110380)
@@ -691,6 +691,69 @@
 bluebream
 ~~~~~~~~~
 
+1.0a6 (unreleased)
+******************
+
+- Set `name` & `description` for the sample application
+
+- Use project name as i18n_domain in base template
+
+- Merge the two templates into a single one by allowing to create a
+  flat or nested namespace structure, depending on the project name.
+
+- Enabled Distribute by default instead of Setuptools
+
+1.0a5 (2010-03-28)
+******************
+
+- Include the sample application in the `bluebream_simple` template
+
+- Move the sample application provided by `bluebream` template
+  to a sub-package named `welcome` similar to `bluebream_simple`
+  The sample application can be easily removed.
+
+- The sample application object use 'zope.site.interfaces.IFolder`
+  instead of `zope.container.interfaces.IContainer`
+
+- Include `zope.session` from `site.zcml`
+
+- Include `browser` namespace in `site.zcml` for convenience.
+
+- Added an empty `[versions]` part in `versions.cfg` with
+  a recommendation to pin-down versions of other dependencies.
+
+- Remove `zope.app.twisted` from dependency list
+
+- Since BlueBream requires ZODB 3.9, FileStorage need not be
+  wrapped with BlobStorage proxy to get ZODB blobs support.
+
+- The default ZODB blob layout should be 'bushy'
+  Fix LP #543525
+
+- Use relative paths in etc/zope.conf Fix LP #543451
+
+- Specify i18n domain in ftesting.zcml Fix LP #543516
+
+- zope.browserresource package registration was missing
+  Fix LP #541457 
+
+1.0a4 (2010-03-07)
+******************
+
+- Added an empty PKG-INFO
+  Work around fix for "empty directory" problem.
+  (refer: LP #503301)
+
+1.0a3 (2010-03-07)
+******************
+
+- The summary of ``bluebream_base`` template changed to:
+  "A BlueBream project, base template"
+
+- Enable ``bluebream_simple`` again.  Documentation is
+  available here:
+  http://wiki.zope.org/bluebream/AlternateProjectTemplates
+
 1.0a2 (2010-03-02)
 ******************
 

Modified: bluebream/website/docs/v1.0/tutorial1.rst
===================================================================
--- bluebream/website/docs/v1.0/tutorial1.rst	2010-03-31 18:57:56 UTC (rev 110379)
+++ bluebream/website/docs/v1.0/tutorial1.rst	2010-03-31 21:09:25 UTC (rev 110380)
@@ -61,24 +61,24 @@
   $ paster create -t bluebream
   Selected and implied templates:
     bluebream#bluebream  A BlueBream project, base template
-  
+
   Enter project name: ticketcollector
   Variables:
     egg:      ticketcollector
     package:  ticketcollector
     project:  ticketcollector
   Enter namespace_package (Namespace package name) ['ticketcollector']: tc
-  Enter main_package (Main package name (under the namespace)) ['main']: 
-  Enter interpreter (Name of custom Python interpreter) ['breampy']: 
-  Enter version (Version (like 0.1)) ['0.1']: 
+  Enter main_package (Main package name (under the namespace)) ['main']:
+  Enter interpreter (Name of custom Python interpreter) ['breampy']:
+  Enter version (Version (like 0.1)) ['0.1']:
   Enter description (One-line description of the package) ['']: Ticket Collector
   Enter long_description (Multi-line description (in reST)) ['']: An issue tracking application
-  Enter keywords (Space-separated keywords/tags) ['']: 
+  Enter keywords (Space-separated keywords/tags) ['']:
   Enter author (Author name) ['']: Baiju M
   Enter author_email (Author email) ['']: baiju at example.com
-  Enter url (URL of homepage) ['']: 
+  Enter url (URL of homepage) ['']:
   Enter license_name (License name) ['']: ZPL
-  Enter zip_safe (True/False: if the package can be distributed as a .zip file) [False]: 
+  Enter zip_safe (True/False: if the package can be distributed as a .zip file) [False]:
   Creating template bluebream
   Creating directory ./ticketcollector
     Copying bootstrap.py to ./ticketcollector/bootstrap.py
@@ -525,26 +525,26 @@
      xmlns="http://namespaces.zope.org/zope"
      xmlns:browser="http://namespaces.zope.org/browser"
      i18n_domain="ticketcollector">
-  
+
     <include file="securitypolicy.zcml" />
-  
+
     <!-- The following registration (defaultView) register 'index' as
          the default view for a container.  The name of default view
          can be changed to a different value, for example, 'index.html'.
          More details about defaultView registration is available here:
          http://bluebream.zope.org/doc/1.0/howto/defaultview.html
          -->
-  
+
     <browser:defaultView
        for="zope.container.interfaces.IContainer"
        name="index"
        />
-  
+
     <!-- To remove the sample application delete the following line
          and remove the `welcome` folder from this directory.
          -->
     <include package=".welcome" />
-  
+
   </configure>
 
 The ``securitypolicy.zcml`` is where you can define the security



More information about the checkins mailing list