-*- outline -*-

* Version 0.23

  Support for writing search engines:

** s.status() returns the status of space s
** s.choice() returns a Choice object
** s.commit(Choice, int) commits s to an alternative of the Choice
** if c is a Choice, c.alternatives() is the number of alternatives
** s.constrain(sol) constrain s to be better than solution sol

* Version 0.22

** support for restart search engine:
   s.search(restart=True)
** support for search options
   s.search(threads=N1, c_d=N2, a_d=N3)
** support for keeping only some of the variables
   s.keep(V)
   if some variables are thus marked as "kept", then only
   these variables will be explicitly copied during search.
   This could bring substantial benefits in memory usage.
   Of course, in a solution, you can then only look at variables
   that have been "kept".  If no variable is marked as "kept",
   then they are all kept.  Thus marking variables as "kept" is
   purely an optimization.
** support for Gist
    s.gist(onclick=None, threads=None, c_d=None, a_d=None)
    if your installation of Gecode has Gist support, then this will invoke it.
    onclick is an inspector or an iterable of inspectors.  An inspector is
    a callable, or a class whose instances are callables, that has/have been
    specially annoted by a decorator:

    @inspector("My Inspector 1")
    def show1(s2):
        print s2.values([X1,X2])

    Note that s2 is not necessarily a solution!  You may also define a
    textinspector to show textual output in a graphical window:

    @textinspector("My Inspector 2")
    def show2(s2):
        return "X1=%s X2=%s" % s2.values([X1,X2])

    A textinspector must return a string.

* Version 0.21

** MANIFEST.in updated

* Version 0.20

** updated for gecode 3.7.1

* Version 0.19

** raise python exception for c++ exception on variable creation

* Version 0.18

** fixed bug in intset construction

* Version 0.17

** because upload of 0.16 failed

* Version 0.16

** now works with python 2.6, 2.7, and 3.2

* Version 0.15

** verified to also work on debian-stable

* Version 0.14

** removed install-dependency on cython

* Version 0.13

** fixed bug in iterator over MatrixRow and MatrixCol

* Version 0.12

** fixed MatrixRow and MatrixCol to be indexed by integers
   not pairs of integers

* Version 0.11

** non-list or tuple iterables/iterators are now automatically
   converted to tuples when passed to constraints

* Version 0.10

** added support for matrices

* Version 0.7

** added support for Gecode 3.7.0

