The following code fragments can be used to ensure that code can run with both the old and the new API (as long as it does not use the new abilities of the new API of course).
Adapting to the new package structure:
try:
from recoll import recoll
from recoll import rclextract
hasextract = True
except:
import recoll
hasextract = False
Adapting to the change of nature of
the next Query
member. The same test can be used to choose to use
the scroll() method (new) or set
the next value (old).
rownum = query.next if type(query.next) == int else \
query.rownumber

