[Subversion] / PEAK / INSTALL.txt  

Diff of /PEAK/INSTALL.txt

Parent Directory | Revision Log

version 593, Sun Nov 3 19:47:29 2002 UTC version 1997, Sun Jan 30 18:51:56 2005 UTC
Line 1 
Line 1 
 Installing PEAK  Installing PEAK
   
  PEAK Release 0.5 alpha 1   PEAK Release 0.5 alpha 4
   
  Copyright (C) 1996-2002 by Phillip J. Eby and Tyler C. Sarna.   Copyright (C) 1996-2004 by Phillip J. Eby and Tyler C. Sarna.
  All rights reserved.  This software may be used under the same terms   All rights reserved.  This software may be used under the same terms
  as Zope or Python.  THERE ARE ABSOLUTELY NO WARRANTIES OF ANY KIND.   as Zope or Python.  THERE ARE ABSOLUTELY NO WARRANTIES OF ANY KIND.
  Code quality varies between modules, from "beta" to "experimental   Code quality varies between modules, from "beta" to "experimental
Line 11 
Line 11 
   
  SYSTEM REQUIREMENTS   SYSTEM REQUIREMENTS
   
   Basic installation requires Python 2.2.1, and the Zope 'Interface' package.    Python 2.3.4 or better is required.  Some portions of PEAK may support only
   If you want to run the test suite or use any of PEAK's frameworks    POSIX-like and/or Windows operating systems.  Installation from a source
   (e.g. database interaction, UML/XMI processing, etc.), you will also need    distribution requires a C compiler that works with Python.
   Aaron Watters' 'kjbuckets' library for your version of Python.  See  
   "Obtaining and Installing Dependencies" below if you do not already have    If you are modifying the source of PEAK extension modules, you will need
   the 'Interface' package or the 'kjbuckets' module.    Pyrex version 0.7.2.  You do not need Pyrex if you are just installing
     PEAK as-is, but if you *do* have Pyrex installed, it must be version 0.7.2.
   Note: if you have installed previous versions of PEAK or TransWarp, be  
   sure to remove them before installing this one.  A lot of things have    In general, it is best to uninstall previous versions of PEAK before
   moved, been removed, or just plain ain't the same.    installing new ones, since some modules may have moved or been renamed.
     Also, if you have Zope X3 installed on your Python path, you should ensure
     that it is an up-to-date CVS version: "Milestone 2" is no longer supported.
   
  BASIC INSTALLATION   BASIC INSTALLATION
   
   PEAK is distributed using the now-standard Python 'distutils' protocol.    PEAK is distributed using the now-standard Python 'distutils' utilities.
   Just unpack the archive, go to the directory containing 'setup.py', and run::    Just unpack the archive, go to the directory containing 'setup.py', and
     run::
   
     python setup.py install      python setup.py install
   
Line 35 
Line 37 
   Modules" section of the Python manuals for details on customizing    Modules" section of the Python manuals for details on customizing
   installation locations, etc.).    installation locations, etc.).
   
     (Note: for the Win32 installer release, just run the .exe file.)
   
    SCRIPTS, BATCH FILES, AND '#!'
   
     PEAK installs a Python script named 'peak'.  'peak' is an application
     bootstrap script that can invoke any object that is referenceable via
     the PEAK naming system.  Run the 'peak' script for usage info, or see
     the 'Bootstrap' class in 'peak.running.commands' for more on how to make
     objects bootable via 'peak'.
   
     Note that on Windows, you cannot invoke the 'peak' script directly.  Instead
     you must run it like this::
   
       python C:\Python22\Scripts\peak
   
     followed by the appropriate arguments.  You should of course substitute the
     correct path to your Python installation's "scripts" directory.
   
     The 'peak' script is designed for use as a '#!' command interpreter for
     certain file types, such as ZConfig configuration files.  Some Unixes,
     however, do not support using scripts as '#!' interpreters.  To work around
     this, there is a (currently experimental) 'invoke' program you can build.  To
     build the 'invoke' program, go to the directory you unpacked the PEAK source
     in, and type::
   
       gcc -o invoke scripts/invoke.c
   
     This will build an 'invoke' executable, which you can then place on your
     system's path or other appropriate location.  You can then use '#!' lines
     like this (replacing '/usr/local/bin' with the directory where you installed
     'invoke', of course)::
   
       #!/usr/local/bin/invoke peak EventDriven
       ...rest of config file goes here
   
     'invoke' allows an arbitrary number of space-separated arguments to be passed
     to the command it invokes, thus working around various Unixes' '#!' parsing
     problems, as well as the "can't use a script as an interpreter" problem.  It
     also searches the system PATH for the specified command.  You may find this
     useful for non-PEAK script interpreters as well.
   
   
  THIRD PARTY SOFTWARE INCLUDED WITH PEAK  
   
   Aaron Watters' 'kjbuckets' Module    The interpretation of '#!' lines is highly OS-dependent.  Some operating
     systems limit the length of '#!' lines to 32, 80, 127, or 255 characters.
     Some operating systems require a space after '#!', and or require the path
     that follows to be absolute.  Some operating systems will search the 'PATH'
     environment variable for the specified interpreter, others will not.  When
     creating programs that use '#!' lines, or using such programs written by
     others, be sure to adjust the line as appropriate for your operating system.
     For more information on this subject, you can visit the
     "shebang site":http://homepages.cwi.nl/~aeb/std/shebang/, which lists useful
     '#!' line information for various operating systems.
   
     Note that Windows does not support '#!' lines at all, so programs that use
     them must be run using batch files when run on Windows, unless you have a
     Unix-like shell available (e.g. Cygwin).
   
    PEAK now includes a copy of Aaron Watters' 'kjbuckets' module for  
    your convenience, and automatically installs it alongside PEAK in  
    your Python 'site-packages' directory.  (Note that this will overwrite  
    any existing installation of the 'kjbuckets' module.)  
   
    'kjbuckets' is copyright Aaron Watters and contributors; please see   TESTING YOUR INSTALLATION
    the 'src/kjbuckets/COPYRIGHT.txt' file for details of its license.  
   
     PEAK comes with a moderately-sized built-in test suite.  If you wish to
     run it after installation, you can do so like this::
   
   The Zope 3 'Interface' and 'Persistence' Packages      peak test
   
    PEAK now includes a copy of the Zope 3 'Interface' package, and a portion    This will run over 800 tests on various parts of PEAK.  If you have
    of the Zope 3 'Persistence' package.  They are automatically installed    installed everything correctly, 100% of the tests should succeed.  If
    alongside PEAK in your 'site-packages' directory, unless you specify an    anything is broken, you will probably be unable to run the tests at all.
    alternate installation location to 'setup.py'.  (Note that this will  
    overwrite any existing installation of these packages.)  The 'Interface'  
    and 'Persistence' packages are copyright Zope Corporation and Contributors;  
    please see the 'LICENSE.txt' files in each directory for details.  
   
     If you'd like to run only a portion of the test suite, you can supply
     a specific test suite on the command line as follows::
   
       peak test peak.util.tests.test_suite
   
     For more options, run 'peak test --help'.
   
     If you've installed using the Windows binary installer, you can run the
     tests like this::
   
       python C:\Python22\Scripts\peak test
   
   
   
    THIRD PARTY SOFTWARE INCLUDED WITH PEAK
   
     Aaron Watters' 'kjbuckets' Module
   
      Use of this module is deprecated; if your software depends on it, you must
      supply a '--with-kjbuckets' argument to 'setup.py' in order to build and
      install it.  Please use an alternate distribution of kjbuckets or port your
      software to use the Python 2.3 'Set' type and the 'peak.util.Graph' module,
      as appropriate.
   
      'kjbuckets' is copyright Aaron Watters and contributors; please see
      the 'src/kjbuckets/COPYRIGHT.txt' file for details of its license.
   
     The Zope 3 'persistence' and 'ZConfig' Packages
   
      PEAK includes a copy of the following packages from the Zope X3 Milestone 2
      release, and will install them unless Zope X3 is available on 'sys.path'
      at the time 'setup.py' is run:
   
      - 'persistence'
   
      - 'ZConfig'
   
      These packages are automatically installed alongside PEAK in your
      'site-packages' directory, unless you specify an alternate installation
      location to 'setup.py'.  Note that this will overwrite any existing
      installation of these packages.
   
      To prevent overwriting versions of these packages that were installed
      separately, 'setup.py' attempts to detect the presence of Zope X3 by
      importing 'zope.component' (which is not distributed with PEAK).  If you
      have a 'zope.component' package on your 'sys.path' when 'setup.py' runs,
      'setup.py' will assume you have a complete Zope X3 installation, and it
      will not install any of the Zope packages listed above, in order to avoid
      overwriting newer versions from your Zope installation.
   
      The 'persistence' and 'ZConfig' packages are Copyright Zope Corporation and
      contributors; please see the 'LICENSE.txt' files in their directories for
      details of their licenses.
   
   
     The 'fcgiapp' Module
   
      On platforms where 'os.name=="posix"' (most Unixes and Cygwin), PEAK also
      installs the 'fcgiapp' module, which provides support for the FastCGI
      protocol.  You may experience problems building this module on some
      platforms; check the 'fcgiconfig.h' to see if you need to change anything
      for your system.  Or, you can simply disable it, by editing 'setup.py'
      and changing the 'include_fcgiapp' flag to 'False'.
   
      The 'fcgiapp' module is Copyright Digital Creations, LC (now Zope Corp.);
      see the 'fcgiappmodule.c' file for details of its license.  In the same
      directory are distributed portions of the FastCGI Development Kit, which
      is Copyright Open Market, Inc.  See the 'LICENSE.TERMS' file in that
      directory for details of its license.
   
   
   
    EMBEDDING PEAK IN AN APPLICATION
   
     If you are embedding PEAK in an application that you are distributing,
     and space is at a premium, there are some modules you may want to omit
     from the installation.  For example, PEAK's test modules are probably
     not useful in such an environment, and unless your application is a
     CASE tool, you will probably not need to redistribute the UML and MOF
     metamodels.  In such situations, you may want to install a copy of PEAK
     that does not contain these modules.  You can disable installation of
     either set of modules by editing 'setup.py', and changing the
     'include_tests' and 'include_metamodels' flags, located near the top of
     the script.
   
   
   
  TESTING YOUR INSTALLATION  
   
   PEAK comes with a moderately-sized built-in test suite.  If you wish to  
   run it after installation, you can do so like this::  
   
    python setup.py test  
   
   This will run 40+ tests on various parts of PEAK.  If you have  
   installed everything correctly, 100% of the tests should succeed.  If  
   you're missing any needed parts, you will probably be unable to run the  
   tests at all.  
   
   If you'd like to run only a portion of the test suite, you can supply  
   the '--test-module' or '-m' option to the test command as follows::  
   
     python setup.py test --test-module=peak.util.tests  
   
     python setup.py test -m peak.tests  
   
   And so on.  You can also use 'python setup.py -q test' to make the tests  
   run more "quietly".  
   
   By default, 'python setup.py test' only runs 'peak.api.tests', which cover  
   the basic, currently supported functionality of PEAK.  If you specify  
   the 'peak.tests' module (as in the second example above), the full suite of  
   80+ tests will be run.  These tests will take longer to run, as they perform  
   some rather complex XMI and UUID tests.  
   


Generate output suitable for use with a patch program
Legend:
Removed from v.593  
changed lines
  Added in v.1997

cvs-admin@eby-sarna.com

Powered by ViewCVS 1.0-dev

ViewCVS and CVS Help