{ "info": { "author": "Russell Smiley", "author_email": "im.russell.smiley@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)" ], "description": "contactList\n===========\n\n|pipeline| |coverage|\n\n.. |pipeline| image:: https://gitlab.com/blueskyjunkie/contactlist/badges/master/pipeline.svg\n :target: https://gitlab.com/blueskyjunkie/contactlist/commits/master\n :alt: pipeline status\n\n.. |coverage| image:: https://gitlab.com/blueskyjunkie/contactlist/badges/master/coverage.svg\n :target: https://gitlab.com/blueskyjunkie/contactlist/commits/master\n :alt: coverage analysis\n\n|pypiVersion|\n\n.. |pypiVersion| image:: https://badge.fury.io/py/contactList.svg\n :target: https://badge.fury.io/py/contactList\n :alt: PyPI Version\n\n\nA Python 3 utility for constructing, managing and organising email addresses in YAML format.\n\n.. contents::\n\n.. section-numbering::\n\n\nInstallation\n------------\n\nThe simplest way to install is using pip\n\n.. code-block:: bash\n\n pip install contactList\n\n\nGetting Started\n---------------\n\nThe structure of YAML file is very simple. Organise email addresses into arbitrarily named groups and then organise\nthose groups into arbitrarily named \"clusters\".\n\n.. code-block:: yaml\n\n groups:\n g1:\n - 'u1@some.domain'\n\n g2:\n - 'u3@some.other.domain'\n\n g3:\n - 'u4@this.domain'\n - 'u2@some.domain'\n\n clusters:\n c1: [ 'g1' ]\n\n c2: [ 'g1', 'g2' ]\n\n c3: [ 'g2', 'g3' ]\n\n\nThere is no requirement restricting an email address to only one group.\n\n\n``contact-list`` utility\n------------------------\n\nOnce the wheel package is installed the command line utility ``contact-list`` is available. This utility can be used to\nmanage contact list data in a YAML file from the command line.\n\n.. code-block:: bash\n\n > contact-list --help\n usage: contact-list [-h] [--file CONTACTSFILE] {cluster,email,group} ...\n\n positional arguments:\n {cluster,email,group}\n\n optional arguments:\n -h, --help show this help message and exit\n --file CONTACTSFILE, -f CONTACTSFILE\n Contacts file to manage (default contacts.yml)\n\nSubcommands enable the modification of the respective entities in the file, ``cluster``, ``email``, ``group``.\n\n\nUsing the framework\n-------------------\n\nUsing the contactList framework, your application can then use the clusters to build a list of the necessary emails. By\ndefault, the ``from_yamlFile`` classmethod tries to load YAML from ``contacts.yml`` in the current directory, otherwise\nthe user specifies the file name to use.\n\n.. code-block:: python\n\n from contactList import Contacts\n\n myContacts = Contacts.from_yamlFile()\n\n # A list of the groups loaded from YAML\n assert isinstance( myContacts.groups, list )\n # A list of the clusters loaded from YAML\n assert isinstance( myContacts.clusters, list )\n\n # Check that the groups and clusters are correctly specified.\n myContacts.validate()\n\n # Generate a Python set of email addresses for the chosen cluster.\n emailList = myContacts.emails( 'c2' )\n\n assert isinstance( emailList, set )\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/blueskyjunkie/contactlist", "keywords": "email contacts yaml", "license": "", "maintainer": "", "maintainer_email": "", "name": "contactList", "package_url": "https://pypi.org/project/contactList/", "platform": "", "project_url": "https://pypi.org/project/contactList/", "project_urls": { "Homepage": "https://gitlab.com/blueskyjunkie/contactlist" }, "release_url": "https://pypi.org/project/contactList/0.1.0/", "requires_dist": [ "pyyaml", "nose; extra == \"dev\"", "nose-cov; extra == \"dev\"", "nosehtmloutput-2; extra == \"dev\"" ], "requires_python": ">=3.6", "summary": "A Python 3 framework for constructing, managing and organising email addresses in YAML format.", "version": "0.1.0" }, "last_serial": 4625099, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "83bfe3c5c1a72537e429b5383c90a936", "sha256": "2a57b86846343ae08d80634ac01e3eac749c89a3252363e9c7549e0a54389f6d" }, "downloads": -1, "filename": "contactList-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "83bfe3c5c1a72537e429b5383c90a936", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 216583, "upload_time": "2018-12-21T13:19:30", "url": "https://files.pythonhosted.org/packages/24/84/5a969f9de8e5bb1f7034ab8736d07b3a373b61bcba3427572d08ee7c2f49/contactList-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cbe36afb060f280c3c2b4f7211d5dae", "sha256": "797ad64a9888cb363cd98aace151d79dd46b9c1dc440f08018e93805a866ed4a" }, "downloads": -1, "filename": "contactList-0.1.0.tar.gz", "has_sig": false, "md5_digest": "0cbe36afb060f280c3c2b4f7211d5dae", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 33321, "upload_time": "2018-12-21T13:19:32", "url": "https://files.pythonhosted.org/packages/f0/7b/35ebe044c393f04fc63f646f9ae1c65eef315fcae4faf3665f50b74d05e4/contactList-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "83bfe3c5c1a72537e429b5383c90a936", "sha256": "2a57b86846343ae08d80634ac01e3eac749c89a3252363e9c7549e0a54389f6d" }, "downloads": -1, "filename": "contactList-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "83bfe3c5c1a72537e429b5383c90a936", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 216583, "upload_time": "2018-12-21T13:19:30", "url": "https://files.pythonhosted.org/packages/24/84/5a969f9de8e5bb1f7034ab8736d07b3a373b61bcba3427572d08ee7c2f49/contactList-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cbe36afb060f280c3c2b4f7211d5dae", "sha256": "797ad64a9888cb363cd98aace151d79dd46b9c1dc440f08018e93805a866ed4a" }, "downloads": -1, "filename": "contactList-0.1.0.tar.gz", "has_sig": false, "md5_digest": "0cbe36afb060f280c3c2b4f7211d5dae", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 33321, "upload_time": "2018-12-21T13:19:32", "url": "https://files.pythonhosted.org/packages/f0/7b/35ebe044c393f04fc63f646f9ae1c65eef315fcae4faf3665f50b74d05e4/contactList-0.1.0.tar.gz" } ] }