[Checkins] SVN: Sandbox/philikon/zopeproject/trunk/ more readme and more todos

Philipp von Weitershausen philikon at philikon.de
Thu Jul 26 18:18:54 EDT 2007


Log message for revision 78367:
  more readme and more todos
  

Changed:
  U   Sandbox/philikon/zopeproject/trunk/README.txt
  U   Sandbox/philikon/zopeproject/trunk/TODO.txt

-=-
Modified: Sandbox/philikon/zopeproject/trunk/README.txt
===================================================================
--- Sandbox/philikon/zopeproject/trunk/README.txt	2007-07-26 22:10:30 UTC (rev 78366)
+++ Sandbox/philikon/zopeproject/trunk/README.txt	2007-07-26 22:18:54 UTC (rev 78367)
@@ -1,3 +1,5 @@
+.. contents::
+
 Quickstart
 ==========
 
@@ -34,6 +36,41 @@
 Zope.  You will also be able to log in with the administrator user
 account that you specified earlier.
 
+Notes for Windows users
+-----------------------
+
+Some packages required by Zope contain C extension modules.  There may
+not always be binary Windows distributions available for these
+packages.  In this case, setuptools will try to compile them from
+source which will likely fail if you don't have the Microsoft Visual C
+compiler installed.  You can, however, install the free MinGW_
+compiler:
+
+1. Download ``MinGW-x.y.z.exe`` and rund it to do a full install into
+   the standard location (``C:\MinGW``).
+
+2. Tell Python to use the MinGW compiler by creating
+   ``C:\Documents and Settings\YOUR USER\pydistutils.cfg``
+   with the following contents::
+
+     [build]
+     compiler=mingw32
+
+3. Let Python know about the MinGW installation and the
+   ``pydistutils.cfg`` file.  To do that, go to the *Control Panel*,
+   *System* section, *Advanced* tab and click on the *Environment
+   variables* button.  Add the ``C:\MinGW\bin`` directory to your
+   ``Path`` environment variable (individual paths are delimited by
+   semicolons).  Also add another environment variable called ``HOME``
+   with the following value::
+
+     C:\Documents and Settings\YOUR USER
+
+When installing packages from source, Python should now use the MinGW
+compiler to build binaries.
+
+.. _MingW: http://www.mingw.org
+
 Command line options
 ====================
 
@@ -103,15 +140,51 @@
   (``eggs-directory``) and determines whether buildout should check
   whether newer eggs are available online or not (``newest``).
 
+First steps with your application
+=================================
+
+After having started up Zope for the first time, you'll likely want to
+start developing your web application.  Code for your application goes
+into the ``myzopeproj`` package that was created by zopeproject.
+
+For example, to get a simple "Hello world!" message displayed, create
+``myzopeproj/browser.py`` with the following contents::
+
+  from zope.publisher.browser import BrowserPage
+
+  class HelloPage(BrowserPage):
+      def __call__(self):
+          return "<html><body><h1>Hello World!</h1></body></html>"
+
+Then all you need to do is hook up the page in ZCML.  To do that, add
+the following directive towards the end of ``myzopeproj/configure.zcml``::
+
+  <browser:page
+      for="*"
+      name="hello"
+      class=".browser.HelloPage"
+      permission="zope.Public"
+      />
+
+Note that you'll likely need to define the ``browser`` namespace
+prefix at the top of the file::
+
+  <configure xmlns="http://namespaces.zope.org/zope"
+             xmlns:browser="http://namespaces.zope.org/browser"
+             >
+
+After having restarted the application using ``paster serve``, you can
+visit http://localhost:8080/hello to see the page in action.
+
 Adding dependencies to the application
 ======================================
 
 The standard ``setup.py`` and ``configure.zcml`` files list a set of
-standard dependencies that are typical for most Zope applications.  You
-may obviously remove things from this list, but typically you'll want
-to re-use libraries that others have written.  Many, if not most, of
-additional Zope and third party libraries are `listed on the Python
-Cheeseshop`_.
+standard dependencies that are typical for most Zope applications.
+You may obviously remove things from this list, but typically you'll
+want to re-use more libraries that others have written.  Many, if not
+most, of additional Zope and third party libraries are `listed on the
+Python Cheeseshop`_.
 
 Let's say you wanted to reuse the ``some.library`` package in your
 application.  The first step would be to add it to the list of
@@ -132,6 +205,11 @@
 Changes
 =======
 
+0.3.3 (unreleased)
+------------------
+
+* More improvements to the README.txt file.
+
 0.3.2 (2007-07-17)
 ------------------
 

Modified: Sandbox/philikon/zopeproject/trunk/TODO.txt
===================================================================
--- Sandbox/philikon/zopeproject/trunk/TODO.txt	2007-07-26 22:10:30 UTC (rev 78366)
+++ Sandbox/philikon/zopeproject/trunk/TODO.txt	2007-07-26 22:18:54 UTC (rev 78367)
@@ -12,8 +12,27 @@
 
 * Need tests!
 
-* README: how to add code after creating a zope project
-
 * README: how to deploy?
 
+* README: link to zc.buildout tutorial
+
+* README: tell people about ~/.buildout/default.cfg
+
+* Alter the way the eggs directory is added to buildout.cfg:
+
+  - check if there's a default setting in ~/.buildout/default.cfg
+
+  - if there's a default setting and the user simply takes that (by
+    pressing return), buildout.cfg won't get a eggs-directory setting
+    (but perhaps a comment instead mentioning that the default setting
+    will be used).
+
+  - if there's a default setting but the user chooses to enter a
+    different directory, buildout.cfg will have the necessary
+    eggs-directory setting.
+
+  - if there's no default setting, zopeproject/grokproject will
+    suggest a sensible eggs directory (e.g. ~/buildout-eggs) and
+    buildout.cfg will have the necessary eggs-directory setting.
+
 * Bring back bin/zopectl (fg, start/stop/status, debug)



More information about the Checkins mailing list