			   ABOUT PY-NOTIFY

Py-notify is a Python package providing tools for implementing
Observer programming pattern. These tools include signals, conditions
and variables.

Signals are lists of handlers that are called when signal is
emitted. Conditions are basically boolean variables coupled with a
signal that is emitted when condition state changes. They can be
combined using standard logical operators (not, and, etc.) into
compound conditions. Variables, unlike conditions, can hold any Python
object, not just booleans, but they cannot be combined.

All three main concepts support deriving by users. Conditions and
variables even have derive_type() method that can be used to subclass
them in just a few lines of code, for instance to create a variable
that restricts its value's type.

Latest Py-notify versions can be found at the homepage:

		    http://home.gna.org/py-notify/



			RUNNING STANDARD TESTS

Before installing Py-notify, please run the standard test cases.  It
is very simple, just execute

	./run-tests.py

in this directory.  Tests take just a few seconds to complete.  If any
of them fails in a released version, it is a bug, so please report it.
However, this doesn't apply to Py-notify you get from Subversion
repository, those can occasionally contain failing tests.



			     INSTALLATION

The usual `./setup.py build; ./setup.py install' or just `./setup.py
install' should build and install Py-notify.  See file INSTALL for
details.



			    REPORTING BUGS

Please use bug tracker at the Gna! project page for bug submissions.
Point your browser to

		https://gna.org/bugs/?group=py-notify

Before submitting a bug, please update to the latest SVN version of
Py-notify and verify that the bug is still present.  Don't forget to
check if the bug has been submitted already.

Please include the following information in your bug report:

* Bug description and the way to reproduce the bug.

* Exception stack trace, if any.

* System information, most importantly Python version.

* Test case if possible.  If a standard test fails (one of those in
  the `test' directory), its name in stack trace will suffice.

* Everything else you find relevant.



		       COPYRIGHTS AND LICENSES

All files are copyrighted by Paul Pogonyshev except as noted below.
See each specific file for details.

All source files are licensed under the GNU Lesser General Public
License version 2.1 or (at your option) any later version.  GNU LGPL
version 2.1 can be found in the file COPYING.

* File `setup.py' is explicitly put in Public Domain.

* File `benchmark/configobj.py' is copyright (C) 2005-2006 Michael
  Foord, Nicola Larosa and released under the terms of the BSD
  License.
