{ "info": { "author": "European Centre for Medium-Range Weather Forecasts (ECMWF)", "author_email": "software.support@ecmwf.int", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "\nPython 3 interface to encode and decode GRIB and BUFR files via the\n`ECMWF ecCodes library `_.\n\nFeatures:\n\n- reads and writes GRIB 1 and 2 files,\n- reads and writes BUFR 3 and 4 files,\n- supports all modern versions of Python 3.7, 3.6, 3.5 and PyPy3,\n- works on most *Linux* distributions and *MacOS*, the *ecCodes* C-library is the only system dependency,\n- PyPI package can be installed without compiling,\n at the cost of being twice as slow as the original *ecCodes* module,\n- an optional compile step makes the code as fast as the original module\n but it needs a recent version of *ecCodes* `>= 2.14.0`.\n\nLimitations:\n\n- Microsoft Windows support is untested.\n\n\nInstallation\n============\n\nThe package is installed from PyPI with::\n\n $ pip install eccodes-python\n\n\nSystem dependencies\n-------------------\n\nThe Python module depends on the ECMWF *ecCodes* library\nthat must be installed on the system and accessible as a shared library.\n\nOn a MacOS with HomeBrew use::\n\n $ brew install eccodes\n\nOr if you manage binary packages with *Conda* use::\n\n $ conda install -c conda-forge eccodes\n\nAs an alternative you may install the official source distribution\nby following the instructions at\nhttps://software.ecmwf.int/wiki/display/ECC/ecCodes+installation\n\nYou may run a simple selfcheck command to ensure that your system is set up correctly::\n\n $ python -m eccodes selfcheck\n Found: ecCodes v2.14.0.\n Your system is ready.\n\n\nUsage\n-----\n\nRefer to the *ecCodes* `documentation pages `_\nfor usage.\n\n\nExperimental features\n=====================\n\nFast bindings\n-------------\n\nTo test the much faster *CFFI* API level, out-of-line mode you need the *ecCodes*\nheader files.\nThen you need to clone the repo in the same folder as your *ecCodes* source tree,\nmake a ``pip`` development install and custom compile the binary bindings::\n\n $ git clone https://github.com/ecmwf/eccodes-python\n $ cd eccodes-python\n $ pip install -e .\n $ python builder.py\n\nTo revert back to ABI level, in-line more just remove the compiled bindings::\n\n $ rm gribapi/_bindings.*\n\n\nProject resources\n=================\n\n============= =========================================================\nDevelopment https://github.com/ecmwf/eccodes-python\nDownload https://pypi.org/project/eccodes-python\nCode quality .. image:: https://api.travis-ci.org/ecmwf/eccodes-python.svg?branch=master\n :target: https://travis-ci.org/ecmwf/eccodes-python/branches\n :alt: Build Status on Travis CI\n .. image:: https://coveralls.io/repos/ecmwf/eccodes-python/badge.svg?branch=master&service=github\n :target: https://coveralls.io/github/ecmwf/eccodes-python\n :alt: Coverage Status on Coveralls\n============= =========================================================\n\n\nContributing\n============\n\nThe main repository is hosted on GitHub,\ntesting, bug reports and contributions are highly welcomed and appreciated:\n\nhttps://github.com/ecmwf/eccodes-python\n\nPlease see the CONTRIBUTING.rst document for the best way to help.\n\nMaintainer:\n\n- `Shahram Najm `_ - `ECMWF `_\n\nContributors:\n\n- `Alessandro Amici `_ - `B-Open `_\n\nSee also the list of `contributors `_\nwho participated in this project.\n\n\nLicense\n=======\n\nCopyright 2017-2019 European Centre for Medium-Range Weather Forecasts (ECMWF).\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0.\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\nChangelog for eccodes-python\n============================\n\n0.9.3 (2019-10-02)\n------------------\n\n- New exception added: FunctionalityNotEnabledError\n- BUFR decoding: support for multi-element constant arrays (ECC-428)\n\n\n0.9.2 (2019-07-09)\n------------------\n\n- All ecCodes tests now pass\n- Simplify the xx_new_from_file calls\n- Fix for grib_set_string_array\n- Use ECCODES_DIR to locate the library\n- Remove the new-style high-level interface. It is still available in\n `cfgrib `_.\n\n0.9.1 (2019-06-06)\n------------------\n\n- ``codes_get_long_array`` and ``codes_get_double_array`` now return a ``np.ndarray``.\n See: `#3 `_.\n\n\n0.9.0 (2019-05-07)\n------------------\n\n- Declare the project as **Beta**.\n\n\n0.8.0 (2019-04-08)\n------------------\n\n- First public release.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ecmwf/eccodes-python", "keywords": "ecCodes GRIB BUFR", "license": "Apache License Version 2.0", "maintainer": "", "maintainer_email": "", "name": "eccodes-python", "package_url": "https://pypi.org/project/eccodes-python/", "platform": "", "project_url": "https://pypi.org/project/eccodes-python/", "project_urls": { "Homepage": "https://github.com/ecmwf/eccodes-python" }, "release_url": "https://pypi.org/project/eccodes-python/0.9.3/", "requires_dist": [ "attrs", "cffi", "numpy" ], "requires_python": "", "summary": "Python interface to the ecCodes GRIB and BUFR decoder/encoder", "version": "0.9.3" }, "last_serial": 5944054, "releases": { "0.8.0": [ { "comment_text": "", "digests": { "md5": "91de6504b86bebed4212314fc3e270ac", "sha256": "885a3dfbc2b64ec22999cd1c2b52496e3cb23938f3423cd82c931f5842fdebd9" }, "downloads": -1, "filename": "eccodes_python-0.8.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "91de6504b86bebed4212314fc3e270ac", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 42260, "upload_time": "2019-04-08T12:17:22", "url": "https://files.pythonhosted.org/packages/b5/57/d827ca76c37628df29a2f0e98feeed3018c0bd70170fcc91ee81e4c6984e/eccodes_python-0.8.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2da1d183f24e4b255693d3240e420ea", "sha256": "5011d25a1f5abf26f947227449d21a09ad5a40544ed314ebd6997b11b26763ed" }, "downloads": -1, "filename": "eccodes-python-0.8.0.tar.gz", "has_sig": false, "md5_digest": "f2da1d183f24e4b255693d3240e420ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2286598, "upload_time": "2019-04-08T12:17:18", "url": "https://files.pythonhosted.org/packages/d0/c1/07b44470ca1639065335105af9d69f06ce69091bfabb85c63c6436d1a2b0/eccodes-python-0.8.0.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "fb71f6827b26537846a87966a6b9864f", "sha256": "5fd137ee482749487ce8fb9f27171d569a0723784e646f34c62b70e719289faf" }, "downloads": -1, "filename": "eccodes_python-0.9.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fb71f6827b26537846a87966a6b9864f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 42129, "upload_time": "2019-05-07T17:02:03", "url": "https://files.pythonhosted.org/packages/42/2b/bfaf606cac49fb7e159ed37b4c59ffeda46ca244467d57c0a6e0bc225c1a/eccodes_python-0.9.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "af449b74c9fbe64f570d55eaa682d2fe", "sha256": "ff8c46d82ce1340ee673871b5f45118ac5c95083631e0927082b59d1e701cf6b" }, "downloads": -1, "filename": "eccodes-python-0.9.0.tar.gz", "has_sig": false, "md5_digest": "af449b74c9fbe64f570d55eaa682d2fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2286896, "upload_time": "2019-05-07T17:02:01", "url": "https://files.pythonhosted.org/packages/e0/a1/1261785b6d45fe28c66fd3c657e7d832cd63bf461493016caa14f8163a82/eccodes-python-0.9.0.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "642ee4785a8750f2847f3238f685d3fa", "sha256": "f861295fcc199673b4a04e36c46e7b4ab61920dfb8d32e1400ec2f8bac1c5e74" }, "downloads": -1, "filename": "eccodes_python-0.9.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "642ee4785a8750f2847f3238f685d3fa", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 46880, "upload_time": "2019-06-06T16:00:01", "url": "https://files.pythonhosted.org/packages/de/57/6a24f0b59f583dfea3b258bf44d60ba82d63b6e3eaf622bcd13c6232569a/eccodes_python-0.9.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c363a137a1e936526814f9afe0f542ef", "sha256": "f7819891f42091b262052dc30d94a57ce931800a04ffe515b54f7ffa64de4106" }, "downloads": -1, "filename": "eccodes-python-0.9.1.tar.gz", "has_sig": false, "md5_digest": "c363a137a1e936526814f9afe0f542ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2287253, "upload_time": "2019-06-06T16:00:05", "url": "https://files.pythonhosted.org/packages/3b/73/e1e1630a1ef7e45b2f09385d51c64fc645dce17a44bfb6c30fc800fa5391/eccodes-python-0.9.1.tar.gz" } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "494ff7b69d0e2dab475f43c0860fdcd5", "sha256": "9e47b3dc1bdd4066e047fc3bd6aa67baf77d9fb224e4ce854ede253497c2f735" }, "downloads": -1, "filename": "eccodes_python-0.9.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "494ff7b69d0e2dab475f43c0860fdcd5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 43183, "upload_time": "2019-07-09T13:49:32", "url": "https://files.pythonhosted.org/packages/77/0b/cbf4fc2d33e8e56fcf82cedfcc01d4934e46eb6e7a07239ae00135703590/eccodes_python-0.9.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c6d5db436a2b2d1f7be176f8e0ba7d11", "sha256": "587dd828ee5e13b6a7d35a362d6fd903d914dd0422f4010af95e8f45738e9143" }, "downloads": -1, "filename": "eccodes-python-0.9.2.tar.gz", "has_sig": false, "md5_digest": "c6d5db436a2b2d1f7be176f8e0ba7d11", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48190, "upload_time": "2019-07-09T13:49:34", "url": "https://files.pythonhosted.org/packages/da/61/fc4a87a6e349d70a1bb81a57ec7a399ebd8b252fcb5d769f13c3644fb81d/eccodes-python-0.9.2.tar.gz" } ], "0.9.3": [ { "comment_text": "", "digests": { "md5": "c0324b2434c30bb0a3859a5820128d20", "sha256": "75cee6a5148397cd27b26d2fd754f1966d3224613d998e9df938435688da0d82" }, "downloads": -1, "filename": "eccodes_python-0.9.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c0324b2434c30bb0a3859a5820128d20", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 43069, "upload_time": "2019-10-08T10:09:20", "url": "https://files.pythonhosted.org/packages/cc/15/7e7d4379f7943234d0a207a9f8765372b3dd851fbf062bee1913fa667f95/eccodes_python-0.9.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "297ab65f14998df935fa7253c0344190", "sha256": "1d6ca779dd30bec04aa239e9de2353704ee4cbf3b333355b7e937d72109b0d07" }, "downloads": -1, "filename": "eccodes-python-0.9.3.tar.gz", "has_sig": false, "md5_digest": "297ab65f14998df935fa7253c0344190", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48614, "upload_time": "2019-10-08T10:09:22", "url": "https://files.pythonhosted.org/packages/67/49/264474fefaa6e496e4ed38a667bb46ca6615092a1a163854618e9c384392/eccodes-python-0.9.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c0324b2434c30bb0a3859a5820128d20", "sha256": "75cee6a5148397cd27b26d2fd754f1966d3224613d998e9df938435688da0d82" }, "downloads": -1, "filename": "eccodes_python-0.9.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c0324b2434c30bb0a3859a5820128d20", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 43069, "upload_time": "2019-10-08T10:09:20", "url": "https://files.pythonhosted.org/packages/cc/15/7e7d4379f7943234d0a207a9f8765372b3dd851fbf062bee1913fa667f95/eccodes_python-0.9.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "297ab65f14998df935fa7253c0344190", "sha256": "1d6ca779dd30bec04aa239e9de2353704ee4cbf3b333355b7e937d72109b0d07" }, "downloads": -1, "filename": "eccodes-python-0.9.3.tar.gz", "has_sig": false, "md5_digest": "297ab65f14998df935fa7253c0344190", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48614, "upload_time": "2019-10-08T10:09:22", "url": "https://files.pythonhosted.org/packages/67/49/264474fefaa6e496e4ed38a667bb46ca6615092a1a163854618e9c384392/eccodes-python-0.9.3.tar.gz" } ] }