Metadata-Version: 2.1
Name: plib3.classes
Version: 0.10
Summary: Useful Python 3 classes.
Home-page: http://pypi.org/project/plib3.classes
Author: Peter A. Donis
Author-email: peterdonis@alum.mit.edu
License: GPLv2
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Environment :: MacOS X
Classifier: Environment :: Win32 (MS Windows)
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/x-rst
License-File: LICENSE.txt

plib3.classes
=============

The PLIB3.CLASSES package contains a number of useful
Python 3 classes. The latest official release is
available on PyPI at
https://pypi.org/project/plib3.classes/
and the latest source code is available on Gitlab at
https://gitlab.com/pdonis/plib3-classes.

PLIB3.CLASSES is built using the ``build`` PEP 517 build tool
with the ``setuptools:build_meta`` backend. It uses the
``setuputils`` helper module to build the setup.cfg file that
is included with the distribution. This module is available
at https://gitlab.com/pdonis/setuputils3.

The PLIB3.CLASSES Package
-------------------------

The following classes are available in the ``plib.classes`` namespace:

- The ``StateMachine`` class implements a basic finite state machine
  with customizable code to be run at each state transition.

Installation
------------

The simplest way to install PLIB3.CLASSES is by using ``pip``:

    $ python3 -m pip install plib3.classes

This will download the latest release from PyPI and install it
on your system. If you already have a downloaded source tarball or
wheel, you can have ``pip`` install it directly by giving its
filename in place of "plib3.classes" in the above command line.

The Zen of PLIB3
----------------

There is no single unifying purpose or theme to PLIB3, but
like Python itself, it does have a 'Zen' of sorts:

- Express everything possible in terms of built-in Python
  data structures.

- Once you've expressed it that way, what the code is
  going to do with it should be obvious.

- Avoid boilerplate code, *and* boilerplate data. Every
  piece of data your program needs should have one and
  only one source.

Copyright and License
---------------------

PLIB3.CLASSES is Copyright (C) 2008-2019 by Peter A. Donis.

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version. (See the LICENSE file for a
copy of version 2 of the License.)

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.


