{ "info": { "author": "Michael R. Shannon", "author_email": "mrshannon.aerospace@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Database :: Front-Ends", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: GIS", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": ".. image:: https://raw.githubusercontent.com/ccarocean/pyrads/master/docs/_static/logo_black.png\n :alt: PyRADS\n :align: center\n\nPython access to the Radar Altimeter Database System\n====================================================\n\n|build-status|\n|doc-status|\n|coverage-status|\n|code-style|\n|version|\n|supported-versions|\n|status|\n|license|\n\nPython library for access to the `Radar Altimeter Database System`_ (RADS).\n\n**Current Features**\n\n* Loading of the RADS XML files.\n\n**Planned Features**\n\n* Loading of RADS data.\n\n\n\nDocumentation\n-------------\n\nDocumentation for PyRADS can be found at `https://pyrads.readthedocs.io/en/latest/ `_ or in `PDF `_ and `Epub `_ formats.\n\n\n\nInstallation\n------------\n\nOnly POSIX complaint systems are officially supported. PyRADS should work on Microsoft Windows but it has not been tested.\n\n\nUDUINITS2_\n^^^^^^^^^^\n\nIn addition to CPython 3.6+ PyRADS requires the UDUNITS2_ library and header files to be installed. Below are instructions for accomplishing this on some common systems:\n\nUbuntu and Debian\n\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n\n.. code-block:: text\n\n # apt-get install libudunits2-dev\n\nRed Hat and Fedora\n\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n\n.. code-block:: text\n\n # yum install udunits2-devel\n\nMac OS X (using _homebrew)\n\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n\n.. code-block:: text\n\n $ brew install udunits\n\nMicrosoft Windows\n\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n\nNo binary is provided for Windows so UDUNITS2_ must be built from `source `_.\n\n\nlibxml2_\n^^^^^^^^\n\nPyRADS also optionally requires libxml2_ which it uses for better error messages and slightly faster RADS XML file loading.\n\n\nUbuntu and Debian\n\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n\n.. code-block:: text\n\n # apt-get install libxml2\n\nRed Hat and Fedora\n\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n\n.. code-block:: text\n\n # yum install libxml2\n\nMac OS X (using _homebrew)\n\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n\n.. code-block:: text\n\n $ brew install libxml2\n\n\nPyRADS\n^^^^^^\n\nNow that the system dependencies have been installed PyRADS can be installed from PyPI_:\n\n.. code-block:: text\n\n $ pip install rads\n\nor if libxml2_ is installed\n\n.. code-block:: text\n\n $ pip install rads[lxml]\n\n\n\nUsage\n-----\n\n*PyRADS is currently in development, and will remain so until its first v1.0.0\nrelease. Until then the public API may change from one minor release to another. However, patch releases will not change the public API.*\n\n\nLoading RADS configuration files\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nCurrently, PyRADS is only capable of loading the RADS XML files. Loading data\nis planned for a future release.\n\nThe easiest way to load the RADS v4 XML files is to ensure that the\n:code:`RADSDATAROOT` environment variable is set with the path to the RADS\ndata root as documented in the official `RADS User Manual`_. Once this is\ndone, PyRADS can load all the same XML files that the official RADS\nimplementation does by default (it will also load PyRADS specific XML files\nas well).\n\n.. code-block:: python\n\n >>> import rads\n >>> rads_config = rads.load_config()\n\nThe files that will be loaded are (on Unix):\n\n1. :code:`/conf/rads.xml`\n2. :code:`/etc/pyrads/settings.xml`\n3. :code:`~/.rads/rads.xml`\n4. :code:`~/.config/pyrads/settings.xml`\n5. :code:`rads.xml`\n6. :code:`pyrads.xml`\n\nwhere each file can override or append to the settings of the previous files.\n\n*If not using Unix, use the rads.config_files() function to retrieve\nyour platform specific list.*\n\nTo add XML files to this:\n\n.. code-block:: python\n\n >>> import rads\n >>> xml_files = rads.config_files() + ['path/to/custom/file.xml']\n >>> rads_config = rads.load_config(xml_files=xml_files)\n\nThe RADS data root can also be overridden:\n\n.. code-block:: python\n\n >>> import rads\n >>> rads_config = rads.load_config(dataroot='/path/to/custom/dataroot')\n\nThe entire RADS config can be displayed in human readable form with:\n\n.. code-block:: python\n\n >>> import rads\n >>> print(rads.load_config().full_string())\n\nFor more information on loading of RADS v4 XML configuration files consult the\ndocumentation.\n\n\n\nDevelopment\n-----------\n\ninvoke_\n^^^^^^^\n\nPyRADS uses invoke_ to make common development tasks easier. For example the simplest way to get started working on PyRADS is to fork and clone the repository and then from within the main project directory:\n\n.. code-block::\n\n pip install invoke && invoke develop\n\nThis will install all development requirements with :code:`pip` and thus it is recommended to do this from a :code:`virtualenv`.\n\nIf you are working on a system where libxml2_ is installed you may wish to also install lxml_ to provide faster XML parsing, but more importantly better error messages. With lxml_, configuration parsing errors will be identified by line number.\n\nTo get the full list tasks that can be run by invoke_:\n\n.. code-block::\n\n invoke -l\n\nFor example, to run the formatters (isort_ and black_), static checkers, and\nall tests (with coverage report):\n\n.. code-block::\n\n invoke format check test --coverage\n\n*NOTE: This should be ran before making any commits.*\n\nThe classic :code:`python setup.py test` is supported as well but only runs the unit tests.\n\nIf on a non UNIX environment some of the tasks may fail. If this happens you can use the :code:`--dry` flag to print out the commands that would be ran and then adjust accordingly.\n\n\ntox_\n^^^^\n\nWhile the above invoke_ tasks are relatively quick and are good for development they are insufficient to ensure PyRADS is working properly across all options (lxml_ or not) and all supported Python versions. For this a tox_ configuration is provided. To run the full test suite simply run:\n\n.. code-block::\n\n tox\n\nOr if you have a recent version of :code:`tox` you can speed up the process with:\n\n.. code-block::\n\n tox --parallel auto\n\nThe :code:`doc-pdf` environment will fail if XeTeX_, xindy_, and latexmk_. This is usually fine.\n\nIf all tests run by tox succeed (except for :code:`doc-pdf`) the TravisCI build should succeed as well.\n\n\n.. _PyPI: https://pypi.org/\n.. _Radar Altimeter Database System: https://github.com/remkos/rads\n.. _RADS User Manual: https://github.com/remkos/rads/blob/master/doc/manuals/rads4_user_manual.pdf\n.. _UDUNITS2: https://www.unidata.ucar.edu/software/udunits/\n.. _libxml2: http://www.xmlsoft.org/\n.. _lxml: https://lxml.de/\n.. _invoke: http://www.pyinvoke.org/\n.. _isort: https://github.com/timothycrosley/isort\n.. _black: https://black.readthedocs.io/en/stable/\n.. _tox: https://tox.readthedocs.io/en/latest/\n.. _XeTeX: http://xetex.sourceforge.net/\n.. _xindy: http://xindy.sourceforge.net/\n.. _latexmk: https://mg.readthedocs.io/latexmk.html\n.. _homebrew: https://brew.sh/\n\n.. |build-status| image:: https://travis-ci.com/ccarocean/pyrads.svg?branch=master&style=flat\n :target: https://travis-ci.com/ccarocean/pyrads\n :alt: Build status\n\n.. |doc-status| image:: https://readthedocs.org/projects/pyrads/badge/?version=latest\n :target: https://pyrads.readthedocs.io/en/latest/\n :alt: Documentation status\n\n.. |coverage-status| image:: https://codecov.io/github/ccarocean/pyrads/coverage.svg?branch=master\n :target: https://codecov.io/github/ccarocean/pyrads?branch=master\n :alt: Test coverage\n\n.. |code-style| image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://github.com/psf/black\n :alt: Code style is black\n\n.. |version| image:: https://img.shields.io/pypi/v/rads.svg\n :alt: PyPI Package latest release\n :target: https://pypi.python.org/pypi/rads\n\n.. |status| image:: https://img.shields.io/pypi/status/rads.svg\n :alt: Status\n :target: https://pypi.python.org/pypi/rads\n\n.. |supported-versions| image:: https://img.shields.io/pypi/pyversions/rads.svg\n :alt: Supported versions\n :target: https://pypi.python.org/pypi/rads\n\n.. |license| image:: https://img.shields.io/github/license/ccarocean/pyrads.svg\n :alt: MIT\n :target: https://opensource.org/licenses/MIT\n\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ccarocean/pyrads", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "rads", "package_url": "https://pypi.org/project/rads/", "platform": "", "project_url": "https://pypi.org/project/rads/", "project_urls": { "Homepage": "https://github.com/ccarocean/pyrads" }, "release_url": "https://pypi.org/project/rads/0.1.0.post0/", "requires_dist": [ "appdirs", "astropy", "cached-property", "cf-units (>=2.1.1)", "dataclass-builder (>=1.2.0)", "fortran-format-converter (>=0.1.3)", "numpy (>=1.16.0)", "regex", "scipy", "sortedcontainers", "wrapt", "yzal", "dataclasses ; python_version == \"3.6\"", "flake8 (>=3.7.7) ; extra == 'checks'", "flake8-bugbear ; extra == 'checks'", "mypy ; extra == 'checks'", "pydocstyle ; extra == 'checks'", "typing-extensions ; extra == 'checks'", "black ; extra == 'dev'", "isort ; extra == 'dev'", "twine ; extra == 'dev'", "flake8 (>=3.7.7) ; extra == 'dev'", "flake8-bugbear ; extra == 'dev'", "mypy ; extra == 'dev'", "pydocstyle ; extra == 'dev'", "typing-extensions ; extra == 'dev'", "pytest ; extra == 'dev'", "pytest-cov ; extra == 'dev'", "pytest-mock ; extra == 'dev'", "packaging ; extra == 'dev'", "sphinx (>=1.7) ; extra == 'dev'", "sphinxcontrib-apidoc ; extra == 'dev'", "packaging ; extra == 'docs'", "sphinx (>=1.7) ; extra == 'docs'", "sphinxcontrib-apidoc ; extra == 'docs'", "lxml ; extra == 'lxml'", "pytest ; extra == 'tests'", "pytest-cov ; extra == 'tests'", "pytest-mock ; extra == 'tests'" ], "requires_python": ">=3.6", "summary": "Python front end for the Radar Altimeter Database System.", "version": "0.1.0.post0" }, "last_serial": 5716796, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "12b884b7fca0251bcc8076f37d054ce0", "sha256": "c4f7ce90bd676e12f4e6cff045e88a6a0bd0cf75539d5ea2786b406a3d7d1023" }, "downloads": -1, "filename": "rads-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "12b884b7fca0251bcc8076f37d054ce0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 88711, "upload_time": "2019-08-22T18:37:28", "url": "https://files.pythonhosted.org/packages/be/33/dc201e5e29f0a2775c2003f50b3d5e7a9e70bf0da43c8699c52ac6859c86/rads-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "476127dfa232e0d566b3ffbb369e4b60", "sha256": "87b0c10ec101d91bf03cea5648ef13886453266d0f1a7506a497a41594395000" }, "downloads": -1, "filename": "rads-0.1.0.tar.gz", "has_sig": false, "md5_digest": "476127dfa232e0d566b3ffbb369e4b60", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 183457, "upload_time": "2019-08-22T18:37:34", "url": "https://files.pythonhosted.org/packages/06/1c/78f4093ba4a41aa14268b43e5e95b0de7b5f6407285008a56c82abc5599b/rads-0.1.0.tar.gz" } ], "0.1.0.post0": [ { "comment_text": "", "digests": { "md5": "bcf04bf6dc8d7afe0cfd1facd89cf808", "sha256": "cc038b386a25c00d769d68ebc877d873d6ca6d3aa7ad3e42de08b803fa897f83" }, "downloads": -1, "filename": "rads-0.1.0.post0-py3-none-any.whl", "has_sig": false, "md5_digest": "bcf04bf6dc8d7afe0cfd1facd89cf808", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 88871, "upload_time": "2019-08-22T18:54:16", "url": "https://files.pythonhosted.org/packages/7a/7b/0f3e022522e2981a5c4d7d0e0593760a260a3a0cc9438670c173666853d5/rads-0.1.0.post0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a90d2eb45e223357f71abafeac2b4246", "sha256": "d3fc58ca3c092e869d8e7953b1b0e83f633604b4e081ae48c2b28659f2d29336" }, "downloads": -1, "filename": "rads-0.1.0.post0.tar.gz", "has_sig": false, "md5_digest": "a90d2eb45e223357f71abafeac2b4246", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 183743, "upload_time": "2019-08-22T18:54:19", "url": "https://files.pythonhosted.org/packages/87/ce/7d84c6a4e17aac9ef73197d0eb5b7e0b0d322bc1cea51f58b84cd648b8bf/rads-0.1.0.post0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bcf04bf6dc8d7afe0cfd1facd89cf808", "sha256": "cc038b386a25c00d769d68ebc877d873d6ca6d3aa7ad3e42de08b803fa897f83" }, "downloads": -1, "filename": "rads-0.1.0.post0-py3-none-any.whl", "has_sig": false, "md5_digest": "bcf04bf6dc8d7afe0cfd1facd89cf808", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 88871, "upload_time": "2019-08-22T18:54:16", "url": "https://files.pythonhosted.org/packages/7a/7b/0f3e022522e2981a5c4d7d0e0593760a260a3a0cc9438670c173666853d5/rads-0.1.0.post0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a90d2eb45e223357f71abafeac2b4246", "sha256": "d3fc58ca3c092e869d8e7953b1b0e83f633604b4e081ae48c2b28659f2d29336" }, "downloads": -1, "filename": "rads-0.1.0.post0.tar.gz", "has_sig": false, "md5_digest": "a90d2eb45e223357f71abafeac2b4246", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 183743, "upload_time": "2019-08-22T18:54:19", "url": "https://files.pythonhosted.org/packages/87/ce/7d84c6a4e17aac9ef73197d0eb5b7e0b0d322bc1cea51f58b84cd648b8bf/rads-0.1.0.post0.tar.gz" } ] }