pikobs 3.0.485__tar.gz → 3.0.488__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. {pikobs-3.0.485/pikobs.egg-info → pikobs-3.0.488}/PKG-INFO +1 -1
  2. pikobs-3.0.488/VERSION +1 -0
  3. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/match/match.py +4 -1
  4. {pikobs-3.0.485 → pikobs-3.0.488/pikobs.egg-info}/PKG-INFO +1 -1
  5. pikobs-3.0.485/VERSION +0 -1
  6. {pikobs-3.0.485 → pikobs-3.0.488}/MANIFEST.in +0 -0
  7. {pikobs-3.0.485 → pikobs-3.0.488}/README.md +0 -0
  8. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/__init__.py +0 -0
  9. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/cardio/__init__.py +0 -0
  10. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/cardio/cardio.py +0 -0
  11. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/cardio/cardio_plot.py +0 -0
  12. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/cardio/cardio_summary.py +0 -0
  13. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/__init__.py +0 -0
  14. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/cutoff_to_postalt.csv +0 -0
  15. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/cutoff_varnos.csv +0 -0
  16. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/dbase_to_cutoff.csv +0 -0
  17. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/delete_folder.py +0 -0
  18. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/families.py +0 -0
  19. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/familyobs.py +0 -0
  20. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/flag_groups.py +0 -0
  21. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/flags_criteria.py +0 -0
  22. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/import_regions.py +0 -0
  23. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/landmask.py +0 -0
  24. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/levels.py +0 -0
  25. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/postalt_varnos.csv +0 -0
  26. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/regions_data/emet.npz +0 -0
  27. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/regionsobs.py +0 -0
  28. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/site.cfg +0 -0
  29. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/site.py +0 -0
  30. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/special_family.py +0 -0
  31. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/station_colours.py +0 -0
  32. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/style.py +0 -0
  33. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/type_boxes.py +0 -0
  34. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/type_projection.py +0 -0
  35. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/configobs/type_varno.py +0 -0
  36. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/extension/color_mapping.json +0 -0
  37. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/figures/__init__.py +0 -0
  38. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/figures/figures.py +0 -0
  39. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/flags/__init__.py +0 -0
  40. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/flags/flags.py +0 -0
  41. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/flags/flags_plot.py +0 -0
  42. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/histogram/__init__.py +0 -0
  43. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/histogram/histogram.py +0 -0
  44. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/histogram/histogram_plot.py +0 -0
  45. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/mapobs/__init__.py +0 -0
  46. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/mapobs/mapobs.py +0 -0
  47. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/mapobs/mapobs_plot.py +0 -0
  48. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/match/__init__.py +0 -0
  49. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obschain/__init__.py +0 -0
  50. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obschain/ade_dbase.py +0 -0
  51. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obschain/obschain.py +0 -0
  52. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obschain/obschain_plot.py +0 -0
  53. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obschain/obschain_redraw.py +0 -0
  54. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obschain/obschain_scheme.py +0 -0
  55. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obscountdb/__init__.py +0 -0
  56. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obscountdb/obscountdb.py +0 -0
  57. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obscountdb/obscountdb_plot.py +0 -0
  58. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obsdb/__init__.py +0 -0
  59. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obsdb/obsdb.py +0 -0
  60. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obstimedb/__init__.py +0 -0
  61. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obstimedb/obstimedb.py +0 -0
  62. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/obstimedb/obstimedb_plot.py +0 -0
  63. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/parallel/__init__.py +0 -0
  64. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/parallel/parallel.py +0 -0
  65. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/pbs_submit/__init__.py +0 -0
  66. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/pbs_submit/pbs_submit.py +0 -0
  67. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/pikobsburp2rdb/__init__.py +0 -0
  68. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/pikobsburp2rdb/pikobsburp2rdb.py +0 -0
  69. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/profile/__init__.py +0 -0
  70. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/profile/fit_radar_obs_error.py +0 -0
  71. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/profile/profile.py +0 -0
  72. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/profile/profile_plot.py +0 -0
  73. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/profile/radar_obs_error.py +0 -0
  74. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/scatter/__init__.py +0 -0
  75. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/scatter/scatter.py +0 -0
  76. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/scatter/scatter_plot.py +0 -0
  77. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/selection/__init__.py +0 -0
  78. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/selection/selection.py +0 -0
  79. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/spatial/__init__.py +0 -0
  80. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/spatial/spatial.py +0 -0
  81. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/spatial/spatial_core.py +0 -0
  82. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/stations/__init__.py +0 -0
  83. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/stations/stations.py +0 -0
  84. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/stats/__init__.py +0 -0
  85. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/stats/stats.py +0 -0
  86. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/timeserie/__init__.py +0 -0
  87. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/timeserie/timeserie.py +0 -0
  88. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/timeserie/timeserie_plot.py +0 -0
  89. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/unittestpikobs/__init__.py +0 -0
  90. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/unittestpikobs/test_pikobs.py +0 -0
  91. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/unittestpikobs/unittest_timeserie.py +0 -0
  92. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/vdedr/__init__.py +0 -0
  93. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/vdedr/vdedr.py +0 -0
  94. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/vdedr/vdedr_plot.py +0 -0
  95. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/verifprofile/__init__.py +0 -0
  96. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/verifprofile/scorecard.py +0 -0
  97. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/verifprofile/verifprofile.py +0 -0
  98. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/verifprofile/verifprofile_plot.py +0 -0
  99. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/web/__init__.py +0 -0
  100. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/web/notes.py +0 -0
  101. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/web/refresh_viewer.py +0 -0
  102. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/web/runs.py +0 -0
  103. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/web/viewer.py +0 -0
  104. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/web/viewer_page.py +0 -0
  105. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/zone/__init__.py +0 -0
  106. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/zone/zone.py +0 -0
  107. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs/zone/zone_plot.py +0 -0
  108. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs.egg-info/SOURCES.txt +0 -0
  109. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs.egg-info/dependency_links.txt +0 -0
  110. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs.egg-info/requires.txt +0 -0
  111. {pikobs-3.0.485 → pikobs-3.0.488}/pikobs.egg-info/top_level.txt +0 -0
  112. {pikobs-3.0.485 → pikobs-3.0.488}/setup.cfg +0 -0
  113. {pikobs-3.0.485 → pikobs-3.0.488}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pikobs
3
- Version: 3.0.485
3
+ Version: 3.0.488
4
4
  Summary: Observation diagnostics for data assimilation: maps, sections, profiles and time series of the departures, and their tests
5
5
  Home-page: https://gitlab.science.gc.ca/dlo001/Pikobs
6
6
  Author: David Lobon
pikobs-3.0.488/VERSION ADDED
@@ -0,0 +1 @@
1
+ 3.0.488
@@ -207,7 +207,10 @@ def rank_select(exprs: Sequence[str], order: str = "d.obsvalue") -> str:
207
207
  def key_join(spec: MatchSpec, left: str = 'c', right: str = 'e',
208
208
  prefix: str = 'k_') -> str:
209
209
  """The ON clause pairing two side tables."""
210
- return " AND ".join(f"{left}.{k} = {right}.{k}"
210
+ # IS, not =: a surface observation has no level (vcoord NULL), and in SQL
211
+ # NULL = NULL is never true, so with = no surface observation, no ground
212
+ # GPS, ever found its twin. For values that are there, IS is =.
213
+ return " AND ".join(f"{left}.{k} IS {right}.{k}"
211
214
  for k in key_aliases(spec, prefix=prefix))
212
215
 
213
216
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pikobs
3
- Version: 3.0.485
3
+ Version: 3.0.488
4
4
  Summary: Observation diagnostics for data assimilation: maps, sections, profiles and time series of the departures, and their tests
5
5
  Home-page: https://gitlab.science.gc.ca/dlo001/Pikobs
6
6
  Author: David Lobon
pikobs-3.0.485/VERSION DELETED
@@ -1 +0,0 @@
1
- 3.0.485
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes