Skip to content

Commit ca5e900

Browse files
authored
Make linear default layer names unique (#1416)
* Make linear default layer names unique Currently, similar variables result in layers of same name, which overwrirte each other in registration. Fix #1415 * fix * f * f * f * test * removed python 3.9 * fixed python 3.9.12 * removed python 3.9 * removed python gsl fixing * removed gsl * fix python to 3.9 * fix gsl
1 parent 662ba6d commit ca5e900

File tree

4 files changed

+14
-4
lines changed

4 files changed

+14
-4
lines changed

.github/workflows/testing.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,10 @@ jobs:
2828
| sed -e "s/.*://" > reqs.txt \
2929
&& source /opt/conda/bin/activate mssenv \
3030
&& conda config --add channels conda-forge \
31+
&& conda config --set channel_priority strict \
3132
&& conda install --revision 0 \
32-
&& conda install mamba python \
33-
&& mamba install pyvirtualdisplay python \
33+
&& conda install mamba python=3.9.12 \
34+
&& mamba install pyvirtualdisplay python=3.9.12 \
3435
&& mamba install --file reqs.txt \
3536
&& mamba install --file requirements.d/development.txt)
3637

localbuild/meta.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ requirements:
3232
- chameleon
3333
- execnet
3434
- fastkml =0.11
35+
- gsl =2.7.0
3536
- isodate
3637
- lxml
3738
- netcdf4

mslib/mswms/mpl_lsec_styles.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,7 @@ def __init__(self, driver, variable="air_temperature", filetype="ml"):
4343
self.required_datafields = [(filetype, self.variable, None)]
4444
if filetype != "pl":
4545
self.required_datafields.insert(0, (filetype, "air_pressure", "Pa"))
46-
abbreviation = "".join([text[0] for text in self.variable.split("_")])
47-
self.name = f"LS_{str.upper(abbreviation)}"
46+
self.name = f"LS_Default_{variable}"
4847
self.title = f"{self.variable} Linear Plot"
4948

5049

mslib/mswms/wms.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -452,6 +452,9 @@ def register_hsec_layer(self, datasets, layer_class):
452452
self.hsec_layer_registry[dataset] = {}
453453
else:
454454
raise ValueError("dataset '%s' not available", dataset)
455+
if layer.name in self.hsec_layer_registry[dataset]:
456+
raise ValueError(f"new layer is already registered? dataset={dataset} layer.name={layer.name} "
457+
f"new={layer} old={self.hsec_layer_registry[dataset][layer.name]}")
455458
self.hsec_layer_registry[dataset][layer.name] = layer
456459

457460
def register_vsec_layer(self, datasets, layer_class):
@@ -477,6 +480,9 @@ def register_vsec_layer(self, datasets, layer_class):
477480
self.vsec_layer_registry[dataset] = {}
478481
else:
479482
raise ValueError("dataset '%s' not available", dataset)
483+
if layer.name in self.vsec_layer_registry[dataset]:
484+
raise ValueError(f"new layer is already registered? dataset={dataset} layer.name={layer.name} "
485+
f"new={layer} old={self.vsec_layer_registry[dataset][layer.name]}")
480486
self.vsec_layer_registry[dataset][layer.name] = layer
481487

482488
def register_lsec_layer(self, datasets, variable=None, filetype="ml", layer_class=None):
@@ -505,6 +511,9 @@ def register_lsec_layer(self, datasets, variable=None, filetype="ml", layer_clas
505511
self.lsec_layer_registry[dataset] = {}
506512
else:
507513
raise ValueError("dataset '%s' not available", dataset)
514+
if layer.name in self.lsec_layer_registry[dataset]:
515+
raise ValueError(f"new layer is already registered? dataset={dataset} layer.name={layer.name} "
516+
f"new={layer} old={self.lsec_layer_registry[dataset][layer.name]}")
508517
self.lsec_layer_registry[dataset][layer.name] = layer
509518

510519
def create_service_exception(self, code=None, text="", version="1.3.0"):

0 commit comments

Comments
 (0)