From 116767252bb8aaa48eac3b66b21d495747b1aea0 Mon Sep 17 00:00:00 2001 From: David Huard Date: Fri, 27 Nov 2020 14:23:54 -0500 Subject: [PATCH 1/3] update esmpy version to 8.0.0 in installation docs --- doc/installation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation.rst b/doc/installation.rst index 204676a..dd11b11 100644 --- a/doc/installation.rst +++ b/doc/installation.rst @@ -28,7 +28,7 @@ Getting xESMF is as simple as: .. warning:: - One some platforms you might get :code:`ImportError: Regrid(filename) requires PIO and does not work if ESMF has not been built with MPI support`. (see `this comment `_). A quick workaround is to constrain ESMPy version :code:`conda install -c conda-forge xesmf esmpy=7.1.0`. + One some platforms you might get :code:`ImportError: Regrid(filename) requires PIO and does not work if ESMF has not been built with MPI support`. (see `this comment `_). A quick workaround is to constrain ESMPy version :code:`conda install -c conda-forge xesmf esmpy=8.0.0`. I also highly recommend those extra packages for full functionality: From 1e1c45a70793f1a78c460e0f3e1be3c3c5f1cd62 Mon Sep 17 00:00:00 2001 From: David Huard Date: Fri, 27 Nov 2020 14:29:21 -0500 Subject: [PATCH 2/3] update links to github repo to pangeo in installation documentation --- doc/installation.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/doc/installation.rst b/doc/installation.rst index dd11b11..2ffccd6 100644 --- a/doc/installation.rst +++ b/doc/installation.rst @@ -6,14 +6,14 @@ Installation Try on Binder without local installation ---------------------------------------- -The `Binder project `_ provides pre-configured environment in the cloud. You just need a web browser to access it. Please follow the Binder link on `xESMF's GitHub page `_. +The `Binder project `_ provides pre-configured environment in the cloud. You just need a web browser to access it. Please follow the Binder link on `xESMF's GitHub page `_. Install on local machine with Conda ----------------------------------- -xESMF requires Python>=3.5. The major dependencies are xarray and ESMPy. The best way to install them is using Conda_. +xESMF requires Python>=3.6. The major dependencies are xarray and ESMPy. The best way to install them is using Conda_. -First, `install miniconda `_. Then, I recommend creating a new, clean environment: +First, `install miniconda `_. Then, we recommend creating a new, clean environment: .. code-block:: bash @@ -30,7 +30,7 @@ Getting xESMF is as simple as: One some platforms you might get :code:`ImportError: Regrid(filename) requires PIO and does not work if ESMF has not been built with MPI support`. (see `this comment `_). A quick workaround is to constrain ESMPy version :code:`conda install -c conda-forge xesmf esmpy=8.0.0`. -I also highly recommend those extra packages for full functionality: +We also highly recommend those extra packages for full functionality: .. code-block:: bash @@ -82,11 +82,11 @@ Install development version from GitHub repo To get the latest version that is not uploaded to PyPI_ yet:: - $ pip install --upgrade git+https://github.com/JiaweiZhuang/xESMF.git + $ pip install --upgrade git+https://github.com/pangeo-data/xESMF.git Developers can track source code change:: - $ git clone https://github.com/JiaweiZhuang/xESMF.git + $ git clone https://github.com/pangeo-data/xESMF.git $ cd xESMF $ pip install -e . From a3afd718adb54df48ef3a71648924af61cb1d9d4 Mon Sep 17 00:00:00 2001 From: David Huard Date: Fri, 27 Nov 2020 14:42:38 -0500 Subject: [PATCH 3/3] docs: Replace I by we. Update github links to pangeo-data. --- doc/index.rst | 22 ++++++---------------- doc/other_tools.rst | 9 ++++----- doc/why.rst | 2 +- 3 files changed, 11 insertions(+), 22 deletions(-) diff --git a/doc/index.rst b/doc/index.rst index 9712950..3f20d5f 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -70,32 +70,22 @@ Contents How to ask for help ------------------- -The `GitHub issue tracker `_ is the primary place for bug reports. If you hit any issues, I recommend the following steps: +The `GitHub issue tracker `_ is the primary place for bug reports. If you hit any issues, I recommend the following steps: -- First, `search for existing issues `_. Other people are likely to hit the same problem and probably have already found the solution. +- First, `search for existing issues `_. Other people are likely to hit the same problem and probably have already found the solution. You might also want to search issues in the original repository ``_. - For a new bug, please `craft a minimal bug report `_ with reproducible code. Use synthetic data or `upload `_ a small sample of input data (~1 MB) so I can quickly reproducible your error. -- For platform-dependent problems (such as kernel dying and installation error), please also show how to reproduce your system environment, otherwise I have no way to diagnose the issue. The best approach is probably finding an `official Docker image `_ that is closest to your OS (such as `Ubuntu `_ or `CentOS `_), and build your Python environment starting with such image, to see whether the error still exists. Alternatively you can select from public cloud images, such as `Amazon Machine Images `_ or `Google Cloud Images `_. If the error only happens on your institution's HPC cluster, please contact the system administrator for help. +- For platform-dependent problems (such as kernel dying and installation error), please also show how to reproduce your system environment, otherwise we have no way to diagnose the issue. The best approach is probably finding an `official Docker image `_ that is closest to your OS (such as `Ubuntu `_ or `CentOS `_), and build your Python environment starting with such image, to see whether the error still exists. Alternatively you can select from public cloud images, such as `Amazon Machine Images `_ or `Google Cloud Images `_. If the error only happens on your institution's HPC cluster, please contact the system administrator for help. -For general "how-to" questions that are not bugs, you can also post on `StackOverflow `_ (ref: `xarray questions `_) and send me the link. For small questions also feel free to @ me `on Twitter `_. - - -**The "Don'ts"**: - -- Do not describe your problem in a private email, as this would require me to reply similar emails many times. `Keep all discussions in public places `_ like GitHub or StackOverflow. -- Do not only show the error/problem without providing the steps to reproduce it. -- Do not take screenshots of your code, as they are not copy-pastable. +For general "how-to" questions that are not bugs, you can also post on `StackOverflow `_ (ref: `xarray questions `_). How to support xESMF -------------------- +Your support in any form will be appreciated. The easy ways (takes several seconds): -xESMF is so far my personal unfunded project; most development happens during my (very limited) free time at graduate school. Your support in any form will be appreciated. - -The easy ways (takes several seconds): - -- `Give a star `_ to its `GitHub repository `_. +- `Give a star `_ to its `GitHub repository `_. - Share it via social media like Twitter; introduce it to your friends/advisors/students. More advanced ways: diff --git a/doc/other_tools.rst b/doc/other_tools.rst index 6dc46c6..f25b3c6 100644 --- a/doc/other_tools.rst +++ b/doc/other_tools.rst @@ -3,7 +3,7 @@ Other geospatial regridding tools ================================= -Here is a brief overview of other regridding tools that the author is aware of +Here is a brief overview of other regridding tools that the authors are aware of (for geospatial data on the sphere, excluding traditional image resizing functions). They are all great tools and have helped the author a lot in both scientific research and xESMF development. Check them out if xESMF cannot suit your needs. @@ -31,10 +31,9 @@ the daunting compiling process on your own. However, ESMPy is a complicated Python API that controls a huge Fortran beast hidden underneath. It is not as intuitive as native Python packages, and even -a simple regridding task requires more than 10 lines of arcane code. That's why -I made xESMF. If you want to involve in xESMF development you need to know ESMPy. -Check out this nice -`tutorial `_ +a simple regridding task requires more than 10 lines of arcane code. The +purpose of xESMF is to provide a friendlier interface to the xarray community. +Check out this nice `tutorial `_ before going to the `official doc `_. diff --git a/doc/why.rst b/doc/why.rst index 1c14c8d..adc28eb 100644 --- a/doc/why.rst +++ b/doc/why.rst @@ -40,7 +40,7 @@ For usability and simplicity :ref:`Current geospatial regridding tools ` tend to have non-trivial learning curves. xESMF tries to be simple and intuitive. -Instead of inventing a new data structure, it relies on well-estabilished standards +Instead of inventing a new data structure, it relies on well-established standards (numpy and xarray), so users don't need to learn a bunch of new syntaxes or even a new software stack. xESMF can track metadata in ``xarray.DataArray`` / ``xarray.Dataset``, and