Metadata-Version: 1.2
Name: pimpmyclass
Version: 0.4.3
Summary: Pimp your Class/Property/Methods with useful functionality
Home-page: https://github.com/hgrecco/pimpmyclass
Author: Hernan E. Grecco
Author-email: hernan.grecco@gmail.com
License: BSD
Description: Pimp My Class
        =============
        [![Coverage Status](https://coveralls.io/repos/github/hgrecco/pimpmyclass/badge.svg?branch=master)](https://coveralls.io/github/hgrecco/pimpmyclass?branch=master)
        [![Build Status](https://travis-ci.org/hgrecco/pimpmyclass.svg?branch=master)](https://travis-ci.org/hgrecco/pimpmyclass)
        ![Python Version](https://img.shields.io/pypi/pyversions/pimpmyclass.svg)
        [![Python Version](https://img.shields.io/pypi/v/pimpmyclass.svg)](https://pypi.org/project/pimpmyclass/)
        [![Documentation Status](https://readthedocs.org/projects/pimpmyclass/badge/?version=latest)](https://pimpmyclass.readthedocs.io/en/latest/?badge=latest)
        
        This library provides base classes to enable useful behavior in Python Objects.
        
        The central purpose of the library is to extend python properties to allow:
        
        - get/set logging.
        - get/set timing, success and failure stats.
        - async locking.
        - get/set coercion and conversion.
        - value cache
        - prevent unnecessary set.
        - read once properties
        
        But most importantly, it allows owner specific configurations. Properties are
        class attributes, and therefore it is difficult to have a property which is, for
        exampled cached, in an object but not cached in another instance of the same class.
        
        The library also provides DictProperties: that is properties that can be accessed by key;
        and also methods!
        
        Each capability is isolated in individual classes allowing you to pick only what you need.
        
        https://github.com/hgrecco/pimpmyclass
        
        
        
        
        
        
        Authors
        -------
        
        Hernan E. Grecco <hernan.grecco@gmail.com>
        
        
        pimpmyclass changelog
        =====================
        
        
        0.4.3 (2019-04-30)
        ------------------
        
        - Changed signal is only emitted when the cache value actually changes.
        
        
        0.4.2 (2019-01-21)
        ------------------
        
        - Created get/set _notifiy to be called after succesfull get/set.
        
        
        0.4.1 (2019-01-19)
        ------------------
        
        - Document log_values.
        - Check for key being member of list/tuple/set in dictproperties.
        - Fixed bug that precluded composing properties/methods with config.
        
        
        0.4 (2019-01-19)
        ----------------
        
        - Renamed Config to InstanceConfig and implemented Config for instance
          independent configuration.
        - Implemented automatic filling of Config and InstanceConfig with kwargs.
        - Implemented default, value and type checking for Config and InstanceConfig
        - More testing and docs.
        
        
        0.3 (2019-01-16)
        ----------------
        
        - Implemented `log_values` to toggle how values are logged
        - Improved testing.
        - Split GetSetCacheProperty into GetCacheProperty and SetCacheProperty
        
        
        0.2 (2018-11-27)
        ----------------
        
        - Added the possibility to use Python Enum 
          as keys in DictFeat.
        
        
        0.1.3 (2018-04-04)
        ------------------
        
        - Removed keyword argument from DictFeat signal 
          for greater compatibility with Qt.
        
        
        0.1.2 (2018-04-04)
        ------------------
        
        - Fixed repr in BoundedProperty.
         
        
        0.1.1 (2018-03-28)
        ------------------
        
        - Fixed check_signature when params is empty.
        
        
        0.1 (2018-03-23)
        ----------------
        
        - first public release.
        
        
Keywords: classes properties descriptors decorators
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development :: Libraries
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Requires-Python: >=3.6
