{ "info": { "author": "x1ah", "author_email": "gaoxiaoqiang@xiachufang.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Natural Language :: Chinese (Simplified)", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# outplan\n\n[![Build Status](https://travis-ci.com/xiachufang/outplan.svg?branch=master)](https://travis-ci.com/xiachufang/outplan) ![GitHub](https://img.shields.io/github/license/xiachufang/outplan)\n\nSupport nested experiment/namespace base on [PlanOut](https://github.com/facebook/planout)\n\n# Install\n```python\npip install outplan\n```\n\n# Usage\n\n```python\nfrom outplan import NamespaceItem, ExperimentItem, GroupItem, ExperimentGroupClient\n\nSimpleNamespace = NamespaceItem(\n name=\"namespace_1\",\n bucket=10,\n experiment_items=[\n ExperimentItem(\n name=\"exp_1\",\n bucket=10,\n group_items=[\n GroupItem(name=\"a\", weight=0.5),\n GroupItem(name=\"b\", weight=0.5),\n ]\n ),\n ]\n)\n\nclient = ExperimentGroupClient([SimpleNamespace])\n\nprint(client.get_group(\"namespace_1\", unit=\"your_unit\"))\n\n\n# nested experiment/namespace is defined at `tests/test_experiment.py`\n```\n\n# Dev\n\n```shell\n# run test\nmake test\n\n# commit\npip install pre-commit\n# and commit here\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/xiachufang/outplan", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "outplan", "package_url": "https://pypi.org/project/outplan/", "platform": "", "project_url": "https://pypi.org/project/outplan/", "project_urls": { "Homepage": "https://github.com/xiachufang/outplan" }, "release_url": "https://pypi.org/project/outplan/1.5.2/", "requires_dist": null, "requires_python": "", "summary": "Support nested experiment/namespace base on Facebook Planout", "version": "1.5.2" }, "last_serial": 5982308, "releases": { "0.1.3": [ { "comment_text": "", "digests": { "md5": "a597c94c4058967518f26e8f1c3ceb40", "sha256": "780db013985a6334de643670879c3327aaf66d212b40c686b09a7d6a944791bb" }, "downloads": -1, "filename": "outplan-0.1.3.tar.gz", "has_sig": false, "md5_digest": "a597c94c4058967518f26e8f1c3ceb40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5777, "upload_time": "2019-09-10T09:07:03", "url": "https://files.pythonhosted.org/packages/f5/6f/7fc25dfff8f4bf0a159929a9db0a09b64d0cd5cc0c32b706c70040b98801/outplan-0.1.3.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "3a20f711e17eb823d41dff373612bfd7", "sha256": "29559702cf6db66952db374eee35a71a48092729f7d99fd3fd9a88ef56e75dad" }, "downloads": -1, "filename": "outplan-1.0.0.tar.gz", "has_sig": false, "md5_digest": "3a20f711e17eb823d41dff373612bfd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5775, "upload_time": "2019-09-10T09:14:23", "url": "https://files.pythonhosted.org/packages/d4/10/3030b9c3586d5ba9f1daae107223a35b7566b28855a96d62b3bf638b502a/outplan-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "ee6ca3d3534dbb0c56da11c6971c78a2", "sha256": "21ab310ffd4330d0f2ca009eae48ae625b70fc7b2aaeeff18fc95f09b695b123" }, "downloads": -1, "filename": "outplan-1.1.0.tar.gz", "has_sig": false, "md5_digest": "ee6ca3d3534dbb0c56da11c6971c78a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5772, "upload_time": "2019-09-17T09:07:56", "url": "https://files.pythonhosted.org/packages/bb/59/259ed1c9e7721bfc3a00a97900ec79fb47dbcf81733d7c635274aded791c/outplan-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "f2257a1d0e6b414e7fadac5959474689", "sha256": "1711ed097a4913912227635dd47e7a6f06ec4c367524b857d12bcb316944cd1a" }, "downloads": -1, "filename": "outplan-1.1.1.tar.gz", "has_sig": false, "md5_digest": "f2257a1d0e6b414e7fadac5959474689", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5781, "upload_time": "2019-09-17T11:20:06", "url": "https://files.pythonhosted.org/packages/99/ff/72271607798420b6fec8a960fbb2c8dcadb54c8945fc3f147f5d0297a141/outplan-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "885675a5d8647711a461737a0a3d748b", "sha256": "cb9162bc526d2a910bcd368f340fd9ff3273ac3c9e5e149f00793cb69176d96a" }, "downloads": -1, "filename": "outplan-1.2.0.tar.gz", "has_sig": false, "md5_digest": "885675a5d8647711a461737a0a3d748b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6151, "upload_time": "2019-09-18T08:36:36", "url": "https://files.pythonhosted.org/packages/33/d7/78f621f5228274ff044b172203ef466ff8d7617f8dd8d0e656e5e138cf7a/outplan-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "0d1987e698e600d7ef238784aac2dc31", "sha256": "feb7ef9ce7b6010c235835a8d987c4b0226efe39523d5e1a9b137b7b80c62f4e" }, "downloads": -1, "filename": "outplan-1.2.1.tar.gz", "has_sig": false, "md5_digest": "0d1987e698e600d7ef238784aac2dc31", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6152, "upload_time": "2019-09-18T09:29:15", "url": "https://files.pythonhosted.org/packages/67/d0/ad88833070490c47fdfdc7140e57bb0f31403a0b9ab7134e50fbd0120af9/outplan-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "26371db47d5530adf7af2caa48dc8e2b", "sha256": "dc826ce9761208822a9ae345925a5bb9f3f8157f5c31c21df05927e71a039c9c" }, "downloads": -1, "filename": "outplan-1.2.2.tar.gz", "has_sig": false, "md5_digest": "26371db47d5530adf7af2caa48dc8e2b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6156, "upload_time": "2019-09-23T03:34:51", "url": "https://files.pythonhosted.org/packages/2d/eb/aa7aafb288da415366ee8c9dcabee9bd9821f3b3fbf12d67dad49ba7069e/outplan-1.2.2.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "159003632b35a3892c06c2a869f4f722", "sha256": "145e86c0612c272257283d5328eb0f0b4579cf69823a4d0094987e488885fd02" }, "downloads": -1, "filename": "outplan-1.3.0.tar.gz", "has_sig": false, "md5_digest": "159003632b35a3892c06c2a869f4f722", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6783, "upload_time": "2019-09-25T10:21:12", "url": "https://files.pythonhosted.org/packages/05/bb/92c640850b191bd879e4ebc82dab0961c9720d39435126b19aa4c08c82aa/outplan-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "4bda59d487293cc65c4adc0a4bbeb740", "sha256": "0deb2edd9912df5e897a34b89d9b78f24b9e5290ccc7de6a5810cdb4eaf222fe" }, "downloads": -1, "filename": "outplan-1.3.1.tar.gz", "has_sig": false, "md5_digest": "4bda59d487293cc65c4adc0a4bbeb740", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6781, "upload_time": "2019-09-26T03:30:50", "url": "https://files.pythonhosted.org/packages/fe/18/59cf30c4f21c01b25a285df29cbacf225057ac738e50be9da618afb90c32/outplan-1.3.1.tar.gz" } ], "1.3.2": [ { "comment_text": "", "digests": { "md5": "5dc70cf8efc095e1b831a834e342738d", "sha256": "755620b974672b9f2e2aae39c5d8cc789a7ce4e02ecd49b6e2440c875618ae20" }, "downloads": -1, "filename": "outplan-1.3.2.tar.gz", "has_sig": false, "md5_digest": "5dc70cf8efc095e1b831a834e342738d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6791, "upload_time": "2019-09-26T06:56:19", "url": "https://files.pythonhosted.org/packages/74/dd/15909fb670bff9c6b0baf46e4f62bf56952435df08b7110a566ff56864ba/outplan-1.3.2.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "905e4306bf5403c60abf51b4800e6bef", "sha256": "2ec43001a5b7b062f1a3a744aa5770515e46c68794d10d6227dfc40a7a07bd6b" }, "downloads": -1, "filename": "outplan-1.4.0.tar.gz", "has_sig": false, "md5_digest": "905e4306bf5403c60abf51b4800e6bef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7748, "upload_time": "2019-09-27T09:24:27", "url": "https://files.pythonhosted.org/packages/48/0f/261e718529e2457e4e347a67b00ecb080e1c63dc280a7f1487638ab593db/outplan-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "2c83be043fc293d6969d0cb081a3eecb", "sha256": "f2b74de2a5be01b6c8ccdebe10acc7ccf823bfdf8209c2ecab326d0b269d8d79" }, "downloads": -1, "filename": "outplan-1.5.0.tar.gz", "has_sig": false, "md5_digest": "2c83be043fc293d6969d0cb081a3eecb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7278, "upload_time": "2019-10-15T03:37:16", "url": "https://files.pythonhosted.org/packages/7f/b8/8c9bcbd9bd57a6be215939850c6d431984368099a6b76431ebafca57445b/outplan-1.5.0.tar.gz" } ], "1.5.1": [ { "comment_text": "", "digests": { "md5": "213af829e1f7af5347fd5a05dc9879c3", "sha256": "8786a8dbd4d556ac969c319ae1e98a2724415590305ba6c9f98ab01ff7a1819d" }, "downloads": -1, "filename": "outplan-1.5.1.tar.gz", "has_sig": false, "md5_digest": "213af829e1f7af5347fd5a05dc9879c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7280, "upload_time": "2019-10-16T02:47:17", "url": "https://files.pythonhosted.org/packages/70/94/37b7bddcdf99e20dcbb72b1105257ec6d84908d8f6c9038da5fe9998650b/outplan-1.5.1.tar.gz" } ], "1.5.2": [ { "comment_text": "", "digests": { "md5": "d5c52b380eee98adcfdb846b38b7351b", "sha256": "1fb8d953d060869c4a25f077614ec3f120bacdc48a36db029c269084ec93377b" }, "downloads": -1, "filename": "outplan-1.5.2.tar.gz", "has_sig": false, "md5_digest": "d5c52b380eee98adcfdb846b38b7351b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7286, "upload_time": "2019-10-16T09:59:29", "url": "https://files.pythonhosted.org/packages/97/e1/346f48a9c9f2569b7dbd96507a22b6a7c08990b413c331eb201f5b512534/outplan-1.5.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d5c52b380eee98adcfdb846b38b7351b", "sha256": "1fb8d953d060869c4a25f077614ec3f120bacdc48a36db029c269084ec93377b" }, "downloads": -1, "filename": "outplan-1.5.2.tar.gz", "has_sig": false, "md5_digest": "d5c52b380eee98adcfdb846b38b7351b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7286, "upload_time": "2019-10-16T09:59:29", "url": "https://files.pythonhosted.org/packages/97/e1/346f48a9c9f2569b7dbd96507a22b6a7c08990b413c331eb201f5b512534/outplan-1.5.2.tar.gz" } ] }