{ "info": { "author": "Akshay Zade", "author_email": "akshay2000@hotmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Pychkari\n\n[![Build Status](https://travis-ci.com/akshay2000/Pychkari.svg?branch=master)](https://travis-ci.com/akshay2000/Pychkari)\n\nA Very Simple Python Dependency Injector\n\n## Installation\n\nUse pip!\n\n pip install pychkari\n\n\n## Overview\n\nPychkari (pronounced peach kaa ree) is a simple dependency injector for Python. It is intended to be a no-fuss library that depends on as few packages as possible and just works.\n\nThis example should get us started!\n\n # Class definitions for reference\n\n class A:\n def __init__(self, \n depOne, # casing support\n second_dep: \"DepTwo\", # annotations support\n const_dep=3): # not a dependency\n self.dep1 = depOne\n self.dep2 = second_dep\n self.const_d = const_dep\n\n\n class DepOne:\n def __init__(self):\n self.timestamp = datetime.now()\n\n\n class DepTwo:\n def __init__(self):\n self.timestamp = datetime.now()\n\n\n class B:\n def __init__(self, a, dep_one):\n self.a = a\n self.dep1 = dep_one\n\n\n # registration\n\n container = Container.instance()\n container.register(\"MyAwesomeService\", B) # explicitly named registration\n container.register_class(A) # service name \"A\" implicit\n container.register_class(DepOne) # service name \"DepOne\" implicit\n container.register_class(DepTwo) # service name \"DepTwo\" implicit\n\n # instantiation\n\n service = container.get(\"MyAwesomeService\") # creates instance of \"B\" with dependencies injected\n\n\n## Features\n\n### Lightweight\n\nPychkari is barely a few kilobytes. It doesn't have third party dependencies. Just drop it into your project and run with it.\n\n### Zero Commitment\n\nPychkari doesn't require you to change your code. As long as common Python conventions are followed, your existing code just works! \nNo fancy annotations, no decorations, no commitments. You're free to mix and match with any other framework.\n\nThis chart should tell you how dependencies are resolved:\n\n| Dependency | Resolved Service Name |\n|-----------------------|-----------------------|\n| underscore_case | UnderscoreCase |\n| camelCase | CamelCase |\n| PascalCase | PascalCase |\n| my_Weird_case | MyWeirdCase |\n| my_service:HttpClient | HttpClient |\n\n### Extensible\n\nWell, sort of! If the conventions don't satisfy your complex naming schemes, you can always make the names explicit by annotating the dependencies. \nFor example, `client:\"MyService\"` will inject and instance of `MyService` in place of `client`.\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/akshay2000/Pychkari", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "pychkari", "package_url": "https://pypi.org/project/pychkari/", "platform": "", "project_url": "https://pypi.org/project/pychkari/", "project_urls": { "Homepage": "https://github.com/akshay2000/Pychkari" }, "release_url": "https://pypi.org/project/pychkari/1.1.2/", "requires_dist": null, "requires_python": "", "summary": "A Very Simple Python Dependency Injector", "version": "1.1.2" }, "last_serial": 4667566, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "4bf987e0594fde47b57946a8dbe76104", "sha256": "b9c9fd351b9ba555ef06e99502f1ee98a08cfd56cfabe494a6f5851f60bede49" }, "downloads": -1, "filename": "pychkari-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "4bf987e0594fde47b57946a8dbe76104", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6337, "upload_time": "2018-12-10T10:12:19", "url": "https://files.pythonhosted.org/packages/26/3d/2e35749c32a9baae6705a52bae5f6fe6d0f1325eeabab6272aff3039a43b/pychkari-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "92ace1ce00fb2cda9fb28104e5539900", "sha256": "45a84a4a2f4e41d43d6690a5c8024c20b13fd6a146860d79c5588a2f5fc3c717" }, "downloads": -1, "filename": "pychkari-0.1.0.tar.gz", "has_sig": false, "md5_digest": "92ace1ce00fb2cda9fb28104e5539900", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3642, "upload_time": "2018-12-10T10:12:21", "url": "https://files.pythonhosted.org/packages/af/cc/678dcbe8f3485f0625bc13712a2592ab5ac91867058d0dbacbc7638850b1/pychkari-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "f5b01420cc2248363bc843128a852ae5", "sha256": "0c5afbcca3fbeab04d3f928fc5639aebecd1c96b847027c6bde8e37f4ea16a8d" }, "downloads": -1, "filename": "pychkari-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f5b01420cc2248363bc843128a852ae5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16846, "upload_time": "2018-12-10T10:31:04", "url": "https://files.pythonhosted.org/packages/fb/47/0b1242632d416acb704fca14a780e6ab02e6eed44b3cdf4409ee0f2f69e6/pychkari-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b54536cdb12f20e715239d100c173659", "sha256": "c4c11a289e03f72fafc890947cfde05921e384559e430a915b426c9a41fb613a" }, "downloads": -1, "filename": "pychkari-0.1.1.tar.gz", "has_sig": false, "md5_digest": "b54536cdb12f20e715239d100c173659", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3858, "upload_time": "2018-12-10T10:31:06", "url": "https://files.pythonhosted.org/packages/35/87/49edc82cb7128bb182dd6cf20a531f370ac8079b0153ac6821bd31695c3c/pychkari-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "77c5542e2d37b29be45eefa247f416be", "sha256": "b80b0d4d3964304c1a752f11be98a60025d9bb76e4b6eba95c655d33a0f1260d" }, "downloads": -1, "filename": "pychkari-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "77c5542e2d37b29be45eefa247f416be", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16870, "upload_time": "2018-12-10T10:34:46", "url": "https://files.pythonhosted.org/packages/99/13/fc6b4cc1851c7b8e2b0d57ca4ff03268b1ec268f74a6256d94b6343021bf/pychkari-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "05d7339e59cfb1a15f5c2a65d725bcdb", "sha256": "57c533248452967b8df1cf03e58bfcc002180851dc02183d96aa93df8332cf91" }, "downloads": -1, "filename": "pychkari-0.1.2.tar.gz", "has_sig": false, "md5_digest": "05d7339e59cfb1a15f5c2a65d725bcdb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3884, "upload_time": "2018-12-10T10:34:47", "url": "https://files.pythonhosted.org/packages/06/47/d236f36b788be621b4d092f310d8ee942a666a96a0601f2ac19d67ef6c5d/pychkari-0.1.2.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "2c9ad947663d28ecd32a5ad6b51ca410", "sha256": "70fb0fa712cf75b3f83f0a9aafaf7d8fb5dd44e2c8377de4a9cea2f14ed47f46" }, "downloads": -1, "filename": "pychkari-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "2c9ad947663d28ecd32a5ad6b51ca410", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17531, "upload_time": "2018-12-24T17:48:15", "url": "https://files.pythonhosted.org/packages/ef/26/b0b402c955c909a540bdd5f5380a1b6662fa8348c0d066c27641f06a4791/pychkari-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7895e87654b10d14dc8eae1ae0c78bda", "sha256": "c7aa7947be8f07f59fb8a5abc5abf71fe293b11a39e8a6052b0c15e983d6f00c" }, "downloads": -1, "filename": "pychkari-1.0.0.tar.gz", "has_sig": false, "md5_digest": "7895e87654b10d14dc8eae1ae0c78bda", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4566, "upload_time": "2018-12-24T17:48:16", "url": "https://files.pythonhosted.org/packages/6c/80/ccb1cd7bec03161aea6395f3c6e089946a41fe86fc2d0a21e697ddd5d5c0/pychkari-1.0.0.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "07d942a5627d2fb683dc8f4cce299ad4", "sha256": "5550873246cc856d6fc27f07c6d252938d8c8d80223d91c16abd0561b2ef4e03" }, "downloads": -1, "filename": "pychkari-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "07d942a5627d2fb683dc8f4cce299ad4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17618, "upload_time": "2019-01-07T07:01:27", "url": "https://files.pythonhosted.org/packages/a8/e8/79bbcc510adc6d0889e36fc63bea7a9fad6491cb5cbf8d6b2a70fd12576a/pychkari-1.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a510b01b14321b9fe16d526711f7b1e", "sha256": "2eef60f8d9aeec3133f907e7dcea9ed52302e2eedc236d8aaaca242ae1d17970" }, "downloads": -1, "filename": "pychkari-1.1.2.tar.gz", "has_sig": false, "md5_digest": "1a510b01b14321b9fe16d526711f7b1e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4650, "upload_time": "2019-01-07T07:01:28", "url": "https://files.pythonhosted.org/packages/88/be/99bf186c1d23086f82c2c6a899cd1d0cfb610b0e4b578beca36f9f7ae790/pychkari-1.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "07d942a5627d2fb683dc8f4cce299ad4", "sha256": "5550873246cc856d6fc27f07c6d252938d8c8d80223d91c16abd0561b2ef4e03" }, "downloads": -1, "filename": "pychkari-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "07d942a5627d2fb683dc8f4cce299ad4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17618, "upload_time": "2019-01-07T07:01:27", "url": "https://files.pythonhosted.org/packages/a8/e8/79bbcc510adc6d0889e36fc63bea7a9fad6491cb5cbf8d6b2a70fd12576a/pychkari-1.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a510b01b14321b9fe16d526711f7b1e", "sha256": "2eef60f8d9aeec3133f907e7dcea9ed52302e2eedc236d8aaaca242ae1d17970" }, "downloads": -1, "filename": "pychkari-1.1.2.tar.gz", "has_sig": false, "md5_digest": "1a510b01b14321b9fe16d526711f7b1e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4650, "upload_time": "2019-01-07T07:01:28", "url": "https://files.pythonhosted.org/packages/88/be/99bf186c1d23086f82c2c6a899cd1d0cfb610b0e4b578beca36f9f7ae790/pychkari-1.1.2.tar.gz" } ] }