From f61ad01d70c12f54f7abc96de10823592913d6bc Mon Sep 17 00:00:00 2001 From: David Hoese Date: Mon, 28 Jan 2019 10:54:06 -0600 Subject: [PATCH 1/4] Deprecate old reader names so they produce an exception Version 0.13 --- satpy/readers/__init__.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/satpy/readers/__init__.py b/satpy/readers/__init__.py index 7a2dcc59b4..2688ff5cc0 100644 --- a/satpy/readers/__init__.py +++ b/satpy/readers/__init__.py @@ -461,11 +461,9 @@ def configs_for_reader(reader=None, ppp_config_dir=None): new_name = OLD_READER_NAMES[reader_name] # SatPy 0.11 only displays a warning - warnings.warn("Reader name '{}' has been deprecated, use '{}' instead.".format(reader_name, new_name), - DeprecationWarning) - # SatPy 0.12 will raise an exception - # raise ValueError("Reader name '{}' has been deprecated, use '{}' instead.".format(reader_name, new_name)) - # SatPy 0.13 or 1.0, remove exception and mapping + # SatPy 0.13 will raise an exception + raise ValueError("Reader name '{}' has been deprecated, use '{}' instead.".format(reader_name, new_name)) + # SatPy 0.15 or 1.0, remove exception and mapping new_readers.append(new_name) From 69e4f09105417c18617654845316b6ca3d22dd11 Mon Sep 17 00:00:00 2001 From: David Hoese Date: Mon, 28 Jan 2019 11:05:46 -0600 Subject: [PATCH 2/4] Remove unreachable code in old reader name check --- satpy/readers/__init__.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/satpy/readers/__init__.py b/satpy/readers/__init__.py index 2688ff5cc0..410cbdfcc5 100644 --- a/satpy/readers/__init__.py +++ b/satpy/readers/__init__.py @@ -465,8 +465,6 @@ def configs_for_reader(reader=None, ppp_config_dir=None): raise ValueError("Reader name '{}' has been deprecated, use '{}' instead.".format(reader_name, new_name)) # SatPy 0.15 or 1.0, remove exception and mapping - new_readers.append(new_name) - reader = new_readers # given a config filename or reader name config_files = [r if r.endswith('.yaml') else r + '.yaml' for r in reader] From 232878ab34343749f767c160f39c99d8bb089b0d Mon Sep 17 00:00:00 2001 From: David Hoese Date: Mon, 28 Jan 2019 11:26:54 -0600 Subject: [PATCH 3/4] Fix old reader name test to check for exceptions --- satpy/tests/test_readers.py | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/satpy/tests/test_readers.py b/satpy/tests/test_readers.py index 1ddd148a24..4bf53f73d4 100644 --- a/satpy/tests/test_readers.py +++ b/satpy/tests/test_readers.py @@ -532,15 +532,8 @@ def test_reader_load_failed(self): def test_old_reader_name_mapping(self): """Test that requesting old reader names raises a warning.""" - import warnings from satpy.readers import configs_for_reader - with warnings.catch_warnings(record=True) as w: - warnings.simplefilter('always') - configs = list(configs_for_reader('hrit_jma'))[0] - self.assertIn('ahi_hrit', configs[0]) - self.assertNotIn('hrit_jma', configs[0]) - self.assertEqual(len(w), 1) - self.assertTrue(issubclass(w[0].category, DeprecationWarning)) + self.assertRaises(ValueError, list, configs_for_reader('hrit_jma')) class TestYAMLFiles(unittest.TestCase): From 5766bd5715a36c895473fcf9c299765737d7a4cb Mon Sep 17 00:00:00 2001 From: David Hoese Date: Mon, 28 Jan 2019 11:47:59 -0600 Subject: [PATCH 4/4] Fix old hrit_msg test to work with new reader names --- satpy/readers/__init__.py | 1 - satpy/tests/test_readers.py | 8 ++------ 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/satpy/readers/__init__.py b/satpy/readers/__init__.py index 410cbdfcc5..8844c91d7b 100644 --- a/satpy/readers/__init__.py +++ b/satpy/readers/__init__.py @@ -25,7 +25,6 @@ import logging import numbers import os -import warnings import six import yaml diff --git a/satpy/tests/test_readers.py b/satpy/tests/test_readers.py index 4bf53f73d4..e4969480e1 100644 --- a/satpy/tests/test_readers.py +++ b/satpy/tests/test_readers.py @@ -287,9 +287,7 @@ def test_missing_requirements(self, *mocks): epi_miss = epi_pro_miss + ['H-000-MSG4__-MSG4________-_________-PRO______-201809050900-__'] pro_miss = epi_pro_miss + ['H-000-MSG4__-MSG4________-_________-EPI______-201809050900-__'] for filenames in [epi_miss, pro_miss, epi_pro_miss]: - with mock.patch('warnings.warn') as warn_mock: - self.assertRaises(ValueError, load_readers, reader='hrit_msg', filenames=filenames) - warn_mock.assert_called() + self.assertRaises(ValueError, load_readers, reader='seviri_l1b_hrit', filenames=filenames) # Filenames from multiple scans at_least_one_complete = [ @@ -301,9 +299,7 @@ def test_missing_requirements(self, *mocks): 'H-000-MSG4__-MSG4________-IR_108___-000006___-201809051000-__', ] try: - with mock.patch('warnings.warn') as warn_mock: - load_readers(filenames=at_least_one_complete, reader='hrit_msg') - warn_mock.assert_called() + load_readers(filenames=at_least_one_complete, reader='seviri_l1b_hrit') except ValueError: self.fail('If at least one set of filenames is complete, no ' 'exception should be raised')