{ "info": { "author": "pennythewho", "author_email": "who@pennythewho.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python :: 3.7" ], "description": "# SeaFreeze\n\nV0.9.2\n\nThe SeaFreeze package allows computation of the thermodynamic and elastic properties of water and ice polymorphs Ih, III, V and VI in the 0-2300 MPa and 220-500 K range. It is based on the evaluation of Local Basis Functions for each phase. The formalism is described in more details in Brown (2018), Journaux et al. (2019), and in the liquid water Gibbs parameterization by Bollengier, Brown, and Shaw (2019).\n\n\n## Installation\nThis package will install [uw-highP-geophysics-tools](https://pypi.org/project/uw-highP-geophysics-tools/) and its dependencies.\n\nRun the following command to install\n\n`pip3 install SeaFreeze`\n\nTo upgrade to the latest version, use\n\n`pip3 install --upgrade SeaFreeze`\n\n\n## `seafreeze.seafreeze`: calculating thermodynamic and elastic properties of a phase of water\n\n### Usage\nThe main function of SeaFreeze is `seafreeze.seafreeze`, which has the following parameters:\n- `PT`: the pressure (MPa) and temperature (K) conditions at which the thermodynamic quantities should be\n calculated -- note that these are required units, as conversions are built into several calculations\n This parameter can have one of the following formats:\n - a 1-dimensional numpy array of tuples with one or more scattered (P,T) tuples \n - a numpy array with 2 nested numpy arrays, the first with pressures and the second\n with temperatures -- each inner array must be sorted from low to high values\n a grid will be constructed from the P and T arrays such that each row of the output\n will correspond to a pressure and each column to a temperature \n- `phase`: indicates the phase of H\u2082O. Supported phases are\n - 'Ih' - from Feistel and Wagner, 2006\n - 'II' - from Journaux et al., 2019\n - 'III' - from Journaux et al., 2019\n - 'V' - from Journaux et al., 2019\n - 'VI' - from Journaux et al., 2019\n - 'water1' - extends to 500 K and 2300 MPa; from Bollengier et al. 2019\n - 'water2' - extends to 100 GPa; from Brown 2018\n - 'water_IAPWS95' - LBF representation of IAPWS 95; from Wagner and Pru\u00df, 2002\n\n\nThe output of the function is an object with properties corresponding to the following thermodynamic quantities\n(all but the last three are from [lbftd](https://github.com/jmichaelb/LocalBasisFunction/tree/master/Python/lbftd)):\n\n| Quantity | Symbol in SeaFreeze | Unit (SI) |\n| --------------- |:---------------------:| :----------:|\n| Gibbs Energy | `G` | J/kg |\n| Entropy | `S` | J/K/kg |\n| Internal Energy | `U` | J/kg |\n| Enthalpy | `H` | J/kg |\n| Helmholtz free energy | `A` | J/kg |\n| Density |`rho`| kg/m3 |\n|Specific heat capacity at constant pressure|`Cp`| J/kg/K |\n|Specific heat capacity at constant volume|`Cv`| J/kg/K |\n| Isothermal bulk modulus |`Kt`| MPa |\n|Pressure derivative of the Isothermal bulk modulus|`Kp`| - |\n| Isoentropic bulk modulus |`Ks`| MPa |\n| Thermal expansivity |`alpha`| K-1 |\n| Shear modulus |`shear`| MPa |\n| P wave velocity |`Vp`| m/s |\n| S wave velocity |`Vs`| m/s |\n| Bulk sound speed |`vel`| m/s |\n\n **NaN values returned when out of parameterization boundaries.**\n\n### Example\n\n```python\nimport numpy as np\nimport seafreeze as sf\n\n# list supported phases\nsf.phases.keys()\n\n# evaluate thermodynamics for ice VI at 900 MPa and 255 K\nPT = np.empty((1,), np.object)\nPT[0] = (900, 255)\nout = sf.seafreeze(PT, 'VI')\n# view a couple of the calculated thermodynamic quantities at this P and T\nout.rho # density\nout.Vp # compressional wave velocity\n\n# evaluate thermodynamics for water at three separate PT conditions\nPT = np.empty((3,), np.object)\nPT[0] = (441.0858, 313.95)\nPT[1] = (478.7415, 313.96)\nPT[2] = (444.8285, 313.78)\nout = sf.seafreeze(PT, 'water1')\n# values for output fields correspond positionally to (P,T) tuples \nout.H # enthalpy\n\n# evaluate ice V thermodynamics at pressures 400-500 MPa and temperatures 240-250 K\nP = np.arange(400, 501, 2)\nT = np.arange(240, 250.1, 0.5)\nPT = np.array([P, T])\nout = sf.seafreeze(PT, 'V')\n# rows in output correspond to pressures; columns to temperatures\nout.A # Helmholtz energy\nout.shear # shear modulus\n```\n\n\n## `seafreeze.whichphase`: determining the stable phase of water\n\n### Usage\nSeafreeze also includes a function to determine which of the *supported* phases is stable\nunder the given pressure and temperature conditions. \nThe function `seafreeze.whichphase` has a single parameter, `PT`, \nwhich requires the same format as in the `seafreeze.seafreeze` function.\n\nThe output of the function is a [Numpy array](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html)\nwith an integer indicating the phase number corresponding to the `PT` input. The phase number 0 means \nliquid water, phase number 1 means ice Ih, phase number 3 means ice III, etc. Points outside the range\nof all phases will return `numpy.nan`.\n- for a list of scattered (P,T) conditions, each value corresponds to the same index in the input\n- for a grid of PT conditions, each row corresponds to a pressure and each column to a temperature from the input.\n\n`seafreeze.phasenum2phase` can be used to map output phase numbers to a phase. \nEach item in this dictionary has the phase number as its key and the phase as the value. \n\n### Example\n\n```python\nimport numpy as np\nimport seafreeze as sf\n\n# determine the phase of water at 900 MPa and 255 K\nPT = np.empty((1,), np.object)\nPT[0] = (900, 255)\nout = sf.whichphase(PT)\n# map to a phase using phasenum2phase\nsf.phasenum2phase[out[0]]\n\n\n# determine phase for three separate (P,T) conditions\nPT = np.empty((3,), np.object)\nPT[0] = (100, 200)\nPT[1] = (400, 250)\nPT[2] = (1000, 300)\nout = sf.whichphase(PT)\n# show phase for each (P,T)\n[(PT, sf.phasenum2phase[pn]) for (PT, pn) in zip(PT, out)]\n\n# find the likely phases at pressures 0-5 MPa and temperatures 240-300 K\nP = np.arange(0, 5, 0.1)\nT = np.arange(240, 300)\nPT = np.array([P, T])\nout = sf.whichphase(PT)\n```\n\n## Important remarks \n### Water representation\nThe ices Gibbs parameterizations are optimized to be used with 'water1' Gibbs LBF from Bollengier et al. (2019), specially for phase equilibrium calculation. Using other water parameterization wil lead to incorrect melting curves. 'water2' (Brown 2018) and 'water_IAPWS95' (IAPWS95) parametrization are provided for HP extention (up to 100 GPa) and comparison only. The authors recommend the use of 'water1' (Bollengier et al. 2019) for any application in the 200-355 K range and up to 2300 MPa.\n\n### Range of validity\nSeaFreeze stability prediction is currently considered valid down to 130K, which correspond to the ice VI - ice XV transition. The ice Ih - II transition is potentially valid down to 73.4 K (ice Ih - ice XI transition).\n\n## References\n- [Bollengier, Brown and Shaw (2019) J. Chem. Phys. 151, 054501; doi: 10.1063/1.5097179](https://aip.scitation.org/doi/abs/10.1063/1.5097179)\n- [Brown (2018) Fluid Phase Equilibria 463, pp. 18-31](https://www.sciencedirect.com/science/article/pii/S0378381218300530)\n- [Feistel and Wagner (2006), J. Phys. Chem. Ref. Data 35, pp. 1021-1047](https://aip.scitation.org/doi/abs/10.1063/1.2183324)\n- [Journaux et al., (2019), in review in JGR: Planets (available on ArXiv)](https://arxiv.org/abs/1907.09598)\n- [Wagner and Pruss (2002), J. Phys. Chem. Ref. Data 31, pp. 387-535](https://aip.scitation.org/doi/abs/10.1063/1.1461829)\n\n## Author\n\n* **Penny Espinoza** - *University of Washington, Earth and Space Sciences Department, Seattle, USA* \n* **Baptiste Journaux** - *University of Washington, Earth and Space Sciences Department, Seattle, USA* \n* **J. Michael Brown** - *University of Washington, Earth and Space Sciences Department, Seattle, USA* \n\n## Change log\n\n### Changes since 0.9.0\n- `0.9.2`: `whichphase` returns `numpy.nan` if PT is outside the regime of all phases\n- `0.9.1`: add `whichphase` function\n\n### Changes from 0.8\n- rename function get_phase_thermodynamics to seafreeze\n- reverse order of PT and phase in function signature\n- remove a layer of nesting (`seafreeze.seafreeze` rather than `seafreeze.seafreeze.seafreeze`)\n\n\n\n\n\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/Bjournaux/SeaFreeze", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "SeaFreeze", "package_url": "https://pypi.org/project/SeaFreeze/", "platform": "", "project_url": "https://pypi.org/project/SeaFreeze/", "project_urls": { "Homepage": "https://github.com/Bjournaux/SeaFreeze" }, "release_url": "https://pypi.org/project/SeaFreeze/0.9.2.post2/", "requires_dist": [ "uw-highP-geophysics-tools (>=0.8)" ], "requires_python": "", "summary": "thermodynamic properties of the phases of H\u2082O", "version": "0.9.2.post2", "yanked": false, "yanked_reason": null }, "last_serial": 6706640, "releases": { "0.8.1a0": [ { "comment_text": "", "digests": { "md5": "198265ea5bde69ab10c542d9dacdd2f5", "sha256": "bc1b6e441de41ffd9d790ce45f5877cb3c229a42023221452fa52966696d91b2" }, "downloads": -1, "filename": "SeaFreeze-0.8.1a0-py3-none-any.whl", "has_sig": false, "md5_digest": "198265ea5bde69ab10c542d9dacdd2f5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1352680, "upload_time": "2019-07-30T22:41:58", "upload_time_iso_8601": "2019-07-30T22:41:58.046188Z", "url": "https://files.pythonhosted.org/packages/55/cc/17e0ca8d792243556dfe90a5bee60c2cbb6c8bce23df7f62696c7ae63a92/SeaFreeze-0.8.1a0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "cbd007c7081063983d0f891783c8c416", "sha256": "2eb96d115644f90c2e6254754ad27d651519be916ede24d4bb4fe66ccc4cb6a2" }, "downloads": -1, "filename": "SeaFreeze-0.8.1a0.tar.gz", "has_sig": false, "md5_digest": "cbd007c7081063983d0f891783c8c416", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5169, "upload_time": "2019-07-30T22:41:59", "upload_time_iso_8601": "2019-07-30T22:41:59.846723Z", "url": "https://files.pythonhosted.org/packages/5d/94/6be43ca8fb42454177e54866462d036b04d0ae6a27c6ee11eca5f2ae123c/SeaFreeze-0.8.1a0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "e49a161fa4b3d73534d269d34d6433b5", "sha256": "b0b059b8c088b5e96e2f30c41338830979adee39987eb408321c4410ac20110e" }, "downloads": -1, "filename": "SeaFreeze-0.9.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e49a161fa4b3d73534d269d34d6433b5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1355583, "upload_time": "2019-08-07T01:18:20", "upload_time_iso_8601": "2019-08-07T01:18:20.053901Z", "url": "https://files.pythonhosted.org/packages/e1/9d/48f2972eed31b6d7eec3314dbcec4d4d28b0dd66eb389b461d258595b909/SeaFreeze-0.9.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "2feb89d04e5dbc525e9f15c588e73382", "sha256": "82bafbd210628a3aaba7faea114817e787174f84b3b6756867fd2796e5eadf14" }, "downloads": -1, "filename": "SeaFreeze-0.9.0.tar.gz", "has_sig": false, "md5_digest": "2feb89d04e5dbc525e9f15c588e73382", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5290, "upload_time": "2019-08-07T01:18:22", "upload_time_iso_8601": "2019-08-07T01:18:22.233611Z", "url": "https://files.pythonhosted.org/packages/83/95/4f2479cde99fcfd8b30cf8fe59a99682eaf445409b208aefa240f97b27dd/SeaFreeze-0.9.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "1a0cb204b7a5a7f6251f01ffe1179ddb", "sha256": "d72772ecbc587bdff90254ce49b9437b4952ea71823b018d0e66db6fcac29c28" }, "downloads": -1, "filename": "SeaFreeze-0.9.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1a0cb204b7a5a7f6251f01ffe1179ddb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1357026, "upload_time": "2019-08-08T19:40:15", "upload_time_iso_8601": "2019-08-08T19:40:15.241065Z", "url": "https://files.pythonhosted.org/packages/dc/c4/b4a5982eda813aa355f74554fa2bbe4a9de345f2fe77fb30ca6e645d8ec4/SeaFreeze-0.9.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ab99129647b1a746c2758c1ecd3edb9e", "sha256": "b5804508e375deae547d62b0cec63a8050a520695fde0136fe0129be8ba28b09" }, "downloads": -1, "filename": "SeaFreeze-0.9.1.tar.gz", "has_sig": false, "md5_digest": "ab99129647b1a746c2758c1ecd3edb9e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6417, "upload_time": "2019-08-08T19:40:17", "upload_time_iso_8601": "2019-08-08T19:40:17.349207Z", "url": "https://files.pythonhosted.org/packages/36/da/ce9c8edae7ba72f128bce890c1df4fabd3708fcfd44107f43831c971b0ac/SeaFreeze-0.9.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.1.post1": [ { "comment_text": "", "digests": { "md5": "072212d4ddb22528a01319dee2c9dc2c", "sha256": "b2304ff1b53ac3cb123c25e2d86e01bdfdce4ca2af7f3f2de8608e29fce06a44" }, "downloads": -1, "filename": "SeaFreeze-0.9.1.post1-py3-none-any.whl", "has_sig": false, "md5_digest": "072212d4ddb22528a01319dee2c9dc2c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1357219, "upload_time": "2019-08-08T19:50:17", "upload_time_iso_8601": "2019-08-08T19:50:17.994781Z", "url": "https://files.pythonhosted.org/packages/b3/d3/797b899984587cbb338b7aaf197cb31b0d91c90d969687c12cb1dbd365ed/SeaFreeze-0.9.1.post1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "afecb4ac593859d2a8daec2e429bfd39", "sha256": "8ad176925912deb770e7e294db593aa6e2c10ab4d29338e7b076bc71e341c1e7" }, "downloads": -1, "filename": "SeaFreeze-0.9.1.post1.tar.gz", "has_sig": false, "md5_digest": "afecb4ac593859d2a8daec2e429bfd39", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6502, "upload_time": "2019-08-08T19:50:20", "upload_time_iso_8601": "2019-08-08T19:50:20.174804Z", "url": "https://files.pythonhosted.org/packages/f2/3a/1161fbacd48abfb51ec3db90d84a06a72138b95c234dc4c554947b3fbf61/SeaFreeze-0.9.1.post1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.1.post2": [ { "comment_text": "", "digests": { "md5": "fc0dac1d168fa36172c693e206105b83", "sha256": "578eea16e603ee33cf7b2f00c5edb9d20123a0ba564d9dff506fe8d1efcb6fc1" }, "downloads": -1, "filename": "SeaFreeze-0.9.1.post2-py3-none-any.whl", "has_sig": false, "md5_digest": "fc0dac1d168fa36172c693e206105b83", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1357602, "upload_time": "2019-08-08T20:29:38", "upload_time_iso_8601": "2019-08-08T20:29:38.742161Z", "url": "https://files.pythonhosted.org/packages/01/cc/a3fe326c3655f5f9bf27c0346f516313e331094b066d2f514be4b9b3c963/SeaFreeze-0.9.1.post2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e11c8283e5101b825b2a54f9672330cd", "sha256": "547af72619cf06eada04726fb94e65e5fdee4eb350deabab3a7d8e8eba5e4740" }, "downloads": -1, "filename": "SeaFreeze-0.9.1.post2.tar.gz", "has_sig": false, "md5_digest": "e11c8283e5101b825b2a54f9672330cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6744, "upload_time": "2019-08-08T20:29:41", "upload_time_iso_8601": "2019-08-08T20:29:41.066099Z", "url": "https://files.pythonhosted.org/packages/cb/14/cda57bfdbe02e147db90b6da1cdf3f6b5fa1b96ff9313451aae680a72c26/SeaFreeze-0.9.1.post2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "2f0b8d5cba5de90b2f421d67d9d51ebf", "sha256": "9abd92bff76e18da50efabb66b7225009ffea8237ef6f15fc200d28d1d833eb7" }, "downloads": -1, "filename": "SeaFreeze-0.9.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2f0b8d5cba5de90b2f421d67d9d51ebf", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1362380, "upload_time": "2019-10-30T01:38:36", "upload_time_iso_8601": "2019-10-30T01:38:36.344787Z", "url": "https://files.pythonhosted.org/packages/13/ff/7bdd5e568fae2f42dbf8c3623c51a98e6e4c6c17964c45bcdbdbdeb777b1/SeaFreeze-0.9.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "bc79884e8b46326c9faaf2dd2d865710", "sha256": "f8a7f1fb9ae64510c5a7c170a6149a5688e9537b34dda6507943e7216c959228" }, "downloads": -1, "filename": "SeaFreeze-0.9.2.tar.gz", "has_sig": false, "md5_digest": "bc79884e8b46326c9faaf2dd2d865710", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7581, "upload_time": "2019-10-30T01:38:38", "upload_time_iso_8601": "2019-10-30T01:38:38.350120Z", "url": "https://files.pythonhosted.org/packages/ab/d6/1f2405614e00afc2842c3854c27ca2ae4ffab2d3ebf476f718cebff01690/SeaFreeze-0.9.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.2.post1": [ { "comment_text": "", "digests": { "md5": "d0a3bc71ee95c32f9be736c14cf8b455", "sha256": "5dc01d692098104c6af21e1ff634e13e580d13128628389cbf87516d91407cb0" }, "downloads": -1, "filename": "SeaFreeze-0.9.2.post1-py3-none-any.whl", "has_sig": false, "md5_digest": "d0a3bc71ee95c32f9be736c14cf8b455", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1362871, "upload_time": "2019-11-11T04:13:14", "upload_time_iso_8601": "2019-11-11T04:13:14.604597Z", "url": "https://files.pythonhosted.org/packages/bb/48/36353c2b64e783bda67bb0779a1b92e0674a678eb9093c6807eb91dabb60/SeaFreeze-0.9.2.post1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b3e207bca8345799017dfe20529b2323", "sha256": "6e3b8e7f72ae7e19768844a1ba46740ed7161ad8450dcd20668455a84a912af1" }, "downloads": -1, "filename": "SeaFreeze-0.9.2.post1.tar.gz", "has_sig": false, "md5_digest": "b3e207bca8345799017dfe20529b2323", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7983, "upload_time": "2019-11-11T04:13:16", "upload_time_iso_8601": "2019-11-11T04:13:16.778107Z", "url": "https://files.pythonhosted.org/packages/91/6a/11e1a99d5f0ab6b0636e7db92132663afc40ab9f3c9d7d86efe2845a5140/SeaFreeze-0.9.2.post1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.2.post2": [ { "comment_text": "", "digests": { "md5": "a6ba6a5edef11648646ba7f20e1b818e", "sha256": "68ea731089db89e8e1e9ad8a657f467690d2f4f4e95dab16eea6d2e45f9dee62" }, "downloads": -1, "filename": "SeaFreeze-0.9.2.post2-py3-none-any.whl", "has_sig": false, "md5_digest": "a6ba6a5edef11648646ba7f20e1b818e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1362995, "upload_time": "2019-11-12T03:01:36", "upload_time_iso_8601": "2019-11-12T03:01:36.458059Z", "url": "https://files.pythonhosted.org/packages/ca/0e/82400a78d8d79fb6e91384442b5f613b3ff031fc030eb914c0801fc65452/SeaFreeze-0.9.2.post2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "3860a30e38ef3389af31d290fa4d83c5", "sha256": "6797ee1ae7aa8340e84d3c452dcc7fd105cbc61d744c7085e0530e99ea3bdd85" }, "downloads": -1, "filename": "SeaFreeze-0.9.2.post2.tar.gz", "has_sig": false, "md5_digest": "3860a30e38ef3389af31d290fa4d83c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8051, "upload_time": "2019-11-12T03:01:38", "upload_time_iso_8601": "2019-11-12T03:01:38.891183Z", "url": "https://files.pythonhosted.org/packages/c2/5c/1f11590ce4286f1de33aa7c654f4be5e93e92205333a6a9bce8bf6ccc4c5/SeaFreeze-0.9.2.post2.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a6ba6a5edef11648646ba7f20e1b818e", "sha256": "68ea731089db89e8e1e9ad8a657f467690d2f4f4e95dab16eea6d2e45f9dee62" }, "downloads": -1, "filename": "SeaFreeze-0.9.2.post2-py3-none-any.whl", "has_sig": false, "md5_digest": "a6ba6a5edef11648646ba7f20e1b818e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1362995, "upload_time": "2019-11-12T03:01:36", "upload_time_iso_8601": "2019-11-12T03:01:36.458059Z", "url": "https://files.pythonhosted.org/packages/ca/0e/82400a78d8d79fb6e91384442b5f613b3ff031fc030eb914c0801fc65452/SeaFreeze-0.9.2.post2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "3860a30e38ef3389af31d290fa4d83c5", "sha256": "6797ee1ae7aa8340e84d3c452dcc7fd105cbc61d744c7085e0530e99ea3bdd85" }, "downloads": -1, "filename": "SeaFreeze-0.9.2.post2.tar.gz", "has_sig": false, "md5_digest": "3860a30e38ef3389af31d290fa4d83c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8051, "upload_time": "2019-11-12T03:01:38", "upload_time_iso_8601": "2019-11-12T03:01:38.891183Z", "url": "https://files.pythonhosted.org/packages/c2/5c/1f11590ce4286f1de33aa7c654f4be5e93e92205333a6a9bce8bf6ccc4c5/SeaFreeze-0.9.2.post2.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }