Installing PEAK |
Installing PEAK |
|
|
PEAK Release 0.5 alpha 1 |
PEAK Release 0.5 alpha 2 |
|
|
Copyright (C) 1996-2003 by Phillip J. Eby and Tyler C. Sarna. |
Copyright (C) 1996-2003 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 |
|
|
In general, it is best to uninstall previous versions of PEAK before |
In general, it is best to uninstall previous versions of PEAK before |
installing new ones, since some modules may have moved or been renamed. |
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 |
|
|
|
|
(Note: for the Win32 installer release, just run the .exe file.) |
(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. |
|
|
SCRIPTS |
|
|
|
On operating systems where 'os.name == "posix"', 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'. |
|
|
|
|
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). |
|
|
|
|
TESTING YOUR INSTALLATION |
TESTING YOUR INSTALLATION |
PEAK comes with a moderately-sized built-in test suite. If you wish to |
PEAK comes with a moderately-sized built-in test suite. If you wish to |
run it after installation, you can do so like this:: |
run it after installation, you can do so like this:: |
|
|
python setup.py test |
peak test |
|
|
This will run over 120 tests on various parts of PEAK. If you have |
This will run over 120 tests on various parts of PEAK. If you have |
installed everything correctly, 100% of the tests should succeed. If |
installed everything correctly, 100% of the tests should succeed. If |
anything is broken, you will probably be unable to run the tests at all. |
anything is broken, 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 |
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:: |
a specific test suite on the command line 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". |
|
|
|
|
|
|
|
|
|
|
|
|
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 |
|
|
|
|
|
|
'kjbuckets' is copyright Aaron Watters and contributors; please see |
'kjbuckets' is copyright Aaron Watters and contributors; please see |
the 'src/kjbuckets/COPYRIGHT.txt' file for details of its license. |
the 'src/kjbuckets/COPYRIGHT.txt' file for details of its license. |
|
|
|
The Zope 3 'persistence' and 'ZConfig' Packages |
The Zope 3 'persistence', and 'ZConfig' Packages |
|
|
|
PEAK includes a copy of the following packages from the Zope X3 Milestone 2 |
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' |
release, and will install them unless Zope X3 is available on 'sys.path' |
|
|
- 'ZConfig' |
- 'ZConfig' |
|
|
These packages are automatically installed alongside PEAK in your |
Also, if you are using a Python version that does not include the 'datetime' |
|
package (i.e. versions < 2.3), a replacement 'datetime' package is installed |
|
as well. These packages are automatically installed alongside PEAK in your |
'site-packages' directory, unless you specify an alternate installation |
'site-packages' directory, unless you specify an alternate installation |
location to 'setup.py'. Note that this will overwrite any existing |
location to 'setup.py'. Note that this will overwrite any existing |
installation of these packages. |
installation of these packages. |
will not install any of the Zope packages listed above, in order to avoid |
will not install any of the Zope packages listed above, in order to avoid |
overwriting newer versions from your Zope installation. |
overwriting newer versions from your Zope installation. |
|
|
The 'persistence', and 'ZConfig' packages are Copyright Zope Corporation |
The 'datetime', 'persistence' and 'ZConfig' packages are Copyright Zope |
and contributors; please see the 'LICENSE.txt' files in their directories |
Corporation and contributors; please see the 'LICENSE.txt' files in their |
for details of their licenses. |
directories for details of their licenses. |
|
|
|
|
The 'fcgiapp' Module |
The 'fcgiapp' Module |
|
|