{ "info": { "author": "Miguel Turner", "author_email": "cymrow@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Topic :: Software Development :: Libraries" ], "description": "Overview\n========\n\n*profig* is a straightforward configuration library for Python.\n\n.. image:: https://travis-ci.org/dhagrow/profig.svg?branch=master\n :target: https://travis-ci.org/dhagrow/profig\n\nMotivation\n----------\n\nWhy another configuration library? The simple answer is that none of the\navailable options give me everything I want, with an API that I enjoy using.\nThis library provides a lot of powerful functionality, but never at the cost of\nsimplicity.\n\nFeatures\n--------\n\n* Automatic value conversion.\n* Section nesting.\n* Dict-like access.\n* Single-file module with no dependencies.\n* Extensible input/output formats.\n* Built-in support for INI files and the Windows registry.\n* Preserves ordering and comments of INI files.\n* Full Unicode support.\n* Supports Python 2.7+ and 3.2+.\n\nInstallation\n------------\n\n*profig* installs using *easy_install* or *pip*::\n\n $ pip install profig\n\nExample\n-------\n\nBasic usage is cake. Let's assume our config file looks like this::\n\n [server]\n host = 192.168.1.1\n port = 9090\n\nFirst, we specify the defaults and types to expect::\n\n >>> cfg = profig.Config('server.cfg')\n >>> cfg.init('server.host', 'localhost')\n >>> cfg.init('server.port', 8080)\n\nThen, we sync our current state with the state of the config file::\n\n >>> cfg.sync()\n\nAs expected, we can access the updated values without undue effort, either\ndirectly::\n\n >>> cfg['server.host']\n '192.168.1.1'\n\nOr by section. Notice that the type of the *port* option is preserved::\n\n >>> server_cfg = cfg.section('server')\n >>> server_cfg['port']\n 9090\n\nResources\n----------\n\n* Documentation_\n* PyPI_\n* Repository_\n\n.. _Documentation: http://profig.rtfd.org/\n.. _PyPI: https://pypi.python.org/pypi/profig\n.. _Repository: https://bitbucket.org/dhagrow/profig", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dhagrow/profig", "keywords": "config,configuration,options,settings", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "profig", "package_url": "https://pypi.org/project/profig/", "platform": "any", "project_url": "https://pypi.org/project/profig/", "project_urls": { "Homepage": "https://github.com/dhagrow/profig" }, "release_url": "https://pypi.org/project/profig/0.5.1/", "requires_dist": null, "requires_python": "", "summary": "A configuration library.", "version": "0.5.1", "yanked": false, "yanked_reason": null }, "last_serial": 6024032, "releases": { "0.2.5": [ { "comment_text": "", "digests": { "md5": "5c2c9d99cd1a470463f89939176d266f", "sha256": "c408d8fa3c175d98852a7440f2d3ded802b96453c294f3209b2201d741ce3cd6" }, "downloads": -1, "filename": "profig-0.2.5.tar.gz", "has_sig": false, "md5_digest": "5c2c9d99cd1a470463f89939176d266f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12877, "upload_time": "2014-03-25T04:22:55", "upload_time_iso_8601": "2014-03-25T04:22:55.782431Z", "url": "https://files.pythonhosted.org/packages/fd/34/4c456c98343aaf08aac5cd5f9095b596857f1f9263e43fc103fd6d90f67b/profig-0.2.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "20dd4ee72bd82c69f37b6d2946f1f828", "sha256": "8b38e3d69f9ec421b1b6dfbd3953f65b3d4d360e759a5f14a8f1fc8735af5683" }, "downloads": -1, "filename": "profig-0.2.6.tar.gz", "has_sig": false, "md5_digest": "20dd4ee72bd82c69f37b6d2946f1f828", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13014, "upload_time": "2014-03-26T17:58:13", "upload_time_iso_8601": "2014-03-26T17:58:13.226620Z", "url": "https://files.pythonhosted.org/packages/95/73/ef3999bc54e65dec5addc7b15ed9b61738be48558c06c26a5f2a34c2ee05/profig-0.2.6.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "d50ff4afd12434271c148a7d31ee5186", "sha256": "fa574c9a7abeff591f5cf7e0bacfc7d63be0913488d493fd44a49660bac57da7" }, "downloads": -1, "filename": "profig-0.2.7.tar.gz", "has_sig": false, "md5_digest": "d50ff4afd12434271c148a7d31ee5186", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12654, "upload_time": "2014-03-30T02:13:51", "upload_time_iso_8601": "2014-03-30T02:13:51.280311Z", "url": "https://files.pythonhosted.org/packages/01/9f/597aac5922f058406a7f4b580f548fd0b812c202c59cd4e5568342ab7c65/profig-0.2.7.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "a82105164e4876945b247d5c1dff748b", "sha256": "49fb8cd315797de4149531c0839c5874eeedc3d8281f3a2c5342e7a08e5ea80e" }, "downloads": -1, "filename": "profig-0.2.8.tar.gz", "has_sig": false, "md5_digest": "a82105164e4876945b247d5c1dff748b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12262, "upload_time": "2014-04-11T15:03:00", "upload_time_iso_8601": "2014-04-11T15:03:00.247609Z", "url": "https://files.pythonhosted.org/packages/0c/f2/4b0bcceccd7a4992d7154c67f842d446ebdd18fd38fc494839fbfac321d2/profig-0.2.8.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.9": [ { "comment_text": "", "digests": { "md5": "984762900c0bbf51961293badc023d2d", "sha256": "1e0cccd4bb65c18f7b1404932ce20d69a4622e4aa8018d2a1078605b9a60b530" }, "downloads": -1, "filename": "profig-0.2.9.tar.gz", "has_sig": false, "md5_digest": "984762900c0bbf51961293badc023d2d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12157, "upload_time": "2014-05-27T04:51:56", "upload_time_iso_8601": "2014-05-27T04:51:56.033129Z", "url": "https://files.pythonhosted.org/packages/b3/09/d81a6336ef524ece38519856356cd1077e615e4e54a95c62cd37a0d05cfd/profig-0.2.9.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "22212bb9d87453918cde9d2a1af6e456", "sha256": "1a0d1dce4a9d9b535b874ae5b1d02782a90c0d2a8be76a4b83540aa9ad486aac" }, "downloads": -1, "filename": "profig-0.3.0.tar.gz", "has_sig": false, "md5_digest": "22212bb9d87453918cde9d2a1af6e456", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12945, "upload_time": "2014-06-05T04:12:58", "upload_time_iso_8601": "2014-06-05T04:12:58.856411Z", "url": "https://files.pythonhosted.org/packages/96/f8/87e2d87faf9350f1684924f0a963e4f73dedaa5264e528fe6152574e45a7/profig-0.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "951b4e6f202f5877fad378edcc67b83c", "sha256": "cf38e71d6e6c936d59a96f015d454533c9d01b3313d333b71c4db79d72e87ae7" }, "downloads": -1, "filename": "profig-0.3.1.tar.gz", "has_sig": false, "md5_digest": "951b4e6f202f5877fad378edcc67b83c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15842, "upload_time": "2014-06-05T14:28:59", "upload_time_iso_8601": "2014-06-05T14:28:59.729978Z", "url": "https://files.pythonhosted.org/packages/90/e9/683c04810725d413f54343be435b32b90f2baa784617ed6fbe212dd82e1f/profig-0.3.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "df5dcf03687333146c7c92445b7c4b88", "sha256": "5b76f8d9cd557854256ec9008d46d97f876ce6e256f20ce324c2576fdaf19c99" }, "downloads": -1, "filename": "profig-0.3.2.tar.gz", "has_sig": false, "md5_digest": "df5dcf03687333146c7c92445b7c4b88", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17140, "upload_time": "2014-07-01T03:55:53", "upload_time_iso_8601": "2014-07-01T03:55:53.615925Z", "url": "https://files.pythonhosted.org/packages/30/39/0faaabb529804e3524981a6ce4f5e5e49e78e3bb34ff6e7b8a408132fe43/profig-0.3.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "00229a112478fdb4d718bb121d2dd9a0", "sha256": "6c032f6aff138985991efb28ad90143a337d9930af848fa9dab45e5c9281c6ba" }, "downloads": -1, "filename": "profig-0.3.3.tar.gz", "has_sig": false, "md5_digest": "00229a112478fdb4d718bb121d2dd9a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17421, "upload_time": "2014-07-11T14:26:14", "upload_time_iso_8601": "2014-07-11T14:26:14.305977Z", "url": "https://files.pythonhosted.org/packages/de/9c/35996f6757cd7f90117334f0e4392f3038fb7834fc05d7c41025838214f4/profig-0.3.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "cedd89af3efdce199b09bce0c7f24855", "sha256": "7cd66839dc83d294c021f2beb6d00a454274926e4aba24a53881d135d79bb7dc" }, "downloads": -1, "filename": "profig-0.4.0.tar.gz", "has_sig": false, "md5_digest": "cedd89af3efdce199b09bce0c7f24855", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17421, "upload_time": "2014-10-27T18:34:08", "upload_time_iso_8601": "2014-10-27T18:34:08.668790Z", "url": "https://files.pythonhosted.org/packages/93/01/18907b12304fac3e7c56d707c3ead383157b4f2094b9a3a54c0b7c56c457/profig-0.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "2e161313668c787ae5efe251fae24ec4", "sha256": "74aadcf6252fd0ed9757a1383e24963e1660817f90ffc962c8293349fa6f16b7" }, "downloads": -1, "filename": "profig-0.4.1.tar.gz", "has_sig": false, "md5_digest": "2e161313668c787ae5efe251fae24ec4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17837, "upload_time": "2015-01-22T18:06:06", "upload_time_iso_8601": "2015-01-22T18:06:06.865050Z", "url": "https://files.pythonhosted.org/packages/86/17/43305b3f27eaac92f9bcd9f5f99ebd2ef8dbb9504852b65063b879de82e6/profig-0.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "64c27bcfe93deda93a499c92c6d3a553", "sha256": "060b717e3739ca80f644231049181c73b93abf06b400e182d336349835aba6e7" }, "downloads": -1, "filename": "profig-0.5.0.tar.gz", "has_sig": false, "md5_digest": "64c27bcfe93deda93a499c92c6d3a553", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17940, "upload_time": "2019-09-26T04:56:00", "upload_time_iso_8601": "2019-09-26T04:56:00.907076Z", "url": "https://files.pythonhosted.org/packages/2e/3f/35f236715d450df807cdaa79ba60c14cfdfb0206a60a3caed3c907a35354/profig-0.5.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "a9defe0685010cfefebd273020d8d900", "sha256": "cb9c094325a93505fc6325d13f3e679b281093223f143a96a6df8ad9c2bfc9a6" }, "downloads": -1, "filename": "profig-0.5.1.tar.gz", "has_sig": false, "md5_digest": "a9defe0685010cfefebd273020d8d900", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17941, "upload_time": "2019-10-24T13:59:32", "upload_time_iso_8601": "2019-10-24T13:59:32.612127Z", "url": "https://files.pythonhosted.org/packages/c5/81/a14c49aee6202242fa95f8b3a9b1b12089ffcce939b2bdf36dd240e09bfc/profig-0.5.1.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a9defe0685010cfefebd273020d8d900", "sha256": "cb9c094325a93505fc6325d13f3e679b281093223f143a96a6df8ad9c2bfc9a6" }, "downloads": -1, "filename": "profig-0.5.1.tar.gz", "has_sig": false, "md5_digest": "a9defe0685010cfefebd273020d8d900", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17941, "upload_time": "2019-10-24T13:59:32", "upload_time_iso_8601": "2019-10-24T13:59:32.612127Z", "url": "https://files.pythonhosted.org/packages/c5/81/a14c49aee6202242fa95f8b3a9b1b12089ffcce939b2bdf36dd240e09bfc/profig-0.5.1.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }