Repository: WorldWideTelescope/pywwt (language: python)

Issue:
Require the latest version of the research app in the frontend
This gets the fix for HiPS loading over HTTPS.

<!-- Thank you for your pull request! Please summarize it with the following form. -->

### Overview

This gets the fix for the issue described in https://github.com/WorldWideTelescope/wwt-webgl-engine/pull/249 .

### Checklist

- [N/A] Changed code has some test coverage (or justify why not)
- [N/A] Changes in functionality documented (or justify why not)



Discussion / hints:
## [Codecov](https://app.codecov.io/gh/WorldWideTelescope/pywwt/pull/352?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=WorldWideTelescope) Report
> Merging [#352](https://app.codecov.io/gh/WorldWideTelescope/pywwt/pull/352?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=WorldWideTelescope) (a13d7b6) into [master](https://app.codecov.io/gh/WorldWideTelescope/pywwt/commit/ef9deaec71aa149fffd68a8945d94415d221b517?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=WorldWideTelescope) (ef9deae) will **not change** coverage.
> The diff coverage is `n/a`.

> :exclamation: Current head a13d7b6 differs from pull request most recent head 4c76293. Consider uploading reports for the commit 4c76293 to get more accurate results

```diff
@@           Coverage Diff           @@
##           master     #352   +/-   ##
=======================================
  Coverage   56.39%   56.39%           
=======================================
  Files          25       25           
  Lines        2848     2848           
=======================================
  Hits         1606     1606           
  Misses       1242     1242           
```



:mega: We’re building smart automated test selection to slash your CI/CD build times. [Learn more](https://about.codecov.io/iterative-testing/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=WorldWideTelescope)


Fix patch:
diff --git a/.readthedocs_env.yml b/.readthedocs_env.yml
index 4a506191..54016b12 100644
--- a/.readthedocs_env.yml
+++ b/.readthedocs_env.yml
@@ -22,4 +22,8 @@ dependencies:
   - reproject
   - setuptools
   - sphinx
-  - sphinx-automodapi
+  # This pin is to work around a conda verification error
+  # that first appeared in the CI for https://github.com/WorldWideTelescope/pywwt/pull/375.
+  # At the time of writing this, the issue only occurs with sphinx-automodapi==0.17,
+  # which is the newest version.
+  - sphinx-automodapi=0.16
diff --git a/ci/azure-job-setup.yml b/ci/azure-job-setup.yml
index d195b23f..f7f1bedf 100644
--- a/ci/azure-job-setup.yml
+++ b/ci/azure-job-setup.yml
@@ -100,8 +100,6 @@ steps:
       set -euo pipefail
       source activate-conda.sh
       set -x
-      # workaround for the Windows CI image:
-      conda install -y brotlipy
       conda config --add channels conda-forge
       conda config --set channel_priority strict
       conda update -y --all
diff --git a/frontend/package.json b/frontend/package.json
index dac25dba..eb28f5fc 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -5,7 +5,7 @@
   },
   "dependencies": {
     "@jupyter-widgets/base": "^2  || ^3 || ^4 || ^5 || ^6",
-    "@wwtelescope/research-app": "^0.16.0",
+    "@wwtelescope/research-app": "^0.17.0",
     "underscore": "^1"
   },
   "description": "WorldWide Telescope from Python",
diff --git a/pywwt/core.py b/pywwt/core.py
index 87b2fc60..945091a4 100644
--- a/pywwt/core.py
+++ b/pywwt/core.py
@@ -1372,3 +1372,13 @@ def _serialize_to_json(self, file, title, max_width, max_height):
 
     def _save_added_data(self, dir):
         self.layers._save_all_data_for_serialization(dir)
+
+    # Miscellaneous
+
+    def refresh_tile_cache(self):
+        """
+        Clear the current cache of tiles.
+        Note that this should only be used when necessary, as any
+        previously downloaded tiles will need to be re-fetched.
+        """
+        self._send_msg(event="clear_tile_cache")


Test patch:
diff --git a/pywwt/tests/test_layers.py b/pywwt/tests/test_layers.py
index 5615cefa..dea1ff6f 100644
--- a/pywwt/tests/test_layers.py
+++ b/pywwt/tests/test_layers.py
@@ -10,6 +10,7 @@
 import pytest
 from stat import S_IWGRP, S_IWOTH, S_IWUSR, S_IMODE
 from tempfile import TemporaryDirectory
+from warnings import catch_warnings
 
 from . import assert_widget_image, wait_for_test, DATA
 from ..conftest import RUNNING_ON_CI, QT_INSTALLED  # noqa
@@ -285,7 +286,7 @@ def test_cartesian_layer(self):
 
         # Make sure adding the layer doesn't emit any warnings, which previously
         # happened due to a bug with the logic in the table layer initialization
-        with pytest.warns(None) as record:
+        with catch_warnings(record=True) as record:
             layer = self.client.layers.add_table_layer(
                 table=table, coord_type="rectangular", x_att="x", y_att="y", z_att="z"
             )
diff --git a/pywwt/tests/test_qt_widget.py b/pywwt/tests/test_qt_widget.py
index c77b4bf9..824251e4 100644
--- a/pywwt/tests/test_qt_widget.py
+++ b/pywwt/tests/test_qt_widget.py
@@ -6,7 +6,7 @@
 from ..conftest import RUNNING_ON_CI
 
 
-WAIT_TIME = 5 if RUNNING_ON_CI else 1
+WAIT_TIME = 10 if RUNNING_ON_CI else 1
 M42 = SkyCoord.from_name('M42')