From 57089eacea240d22eec16d03f11bcb2c03b2b8f0 Mon Sep 17 00:00:00 2001 From: Ryan May Date: Fri, 13 Apr 2018 15:45:23 -0600 Subject: [PATCH 1/4] ENH: Add information about dropping Python 2.7 Also update some listings of our dependencies. --- README.rst | 8 +++++++- docs/index.rst | 6 +++++- docs/installguide.rst | 34 ++++++++++++++++++++++++++++++++-- 3 files changed, 44 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 99a81c5b0..332df50c7 100644 --- a/README.rst +++ b/README.rst @@ -56,7 +56,11 @@ Siphon is still in an early stage of development, and as such just for fun, many things may still change as we work through design issues. -We support Python 2.7 as well as Python >= 3.4. +We support Python >= 3.4 and currently support Python 2.7. + +NOTE: We are dropping support for Python 2.7 in Fall 2019. See +`here `_ for more +information. Installation ------------ @@ -79,6 +83,8 @@ Dependencies - requests>=1.2 - numpy>=1.8 - protobuf>=3.0.0a3 +- beautifulsoup4>=4.6 +- pandas Developer Dependencies ---------------------- diff --git a/docs/index.rst b/docs/index.rst index 5d4f1a611..57af136ec 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -24,7 +24,11 @@ Siphon is still in an early stage of development, and as such just for fun, many things may still change as we work through design issues. -We support Python 2.7 as well as Python >= 3.4. +We support Python >= 3.4 and currently support Python 2.7. + +.. warning:: + We are dropping support for Python 2.7 in the Fall of 2019. For more details and rationale + behind this decision, see :ref:`python27`. ---------- Contact Us diff --git a/docs/installguide.rst b/docs/installguide.rst index 47d5a1eda..6d84f7387 100644 --- a/docs/installguide.rst +++ b/docs/installguide.rst @@ -2,15 +2,45 @@ Installation Guide ================== +.. _python27: + +------------------ +Python 2.7 Support +------------------ +In the Fall 2019, we will be dropping support for Python 2.7. This follows movement from +other packages within the `scientific Python ecosystem `_. +This includes: + +* Core Python developers will + `stop support for Python 2.7 January 1, 2020 `_ +* NumPy feature releases will be + `Python 3 only starting January 1, 2019 `_, + and support for the last release supporting Python 2 will end January 1, 2020. +* XArray will drop + `2.7 January 1, 2019 as well `_ +* Matplotlib's 3.0 release, tentatively Summer 2018, + `will be Python 3 only `_; + the current 2.2 release will be the last long term release that supports 2.7, and its support + will cease January 1, 2020. + +The last release of Siphon before this time (Spring or Summer 2019) will be the last that +support Python 2.7. This version of Siphon will **not** receive any long term support or +additional bug fix releases after the next minor release. The packages for this version *will* +remain available on Conda or PyPI. + ------------ Requirements ------------ -Siphon supports Python 2.7 as well as Python >= 3.4. Python 3.6 is the recommended version. +In general, Siphon tries to support minor versions of dependencies released within the last two +years. For Python itself, that means supporting the last two minor releases, as well as +currently supporting Python 2.7. -Siphon requires the following packages: +Siphon currently supports the following versions of required dependencies: - requests >= 1.2 - numpy >= 1.8.0 - protobuf >= 3.0.0 + - beautifulsoup4>=4.6 + - pandas Installation Instructions for NumPy can be found at: https://www.scipy.org/scipylib/download.html From 33126050f47024ea435829f8b0621ec8f7554637 Mon Sep 17 00:00:00 2001 From: Ryan May Date: Fri, 13 Apr 2018 16:00:33 -0600 Subject: [PATCH 2/4] MNT: Update support links Include stack overflow, Gitter everywhere, and Unidata's support email. --- README.rst | 3 +++ SUPPORT.md | 11 ++++++++++- docs/index.rst | 11 ++++++++--- 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 332df50c7..8bdd7ff43 100644 --- a/README.rst +++ b/README.rst @@ -75,7 +75,10 @@ Important Links - Source code repository: https://github.com/Unidata/siphon - HTML Documentation: http://unidata.github.io/siphon/ +- Unidata Python Gallery: https://unidata.github.io/python-gallery/ - Issue tracker: http://github.com/Unidata/siphon/issues +- "python-siphon" tagged questions on Stack Overflow: https://stackoverflow.com/questions/tagged/python-siphon +- Gitter chat room: https://gitter.im/Unidata/siphon Dependencies ------------ diff --git a/SUPPORT.md b/SUPPORT.md index cc04c5e78..69266a7dc 100644 --- a/SUPPORT.md +++ b/SUPPORT.md @@ -3,8 +3,17 @@ We want to help you use Siphon and solve any challenges you encounter. There are several ways to contact us: -## Help using MetPy +## Help using Siphon Need some help using Siphon to solve your problem? +* [Stack Overflow](https://stackoverflow.com/questions/tagged/python-siphon): Ask a question using the + "python-siphon" tag. This is the highly preferred option as it allows the community to benefit from + answers to the questions, forming a readily-searched knowledge base. It's also likely to + result in the quickest response, as not only are the Siphon developers watching, but + community members can also chime in if they know the answer. +* [Unidata Python Support email](mailto:support-python@unidata.ucar.edu): Send an email to + Unidata's Python support email address. +* [Gitter](https://gitter.im/Unidata/siphon): text-based chat with the developers; sign in + using GitHub or Twitter. * [Unidata Python User’s Mailing List](https://www.unidata.ucar.edu/support/#mailinglists) ## Issues diff --git a/docs/index.rst b/docs/index.rst index 57af136ec..596d5b862 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -15,7 +15,8 @@ Siphon Siphon is a collection of Python utilities for downloading data from remote data services. Much of Siphon's current functionality focuses on access to -data hosted on a `THREDDS Data Server`__. +data hosted on a `THREDDS Data Server`__. It also provides clients to a variety +of simple web services. __ https://www.unidata.ucar.edu/software/thredds/current/tds/ @@ -34,17 +35,21 @@ We support Python >= 3.4 and currently support Python 2.7. Contact Us ---------- -* For questions and discussion about Siphon, join Unidata's python-users_ - mailing list +* For questions about Siphon, please ask them using the "python-siphon" tag on StackOverflow_. + Our developers are actively monitoring for questions there. +* You can also email `Unidata's + python support email address `_ * The source code is available on GitHub_ * Bug reports and feature requests should be directed to the `GitHub issue tracker`__ * Siphon has a Gitter_ chatroom for more "live" communication * If you use Siphon in a publication, please see :ref:`Citing_Siphon`. +* For release announcements, join Unidata's python-users_ mailing list .. _python-users: https://www.unidata.ucar.edu/support/#mailinglists .. _GitHub: https://github.com/Unidata/siphon .. _Gitter: https://gitter.im/Unidata/siphon +.. _StackOverflow: https://stackoverflow.com/questions/tagged/python-siphon __ https://github.com/Unidata/siphon/issues --------------- From 68ddfaf33fd5608b95e9e84068cd9c85e5677d11 Mon Sep 17 00:00:00 2001 From: Ryan May Date: Fri, 13 Apr 2018 16:05:51 -0600 Subject: [PATCH 3/4] ENH: Add information about semantic versioning --- README.rst | 17 +++++------------ docs/index.rst | 9 +++++---- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/README.rst b/README.rst index 8bdd7ff43..48397618b 100644 --- a/README.rst +++ b/README.rst @@ -51,10 +51,11 @@ data technologies. See our `support page`__ for ways to get help with Siphon. __ https://github.com/Unidata/siphon/blob/master/SUPPORT.md -Siphon is still in an early stage of development, and as such -**no APIs are considered stable.** While we won't break things -just for fun, many things may still change as we work through -design issues. +Siphon follows `semantic versioning `_ in its version number. With our +current 0.x version, that implies that Siphon's APIs (application programming interfaces) are +still evolving (we won't break things just for fun, but many things are still changing as we +work through design issues). Also, for a version `0.x.y`, we change `x` when we +release new features, and `y` when we make a release with only bug fixes. We support Python >= 3.4 and currently support Python 2.7. @@ -62,14 +63,6 @@ NOTE: We are dropping support for Python 2.7 in Fall 2019. See `here `_ for more information. -Installation ------------- -:: - - git clone https://github.com/Unidata/siphon.git - cd siphon - python setup.py install - Important Links --------------- diff --git a/docs/index.rst b/docs/index.rst index 596d5b862..3a20dfdc7 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -20,10 +20,11 @@ of simple web services. __ https://www.unidata.ucar.edu/software/thredds/current/tds/ -Siphon is still in an early stage of development, and as such -**no APIs are considered stable.** While we won't break things -just for fun, many things may still change as we work through -design issues. +Siphon follows `semantic versioning `_ in its version number. With our +current 0.x version, that implies that Siphon's APIs (application programming interfaces) are +still evolving (we won't break things just for fun, but many things are still changing as we +work through design issues). Also, for a version `0.x.y`, we change `x` when we +release new features, and `y` when we make a release with only bug fixes. We support Python >= 3.4 and currently support Python 2.7. From 2e186a4565d63734e8a4c9d0685e7c9ec147a8e7 Mon Sep 17 00:00:00 2001 From: Ryan May Date: Tue, 17 Apr 2018 13:26:19 -0600 Subject: [PATCH 4/4] MNT: Fix travis build pip 10 needs to use the "eager" upgrade strategy to ensure that we're still testing the latest versions. Also, it now errors out if we run wheel without any install requirements, so only do the wheel and install for extra packages if we actually have some. --- .travis.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 5ecdbe3d6..809cb21ca 100644 --- a/.travis.yml +++ b/.travis.yml @@ -80,13 +80,15 @@ before_install: - mkdir $WHEELDIR; - pip download -d $WHEELDIR ".[$EXTRAS]" $EXTRA_PACKAGES -f $WHEELHOUSE $PRE $VERSIONS; - touch $WHEELDIR/download_marker && ls -lrt $WHEELDIR; - - travis_wait pip wheel -w $WHEELDIR $EXTRA_PACKAGES -f $WHEELHOUSE $PRE $VERSIONS; - - pip install $EXTRA_PACKAGES --upgrade --no-index -f file://$PWD/$WHEELDIR $VERSIONS; + - if [[ $EXTRA_PACKAGES != "" ]]; then + travis_wait pip wheel -w $WHEELDIR $EXTRA_PACKAGES -f $WHEELHOUSE $PRE $VERSIONS; + pip install $EXTRA_PACKAGES --upgrade --upgrade-strategy=eager --no-index -f file://$PWD/$WHEELDIR $VERSIONS; + fi; - travis_wait pip wheel -w $WHEELDIR ".[$EXTRAS]" $EXTRA_PACKAGES -f $WHEELHOUSE $PRE $VERSIONS; - rm -f $WHEELDIR/siphon*.whl; install: - - pip install ".[$EXTRAS]" --upgrade --no-index $PRE -f file://$PWD/$WHEELDIR $VERSIONS; + - pip install ".[$EXTRAS]" --upgrade --upgrade-strategy=eager --no-index $PRE -f file://$PWD/$WHEELDIR $VERSIONS; script: - if [[ $TASK == "docs" ]]; then