Metadata-Version: 1.1
Name: solentware-base
Version: 3.0.1
Summary: Database Record definition classes
Home-page: http://www.solentware.co.uk
Author: Roger Marsh
Author-email: roger.marsh@solentware.co.uk
License: BSD
Description: ==================================
        Database Record definition classes
        ==================================
        
        .. contents::
        
        
        Description
        ===========
        
        This package provides a record-level API to a variety of database engines in the style of `bsddb3`_ cursors.
        
        A record contains a key and a value, (key, value) say.  Indexes contain records which invert this as (F(value), key).  F() would return a substring of value for example.
        
        The value could be a pickled class instance, or perhaps more safely a string which can be evaluated by the ast.literal_eval function.
        
        Interfaces exist for:
        
        * `bsddb3`_
        * `DPT`_
        * `sqlite3`_
        * `apsw`_
        
        At least one of the database engines supported by these interfaces must be installed.
        
        
        Installation Instructions
        =========================
        
        Install the package by typing
        
           python setup.py install
        
        at the command prompt with setup.py in the current directory.
        
        You may need to give the path and version of Python depending on your system's configuration:
        
           <path to python>/python<version> setup.py install
        
           For example
        
              C:\\Python33\\python setup.py install
        
                 on Microsoft Windows or
        
              python3.3 setup.py install
        
                 on Unix-like systems.
        
        Use `Python`_ 3.3 or later.
        
        
        Notes
        =====
        
        The `sqlite3`_ interface was added because sqlite3 became the only database engine supporting ordered keys included in the Python distribution when bsddb was dropped at Python 3.
        
        I have not yet succeeded in building `bsddb3`_ on Microsoft Windows.  I assume this package will work with bsddb3 on Microsoft Windows.
        
        `DPT`_ is Microsoft Windows only.  It is included because it represents record sets in indexes using bitmaps when efficient to do so, and uses bitmaps to do boolean logic on record sets.
        
        
        Restrictions
        ============
        
        Python 3.4 and 3.5 are removed from runtime dependencies because delete record unittest results using Python's sqlite3 interface to Sqlite 3 are erratic.
        
        The equivalent unittest results using the apsw interface to Sqlite 3 are both identical and not erratic for Python 3.3, 3.4, and 3.5
        
        
        .. _`Python`: https://python.org
        .. _`bsddb3`: https://pypi.python.org/pypi/bsddb3
        .. _`DPT`: http://solentware.co.uk/components.html
        .. _`sqlite3`: https://github.com/ghaering/pysqlite
        .. _`apsw`: https://github.com/rogerbinns/apsw
        
Platform: UNKNOWN
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3.6
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development
Classifier: Topic :: Database :: Front-Ends
Classifier: Intended Audience :: Developers
Classifier: Development Status :: 4 - Beta
