{
"info": {
"author": "Optimizely",
"author_email": "developers@optimizely.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 5 - Production/Stable",
"Environment :: Web Environment",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 2.7",
"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"
],
"description": "Optimizely X Full Stack is A/B testing and feature management for product development teams. Experiment in any application. Make every feature on your roadmap an opportunity to learn. Learn more at https://www.optimizely.com/products/full-stack/ or see our documentation at https://docs.developers.optimizely.com/full-stack/docs. # Optimizely Python SDK\n\n[](https://pypi.org/project/optimizely-sdk)\n[](https://travis-ci.org/optimizely/python-sdk)\n[](https://coveralls.io/github/optimizely/python-sdk)\n[](https://optimizely-python-sdk.readthedocs.io/en/latest/?badge=latest)\n[](http://www.apache.org/licenses/LICENSE-2.0)\n\nThis repository houses the official Python SDK for use with Optimizely\nFull Stack and Optimizely Rollouts.\n\nOptimizely Full Stack is A/B testing and feature flag management for\nproduct development teams. Experiment in any application. Make every\nfeature on your roadmap an opportunity to learn. Learn more at\n, or see the [Full\nStack\ndocumentation](https://docs.developers.optimizely.com/full-stack/docs).\n\nOptimizely Rollouts is free feature flags for development teams. Easily\nroll out and roll back features in any application without code deploys.\nMitigate risk for every feature on your roadmap. Learn more at\n, or see the [Rollouts\ndocumentation](https://docs.developers.optimizely.com/rollouts/docs).\n\n## Getting Started\n\n### Installing the SDK\n\nThe SDK is available through [PyPi](https://pypi.python.org/pypi?name=optimizely-sdk&:action=display).\n\nTo install:\n\n pip install optimizely-sdk\n\nNote: \nIf you are running the SDK with PyPy or PyPy3 and you are experiencing issues, install this cryptography package **first** and then optimizely-sdk package: \n\n pip install \"cryptography>=1.3.4,<=3.1.1\"\n\n### Feature Management Access\n\nTo access the Feature Management configuration in the Optimizely\ndashboard, please contact your Optimizely account executive.\n\n### Using the SDK\n\nYou can initialize the Optimizely instance in three ways: with a datafile, by providing an sdk_key, or by providing an implementation of\n[BaseConfigManager](https://github.com/optimizely/python-sdk/tree/master/optimizely/config_manager.py#L32).\nEach method is described below.\n\n1. Initialize Optimizely with a datafile. This datafile will be used as\n the source of ProjectConfig throughout the life of Optimizely instance:\n\n optimizely.Optimizely(\n datafile\n )\n\n2. Initialize Optimizely by providing an \\'sdk_key\\'. This will\n initialize a PollingConfigManager that makes an HTTP GET request to\n the URL (formed using your provided sdk key and the\n default datafile CDN URL template) to asynchronously download the\n project datafile at regular intervals and update ProjectConfig when\n a new datafile is received. A hard-coded datafile can also be\n provided along with the sdk_key that will be used\n initially before any update:\n\n optimizely.Optimizely(\n sdk_key='put_your_sdk_key_here'\n )\n\n If providing a datafile, the initialization will look like:\n\n optimizely.Optimizely(\n datafile=datafile,\n sdk_key='put_your_sdk_key_here'\n )\n\n3. Initialize Optimizely by providing a ConfigManager that implements\n [BaseConfigManager](https://github.com/optimizely/python-sdk/tree/master/optimizely/config_manager.py#L34).\n You may use our [PollingConfigManager](https://github.com/optimizely/python-sdk/blob/master/optimizely/config_manager.py#L150) or\n [AuthDatafilePollingConfigManager](https://github.com/optimizely/python-sdk/blob/master/optimizely/config_manager.py#L375) as needed:\n\n optimizely.Optimizely(\n config_manager=custom_config_manager\n )\n\n#### PollingConfigManager\n\nThe [PollingConfigManager](https://github.com/optimizely/python-sdk/blob/master/optimizely/config_manager.py#L150) asynchronously polls for\ndatafiles from a specified URL at regular intervals by making HTTP requests.\n\n polling_config_manager = PollingConfigManager(\n sdk_key=None,\n datafile=None,\n update_interval=None,\n url=None,\n url_template=None,\n logger=None,\n error_handler=None,\n notification_center=None,\n skip_json_validation=False\n )\n\n**Note**: You must provide either the sdk_key or URL. If\nyou provide both, the URL takes precedence.\n\n**sdk_key** The sdk_key is used to compose the outbound\nHTTP request to the default datafile location on the Optimizely CDN.\n\n**datafile** You can provide an initial datafile to bootstrap the\n`ProjectConfigManager` so that it can be used immediately. The initial\ndatafile also serves as a fallback datafile if HTTP connection cannot be\nestablished. The initial datafile will be discarded after the first\nsuccessful datafile poll.\n\n**update_interval** The update_interval is used to specify a fixed\ndelay in seconds between consecutive HTTP requests for the datafile.\n\n**url** The target URL from which to request the datafile.\n\n**url_template** A string with placeholder `{sdk_key}` can be provided\nso that this template along with the provided sdk key is\nused to form the target URL.\n\nYou may also provide your own logger, error_handler, or\nnotification_center.\n\n#### AuthDatafilePollingConfigManager\n\nThe [AuthDatafilePollingConfigManager](https://github.com/optimizely/python-sdk/blob/master/optimizely/config_manager.py#L375)\nimplements `PollingConfigManager` and asynchronously polls for authenticated datafiles from a specified URL at regular intervals\nby making HTTP requests.\n\n auth_datafile_polling_config_manager = AuthDatafilePollingConfigManager(\n datafile_access_token,\n *args,\n **kwargs\n )\n\n**Note**: To use [AuthDatafilePollingConfigManager](#authdatafilepollingconfigmanager), you must create a secure environment for\nyour project and generate an access token for your datafile.\n\n**datafile_access_token** The datafile_access_token is attached to the outbound HTTP request header to authorize the request and fetch the datafile.\n\n#### Advanced configuration\n\nThe following properties can be set to override the default\nconfigurations for [PollingConfigManager](#pollingconfigmanager) and [AuthDatafilePollingConfigManager](#authdatafilepollingconfigmanager).\n\n| **Property Name** | **Default Value** | **Description** |\n| :---------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------: |\n| sdk_key | None | Optimizely project SDK key |\n| datafile | None | Initial datafile, typically sourced from a local cached source |\n| update_interval | 5 minutes | Fixed delay between fetches for the datafile |\n| url | None | Custom URL location from which to fetch the datafile |\n| url_template | `PollingConfigManager:`
https://cdn.optimizely.com/datafiles/{sdk_key}.json
`AuthDatafilePollingConfigManager:`
https://config.optimizely.com/datafiles/auth/{sdk_key}.json | Parameterized datafile URL by SDK key |\n\nA notification signal will be triggered whenever a _new_ datafile is\nfetched and Project Config is updated. To subscribe to these\nnotifications, use:\n\n```\nnotification_center.add_notification_listener(NotificationTypes.OPTIMIZELY_CONFIG_UPDATE, update_callback)\n```\n\nFor Further details see the Optimizely [Full Stack documentation](https://docs.developers.optimizely.com/full-stack/docs)\nto learn how to set up your first Python project and use the SDK.\n\n## Development\n\n### Building the SDK\n\nBuild and install the SDK with pip, using the following command:\n\n pip install -e .\n\n### Unit tests\n\n#### Running all tests\n\nTo get test dependencies installed, use a modified version of the\ninstall command:\n\n pip install -e '.[test]'\n\nYou can run all unit tests with:\n\n pytest\n\n#### Running all tests in a file\n\nTo run all tests under a particular test file you can use the following\ncommand:\n\n pytest tests.\n\nFor example, to run all tests under `test_event_builder`, the command would be:\n\n pytest tests/test_event_builder.py\n\n#### Running all tests under a class\n\nTo run all tests under a particular class of tests you can use the\nfollowing command:\n\n pytest tests/::ClassName\n\nFor example, to run all tests under `test_event_builder.EventTest`, the command\nwould be:\n\n pytest tests/test_event_builder.py::EventTest\n\n#### Running a single test\n\nTo run a single test you can use the following command:\n\n pytest tests/::ClassName::test_name\n\nFor example, to run `test_event_builder.EventTest.test_init`, the command\nwould be:\n\n pytest tests/test_event_builder.py::EventTest::test_init\n\n### Contributing\n\nPlease see [CONTRIBUTING](https://github.com/optimizely/python-sdk/blob/master/CONTRIBUTING.md).\n\n### Additional Code\nThis software incorporates code from the following open source repos: \nrequests (Apache-2.0 License: https://github.com/psf/requests/blob/master/LICENSE) \npyOpenSSL (Apache-2.0 License https://github.com/pyca/pyopenssl/blob/main/LICENSE) \ncryptography (Apache-2.0 https://github.com/pyca/cryptography/blob/main/LICENSE.APACHE) \nidna (BSD 3-Clause License https://github.com/kjd/idna/blob/master/LICENSE.md) \n# Optimizely Python SDK Changelog\n\n## 4.0.0\nJanuary 12th, 2022\n\n### New Features\n* Add a set of new APIs for overriding and managing user-level flag, experiment and delivery rule decisions. These methods can be used for QA and automated testing purposes. They are an extension of the OptimizelyUserContext interface ([#361](https://github.com/optimizely/python-sdk/pull/361), [#365](https://github.com/optimizely/python-sdk/pull/365), [#369](https://github.com/optimizely/python-sdk/pull/369)):\n\t- setForcedDecision\n\t- getForcedDecision\n\t- removeForcedDecision\n\t- removeAllForcedDecisions\n\n* For details, refer to our documentation pages: [OptimizelyUserContext](https://docs.developers.optimizely.com/full-stack/v4.0/docs/optimizelyusercontext-python) and [Forced Decision methods](https://docs.developers.optimizely.com/full-stack/v4.0/docs/forced-decision-methods-python).\n\n### Breaking Changes:\n\n* Support for `Python v3.4` has been dropped as of this release due to a security vulnerability with `PyYAML =3.2.0)",
"pyrsistent (>=0.16.0)",
"requests (>=2.21)",
"pyOpenSSL (>=19.1.0)",
"cryptography (>=2.8.0)",
"idna (>=2.10)",
"six (>=1.12.0)",
"jsonschema (>=3.2.0) ; extra == 'test'",
"requests (>=2.21) ; extra == 'test'",
"flake8 (>=4.0.1) ; extra == 'test'",
"pyOpenSSL (>=19.1.0) ; extra == 'test'",
"mock (>=4.0.0) ; extra == 'test'",
"funcsigs (>=0.4) ; extra == 'test'",
"six (>=1.12.0) ; extra == 'test'",
"coverage ; extra == 'test'",
"pytest-cov ; extra == 'test'",
"idna (>=2.10) ; extra == 'test'",
"cryptography (>=2.8.0) ; extra == 'test'",
"pyrsistent (>=0.16.0) ; extra == 'test'",
"pytest (>=6.2.0) ; extra == 'test'",
"python-coveralls ; extra == 'test'"
],
"requires_python": "",
"summary": "Python SDK for Optimizely X Full Stack.",
"version": "4.0.0",
"yanked": false,
"yanked_reason": null
},
"last_serial": 12555796,
"releases": {
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "4fb7415a2ef5495f11247adab24dcc73",
"sha256": "da2671dcb4ef24699ee50544176dde7dca37c3394ef3267af8ae04fbe2122c02"
},
"downloads": -1,
"filename": "optimizely-sdk-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "4fb7415a2ef5495f11247adab24dcc73",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 16230,
"upload_time": "2016-07-13T18:04:17",
"upload_time_iso_8601": "2016-07-13T18:04:17.618826Z",
"url": "https://files.pythonhosted.org/packages/db/5d/9bc2d6638dec2cb40be028c00ce88b1a1ba4994b39ea4f27f8886a6e8646/optimizely-sdk-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"0.1.1": [
{
"comment_text": "",
"digests": {
"md5": "ef9f301bd888260b8777efcbae65b49c",
"sha256": "09f8227612615aba3ed4a845c0ce728ede15016f1af371f3bb2468146dd09c15"
},
"downloads": -1,
"filename": "optimizely-sdk-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "ef9f301bd888260b8777efcbae65b49c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15440,
"upload_time": "2016-08-03T22:53:48",
"upload_time_iso_8601": "2016-08-03T22:53:48.715258Z",
"url": "https://files.pythonhosted.org/packages/7b/37/420d03491803335774e7e1ba35bde0eb2be6234a2a9a5aaede6003bc3581/optimizely-sdk-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"0.1.2": [
{
"comment_text": "",
"digests": {
"md5": "ecd62a6e762b229dfa400123aa72cac6",
"sha256": "0c7f4d9493e2b873cce67dd0344ed057162b5b3f80b5cba2399c13f77b91f3fa"
},
"downloads": -1,
"filename": "optimizely-sdk-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "ecd62a6e762b229dfa400123aa72cac6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15982,
"upload_time": "2016-09-01T17:16:10",
"upload_time_iso_8601": "2016-09-01T17:16:10.048694Z",
"url": "https://files.pythonhosted.org/packages/a9/1d/64b67fab91dce3ec5c2fdbf2e5cdd0d4eb0efa087bb49e52e6db009503ea/optimizely-sdk-0.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"0.1.3": [
{
"comment_text": "",
"digests": {
"md5": "2addfd45ca1a8417a20379b302f7530a",
"sha256": "9488043f5433083ea7caa0a4e0f19831850ccd53ddfdb5606a50dc69cf9d1c3f"
},
"downloads": -1,
"filename": "optimizely-sdk-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "2addfd45ca1a8417a20379b302f7530a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 17219,
"upload_time": "2016-09-19T21:16:07",
"upload_time_iso_8601": "2016-09-19T21:16:07.558835Z",
"url": "https://files.pythonhosted.org/packages/58/f0/e5c1b931cc83fd0772c5c04218c1429b41239641fe3be1521ff1155f0809/optimizely-sdk-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "a68f6cd60f42fb1d147a698b27d885fa",
"sha256": "7b954fc02136ad4391b3e5f2c40537d55dc13146c84aabdb5dbdbb150b31ac3f"
},
"downloads": -1,
"filename": "optimizely-sdk-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "a68f6cd60f42fb1d147a698b27d885fa",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 17552,
"upload_time": "2016-10-03T22:30:41",
"upload_time_iso_8601": "2016-10-03T22:30:41.207872Z",
"url": "https://files.pythonhosted.org/packages/ff/8e/9eb3adbf52a371dbae62da9b171e562eef874f8c318488ccda77e23929c9/optimizely-sdk-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.1.0": [
{
"comment_text": "",
"digests": {
"md5": "e188fa11f41488c6096385d7e7d6753f",
"sha256": "34ac47cd183b4d642fcee66c4d6c5b7d1c6cc1c61dc25c27fe11ada01485f113"
},
"downloads": -1,
"filename": "optimizely-sdk-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "e188fa11f41488c6096385d7e7d6753f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 25471,
"upload_time": "2017-03-23T20:28:27",
"upload_time_iso_8601": "2017-03-23T20:28:27.538052Z",
"url": "https://files.pythonhosted.org/packages/28/eb/0dfe2bd98f60bb2c8c9199897acdaa6d452a608ea42396a55febb799a587/optimizely-sdk-1.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.1.1": [
{
"comment_text": "",
"digests": {
"md5": "4962825dc49ac48a770aca2c91bb5f8a",
"sha256": "29d3034f4fb38b064e05aeafb8e11c9c2953c3cc160f93ca91c1e8d773121e98"
},
"downloads": -1,
"filename": "optimizely-sdk-1.1.1.tar.gz",
"has_sig": false,
"md5_digest": "4962825dc49ac48a770aca2c91bb5f8a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24372,
"upload_time": "2017-04-04T00:48:47",
"upload_time_iso_8601": "2017-04-04T00:48:47.077830Z",
"url": "https://files.pythonhosted.org/packages/30/03/60f6ccc23671dfd1e9a81f7051d668448ec1f3582462e526b3b263048ec9/optimizely-sdk-1.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.2.0": [
{
"comment_text": "",
"digests": {
"md5": "1fe16bd7434fed59c7073be0d7e73cf9",
"sha256": "56d3778530083be6e3a0631e316a6ac9d2947b99a509555b4a1bb7f8ce1d8a18"
},
"downloads": -1,
"filename": "optimizely-sdk-1.2.0.tar.gz",
"has_sig": false,
"md5_digest": "1fe16bd7434fed59c7073be0d7e73cf9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 26759,
"upload_time": "2017-06-01T19:29:00",
"upload_time_iso_8601": "2017-06-01T19:29:00.831367Z",
"url": "https://files.pythonhosted.org/packages/66/52/5afdadaa2f580e6c9a772ae032893d1b79b3eee004871fac4b5daa35e05c/optimizely-sdk-1.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.2.1": [
{
"comment_text": "",
"digests": {
"md5": "251bdf71d15782c384b569e4a5bd1619",
"sha256": "339234212c1954f07fbc525fbd6f5904322f22a6e3fb9cd07d6cfeb44c34f276"
},
"downloads": -1,
"filename": "optimizely-sdk-1.2.1.tar.gz",
"has_sig": false,
"md5_digest": "251bdf71d15782c384b569e4a5bd1619",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 26151,
"upload_time": "2017-08-03T02:43:15",
"upload_time_iso_8601": "2017-08-03T02:43:15.747209Z",
"url": "https://files.pythonhosted.org/packages/35/13/e6faff9ef687b2807675d9e918252a25cd7aae3ecb2f681170231d997b9f/optimizely-sdk-1.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.3.0": [
{
"comment_text": "",
"digests": {
"md5": "5e421aaa9223ec4ccfad38015f835383",
"sha256": "883f4326f395e4c36b7eae62aa4314a6feaef4dbc2fb80d4803864e495a7aad5"
},
"downloads": -1,
"filename": "optimizely-sdk-1.3.0.tar.gz",
"has_sig": false,
"md5_digest": "5e421aaa9223ec4ccfad38015f835383",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 27895,
"upload_time": "2017-10-09T16:41:04",
"upload_time_iso_8601": "2017-10-09T16:41:04.621515Z",
"url": "https://files.pythonhosted.org/packages/8a/2b/fbb9c616592bd112b4bea33b7be71c53ca9da6aa5247cebc89030f6085e7/optimizely-sdk-1.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.4.0": [
{
"comment_text": "",
"digests": {
"md5": "c4110c21f223237deb01e2ebc6e1efb8",
"sha256": "5a55c3892855b2f81d1badddbcddb0891445aad6b58de3357f87271c84c0370a"
},
"downloads": -1,
"filename": "optimizely-sdk-1.4.0.tar.gz",
"has_sig": false,
"md5_digest": "c4110c21f223237deb01e2ebc6e1efb8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29202,
"upload_time": "2017-12-19T18:40:45",
"upload_time_iso_8601": "2017-12-19T18:40:45.821710Z",
"url": "https://files.pythonhosted.org/packages/fd/bf/ff361c0d4dfc78e0306c9df82200ca7c331fa51e6cd7698341234dc113c3/optimizely-sdk-1.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"2.0.0": [
{
"comment_text": "",
"digests": {
"md5": "f86f2dd748f9bb8c495e631c2ae14fd6",
"sha256": "22f9ccaf294ad48a4455f14f53b782e4668f140b58ca62516a53a1bbe8b7bd81"
},
"downloads": -1,
"filename": "optimizely-sdk-2.0.0.tar.gz",
"has_sig": false,
"md5_digest": "f86f2dd748f9bb8c495e631c2ae14fd6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 32736,
"upload_time": "2018-04-12T23:47:09",
"upload_time_iso_8601": "2018-04-12T23:47:09.185668Z",
"url": "https://files.pythonhosted.org/packages/16/cd/e75d16ec68836df9daace0c987194d0cd6ba303f7698d2893ee6035af16d/optimizely-sdk-2.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"2.0.0b1": [
{
"comment_text": "",
"digests": {
"md5": "47d1f76c5ea02cc12af4b1579590d138",
"sha256": "fd89a0717307f637d4ab5502e61101684beaab1c818ab67a6a3947542985f7d2"
},
"downloads": -1,
"filename": "optimizely-sdk-2.0.0b1.tar.gz",
"has_sig": false,
"md5_digest": "47d1f76c5ea02cc12af4b1579590d138",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 32764,
"upload_time": "2018-03-29T19:38:58",
"upload_time_iso_8601": "2018-03-29T19:38:58.896348Z",
"url": "https://files.pythonhosted.org/packages/fd/93/1f4934ee513fdf85564f30e931569bd688344f5ded21dc4a1298730d4bde/optimizely-sdk-2.0.0b1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"2.0.1": [
{
"comment_text": "",
"digests": {
"md5": "81e5af830ec389cb021a623e0f14c56e",
"sha256": "19ec4ece3612442170d6892ab7668467a231bd5c58193a7032eb3b0de7b6e88d"
},
"downloads": -1,
"filename": "optimizely-sdk-2.0.1.tar.gz",
"has_sig": false,
"md5_digest": "81e5af830ec389cb021a623e0f14c56e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 36550,
"upload_time": "2018-06-19T19:39:06",
"upload_time_iso_8601": "2018-06-19T19:39:06.007547Z",
"url": "https://files.pythonhosted.org/packages/31/af/0d7dcdb7b77f1d12ae8ea57d22b64f22b1219112ea189d9ac5f66a92689f/optimizely-sdk-2.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"2.1.0": [
{
"comment_text": "",
"digests": {
"md5": "aff88366b4897b5d6eeb52d7f650e7de",
"sha256": "71d66ee6e6a349b17ef04119187091e90e657674b2b2a0412b5f1a102ec613f2"
},
"downloads": -1,
"filename": "optimizely-sdk-2.1.0.tar.gz",
"has_sig": false,
"md5_digest": "aff88366b4897b5d6eeb52d7f650e7de",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 37740,
"upload_time": "2018-07-02T22:56:06",
"upload_time_iso_8601": "2018-07-02T22:56:06.017600Z",
"url": "https://files.pythonhosted.org/packages/ca/15/517c7240ffda36c2989bbdbf63675d9e554147d2f738ddc981fde374bda9/optimizely-sdk-2.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"2.1.1": [
{
"comment_text": "",
"digests": {
"md5": "b0044ea82beda8f78c8c44b027957a72",
"sha256": "f15186312262be12097cfcf1d2c28b39b74d69e418527b0df51fef8e8a0ec1ec"
},
"downloads": -1,
"filename": "optimizely-sdk-2.1.1.tar.gz",
"has_sig": false,
"md5_digest": "b0044ea82beda8f78c8c44b027957a72",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 39104,
"upload_time": "2018-08-21T22:39:23",
"upload_time_iso_8601": "2018-08-21T22:39:23.687248Z",
"url": "https://files.pythonhosted.org/packages/bd/df/71daf7bc9f27a45e6e0eb4ff99026e31bf9af1c3e74245b5905586fc2235/optimizely-sdk-2.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.0.0": [
{
"comment_text": "",
"digests": {
"md5": "ff3a4ce3a0c1df0e0077f506a6fad73c",
"sha256": "8ef4657854746d89b8e9d173d78159f7654e5ce0a2f976a5a6a84daff6a5b498"
},
"downloads": -1,
"filename": "optimizely-sdk-3.0.0.tar.gz",
"has_sig": false,
"md5_digest": "ff3a4ce3a0c1df0e0077f506a6fad73c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 46137,
"upload_time": "2019-03-01T18:25:15",
"upload_time_iso_8601": "2019-03-01T18:25:15.158441Z",
"url": "https://files.pythonhosted.org/packages/7d/16/6e2d9a2f83508e0b655ea0bf9008e0b5907afb22878cebf5026fa8debd98/optimizely-sdk-3.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.1.0": [
{
"comment_text": "",
"digests": {
"md5": "a97e2b7aefbe939cf7ab85bab07195f8",
"sha256": "36a900564315a8afaa1c5e349848d15f03632f60efd4429d2270aeafb05fff63"
},
"downloads": -1,
"filename": "optimizely-sdk-3.1.0.tar.gz",
"has_sig": false,
"md5_digest": "a97e2b7aefbe939cf7ab85bab07195f8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 51441,
"upload_time": "2019-05-03T21:11:48",
"upload_time_iso_8601": "2019-05-03T21:11:48.503510Z",
"url": "https://files.pythonhosted.org/packages/f6/b8/ec91508cc8ed10bec448a31873a543171a36b6659768051c70d66f58d40c/optimizely-sdk-3.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.10.0": [
{
"comment_text": "",
"digests": {
"md5": "404d222f3ebd4c0d330285ab4c87bd03",
"sha256": "94cf8bcdba41d5ffdab29099dae35f7e7bfe9c554f2cb0a0984dbfed7e4e8334"
},
"downloads": -1,
"filename": "optimizely_sdk-3.10.0-py2-none-any.whl",
"has_sig": false,
"md5_digest": "404d222f3ebd4c0d330285ab4c87bd03",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 104736,
"upload_time": "2021-09-16T18:53:56",
"upload_time_iso_8601": "2021-09-16T18:53:56.529911Z",
"url": "https://files.pythonhosted.org/packages/db/a7/df7a8c3fbfbd661b3f3187c7ada1a26f7ad4e1add76692f9d04e8a42bf6e/optimizely_sdk-3.10.0-py2-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "a01d3ecc35d828d6ea4d51f9de5f694b",
"sha256": "908a9dfbc429453e66233c703ea129406cf97b29f9234f12a2ed4eafaca3e184"
},
"downloads": -1,
"filename": "optimizely-sdk-3.10.0.tar.gz",
"has_sig": false,
"md5_digest": "a01d3ecc35d828d6ea4d51f9de5f694b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 81039,
"upload_time": "2021-09-16T18:53:58",
"upload_time_iso_8601": "2021-09-16T18:53:58.065569Z",
"url": "https://files.pythonhosted.org/packages/eb/fa/b872d5d5552658a5bd80a0ae0fb180fabc21a98dc5590f1dcd5b1d913ee4/optimizely-sdk-3.10.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.2.0": [
{
"comment_text": "",
"digests": {
"md5": "6ec87448cdcb0fb6924fdcaf25ea7fb6",
"sha256": "edcf3ec229ba0987c738d067e485b20bc761cc8a015fa3db323a3765cca8cae3"
},
"downloads": -1,
"filename": "optimizely_sdk-3.2.0-py2-none-any.whl",
"has_sig": false,
"md5_digest": "6ec87448cdcb0fb6924fdcaf25ea7fb6",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 72139,
"upload_time": "2019-08-27T18:51:43",
"upload_time_iso_8601": "2019-08-27T18:51:43.744536Z",
"url": "https://files.pythonhosted.org/packages/10/97/59d6756603dcb247d87f3533bc50f5651e72bddb73db1639fe18ae616873/optimizely_sdk-3.2.0-py2-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "d19fe3b2395938b4f8ca9dbcec8bbf65",
"sha256": "467178756d1c0214c006a7c05ea2e50c2874056d5d34577be9c176acc66d9051"
},
"downloads": -1,
"filename": "optimizely-sdk-3.2.0.tar.gz",
"has_sig": false,
"md5_digest": "d19fe3b2395938b4f8ca9dbcec8bbf65",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 52180,
"upload_time": "2019-08-27T18:51:45",
"upload_time_iso_8601": "2019-08-27T18:51:45.723986Z",
"url": "https://files.pythonhosted.org/packages/2f/c4/d0bcab51b1ee66edd8df990b18c500ce1c6888a53fa5dba78f3dc633376b/optimizely-sdk-3.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.2.0b1": [
{
"comment_text": "",
"digests": {
"md5": "165845be6fc94c4b5669599f760cffc6",
"sha256": "a5ecdc96c1d367f4c1ae2d2356f4f034aabe72c8f6765d899ac8f12bba2502f5"
},
"downloads": -1,
"filename": "optimizely_sdk-3.2.0b1-py2-none-any.whl",
"has_sig": false,
"md5_digest": "165845be6fc94c4b5669599f760cffc6",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 70100,
"upload_time": "2019-07-26T23:12:16",
"upload_time_iso_8601": "2019-07-26T23:12:16.689835Z",
"url": "https://files.pythonhosted.org/packages/c1/9d/727cf24fc6ea22fab500d04bab55d8bb3955acc0971fafc66dab4102cb61/optimizely_sdk-3.2.0b1-py2-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "f28ddc072d0106f990fc9ca5cfc5db30",
"sha256": "b377cee9a09fddce5ecbb9cd6eff6ac834464d4a3902233f6e19115bf732dd2b"
},
"downloads": -1,
"filename": "optimizely-sdk-3.2.0b1.tar.gz",
"has_sig": false,
"md5_digest": "f28ddc072d0106f990fc9ca5cfc5db30",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 47400,
"upload_time": "2019-07-26T23:12:18",
"upload_time_iso_8601": "2019-07-26T23:12:18.550294Z",
"url": "https://files.pythonhosted.org/packages/4e/c2/51e17f415b35746585348d87fa904d0f47c3761383156fcc686c4e1af47e/optimizely-sdk-3.2.0b1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.3.0": [
{
"comment_text": "",
"digests": {
"md5": "c6e023ff197ddfe85df1e2946fd22a37",
"sha256": "943378977230eeeaf6d542eb5e93705283fad439b8ee96d0c16104f8829654a3"
},
"downloads": -1,
"filename": "optimizely_sdk-3.3.0-py2-none-any.whl",
"has_sig": false,
"md5_digest": "c6e023ff197ddfe85df1e2946fd22a37",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 83714,
"upload_time": "2019-10-29T05:35:03",
"upload_time_iso_8601": "2019-10-29T05:35:03.783141Z",
"url": "https://files.pythonhosted.org/packages/6a/45/5aa327ab34a57bed3d9a03fa157eae2c1f67ce180b0c6da427881628d6ee/optimizely_sdk-3.3.0-py2-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "db7dc0f87ddc884af19ba4918100c6a8",
"sha256": "00ee764dcf6badb4ea0fcc5c4cd851350bfdc8402f62d0f0ade84136463f37b0"
},
"downloads": -1,
"filename": "optimizely-sdk-3.3.0.tar.gz",
"has_sig": false,
"md5_digest": "db7dc0f87ddc884af19ba4918100c6a8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 59477,
"upload_time": "2019-10-29T05:35:05",
"upload_time_iso_8601": "2019-10-29T05:35:05.744153Z",
"url": "https://files.pythonhosted.org/packages/72/80/ee5986d28e91c3b87fffe2d35d81aa34c4154fb0dcb5b9a04615762967ad/optimizely-sdk-3.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.3.1": [
{
"comment_text": "",
"digests": {
"md5": "dff6c24dc79fef94606c0a6072b984e4",
"sha256": "aef565879ba99259969e4a24f2bc915040513ed543e818fa320ef81c5a99c154"
},
"downloads": -1,
"filename": "optimizely_sdk-3.3.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "dff6c24dc79fef94606c0a6072b984e4",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 84365,
"upload_time": "2019-12-17T04:04:41",
"upload_time_iso_8601": "2019-12-17T04:04:41.070072Z",
"url": "https://files.pythonhosted.org/packages/8e/3c/a99ace97468e4462e81cfbea32f6fe7352ab8d5f8c2224f62149dd92cdde/optimizely_sdk-3.3.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "bd36c00ec075f7da13bc7daba41cb391",
"sha256": "f99ddd20dd960e1dd0a1bfdc6d88d2b4eb9141e84c6a4e3271cd161484e0a5df"
},
"downloads": -1,
"filename": "optimizely-sdk-3.3.1.tar.gz",
"has_sig": false,
"md5_digest": "bd36c00ec075f7da13bc7daba41cb391",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 61297,
"upload_time": "2019-12-17T04:04:43",
"upload_time_iso_8601": "2019-12-17T04:04:43.098137Z",
"url": "https://files.pythonhosted.org/packages/82/e8/a98e3a58e103fa77a7a8d5d11caa2421bb3e10dd957773eb15aeed88561e/optimizely-sdk-3.3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.4.0": [
{
"comment_text": "",
"digests": {
"md5": "890f5d55b08129394174e70f68e8dd66",
"sha256": "fe63e123ccc342eea0495dfca3571b62eb00a793d1e66ea17c77a483e4833541"
},
"downloads": -1,
"filename": "optimizely_sdk-3.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "890f5d55b08129394174e70f68e8dd66",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 86820,
"upload_time": "2020-01-28T00:26:52",
"upload_time_iso_8601": "2020-01-28T00:26:52.069569Z",
"url": "https://files.pythonhosted.org/packages/d9/a9/25d682f5b879aabf8117eb7a43df0e4fed162b3883168f91f15a2c8e9f77/optimizely_sdk-3.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "80b89bd88c6839b784b663bad1fcf5b3",
"sha256": "54d87b7bb21a0ac14b38a9aec8ed92e76644cc56a96ba2e9423fffdc7fb2ce7f"
},
"downloads": -1,
"filename": "optimizely-sdk-3.4.0.tar.gz",
"has_sig": false,
"md5_digest": "80b89bd88c6839b784b663bad1fcf5b3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 63448,
"upload_time": "2020-01-28T00:26:53",
"upload_time_iso_8601": "2020-01-28T00:26:53.589189Z",
"url": "https://files.pythonhosted.org/packages/15/f4/5975e25b926643707c36a9ca7010ac28a885cc064175e9d0998ed744eabd/optimizely-sdk-3.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.4.1": [
{
"comment_text": "",
"digests": {
"md5": "85055bae70c5a24d3f74697cf3c9eddf",
"sha256": "927d6b615dd8cb182351eaf9dfd8c79bcac1983692089455bb86e182592d6325"
},
"downloads": -1,
"filename": "optimizely_sdk-3.4.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "85055bae70c5a24d3f74697cf3c9eddf",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 86845,
"upload_time": "2020-03-19T17:22:06",
"upload_time_iso_8601": "2020-03-19T17:22:06.862782Z",
"url": "https://files.pythonhosted.org/packages/2b/05/74ea46e1dd1738776778902a774317fd7e68433958440a7da8c2304a7f3b/optimizely_sdk-3.4.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "a09c4aff68d1b1bca5ec51e128b8bb18",
"sha256": "a477c5616d9a7db1e0921b867a83db869dda27da157d94a288ad0b8d2a380a21"
},
"downloads": -1,
"filename": "optimizely-sdk-3.4.1.tar.gz",
"has_sig": false,
"md5_digest": "a09c4aff68d1b1bca5ec51e128b8bb18",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 63568,
"upload_time": "2020-03-19T17:22:08",
"upload_time_iso_8601": "2020-03-19T17:22:08.399123Z",
"url": "https://files.pythonhosted.org/packages/e1/4c/923fd1dcd7b52d0d5383eb9a1ff22cc87ee98dbd5dfd9f1fd095d0f327c8/optimizely-sdk-3.4.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.4.2": [
{
"comment_text": "",
"digests": {
"md5": "161264313f37345724bd5dceeae1fb1e",
"sha256": "69722e15bb38e949f927af6080173de2fd2f413998b538936737fbc48a79a934"
},
"downloads": -1,
"filename": "optimizely_sdk-3.4.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "161264313f37345724bd5dceeae1fb1e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 86901,
"upload_time": "2020-06-11T22:17:36",
"upload_time_iso_8601": "2020-06-11T22:17:36.419033Z",
"url": "https://files.pythonhosted.org/packages/19/7a/9d90c1427f2de899fdc183f457f9c3708400bc80196d54a562f3c1d1a5e2/optimizely_sdk-3.4.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "58e8b9bed3432b687c49911d94cd9653",
"sha256": "387aa2630207100e57843aeae2caeeccc330ffce8c878665ea33c9a5511a2371"
},
"downloads": -1,
"filename": "optimizely-sdk-3.4.2.tar.gz",
"has_sig": false,
"md5_digest": "58e8b9bed3432b687c49911d94cd9653",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 63667,
"upload_time": "2020-06-11T22:17:37",
"upload_time_iso_8601": "2020-06-11T22:17:37.626436Z",
"url": "https://files.pythonhosted.org/packages/6b/36/5a8400df622428297670111e08c47bd3ef94269b13b5a5fbcece155ff27c/optimizely-sdk-3.4.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.5.0": [
{
"comment_text": "",
"digests": {
"md5": "9169d9c1e353f1dbf03d4704e9883f8b",
"sha256": "37dcdc743ea682a76dddc44fbd244c99158b93a22ff7ac27dbae754bf9fe3ec3"
},
"downloads": -1,
"filename": "optimizely_sdk-3.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9169d9c1e353f1dbf03d4704e9883f8b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 88908,
"upload_time": "2020-07-09T15:55:50",
"upload_time_iso_8601": "2020-07-09T15:55:50.922180Z",
"url": "https://files.pythonhosted.org/packages/5a/2b/00bcb63271e0603d808dd36a36f829a22b6d0d23705045b0c5d6527aa19b/optimizely_sdk-3.5.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "a06fe0fa743ed73848e94e250c12e52b",
"sha256": "8c14d69fd9c0947c427b89e6db4a25896927ca285393f6aa521e8c4a91e64baf"
},
"downloads": -1,
"filename": "optimizely-sdk-3.5.0.tar.gz",
"has_sig": false,
"md5_digest": "a06fe0fa743ed73848e94e250c12e52b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 67489,
"upload_time": "2020-07-09T15:55:52",
"upload_time_iso_8601": "2020-07-09T15:55:52.409812Z",
"url": "https://files.pythonhosted.org/packages/80/be/9e3bfe076158e1d634989adda8b33a10a1b043025068fc0757f84872815f/optimizely-sdk-3.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.5.1": [
{
"comment_text": "",
"digests": {
"md5": "74fbe8faaf36f2982934e7b0eaeaf0d3",
"sha256": "80f85eb698eae23b7d5cfec09a5ff30affec2fe46aa8a936517a3517c94b24c8"
},
"downloads": -1,
"filename": "optimizely_sdk-3.5.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "74fbe8faaf36f2982934e7b0eaeaf0d3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 88937,
"upload_time": "2020-07-10T18:23:16",
"upload_time_iso_8601": "2020-07-10T18:23:16.702203Z",
"url": "https://files.pythonhosted.org/packages/72/71/da03db74bd4d1ffeaa36c0003360b9ba060064fde6f25a4610c5387b67ad/optimizely_sdk-3.5.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "05c971ffdb68a2c2802da189310249fd",
"sha256": "5dcf0a9fdd4780810ad1361e9c154e7e97371ab4bc0f1b6ec90bf91c881ada87"
},
"downloads": -1,
"filename": "optimizely-sdk-3.5.1.tar.gz",
"has_sig": false,
"md5_digest": "05c971ffdb68a2c2802da189310249fd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 67528,
"upload_time": "2020-07-10T18:23:17",
"upload_time_iso_8601": "2020-07-10T18:23:17.943663Z",
"url": "https://files.pythonhosted.org/packages/ec/8a/b7977796267fc79148444878803dea8cc72e8416937170d24a8106b0e74d/optimizely-sdk-3.5.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.5.2": [
{
"comment_text": "",
"digests": {
"md5": "ed63c846103a5cae5bc1be5d1d734b8c",
"sha256": "bd2cb28d171ad9c975245be96da9e66efc8bb32c36fb013c97203d1912989cab"
},
"downloads": -1,
"filename": "optimizely_sdk-3.5.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ed63c846103a5cae5bc1be5d1d734b8c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 89002,
"upload_time": "2020-07-14T20:29:19",
"upload_time_iso_8601": "2020-07-14T20:29:19.065527Z",
"url": "https://files.pythonhosted.org/packages/5d/90/23d1d87171db9514eb8d1a0ade1e922749788fe9db1bfe506e5d8cef13a3/optimizely_sdk-3.5.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "fd90f686e5c469d2571af43d81539439",
"sha256": "077c4888b5a848a3a1da1a007cc62e9a25d382192b077c67fc1cc996ab6d6fd2"
},
"downloads": -1,
"filename": "optimizely-sdk-3.5.2.tar.gz",
"has_sig": false,
"md5_digest": "fd90f686e5c469d2571af43d81539439",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 68257,
"upload_time": "2020-07-14T20:29:21",
"upload_time_iso_8601": "2020-07-14T20:29:21.185838Z",
"url": "https://files.pythonhosted.org/packages/66/12/ec9b15255f3f7a01efbe93bfdbb4ff730ac4359c094ec2c4beb5e70780bd/optimizely-sdk-3.5.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.6.0": [
{
"comment_text": "",
"digests": {
"md5": "b4f4f6d70611eec39757f4b05bf45634",
"sha256": "1fe800261082457670e91cbed61e753ec6c45b09487a676157d03761b8ed73e0"
},
"downloads": -1,
"filename": "optimizely_sdk-3.6.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b4f4f6d70611eec39757f4b05bf45634",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 92592,
"upload_time": "2020-10-01T18:45:22",
"upload_time_iso_8601": "2020-10-01T18:45:22.452211Z",
"url": "https://files.pythonhosted.org/packages/8c/a5/ff949b5657f9bd926ee8f0bfc3956d2cf80a55b968e24d177f3e478e9f72/optimizely_sdk-3.6.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "c71b5a04cd811ee98650c7f6b62f3184",
"sha256": "d7e931caec24531fd4a76a7aa756480cf74985248e9d39c6db36f7b8b002b345"
},
"downloads": -1,
"filename": "optimizely-sdk-3.6.0.tar.gz",
"has_sig": false,
"md5_digest": "c71b5a04cd811ee98650c7f6b62f3184",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 70942,
"upload_time": "2020-10-01T18:45:23",
"upload_time_iso_8601": "2020-10-01T18:45:23.853349Z",
"url": "https://files.pythonhosted.org/packages/b2/f4/7986fcda41287bc1b8ebee96826dd8b625391c677d6bd890a88b1b390618/optimizely-sdk-3.6.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.7.0": [
{
"comment_text": "",
"digests": {
"md5": "df172eb7a85fb8b018f55abf163664be",
"sha256": "004473616ccbd275da3b75930884c387c45a71574bbdb427ac1002d3bad59eef"
},
"downloads": -1,
"filename": "optimizely_sdk-3.7.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "df172eb7a85fb8b018f55abf163664be",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 93210,
"upload_time": "2020-11-03T00:20:50",
"upload_time_iso_8601": "2020-11-03T00:20:50.380966Z",
"url": "https://files.pythonhosted.org/packages/a3/af/cd984bb13b75c20c0801a3548549dd1709f7dd188513298711eece988bb6/optimizely_sdk-3.7.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "1b351b9f8e6d3daa507cbde266b82db4",
"sha256": "cf90bf0b6586880fec63425ef47aec981227509c69cc304095fd4b87cf7c203e"
},
"downloads": -1,
"filename": "optimizely-sdk-3.7.0.tar.gz",
"has_sig": false,
"md5_digest": "1b351b9f8e6d3daa507cbde266b82db4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 71685,
"upload_time": "2020-11-03T00:20:51",
"upload_time_iso_8601": "2020-11-03T00:20:51.763441Z",
"url": "https://files.pythonhosted.org/packages/50/ed/ff15e9ee1d2622096d3e7f388e3c5bd697d7d817044e103dff54a64ef153/optimizely-sdk-3.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.7.1": [
{
"comment_text": "",
"digests": {
"md5": "f6c09595bc217d247418c8462d6f6d9c",
"sha256": "12cfd8a4927b89a83bdb0da503540f2b6836ff1a5ad9bc151792b5bed0421594"
},
"downloads": -1,
"filename": "optimizely_sdk-3.7.1-py2-none-any.whl",
"has_sig": false,
"md5_digest": "f6c09595bc217d247418c8462d6f6d9c",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 93320,
"upload_time": "2020-11-20T00:51:33",
"upload_time_iso_8601": "2020-11-20T00:51:33.211906Z",
"url": "https://files.pythonhosted.org/packages/79/24/59fc66f73634d831010a9c95452ad8a098378f817310dc449d36a4a570ec/optimizely_sdk-3.7.1-py2-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "f78d05c813f3f8abbe6cb1e5a6720dbc",
"sha256": "520e08f3f2645472f1bf2d3f3ef588d5bcb9f8e2c134b3e35f6ff5ddc7c1acba"
},
"downloads": -1,
"filename": "optimizely-sdk-3.7.1.tar.gz",
"has_sig": false,
"md5_digest": "f78d05c813f3f8abbe6cb1e5a6720dbc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 71744,
"upload_time": "2020-11-20T00:51:34",
"upload_time_iso_8601": "2020-11-20T00:51:34.726844Z",
"url": "https://files.pythonhosted.org/packages/e6/a3/76d192164d6d6481ee97accec8c1c69d8f31dae744b248e31b915272c813/optimizely-sdk-3.7.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.8.0": [
{
"comment_text": "",
"digests": {
"md5": "298c3edac84548352ae71b9127803b76",
"sha256": "80192702f8fed1536bd772034062bc357e89669622a69fe145cc6f627a314ea4"
},
"downloads": -1,
"filename": "optimizely_sdk-3.8.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "298c3edac84548352ae71b9127803b76",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 100049,
"upload_time": "2021-02-12T21:18:56",
"upload_time_iso_8601": "2021-02-12T21:18:56.532362Z",
"url": "https://files.pythonhosted.org/packages/81/fb/bbc204954a31d4b0e202ccffec70d2d75fd6f3d6eca8a912b76770eb3c72/optimizely_sdk-3.8.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "48c4e50dd0e75389c46918be4415d3e2",
"sha256": "0c586c3d866d56b602e02a6a3c99588d9e30dbad2ae37a8bbec53dd67c041859"
},
"downloads": -1,
"filename": "optimizely-sdk-3.8.0.tar.gz",
"has_sig": false,
"md5_digest": "48c4e50dd0e75389c46918be4415d3e2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 78092,
"upload_time": "2021-02-12T21:18:57",
"upload_time_iso_8601": "2021-02-12T21:18:57.820138Z",
"url": "https://files.pythonhosted.org/packages/c6/5e/ebdc882c78ba2ced52a22c55adc293ded31c38f5dd0084720de0a0a8b27c/optimizely-sdk-3.8.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.9.0": [
{
"comment_text": "",
"digests": {
"md5": "72ac70e89c1788d28ac77bb10a35779b",
"sha256": "5dc3ad99d474d80642850a5ef1b14e58e7ebdf5380fac7c79e74c96b47a5511a"
},
"downloads": -1,
"filename": "optimizely_sdk-3.9.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "72ac70e89c1788d28ac77bb10a35779b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 99751,
"upload_time": "2021-06-01T21:26:30",
"upload_time_iso_8601": "2021-06-01T21:26:30.532210Z",
"url": "https://files.pythonhosted.org/packages/03/f9/2bd1f67f1b33f5d944ae1e2cd8a7a1106013b27507e7f068fb0b329c5c28/optimizely_sdk-3.9.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "c501b11ab10259d252ca55d6919ede42",
"sha256": "aaaf008c348a4c0e0656e6f85498cc3bc72ddfd1921beb6d998ba7eb1bd30e6f"
},
"downloads": -1,
"filename": "optimizely-sdk-3.9.0.tar.gz",
"has_sig": false,
"md5_digest": "c501b11ab10259d252ca55d6919ede42",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 78214,
"upload_time": "2021-06-01T21:26:32",
"upload_time_iso_8601": "2021-06-01T21:26:32.822790Z",
"url": "https://files.pythonhosted.org/packages/32/68/4063e39d7e618f3ab9ebbd3d72314e9cd46ef578f4518b8030182ecbe580/optimizely-sdk-3.9.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"3.9.1": [
{
"comment_text": "",
"digests": {
"md5": "31ea8b2a11e8d805bd696992979152fc",
"sha256": "e9cf76f9d7d4765a89266bbe35ac908dbb87b5dbb5e038bcf8d5b2547e9a1083"
},
"downloads": -1,
"filename": "optimizely_sdk-3.9.1-py2-none-any.whl",
"has_sig": false,
"md5_digest": "31ea8b2a11e8d805bd696992979152fc",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 100075,
"upload_time": "2021-07-15T19:08:06",
"upload_time_iso_8601": "2021-07-15T19:08:06.801828Z",
"url": "https://files.pythonhosted.org/packages/a9/a9/0a73cd964d8785ac665a1c7c482cf01828bc87880081cb408b6317b1ff0b/optimizely_sdk-3.9.1-py2-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "822042ee3d4d7ae8be297ff389381c92",
"sha256": "d80cb5c7e747d31ccffdb8945249c36bd435ce31912049695d2a6b15eb45bde1"
},
"downloads": -1,
"filename": "optimizely-sdk-3.9.1.tar.gz",
"has_sig": false,
"md5_digest": "822042ee3d4d7ae8be297ff389381c92",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 76623,
"upload_time": "2021-07-15T19:08:08",
"upload_time_iso_8601": "2021-07-15T19:08:08.498440Z",
"url": "https://files.pythonhosted.org/packages/cb/02/39b52b7fdfbb5e72773ad8b1c4a5b7a39f26b83a6c08104775f3e88bbc0b/optimizely-sdk-3.9.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"4.0.0": [
{
"comment_text": "",
"digests": {
"md5": "e2c04e0ff1dbd675c2cb699592e65900",
"sha256": "da886380cadd4ad069644ea0a5b6a7e966c5fa3834e92fcd83e187b955d958a3"
},
"downloads": -1,
"filename": "optimizely_sdk-4.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e2c04e0ff1dbd675c2cb699592e65900",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 108589,
"upload_time": "2022-01-13T00:05:59",
"upload_time_iso_8601": "2022-01-13T00:05:59.527575Z",
"url": "https://files.pythonhosted.org/packages/fe/0a/6f22f24b47151695d89c250a3af40278c74d3933c2cfdc16f691bee17877/optimizely_sdk-4.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "659ca6a67c158042e11bf2934fadc7a5",
"sha256": "2d99ad215935d074b75a4c4fc1893022c29c9191a5b411c7fb713d6d997ac806"
},
"downloads": -1,
"filename": "optimizely-sdk-4.0.0.tar.gz",
"has_sig": false,
"md5_digest": "659ca6a67c158042e11bf2934fadc7a5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 85397,
"upload_time": "2022-01-13T00:06:03",
"upload_time_iso_8601": "2022-01-13T00:06:03.431103Z",
"url": "https://files.pythonhosted.org/packages/32/95/9615011bec291e1d69854b3f533cf6fb1122313c7a1f7f957be7bc081cc0/optimizely-sdk-4.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "e2c04e0ff1dbd675c2cb699592e65900",
"sha256": "da886380cadd4ad069644ea0a5b6a7e966c5fa3834e92fcd83e187b955d958a3"
},
"downloads": -1,
"filename": "optimizely_sdk-4.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e2c04e0ff1dbd675c2cb699592e65900",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 108589,
"upload_time": "2022-01-13T00:05:59",
"upload_time_iso_8601": "2022-01-13T00:05:59.527575Z",
"url": "https://files.pythonhosted.org/packages/fe/0a/6f22f24b47151695d89c250a3af40278c74d3933c2cfdc16f691bee17877/optimizely_sdk-4.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "659ca6a67c158042e11bf2934fadc7a5",
"sha256": "2d99ad215935d074b75a4c4fc1893022c29c9191a5b411c7fb713d6d997ac806"
},
"downloads": -1,
"filename": "optimizely-sdk-4.0.0.tar.gz",
"has_sig": false,
"md5_digest": "659ca6a67c158042e11bf2934fadc7a5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 85397,
"upload_time": "2022-01-13T00:06:03",
"upload_time_iso_8601": "2022-01-13T00:06:03.431103Z",
"url": "https://files.pythonhosted.org/packages/32/95/9615011bec291e1d69854b3f533cf6fb1122313c7a1f7f957be7bc081cc0/optimizely-sdk-4.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"vulnerabilities": []
}