wxdata 2.0.1__tar.gz → 2.0.2__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 (94) hide show
  1. {wxdata-2.0.1/src/wxdata.egg-info → wxdata-2.0.2}/PKG-INFO +1 -1
  2. {wxdata-2.0.1 → wxdata-2.0.2}/pyproject.toml +1 -1
  3. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/client/byte_range.py +1 -29
  4. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/progress_bar.py +1 -29
  5. {wxdata-2.0.1 → wxdata-2.0.2/src/wxdata.egg-info}/PKG-INFO +1 -1
  6. {wxdata-2.0.1 → wxdata-2.0.2}/LICENSE +0 -0
  7. {wxdata-2.0.1 → wxdata-2.0.2}/README.md +0 -0
  8. {wxdata-2.0.1 → wxdata-2.0.2}/setup.cfg +0 -0
  9. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/__init__.py +0 -0
  10. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/aigefs/__init__.py +0 -0
  11. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/aigefs/aigefs.py +0 -0
  12. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/aigefs/paths.py +0 -0
  13. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/aigefs/url_scanners.py +0 -0
  14. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/aigfs/__init__.py +0 -0
  15. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/aigfs/aigfs.py +0 -0
  16. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/aigfs/paths.py +0 -0
  17. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/aigfs/url_scanners.py +0 -0
  18. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/calc/__init__.py +0 -0
  19. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/calc/derived_fields.py +0 -0
  20. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/calc/kinematics.py +0 -0
  21. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/calc/thermodynamics.py +0 -0
  22. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/calc/unit_conversion.py +0 -0
  23. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/cfs/__init__.py +0 -0
  24. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/cfs/cfs.py +0 -0
  25. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/cfs/file_scanner.py +0 -0
  26. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/cfs/url_scanners.py +0 -0
  27. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/client/__init__.py +0 -0
  28. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/client/client.py +0 -0
  29. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/client/level_coords.py +0 -0
  30. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/ecmwf/__init__.py +0 -0
  31. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/ecmwf/ecmwf.py +0 -0
  32. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/ecmwf/file_funcs.py +0 -0
  33. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/ecmwf/keys.py +0 -0
  34. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/ecmwf/parsers.py +0 -0
  35. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/ecmwf/paths.py +0 -0
  36. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/ecmwf/url_scanners.py +0 -0
  37. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/fems/__init__.py +0 -0
  38. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/fems/meta_data.py +0 -0
  39. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/fems/observations.py +0 -0
  40. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gefs/__init__.py +0 -0
  41. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gefs/exception_messages.py +0 -0
  42. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gefs/file_funcs.py +0 -0
  43. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gefs/gefs.py +0 -0
  44. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gefs/paths.py +0 -0
  45. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gefs/url_scanners.py +0 -0
  46. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gfs/__init__.py +0 -0
  47. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gfs/exception_messages.py +0 -0
  48. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gfs/gfs.py +0 -0
  49. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gfs/paths.py +0 -0
  50. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/gfs/url_scanners.py +0 -0
  51. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/hgefs/__init__.py +0 -0
  52. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/hgefs/hgefs.py +0 -0
  53. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/hgefs/paths.py +0 -0
  54. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/hgefs/url_scanner.py +0 -0
  55. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/metars/__init__.py +0 -0
  56. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/metars/_clean_data.py +0 -0
  57. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/metars/metar_obs.py +0 -0
  58. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/noaa/__init__.py +0 -0
  59. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/noaa/nws.py +0 -0
  60. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/__init__.py +0 -0
  61. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/aigefs_post_processing.py +0 -0
  62. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/aigfs_post_processing.py +0 -0
  63. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/cfs_post_processing.py +0 -0
  64. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/ecmwf_post_processing.py +0 -0
  65. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/gefs_post_processing.py +0 -0
  66. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/gfs_post_processing.py +0 -0
  67. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/hgefs_post_processing.py +0 -0
  68. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/post_processors/rtma_post_processing.py +0 -0
  69. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/radar/__init__.py +0 -0
  70. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/radar/nexrad2.py +0 -0
  71. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/radar/url_scanner.py +0 -0
  72. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/rtma/__init__.py +0 -0
  73. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/rtma/file_funcs.py +0 -0
  74. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/rtma/file_scanner.py +0 -0
  75. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/rtma/keys.py +0 -0
  76. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/rtma/rtma.py +0 -0
  77. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/rtma/url_scanners.py +0 -0
  78. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/soundings/__init__.py +0 -0
  79. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/soundings/_exceptions.py +0 -0
  80. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/soundings/wyoming_soundings.py +0 -0
  81. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/__init__.py +0 -0
  82. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/coords.py +0 -0
  83. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/exceptions.py +0 -0
  84. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/file_funcs.py +0 -0
  85. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/file_scanner.py +0 -0
  86. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/nomads_gribfilter.py +0 -0
  87. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/recycle_bin.py +0 -0
  88. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/scripts.py +0 -0
  89. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/tools.py +0 -0
  90. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata/utils/xmacis2_cleanup.py +0 -0
  91. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata.egg-info/SOURCES.txt +0 -0
  92. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata.egg-info/dependency_links.txt +0 -0
  93. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata.egg-info/requires.txt +0 -0
  94. {wxdata-2.0.1 → wxdata-2.0.2}/src/wxdata.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: wxdata
3
- Version: 2.0.1
3
+ Version: 2.0.2
4
4
  Summary: A Python package of end-to-end weather data clients & raw data clients with VPN/PROXY support, data processors that decode variable keys from GRIB format into a plain-language format & various tools for assisting Python automated workflows, querying meteorological datasets and filling gaps in meteorological data.
5
5
  Author: Eric J. Drewitz
6
6
  Project-URL: Documentation, https://github.com/edrewitz/wxdata/blob/main/Documentation/Landing%20Page.md
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "wxdata"
3
- version = "2.0.1"
3
+ version = "2.0.2"
4
4
  description = "A Python package of end-to-end weather data clients & raw data clients with VPN/PROXY support, data processors that decode variable keys from GRIB format into a plain-language format & various tools for assisting Python automated workflows, querying meteorological datasets and filling gaps in meteorological data."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -6,35 +6,7 @@ This file hosts the function that fetches the byte-range for a variable.
6
6
 
7
7
  import requests
8
8
 
9
- import sys
10
-
11
- def is_jupyter_notebook() -> bool:
12
- """
13
- Checks if the code is running within a Jupyter Notebook environment.
14
-
15
- Returns:
16
- --------
17
- bool
18
- True if running in a Jupyter Notebook/Lab, False otherwise.
19
- """
20
- # 1. Quick check for the ipykernel module in active memory
21
- if 'ipykernel' not in sys.modules:
22
- return False
23
-
24
- # 2. Confirm by checking the active IPython shell type
25
- try:
26
- from IPython import get_ipython
27
- shell = get_ipython().__class__.__name__
28
- return shell == 'ZMQInteractiveShell'
29
- except (ImportError, NameError):
30
- return False # Probably standard Python interpreter
31
-
32
- NOTEBOOK = is_jupyter_notebook()
33
-
34
- if NOTEBOOK == False:
35
- from tqdm.auto import tqdm
36
- else:
37
- from tqdm.notebook import tqdm
9
+ from tqdm.auto import tqdm
38
10
 
39
11
 
40
12
  def fetch_range(url,
@@ -3,36 +3,8 @@ This file hosts a function that displays a progress bar for downloading a file.
3
3
 
4
4
  (C) Eric J. Drewitz 2025-2026
5
5
  """
6
+ from tqdm.auto import tqdm
6
7
 
7
- import sys
8
-
9
- def is_jupyter_notebook() -> bool:
10
- """
11
- Checks if the code is running within a Jupyter Notebook environment.
12
-
13
- Returns:
14
- --------
15
- bool
16
- True if running in a Jupyter Notebook/Lab, False otherwise.
17
- """
18
- # 1. Quick check for the ipykernel module in active memory
19
- if 'ipykernel' not in sys.modules:
20
- return False
21
-
22
- # 2. Confirm by checking the active IPython shell type
23
- try:
24
- from IPython import get_ipython
25
- shell = get_ipython().__class__.__name__
26
- return shell == 'ZMQInteractiveShell'
27
- except (ImportError, NameError):
28
- return False # Probably standard Python interpreter
29
-
30
- NOTEBOOK = is_jupyter_notebook()
31
-
32
- if NOTEBOOK == False:
33
- from tqdm.auto import tqdm
34
- else:
35
- from tqdm.notebook import tqdm
36
8
 
37
9
  def progress_bar(response,
38
10
  path,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: wxdata
3
- Version: 2.0.1
3
+ Version: 2.0.2
4
4
  Summary: A Python package of end-to-end weather data clients & raw data clients with VPN/PROXY support, data processors that decode variable keys from GRIB format into a plain-language format & various tools for assisting Python automated workflows, querying meteorological datasets and filling gaps in meteorological data.
5
5
  Author: Eric J. Drewitz
6
6
  Project-URL: Documentation, https://github.com/edrewitz/wxdata/blob/main/Documentation/Landing%20Page.md
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
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes