{ "info": { "author": "Stefan Scherfke", "author_email": "mosaik@offis.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU Lesser General Public License v2 (LGPLv2)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Mosaik\n======\n\nMosaik is a simulation compositor for Smart Grid simulations.\n\nIt lets you re-use existing simulators and couple them to simulate large-scale\nSmart Grid scenarios. Mosaik offers powerful mechanisms to specify and compose\nthese scenarios.\n\nVersion: 2.5.1\n\nLicense: LGPL\n\nExample\n-------\n\nA simple demo scenario with mosaik::\n\n >>> import mosaik\n >>>\n >>> sim_config = {\n ... 'ExampleSim': {'python': 'example_sim.mosaik:ExampleSim'},\n ... }\n >>>\n >>> def create_scenario(world):\n ... simulator = world.start('ExampleSim')\n ...\n ... producers = [simulator.Producer(init_val=0) for _ in range(3)]\n ... consumers = [simulator.Consumer(init_val=0) for _ in range(3)]\n ...\n ... for producer, consumer in zip(producers, consumers):\n ... world.connect(producer, consumer, ('val_out', 'val_in'))\n >>>\n >>> world = mosaik.scenario.World(sim_config)\n >>> create_scenario(world)\n >>> world.run(until=2)\n Progress: 25.00%\n Progress: 50.00%\n Progress: 75.00%\n Progress: 100.00%\n\n\nInstallation\n------------\n\nMosaik requires Python >= 3.4. Use `pip`__ to install it, preferably into\na `virtualenv`__::\n\n $ pip install mosaik\n\n__ http://pip.readthedocs.org/en/latest/installing.html\n__ http://virtualenv.readthedocs.org/en/latest/\n\nDocumentation, Source Code and Issues\n-------------------------------------\n\nThe documentation is available at https://mosaik.readthedocs.io.\n\nPlease report bugs and ideas for improvement to our `issue tracker`__.\n\n__ https://bitbucket.org/mosaik/mosaik/issues\n\n\nChangelog\n=========\n\n2.5.1 - 2018-11-29\n------------------\n\n- [NEW] When calling the world.start() command for a simulator, users can now set a predefined\n value for the posix flag (e.g. True) to prevent automatic detection of the operating system.\n This facilitates the creation of some co-simulation cases across OS (e.g. Windows and Linux).\n\n2.5.0 - 2018-09-05\n------------------\n\n- [NEW] Connection option \"time_shifted\" added as alternative to async_requests. This will\n make creating cyclic data dependencies between simulators more usable since usage of\n set_data with an API implementation will no longer be needed.\n\n2.4.0 - 2017-12-06\n------------------\n\n- [NEW] Compatible to the new versions of networkx, simpy and simpy.io\n- [CHANGE] python 3.4, 3.5 and 3.6 are currently supported python 3.3 is no longer supported\n- [FIX] Various bug fixes\n\n2.3.0 - 2016-04-26\n------------------\n\n- [NEW] Allow passing environment vars to sup processes\n- [FIX] Fixed a bug in the version validation which raised an error when using\n a floating point for the version\n\n2.2.0 - 2016-02-15\n------------------\n\n- [NEW] API version 2.2: Added an optional \"setup_done()\" method.\n\n- [CHANGE]\u00a0API version validation: The API version is no longer an integer but\n a \"major.minor\" string. The *major* part has to match with mosaik's major\n version. The *minor* part may be lower or equal to mosaik's minor version.\n\n- [FIX] Various minor fixes and stability improvements.\n\n- [FIX]\u00a0Various documentation updates and fixes.\n\n2.1.2 \u2013 2014-10-29\n------------------\n\n- [FIX]\u00a0``World.shutdown()`` now checks if the socket still exists before\n attempting to close it.\n\n- [FIX]\u00a0Fixed a bug that made the last extra method of a simulator shadow all\n previous ones.\n\n2.1.1 \u2013 2014-10-28\n------------------\n\n- [NEW] ``World.run()`` now prints a warning if you forget to connect\n a simulator's entities.\n- [FIX]\u00a0Fixed some problems with the data-flow cache.\n\n2.1 \u2013 2014-10-24\n----------------\n\n- [NEW]\u00a0Mosaik can now perform real-time simulations. Before, this\n functionality needed to be implemented by simulators. Now it\u2019s just\n ``World.run(until=x, rt_factor=y)``, where ``rt_factor`` defines the\n simulation speed relative to the wall-clock time (`issue #24`).\n\n- [NEW]\u00a0Simulators can now expose extra methods via their API that can be\n called from a mosaik scenario. This allows you to, e.g., store static data in\n a data base. These extra API methods need to be specified in the simulator\u2019s\n meta data (`issue #26`_).\n\n- [NEW] ``util.connect_many_to_one()`` helper function.\n\n- [NEW]\u00a0More and better documentation:\n\n - Tutorial for integrating simulators, control strategies and for creating\n scenarios.\n\n - Sim API description\n\n - Scenario API description\n\n - Sim Manager documentation\n\n - Scheduler documentation\n\n - Discussion of design decisions\n\n - Logo, colors, CI\n\n- [NEW] Added ``util.sync_call()`` which eases calling proxied methods of\n a simulator synchronously.\n\n- [CHANGE] The *rel* attribute in the entity description returned by *create()*\n is now optional.\n\n- [CHANGE]\u00a0Moved proxied methods from ``SimProxy`` to ``SimProxy.proxy`` in\n order to avoid potential name clashes with other attributes.\n\n- [CHANGE]\u00a0Check a simulator\u2019s models and extra API methods for potential name\n clashes with the built-in API methods.\n\n- [CHANGE]\u00a0The argument *execution_graph* of ``World`` was renamed to *debug*.\n The execution graph now also stores the time after a simulation step (in\n addition to the time before the step).\n\n- [FIX] `issue #22`_: The asynchronous requests *get_data()* and *set_data()*\n now check if the ``async_requests`` flag was set in ``World.connect()``.\n\n- [FIX] `issue #23`_: *finalize()* is now called for in-process Python\n simulators.\n\n- [FIX] `issue #27`_: Dramatically improved simulation performance (30 times as\n fast in some cases) if simulators use different step sizes (e.g. 1 minute and\n 1 hour) by improving some internal data structures.\n\n.. _`issue #22`: https://bitbucket.org/mosaik/mosaik/issue/22/\n.. _`issue #23`: https://bitbucket.org/mosaik/mosaik/issue/23/\n.. _`issue #24`: https://bitbucket.org/mosaik/mosaik/issue/24/\n.. _`issue #26`: https://bitbucket.org/mosaik/mosaik/issue/26/\n.. _`issue #27`: https://bitbucket.org/mosaik/mosaik/issue/27/\n\n\n2.0 \u2013 2014-09-22\n----------------\n\n- Mosaik 2 is a complete rewrite of mosaik 1 in order to improve its\n maintainability and flexibility.\n\n- Removed features:\n\n - The *mosl* DSL (including Eclipse xtext and Java) are now gone. Mosaik now\n only uses Python.\n\n - Mosaik now longer has executables but is now used as a library.\n\n - The platform manager is gone.\n\n - The database is now a separate package, see `mosaik-hdf5`__.\n\n - The old web UI is gone.\n\n- Mosaik now consists of four core components with the following feature sets:\n\n - mosaik Sim API\n\n - The API has bean cleaned up and simplified.\n\n - Simulators and control strategies share the same API.\n\n - There are only four calls from mosaik to a simulator: *init*, *create*,\n *step* and *get_data*.\n\n - Simulators / processes can make asynchronous requests to mosaik during a\n step: *get_progress*, *get_related_entities*, *get_data*, *set_data*.\n\n - ZeroMQ with JSON is replaced by plain network sockets with JSON.\n\n - Scenarios:\n\n - Pure Python is now used to describe scenarios. This offers you more\n flexibility to create complex scenarios.\n\n - Scenario creation simplified: Start a simulator to get a model factory.\n Use the factory to create model instances (*entities*). Connect entities.\n Run simulation.\n\n - Connection rules are are no based on a primitive *connect* function that\n only connects two entities with each other. On top of that, any\n connection strategy can be implemented.\n\n - Simulation Manager:\n\n - Simulators written in Python 3 can be executed *in process*.\n\n - Simulators can be started as external processes.\n\n - Mosaik can connect to an already running instance of a simulator. This\n can be used as a replacement for the now gone platform manager.\n\n - Simulation execution:\n\n - The simulation is now event-based. No schedule and no synchronization\n points need to be computed.\n\n - Simulators can have different and varying step sizes.\n\n- Mosaik ecosystem:\n\n - A high-level implementation of the mosaik 2 API currently exists for\n Python__ and Java__.\n\n - *mosaik-web* is a simple visualization for mosaik simulations. See\n https://bitbucket.org/mosaik/mosaik-web.\n\n - *mosaik-pypower* is an adapter for the *PYPOWER* load flow analysis\n library. See https://bitbucket.org/mosaik/mosaik-pypower and\n https://github.com/rwl/PYPOWER.\n\n - *mosaik-csv* and *mosaik-householdsim* are simple demo simulators that you\n can use to \"simulate\" CSV data sets and load-profile based households. See\n https://bitbucket.org/mosaik/mosaik-csv and\n https://bitbucket.org/mosaik/mosaik-householdsim.\n\n - There is a repository containing a simple demo scenario for mosaik. See\n https://bitbucket.org/mosaik/mosaik-demo.\n\n\n You can find information about older versions on the `history page`__\n\n__ https://bitbucket.org/mosaik/mosaik-hdf5\n__ https://bitbucket.org/mosaik/mosaik-api-python\n__ https://bitbucket.org/mosaik/mosaik-api-java\n__ https://mosaik.readthedocs.org/en/latest/about/history.html\n\n\nAuthors\n=======\n\nThe original concepts for mosaik were developed by Steffen Sch\u00fctte and Stefan\nScherfke.\n\nThe author of mosaik version 2 is Stefan Scherfke.\n\nOkko Nannen and Florian Schloegl joined the team in May / July 2014.\nAndr\u00e9 El-Ama joined the Team Juli / 2017\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://mosaik.offis.de", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "mosaik.Core-semver", "package_url": "https://pypi.org/project/mosaik.Core-semver/", "platform": "", "project_url": "https://pypi.org/project/mosaik.Core-semver/", "project_urls": { "Homepage": "https://mosaik.offis.de" }, "release_url": "https://pypi.org/project/mosaik.Core-semver/2.5.2rc20190903153334/", "requires_dist": [ "networkx (>=2.0)", "mosaik.API-semver (>=2.4.2rc20190716091443)", "mosaik.Core-semver (>=2.5.2rc20190715231038)", "simpy (>=3.0.10)", "simpy.io (>=0.2.3)" ], "requires_python": "", "summary": "Mosaik is a flexible Smart-Grid co-simulation framework.", "version": "2.5.2rc20190903153334" }, "last_serial": 5776699, "releases": { "2.5.2rc20190715231038": [ { "comment_text": "", "digests": { "md5": "c69373f482e074af8d3b4369f29744a4", "sha256": "9ea9a6edb3dc9492676a21f679aa83cfcf7ab20608ef968d8edba49cdf8daac6" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190715231038-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c69373f482e074af8d3b4369f29744a4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 36069, "upload_time": "2019-07-15T23:10:39", "url": "https://files.pythonhosted.org/packages/ed/4f/91a61bea6387c26a22a6f6fed312b9d118f5e6ef170d921b17acb497891c/mosaik.Core_semver-2.5.2rc20190715231038-py2.py3-none-any.whl" } ], "2.5.2rc20190716210553": [ { "comment_text": "", "digests": { "md5": "ece99c85820325c5b8031fb2326040de", "sha256": "42337511347026ec24a19cb038aab4deb1badf18fd8ded7cf843d4d15e5f51f3" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190716210553-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ece99c85820325c5b8031fb2326040de", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 36069, "upload_time": "2019-07-16T21:05:55", "url": "https://files.pythonhosted.org/packages/2f/b1/bf66abe67b83e8af94de8462c1976b1569483ee66fdab84f71794c41a5a0/mosaik.Core_semver-2.5.2rc20190716210553-py2.py3-none-any.whl" } ], "2.5.2rc20190716231902": [ { "comment_text": "", "digests": { "md5": "f805a407dc4d7b927a6585c8837589d2", "sha256": "3e0183051e1dc585e72893c16015d039d8b11e2f2527ec7f77c01c25f143e8e3" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190716231902-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f805a407dc4d7b927a6585c8837589d2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 36094, "upload_time": "2019-07-16T23:19:04", "url": "https://files.pythonhosted.org/packages/40/d0/b314710fba92772e187b70b881dc0786648cf89f07184cd7999fd1d2a5d5/mosaik.Core_semver-2.5.2rc20190716231902-py2.py3-none-any.whl" } ], "2.5.2rc20190716234040": [ { "comment_text": "", "digests": { "md5": "732e9378df9ebc775cb3945bb63dd95b", "sha256": "86cb39d7fb98dec77b8bc6ca17d53d3be0959ba2d5bb9e8a3e34929d9d87e26a" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190716234040-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "732e9378df9ebc775cb3945bb63dd95b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 36097, "upload_time": "2019-07-16T23:40:41", "url": "https://files.pythonhosted.org/packages/29/6c/d426a9657c9a0b485aaa7431789b9682d769954337548e4caa128628e3c5/mosaik.Core_semver-2.5.2rc20190716234040-py2.py3-none-any.whl" } ], "2.5.2rc20190716235510": [ { "comment_text": "", "digests": { "md5": "0a4bb506104239dc4deeb52e0ee94ab1", "sha256": "c13bbfa6c70c4357a69b938a8accacce3945afc0ab6ff1c551925be47b153c4c" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190716235510-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0a4bb506104239dc4deeb52e0ee94ab1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 36098, "upload_time": "2019-07-16T23:55:11", "url": "https://files.pythonhosted.org/packages/3e/5e/76bce2770a926051045f0b2b3e23109f226981b7acba92b24e85b2a6131b/mosaik.Core_semver-2.5.2rc20190716235510-py2.py3-none-any.whl" } ], "2.5.2rc20190717005802": [ { "comment_text": "", "digests": { "md5": "b7363c8662b541c3ff37f4dabc38b8cc", "sha256": "1ded3fbd22f3f9fcd90a9c4d343c05c939f37599d64c2ba45aa0b941a67b6cd6" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190717005802-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b7363c8662b541c3ff37f4dabc38b8cc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 36115, "upload_time": "2019-07-17T00:58:03", "url": "https://files.pythonhosted.org/packages/39/da/ee4d7c0610e0c2a391dda214bda564e125304ebdcbf7b1ec0aaf692f45ab/mosaik.Core_semver-2.5.2rc20190717005802-py2.py3-none-any.whl" } ], "2.5.2rc20190717103140": [ { "comment_text": "", "digests": { "md5": "bb57665b498879d7b8066356d7248611", "sha256": "65f96d9b8ee463c8377eb6b662964842de5856c8da9ffaf4fbaa94dbdda10521" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190717103140-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bb57665b498879d7b8066356d7248611", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35638, "upload_time": "2019-07-17T10:31:41", "url": "https://files.pythonhosted.org/packages/32/2e/daf78e2e7da8883e2d8a1cd8884624843a940144ecec9e3f9af827642f66/mosaik.Core_semver-2.5.2rc20190717103140-py2.py3-none-any.whl" } ], "2.5.2rc20190724222419": [ { "comment_text": "", "digests": { "md5": "aafb5911cdf292ac2806a09716e72f11", "sha256": "2ae62425b1b71e1fb979de1f9925d6ed58fa3fcf9b581af2b08b870f5a8b5301" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190724222419-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aafb5911cdf292ac2806a09716e72f11", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35639, "upload_time": "2019-07-24T22:24:21", "url": "https://files.pythonhosted.org/packages/c4/e8/095c6b13b42a73dc1041e71064445480f83349d321c0b276ae95bbb5e45a/mosaik.Core_semver-2.5.2rc20190724222419-py2.py3-none-any.whl" } ], "2.5.2rc20190806185605": [ { "comment_text": "", "digests": { "md5": "b011826e5c768eb684358dfdd426fa28", "sha256": "19e49a5c93b5399fa9dca40fc6a0f2e33555537564610f06e24b6798c576bb23" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190806185605-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b011826e5c768eb684358dfdd426fa28", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35642, "upload_time": "2019-08-06T18:56:07", "url": "https://files.pythonhosted.org/packages/f6/41/c59b9f049de6e6e4dbbf0bf7c555422990f19de4c50fcafd250f01993410/mosaik.Core_semver-2.5.2rc20190806185605-py2.py3-none-any.whl" } ], "2.5.2rc20190806185725": [ { "comment_text": "", "digests": { "md5": "3eb6cdf006ccf4546d66dfacd5983ee0", "sha256": "f354215c99e64fa28ff264fb1dc0e07b799963ef1a70021854a00ca2303c73a5" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190806185725-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3eb6cdf006ccf4546d66dfacd5983ee0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35645, "upload_time": "2019-08-06T18:57:26", "url": "https://files.pythonhosted.org/packages/9a/9f/c5106934ea525a0ef4a56d7356dd2768d1a79f42d3f4586d48816d53fffd/mosaik.Core_semver-2.5.2rc20190806185725-py2.py3-none-any.whl" } ], "2.5.2rc20190806190724": [ { "comment_text": "", "digests": { "md5": "45461b03079a2edc039d36f3d9c00df2", "sha256": "ad828e8271ff770538c810908a2fb1d259f3f3ba7ddbb35e924486e1ba8b354b" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190806190724-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "45461b03079a2edc039d36f3d9c00df2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35644, "upload_time": "2019-08-06T19:07:26", "url": "https://files.pythonhosted.org/packages/07/0c/80d52c01bafa80237482ccd36bba836bc360603a6d7aec9861cdbbd364fb/mosaik.Core_semver-2.5.2rc20190806190724-py2.py3-none-any.whl" } ], "2.5.2rc20190816175333": [ { "comment_text": "", "digests": { "md5": "9a4e269d4fae6d8eea2cdad2971565a8", "sha256": "215064c839df9b0d54b02ec377f260207263fa50826b2a56db100f04d9d2f923" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190816175333-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9a4e269d4fae6d8eea2cdad2971565a8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35645, "upload_time": "2019-08-16T17:53:34", "url": "https://files.pythonhosted.org/packages/fc/61/82e793aaf48cb638d20b45d1cfa46483843672b9591876eb3548ddc06d30/mosaik.Core_semver-2.5.2rc20190816175333-py2.py3-none-any.whl" } ], "2.5.2rc20190816181526": [ { "comment_text": "", "digests": { "md5": "5dff6a73be4dfb26cf4e4d646380adf3", "sha256": "6e80bae4b80b3b26fe7a48414605efc0011ad562f68b6c099072fc1a759ba452" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190816181526-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5dff6a73be4dfb26cf4e4d646380adf3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35644, "upload_time": "2019-08-16T18:15:27", "url": "https://files.pythonhosted.org/packages/86/a2/056d8bbabbd2fdcaf50a31e4f58661c7d2988a447ca98577a166edf80a11/mosaik.Core_semver-2.5.2rc20190816181526-py2.py3-none-any.whl" } ], "2.5.2rc20190816184820": [ { "comment_text": "", "digests": { "md5": "de85e11af0de78832126c6d6df3d37ee", "sha256": "79a7668ce73e7cdb587302731234a0aad970824b787f3d0ee11e173c5ed7bb5e" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190816184820-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "de85e11af0de78832126c6d6df3d37ee", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35644, "upload_time": "2019-08-16T18:48:21", "url": "https://files.pythonhosted.org/packages/3b/fa/967d2c1488f5df8e54f2828404c91787d49c5ee35a61412b818faa1e2880/mosaik.Core_semver-2.5.2rc20190816184820-py2.py3-none-any.whl" } ], "2.5.2rc20190816185629": [ { "comment_text": "", "digests": { "md5": "60797122e72d965ddf26252270a53bcd", "sha256": "10011241804d1c83a4e72d5288cd8c2e2812d77fe1382c0840c6ac5cd925edff" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190816185629-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "60797122e72d965ddf26252270a53bcd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35644, "upload_time": "2019-08-16T18:56:31", "url": "https://files.pythonhosted.org/packages/e8/5b/e32e742b93f1bfc1161b2620a9ace60a011680eeb904057fff21be488d06/mosaik.Core_semver-2.5.2rc20190816185629-py2.py3-none-any.whl" } ], "2.5.2rc20190827132301": [ { "comment_text": "", "digests": { "md5": "ec7c1a94f5103ee76646739bc64a0734", "sha256": "5f043a2b0cf69d1dd2226290ea10b613b821c2a060a317ab2c771899aa0879ab" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190827132301-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ec7c1a94f5103ee76646739bc64a0734", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35644, "upload_time": "2019-08-27T13:23:02", "url": "https://files.pythonhosted.org/packages/13/d6/074e1eceb5eefe6dfed8fbafe6ca18798ddc32a4ff91d32c5b576a61adb7/mosaik.Core_semver-2.5.2rc20190827132301-py2.py3-none-any.whl" } ], "2.5.2rc20190829182554": [ { "comment_text": "", "digests": { "md5": "f88f877c00fc60b7cdd8c45cc2a0f3be", "sha256": "3c7d62cd2be1119433156725d1bb7dcb2062104037c23d559f489340aee77166" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190829182554-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f88f877c00fc60b7cdd8c45cc2a0f3be", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35644, "upload_time": "2019-08-29T18:25:56", "url": "https://files.pythonhosted.org/packages/ad/9b/e9506f4128f4da9b6fb90702666baf3792982f9c7964948595d22cbd6313/mosaik.Core_semver-2.5.2rc20190829182554-py2.py3-none-any.whl" } ], "2.5.2rc20190829191952": [ { "comment_text": "", "digests": { "md5": "34b1825037a668ea093857e4c0bed16a", "sha256": "45d20f4897cbb1bf5514ebdc57bc3a1db07b5e38aa829c86a2990e6a84b1f5bb" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190829191952-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "34b1825037a668ea093857e4c0bed16a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35645, "upload_time": "2019-08-29T19:19:54", "url": "https://files.pythonhosted.org/packages/90/fb/cb71ef4f17a38a489f30e0c0f67f46ce63679d9cc8dd75263a91a49c2a0e/mosaik.Core_semver-2.5.2rc20190829191952-py2.py3-none-any.whl" } ], "2.5.2rc20190829220756": [ { "comment_text": "", "digests": { "md5": "34dc3d37f90ccef4d8548bfccad4c90c", "sha256": "5e7948cca150c2f0505f43cb7e6c845283cf65feead0352f4e71d8ee88d016c3" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190829220756-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "34dc3d37f90ccef4d8548bfccad4c90c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35644, "upload_time": "2019-08-29T22:07:57", "url": "https://files.pythonhosted.org/packages/9b/b9/adee47a5c77902875fe7df56e4127dd6cd96cddea7a8946d1e46f17d2b98/mosaik.Core_semver-2.5.2rc20190829220756-py2.py3-none-any.whl" } ], "2.5.2rc20190903152449": [ { "comment_text": "", "digests": { "md5": "77ac79cda97445d0f62b8c0c0bbfa328", "sha256": "8f2e16a62903d4c2f3086b8a54a20fcaaf607364c701c1287abc5de7791cf7e6" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190903152449-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "77ac79cda97445d0f62b8c0c0bbfa328", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35644, "upload_time": "2019-09-03T15:24:51", "url": "https://files.pythonhosted.org/packages/94/8b/20c41be31be6e032e3462b0dd019f6a76a6cd9314f777e0aa0df8fa50738/mosaik.Core_semver-2.5.2rc20190903152449-py2.py3-none-any.whl" } ], "2.5.2rc20190903153334": [ { "comment_text": "", "digests": { "md5": "d7a91af3e07119bb935034230a1bdfae", "sha256": "f23e27e512dc23f034d4921863dc7a287ebf9543787f6517cfc0a21bcba05a32" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190903153334-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d7a91af3e07119bb935034230a1bdfae", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35645, "upload_time": "2019-09-03T15:33:35", "url": "https://files.pythonhosted.org/packages/de/cf/40d052c87badb29f80929ad1a9e83fb09d3613840b740d64c153857e0cb2/mosaik.Core_semver-2.5.2rc20190903153334-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d7a91af3e07119bb935034230a1bdfae", "sha256": "f23e27e512dc23f034d4921863dc7a287ebf9543787f6517cfc0a21bcba05a32" }, "downloads": -1, "filename": "mosaik.Core_semver-2.5.2rc20190903153334-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d7a91af3e07119bb935034230a1bdfae", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 35645, "upload_time": "2019-09-03T15:33:35", "url": "https://files.pythonhosted.org/packages/de/cf/40d052c87badb29f80929ad1a9e83fb09d3613840b740d64c153857e0cb2/mosaik.Core_semver-2.5.2rc20190903153334-py2.py3-none-any.whl" } ] }