python-weather 2.1.1__py3-none-any.whl → 2.1.2__py3-none-any.whl

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.
@@ -1,26 +1,5 @@
1
- """
2
- The MIT License (MIT)
3
-
4
- Copyright (c) 2021-2025 null8626
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- """
1
+ # SPDX-License-Identifier: MIT
2
+ # SPDX-FileCopyrightText: 2021-2026 null8626
24
3
 
25
4
  from .enums import HeatIndex, Kind, Locale, Phase, UltraViolet, WindDirection
26
5
  from .constants import METRIC, IMPERIAL
@@ -36,7 +15,7 @@ __credits__ = (__author__,)
36
15
  __maintainer__ = __author__
37
16
  __status__ = 'Production'
38
17
  __license__ = 'MIT'
39
- __copyright__ = 'Copyright (c) 2021-2025 null8626'
18
+ __copyright__ = 'Copyright (c) 2021-2026 null8626'
40
19
  __version__ = VERSION
41
20
  __all__ = (
42
21
  'METRIC',
python_weather/base.py CHANGED
@@ -1,26 +1,5 @@
1
- """
2
- The MIT License (MIT)
3
-
4
- Copyright (c) 2021-2025 null8626
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- """
1
+ # SPDX-License-Identifier: MIT
2
+ # SPDX-FileCopyrightText: 2021-2026 null8626
24
3
 
25
4
  from .enums import WindDirection, Kind, Locale, UltraViolet
26
5
  from .constants import _Unit
python_weather/client.py CHANGED
@@ -1,26 +1,5 @@
1
- """
2
- The MIT License (MIT)
3
-
4
- Copyright (c) 2021-2025 null8626
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- """
1
+ # SPDX-License-Identifier: MIT
2
+ # SPDX-FileCopyrightText: 2021-2026 null8626
24
3
 
25
4
  from aiohttp import ClientSession, ClientTimeout, ClientResponseError, TCPConnector
26
5
  from urllib.parse import quote_plus
@@ -1,26 +1,5 @@
1
- """
2
- The MIT License (MIT)
3
-
4
- Copyright (c) 2021-2025 null8626
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- """
1
+ # SPDX-License-Identifier: MIT
2
+ # SPDX-FileCopyrightText: 2021-2026 null8626
24
3
 
25
4
  import re
26
5
 
@@ -65,5 +44,26 @@ class _Unit:
65
44
  METRIC = _Unit('C', 'Kmph', '', 'MM', '', 1)
66
45
  IMPERIAL = _Unit('F', 'Miles', 'Inches', 'Inches', 'Miles', 2.54)
67
46
 
68
- WIND_DIRECTION_EMOJIS = '↓', '↙', '←', '↖', '↑', '↗', '→', '↘'
69
47
  LATLON_REGEX = re.compile(r'^Lat (\-?[\d\.]+) and Lon (\-?[\d\.]+)$')
48
+
49
+ KIND_EMOJIS = (
50
+ '☀️',
51
+ '⛅️',
52
+ '☁️',
53
+ '☁️',
54
+ '🌫',
55
+ '🌦',
56
+ '🌧',
57
+ '🌧',
58
+ '⛈',
59
+ '🌨',
60
+ '❄️',
61
+ '🌦',
62
+ '🌧',
63
+ '🌧',
64
+ '🌨',
65
+ '❄️',
66
+ '🌩',
67
+ '⛈',
68
+ )
69
+ WIND_DIRECTION_EMOJIS = '↑', '↖', '←', '↙', '↓', '↘', '→', '↗'
python_weather/enums.py CHANGED
@@ -1,30 +1,9 @@
1
- """
2
- The MIT License (MIT)
3
-
4
- Copyright (c) 2021-2025 null8626
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- """
1
+ # SPDX-License-Identifier: MIT
2
+ # SPDX-FileCopyrightText: 2021-2026 null8626
24
3
 
25
4
  from enum import Enum
26
5
 
27
- from .constants import WIND_DIRECTION_EMOJIS
6
+ from .constants import KIND_EMOJIS, WIND_DIRECTION_EMOJIS
28
7
 
29
8
 
30
9
  class BasicEnum(Enum):
@@ -36,6 +15,10 @@ class BasicEnum(Enum):
36
15
  def __str__(self) -> str:
37
16
  return self.name.replace('_', ' ').title()
38
17
 
18
+ @property
19
+ def _index(self) -> int:
20
+ return next(filter(lambda kind: self is kind[1], enumerate(self.__class__)))[0]
21
+
39
22
 
40
23
  class IndexedEnum(Enum):
41
24
  __slots__: tuple[str, ...] = ('index',)
@@ -167,40 +150,9 @@ class WindDirection(BasicEnum):
167
150
  return enum
168
151
 
169
152
  def __contains__(self, other: 'WindDirection | float | int') -> bool:
170
- other = float(other)
171
-
172
- if self is self.NORTH:
173
- return other > 348.75 or other <= 11.25
174
- elif self is self.NORTH_NORTHEAST:
175
- return 11.25 < other <= 33.75
176
- elif self is self.NORTHEAST:
177
- return 33.75 < other <= 56.25
178
- elif self is self.EAST_NORTHEAST:
179
- return 56.25 < other <= 78.75
180
- elif self is self.EAST:
181
- return 78.75 < other <= 101.25
182
- elif self is self.EAST_SOUTHEAST:
183
- return 101.25 < other <= 123.75
184
- elif self is self.SOUTHEAST:
185
- return 123.75 < other <= 146.25
186
- elif self is self.SOUTH_SOUTHEAST:
187
- return 146.25 < other <= 168.75
188
- elif self is self.SOUTH:
189
- return 168.75 < other <= 191.25
190
- elif self is self.SOUTH_SOUTHWEST:
191
- return 191.25 < other <= 213.75
192
- elif self is self.SOUTHWEST:
193
- return 213.75 < other <= 236.25
194
- elif self is self.WEST_SOUTHWEST:
195
- return 236.25 < other <= 258.75
196
- elif self is self.WEST:
197
- return 258.75 < other <= 281.25
198
- elif self is self.WEST_NORTHWEST:
199
- return 281.25 < other <= 303.75
200
- elif self is self.NORTHWEST:
201
- return 303.75 < other <= 326.25
202
- else:
203
- return 326.25 < other <= 348.75
153
+ members = list(self.__class__)
154
+
155
+ return self is members[int(((float(other) % 360) + 11.25) // 22.5) % len(members)]
204
156
 
205
157
  def __int__(self) -> int:
206
158
  return int(self.degrees)
@@ -212,7 +164,7 @@ class WindDirection(BasicEnum):
212
164
  def emoji(self) -> str:
213
165
  """Emoji representation."""
214
166
 
215
- return WIND_DIRECTION_EMOJIS[int(((self.degrees + 22.5) % 360) / 45.0)]
167
+ return WIND_DIRECTION_EMOJIS[int(((self.degrees + 22.5) % 360) // 45)]
216
168
 
217
169
 
218
170
  class Locale(Enum):
@@ -357,42 +309,7 @@ class Kind(BasicEnum):
357
309
  def emoji(self) -> str:
358
310
  """Emoji representation."""
359
311
 
360
- if self is self.CLOUDY:
361
- return '☁️'
362
- elif self is self.FOG:
363
- return '🌫'
364
- elif self is self.HEAVY_RAIN:
365
- return '🌧'
366
- elif self is self.HEAVY_SHOWERS:
367
- return '🌧'
368
- elif self is self.HEAVY_SNOW:
369
- return '❄️'
370
- elif self is self.HEAVY_SNOW_SHOWERS:
371
- return '❄️'
372
- elif self is self.LIGHT_RAIN:
373
- return '🌦'
374
- elif self is self.LIGHT_SHOWERS:
375
- return '🌦'
376
- elif self is self.LIGHT_SLEET:
377
- return '🌧'
378
- elif self is self.LIGHT_SLEET_SHOWERS:
379
- return '🌧'
380
- elif self is self.LIGHT_SNOW:
381
- return '🌨'
382
- elif self is self.LIGHT_SNOW_SHOWERS:
383
- return '🌨'
384
- elif self is self.PARTLY_CLOUDY:
385
- return '⛅️'
386
- elif self is self.SUNNY:
387
- return '☀️'
388
- elif self is self.THUNDERY_HEAVY_RAIN:
389
- return '🌩'
390
- elif self is self.THUNDERY_SHOWERS:
391
- return '⛈'
392
- elif self is self.THUNDERY_SNOW_SHOWERS:
393
- return '⛈'
394
- else:
395
- return '☁️'
312
+ return KIND_EMOJIS[self._index]
396
313
 
397
314
 
398
315
  class Phase(BasicEnum):
@@ -413,19 +330,4 @@ class Phase(BasicEnum):
413
330
  def emoji(self) -> str:
414
331
  """Emoji representation."""
415
332
 
416
- if self is self.NEW_MOON:
417
- return '🌑'
418
- elif self is self.WAXING_CRESCENT:
419
- return '🌒'
420
- elif self is self.FIRST_QUARTER:
421
- return '🌓'
422
- elif self is self.WAXING_GIBBOUS:
423
- return '🌔'
424
- elif self is self.FULL_MOON:
425
- return '🌕'
426
- elif self is self.WANING_GIBBOUS:
427
- return '🌖'
428
- elif self is self.LAST_QUARTER:
429
- return '🌗'
430
- else:
431
- return '🌘'
333
+ return chr(0x1F311 + self._index)
python_weather/errors.py CHANGED
@@ -1,26 +1,5 @@
1
- """
2
- The MIT License (MIT)
3
-
4
- Copyright (c) 2021-2025 null8626
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- """
1
+ # SPDX-License-Identifier: MIT
2
+ # SPDX-FileCopyrightText: 2021-2026 null8626
24
3
 
25
4
 
26
5
  class Error(Exception):
@@ -1,26 +1,5 @@
1
- """
2
- The MIT License (MIT)
3
-
4
- Copyright (c) 2021-2025 null8626
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in all
14
- copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
- SOFTWARE.
23
- """
1
+ # SPDX-License-Identifier: MIT
2
+ # SPDX-FileCopyrightText: 2021-2026 null8626
24
3
 
25
4
  from datetime import datetime, date, time
26
5
  from collections.abc import Iterator
python_weather/version.py CHANGED
@@ -1 +1,4 @@
1
- VERSION = '3.0.0'
1
+ # SPDX-License-Identifier: MIT
2
+ # SPDX-FileCopyrightText: 2021-2026 null8626
3
+
4
+ VERSION = '2.1.2'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-weather
3
- Version: 2.1.1
3
+ Version: 2.1.2
4
4
  Summary: A free and asynchronous weather API wrapper made in Python, for Python.
5
5
  Author: null8626
6
6
  License: MIT
@@ -33,7 +33,7 @@ Classifier: Programming Language :: Python :: 3.14
33
33
  Requires-Python: >=3.10
34
34
  Description-Content-Type: text/markdown
35
35
  License-File: LICENSE
36
- Requires-Dist: aiohttp>=3.13.2
36
+ Requires-Dist: aiohttp>=3.13.3
37
37
  Dynamic: license-file
38
38
 
39
39
  # [python-weather][pypi-url] [![pypi][pypi-image]][pypi-url] [![pypi downloads][pypi-downloads-image]][pypi-url] [![codacy-badge][codacy-image]][codacy-url] [![codecov-badge][codecov-image]][codecov-url] [![ko-fi][ko-fi-brief-image]][ko-fi-url]
@@ -0,0 +1,13 @@
1
+ python_weather/__init__.py,sha256=2Slw4Eyvlg9kGcXsaklJwigp6dIKEgmlsM1VH__qNaw,744
2
+ python_weather/base.py,sha256=5zoReBO7OCiPyI7KzIvJ_Z6Xc245UKjcauSB1frQ_L8,3454
3
+ python_weather/client.py,sha256=myVb2oKoPwVh3TZz-F1Vwez1_xY6z3ii7PfPIxVWtlQ,4845
4
+ python_weather/constants.py,sha256=Dv91U3EbXI6hHuhAtsns6NGNZcDWxMJm1OWu3ETIV-g,1289
5
+ python_weather/enums.py,sha256=pCHiX5OpAjqLCreoF9xUpHtGyDCEXI1bOyP5quolAeY,7349
6
+ python_weather/errors.py,sha256=o12OWgnCx7pts0XtxhSOPMonYKmSS0q78r9eeus9eNM,766
7
+ python_weather/forecast.py,sha256=ECYDRsVro0OtxrJ_1gg0OUbvTg6r2ky7EdVF6xQ01wM,8099
8
+ python_weather/version.py,sha256=J8dprZh03pwDdgwroPTSQxyCxe6YQe772K1jAXvo0Uo,95
9
+ python_weather-2.1.2.dist-info/licenses/LICENSE,sha256=SDMQ_fK2dwWVC-3qqONf6VVMnBe-GtBtlfYZIN2SBXw,1080
10
+ python_weather-2.1.2.dist-info/METADATA,sha256=op6Cb4zixM7vrWZlLdPGn6COQiMmNGFA3JpsB6Cg6aM,3967
11
+ python_weather-2.1.2.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
12
+ python_weather-2.1.2.dist-info/top_level.txt,sha256=NDqLSO3dHB1tjjiNJfEg-a9_eoOmawAZynZsy9Yu48w,15
13
+ python_weather-2.1.2.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2021-2025 null8626
3
+ Copyright (c) 2021-2026 null8626
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1,13 +0,0 @@
1
- python_weather/__init__.py,sha256=MmQ-GWOnrg1PIUCfGuEieu45SDZhhxSCqFdj0rD0Yt4,1756
2
- python_weather/base.py,sha256=l7IK3eLkV9Vhbx_--q5yxOTXiR9v5YPF7ysflYGNaIo,4466
3
- python_weather/client.py,sha256=VPKIFnp6z9PZM7MOvDWSChEqa1f-ugUEcgfSSNsi55U,5857
4
- python_weather/constants.py,sha256=GBM8o-YnW_cWeCUAUrqgRWGlhX1jaT1g_ibEezx0x8Y,2092
5
- python_weather/enums.py,sha256=pxGr3BQvPmXn5mRxWuTvdarmkaNoXnUrjw6hfQcTTRQ,10608
6
- python_weather/errors.py,sha256=JGjQ6LeMGzdSrxndQsJYc6SovSHBbrvhPEVSFvxoCSs,1778
7
- python_weather/forecast.py,sha256=lR4JeRiTF8gJSl5xiNb0Td1kpA3O52zRvPOwRD0SekA,9111
8
- python_weather/version.py,sha256=n--7vRgXQjzasMQnq-ucPzeub4H3X8UwSt0klWLlzqk,18
9
- python_weather-2.1.1.dist-info/licenses/LICENSE,sha256=bJLXQOjz80Su3DTNc67WbjYJUQJkZAF2KsSVE11fInk,1080
10
- python_weather-2.1.1.dist-info/METADATA,sha256=pcUn0en3YmaQxp5fWC_QE3ViMN-Fdy2xVzZRDlnOgyc,3967
11
- python_weather-2.1.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
12
- python_weather-2.1.1.dist-info/top_level.txt,sha256=NDqLSO3dHB1tjjiNJfEg-a9_eoOmawAZynZsy9Yu48w,15
13
- python_weather-2.1.1.dist-info/RECORD,,