{ "info": { "author": "sonntagsgesicht, based on a fork of Deutsche Postbank [pbrisk]", "author_email": "sonntagsgesicht@icloud.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Education", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Education", "Topic :: Office/Business", "Topic :: Scientific/Engineering", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "\n\nPython library *unicum*\n-----------------------\n\n.. image:: https://img.shields.io/codeship/dcea6660-ba19-0137-ce69-728d1edfce58/master.svg\n :target: https://codeship.com//projects/364766\n :alt: CodeShip\n\n.. image:: https://travis-ci.org/sonntagsgesicht/unicum.svg?branch=master\n :target: https://travis-ci.org/sonntagsgesicht/unicum\n :alt: Travis ci\n\n.. image:: https://readthedocs.org/projects/unicum/badge\n :target: http://unicum.readthedocs.io\n :alt: Read the Docs\n\n.. image:: https://img.shields.io/codefactor/grade/github/sonntagsgesicht/unicum/master\n :target: https://www.codefactor.io/repository/github/sonntagsgesicht/unicum\n :alt: CodeFactor Grade\n\n.. image:: https://img.shields.io/codeclimate/maintainability/sonntagsgesicht/unicum\n :target: https://codeclimate.com/github/sonntagsgesicht/unicum/maintainability\n :alt: Code Climate maintainability\n\n.. image:: https://img.shields.io/codecov/c/github/sonntagsgesicht/unicum\n :target: https://codecov.io/gh/sonntagsgesicht/unicum\n :alt: Codecov\n\n.. image:: https://img.shields.io/lgtm/grade/python/g/sonntagsgesicht/unicum.svg\n :target: https://lgtm.com/projects/g/sonntagsgesicht/unicum/context:python/\n :alt: lgtm grade\n\n.. image:: https://img.shields.io/lgtm/alerts/g/sonntagsgesicht/unicum.svg\n :target: https://lgtm.com/projects/g/sonntagsgesicht/unicum/alerts/\n :alt: total lgtm alerts\n\n.. image:: https://img.shields.io/github/license/sonntagsgesicht/unicum\n :target: https://github.com/sonntagsgesicht/unicum/raw/master/LICENSE\n :alt: GitHub\n\n.. image:: https://img.shields.io/github/release/sonntagsgesicht/unicum?label=github\n :target: https://github.com/sonntagsgesicht/unicum/releases\n :alt: GitHub release\n\n.. image:: https://img.shields.io/pypi/v/unicum\n :target: https://pypi.org/project/unicum/\n :alt: PyPI Version\n\n.. image:: https://img.shields.io/pypi/pyversions/unicum\n :target: https://pypi.org/project/unicum/\n :alt: PyPI - Python Version\n\n.. image:: https://img.shields.io/pypi/dm/unicum\n :target: https://pypi.org/project/unicum/\n :alt: PyPI Downloads\n\n\n`unicum` consists of multiple object implementations that implement various factory pattern.\nAll types merge into on type `VisibleObject` and each type contributes bits and piece.\n\nThe visible obj focus on robust and simple construction from a dictionary via `PersistentObject`\nhaving values only simple types or containers containers of simple types.\n\nThese values are translated via `FatoryObject` into more complex structures which are take from a factory.\n\nOr, alternatively, using `DataRange` into something similar to a `data_frame` type in `R`,\na table with column and row names as well as common types for each column values.\n\nInheriting from `LinkedObject` provides functionality to swap or update attributes at runtime\n\n\nExample Usage\n-------------\n\nUsing `FactoryObject`:\n\n.. code-block:: python\n\n >>> from unicum import FactoryObject\n\n >>> class Currency(FactoryObject): __factory = dict()\n >>> class EUR(Currency): pass\n >>> class USD(Currency): pass\n\n >>> EUR().register() # registers USD() instance with class name 'EUR'\n >>> eur = Currency('EUR') # picks instance with key 'EUR' from currency cache\n >>> eur == EUR() # picks instance with key given by class name 'EUR' from currency cache, too.\n\n True\n\n >>> eur2 = eur.__class__('EUR') # picks instance with key 'EUR' from currency cache\n >>> eur == eur2\n\n True\n\n >>> usd = USD().register() # registers USD() instance with class name 'USD'\n >>> usd.register('usd') # registers usd with name 'usd'\n >>> usd == USD()\n\n True\n\n >>> eur == eur.__class__('USD')\n\n False\n\n >>> usd == eur.__class__('USD')\n\n True\n\n >>> usd == Currency('usd')\n\n True\n\n\nUsing `LinkedObject`:\n\n.. code-block:: python\n\n >>> from unicum import LinkedObject\n\n\nDevelopment Version\n-------------------\n\nThe latest development version can be installed directly from GitHub:\n\n.. code-block:: bash\n\n $ pip install --upgrade git+https://github.com/sonntagsgesicht/unicum.git\n\n\nContributions\n-------------\n\n.. _issues: https://github.com/sonntagsgesicht/unicum/issues\n.. __: https://github.com/sonntagsgesicht/unicum/pulls\n\nIssues_ and `Pull Requests`__ are always welcome.\n\n\nLicense\n-------\n\n.. __: https://github.com/sonntagsgesicht/unicum/raw/master/LICENSE\n\nCode and documentation are available according to the Apache Software License (see LICENSE__).\n\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/sonntagsgesicht/unicum", "keywords": "", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "unicum", "package_url": "https://pypi.org/project/unicum/", "platform": "any", "project_url": "https://pypi.org/project/unicum/", "project_urls": { "Homepage": "https://github.com/sonntagsgesicht/unicum" }, "release_url": "https://pypi.org/project/unicum/0.3/", "requires_dist": null, "requires_python": "", "summary": "Python library for simple object cache and factory.", "version": "0.3" }, "last_serial": 5850012, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "fc6590ef7cafb4fc1a0ab61804ee4809", "sha256": "5233469bd0312e846c3c93c479907c541717f44cf35a3b6f97d970c241f0432b" }, "downloads": -1, "filename": "unicum-0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "fc6590ef7cafb4fc1a0ab61804ee4809", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 23158, "upload_time": "2017-07-07T22:17:52", "url": "https://files.pythonhosted.org/packages/db/8e/b6aaa7e45016c9d0155f17c899813c35e5a2ff88aa31bcd2ae6ee7d7de3d/unicum-0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f12a4fd4ac27c3236271a09769d7fd40", "sha256": "059076bf4cc548ac1c7ddba94d89c04da2bcb5d23fe4ed53a1b8f9e450bbf058" }, "downloads": -1, "filename": "unicum-0.1.tar.gz", "has_sig": false, "md5_digest": "f12a4fd4ac27c3236271a09769d7fd40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24911, "upload_time": "2017-07-07T22:17:54", "url": "https://files.pythonhosted.org/packages/5e/ed/2830d716c9655851dd86d2462365215eaa2a932e635a067bba470fad454d/unicum-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "6fd7844119bad285c113375765a70d8a", "sha256": "707b7b0e4cc92dba42a5c482d7c94c8e2efeb8aa71c2e684a8ffff0db2167c37" }, "downloads": -1, "filename": "unicum-0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "6fd7844119bad285c113375765a70d8a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 785317, "upload_time": "2017-12-31T11:32:35", "url": "https://files.pythonhosted.org/packages/fd/40/cf0ba3320a725454b0180a6b935d1e8f4a0525efde71d1d614b9baeefcb0/unicum-0.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "46e4e5f91c70c86ed1fe34d2e10b55ce", "sha256": "692ba331f22fa64891bf45083f9b96a7e04d4eb5460bda698acada865e02d544" }, "downloads": -1, "filename": "unicum-0.2.zip", "has_sig": false, "md5_digest": "46e4e5f91c70c86ed1fe34d2e10b55ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 790116, "upload_time": "2017-12-31T11:32:39", "url": "https://files.pythonhosted.org/packages/e4/6d/93adaa1c44e138f0b7927b1a49affbf1e35b553e26c52fbf9299f70ae5de/unicum-0.2.zip" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "43d0b2efa0c8fcb67ae0243e512a7310", "sha256": "71d883a91a291472787c503f04c1c455185d24bc6bb15e5d6f172ba30a0223e8" }, "downloads": -1, "filename": "unicum-0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "43d0b2efa0c8fcb67ae0243e512a7310", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27753, "upload_time": "2019-09-18T12:54:15", "url": "https://files.pythonhosted.org/packages/92/67/ec8516b1f2689b2865562058be91d0cb28e352c5dee425b2417623ef671b/unicum-0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3971e2f1a61e1bb2be83321cfb345f3", "sha256": "fcde16513a09f77c056a357ffd91db9305c2d2b164153c377dd11376d9e9f418" }, "downloads": -1, "filename": "unicum-0.3.tar.gz", "has_sig": false, "md5_digest": "d3971e2f1a61e1bb2be83321cfb345f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23842, "upload_time": "2019-09-18T12:54:17", "url": "https://files.pythonhosted.org/packages/63/46/53c78b9b007ade044fcfc35a9fdbfda236a398d33e1c548ada19f978e316/unicum-0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "43d0b2efa0c8fcb67ae0243e512a7310", "sha256": "71d883a91a291472787c503f04c1c455185d24bc6bb15e5d6f172ba30a0223e8" }, "downloads": -1, "filename": "unicum-0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "43d0b2efa0c8fcb67ae0243e512a7310", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 27753, "upload_time": "2019-09-18T12:54:15", "url": "https://files.pythonhosted.org/packages/92/67/ec8516b1f2689b2865562058be91d0cb28e352c5dee425b2417623ef671b/unicum-0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3971e2f1a61e1bb2be83321cfb345f3", "sha256": "fcde16513a09f77c056a357ffd91db9305c2d2b164153c377dd11376d9e9f418" }, "downloads": -1, "filename": "unicum-0.3.tar.gz", "has_sig": false, "md5_digest": "d3971e2f1a61e1bb2be83321cfb345f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23842, "upload_time": "2019-09-18T12:54:17", "url": "https://files.pythonhosted.org/packages/63/46/53c78b9b007ade044fcfc35a9fdbfda236a398d33e1c548ada19f978e316/unicum-0.3.tar.gz" } ] }