wwvb 5.0.3__py3-none-any.whl → 6.0.0__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.
uwwvb.py CHANGED
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # SPDX-License-Identifier: GPL-3.0-only
4
4
 
5
- # ruff: noqa: C405 PYI024 PLR2004 FBT001 FBT002
5
+ # ruff: noqa: C405, PYI024, FBT001, FBT002
6
6
 
7
7
  """Implementation of a WWVB state machine & decoder for resource-constrained systems
8
8
 
wwvb/__init__.py CHANGED
@@ -384,6 +384,7 @@ class WWVBMinute(_WWVBMinute):
384
384
  minute: int,
385
385
  dst: DstStatus | int | None = None,
386
386
  ut1: int | None = None,
387
+ *,
387
388
  ls: bool | None = None,
388
389
  ly: bool | None = None,
389
390
  ) -> WWVBMinute:
@@ -659,15 +660,15 @@ class WWVBMinute(_WWVBMinute):
659
660
  else:
660
661
  self._fill_pm_timecode_regular(t)
661
662
 
662
- def next_minute(self, newut1: int | None = None, newls: bool | None = None) -> WWVBMinute:
663
+ def next_minute(self, *, newut1: int | None = None, newls: bool | None = None) -> WWVBMinute:
663
664
  """Return an object representing the next minute"""
664
665
  d = self.as_datetime() + datetime.timedelta(minutes=1)
665
- return self.from_datetime(d, newut1, newls, self)
666
+ return self.from_datetime(d, newut1=newut1, newls=newls, old_time=self)
666
667
 
667
- def previous_minute(self, newut1: int | None = None, newls: bool | None = None) -> WWVBMinute:
668
+ def previous_minute(self, *, newut1: int | None = None, newls: bool | None = None) -> WWVBMinute:
668
669
  """Return an object representing the previous minute"""
669
670
  d = self.as_datetime() - datetime.timedelta(minutes=1)
670
- return self.from_datetime(d, newut1, newls, self)
671
+ return self.from_datetime(d, newut1=newut1, newls=newls, old_time=self)
671
672
 
672
673
  @classmethod
673
674
  def _get_dut1_info(cls: type, year: int, days: int, old_time: WWVBMinute | None = None) -> tuple[int, bool]: # noqa: ARG003
@@ -696,18 +697,19 @@ class WWVBMinute(_WWVBMinute):
696
697
  days = d.pop("days")
697
698
  hour = d.pop("hour")
698
699
  minute = d.pop("minute")
699
- dst: int | None = d.pop("dst", None)
700
- ut1: int | None = d.pop("ut1", None)
700
+ dst = d.pop("dst", None)
701
+ ut1 = d.pop("ut1", None)
701
702
  ls = d.pop("ls", None)
702
703
  d.pop("ly", None)
703
704
  if d:
704
705
  raise ValueError(f"Invalid options: {d}")
705
- return cls(year, days, hour, minute, dst, ut1, None if ls is None else bool(ls))
706
+ return cls(year, days, hour, minute, dst, ut1=ut1, ls=None if ls is None else bool(ls))
706
707
 
707
708
  @classmethod
708
709
  def from_datetime(
709
710
  cls,
710
711
  d: datetime.datetime,
712
+ *,
711
713
  newut1: int | None = None,
712
714
  newls: bool | None = None,
713
715
  old_time: WWVBMinute | None = None,
@@ -760,7 +762,7 @@ class WWVBMinute(_WWVBMinute):
760
762
  dst = t._get_am_bcd(57, 58)
761
763
  if dst is None:
762
764
  return None
763
- return cls(year, days, hour, minute, dst, ut1, ls, ly)
765
+ return cls(year, days, hour, minute, dst, ut1, ls=ls, ly=ly)
764
766
 
765
767
 
766
768
  class WWVBMinuteIERS(WWVBMinute):
@@ -858,7 +860,7 @@ class WWVBTimecode:
858
860
  else:
859
861
  self.am[p] = AmplitudeModulation.ZERO
860
862
 
861
- def _put_pm_bit(self, i: int, v: PhaseModulation | int | bool) -> None:
863
+ def _put_pm_bit(self, i: int, v: PhaseModulation | int) -> None:
862
864
  """Update a bit of the Phase Modulation signal"""
863
865
  self.phase[i] = PhaseModulation(v)
864
866
 
wwvb/__version__.py CHANGED
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '5.0.3'
21
- __version_tuple__ = version_tuple = (5, 0, 3)
20
+ __version__ = version = '6.0.0'
21
+ __version_tuple__ = version_tuple = (6, 0, 0)
wwvb/iersdata.json CHANGED
@@ -1 +1 @@
1
- {"START": "1972-01-01", "OFFSETS_GZ": "H4sIAHTtFGgC/+2aa3LDMAiEL5uHLDuxnN5/pn/aTmfSSiAWhGR9J8gsywJylqVHPtqxZuH/7leeI0fKsGd5EngQ2WisJWKegrThDa6aJFnL0u4wYZkCE2UmSF0U+13vCveStC6JTfQyW3O86HLJf0SvDgy5u4FCI+WVKRuy0KMjJeXoULIvMDmEWgeRxAJtwXquPCIBqbLh/gbfv0mcxk3mHV9tYiATZP8W/zgw2wd5LpJnY+WErI8abJ3opaIW6592+YMbjSsNWQFlNVVtuhjhtQzSUh4MEpOdDrSW6qsUv+O+Dt+XkIONSrUwvWmTsmq5LO9xsZ+EgcDK+MIESDaYmxSxGlgbGOFjBXMjbV7lc6zlmQ0i48oH5P4+vK7i/AHc7tfTXDtffqFi3m6WhApPSTyDvArU5vUDhm7YaNQYGASVbbwLUBtI2PrhSiZNbvCRrtGUGu0GbjDhJ3aLCx5dQFjt0LFovmWB96e6tktqMenoULXajVS3asBibP3kYXrpmZxnsS2Yf2xRPrHbvQ2D9wjfL4C6b4PWV4otW0vWUYkeWE5M8M594oLbxP77xcl4NuBkG0dfM3xOUf/T0GF+ur+J5pljcODEUZkXg6vIdLYy7g3oZU3bPNDnc8qwGdJZMmAurUsRj6tOo95zP6fb9YPWp5OuZ5X7q2DrmsG/VCyTyaREnDRhnUxOzfzzhzuJhuMTQw5vlI1NAAA="}
1
+ {"START": "1972-01-01", "OFFSETS_GZ": "H4sIAJF3PWgC/+2aa3LDMAiEL5uHLDuxnN5/pn/aTmfSSiAWhGR9J8gsywJylqVHPtqxZuH/7leeI0fKsGd5EngQ2WisJWKegrThDa6aJFnL0u4wYZkCE2UmSF0U+13vCveStC6JTfQyW3O86HLJf0SvDgy5u4FCI+WVKRuy0KMjJeXoULIvMDmEWgeRxAJtwXquPCIBqbLh/gbfv0mcxk3mHV9tYiATZP8W/zgw2wd5LpJnY+WErI8abJ3opaIW6592+YMbjSsNWQFlNVVtuhjhtQzSUh4MEpOdDrSW6qsUv+O+Dt+XkIONSrUwvWmTsmq5LO9xsZ+EgcDK+MIESDaYmxSxGlgbGOFjBXMjbV7lc6zlmQ0i48oH5P4+vK7i/AHc7tfTXDtffqFi3m6WhApPSTyDvArU5vUDhm7YaNQYGASVbbwLUBtI2PrhSiZNbvCRrtGUGu0GbjDhJ3aLCx5dQFjt0LFovmWB96e6tktqMenoULXajVS3asBibP3kYXrpmZxnsS2Yf2xRPrHbvQ2D9wjfL4C6b4PWV4otW0vWUYkeWE5M8M594oLbxP77xcl4NuBkG0dfM3xOUf/T0GF+ur+J5pljcODEUZkXg6vIdLYy7g3oZU3bPNDnc8qwGdJZMmAurUsRj6tOo95zP6fb9YPWp5OuZ5X7q2DrmsG/VCyTyaREnDRhnUxOzfzzh3/NRuYTMxwhU6lNAAA="}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: wwvb
3
- Version: 5.0.3
3
+ Version: 6.0.0
4
4
  Summary: Generate WWVB timecodes for any desired time
5
5
  Author-email: Jeff Epler <jepler@gmail.com>
6
6
  Project-URL: Source, https://github.com/jepler/wwvbpy
@@ -1,18 +1,18 @@
1
- uwwvb.py,sha256=KIx4eYsLVu6KzF-Pzr-0htDWbNK9r0W-V6eK-CvHctQ,5806
2
- wwvb/__init__.py,sha256=hnIha8mfZfD5l-0YhDf4Hz3YSs-idvHgKh3pd5PHBhI,32868
3
- wwvb/__version__.py,sha256=Go8qgjS_vxKNujIcp3hLHHuyaklRsxOHDXpF1FhhwKo,511
1
+ uwwvb.py,sha256=Ybf8DeOZ5VjfqRGtO90_oEEW6HhGaztIVlh4L423MdQ,5801
2
+ wwvb/__init__.py,sha256=MRuk6nzitxbIcUfqVLkx-EzGTYYxm96ItfBlR4BSZuQ,32922
3
+ wwvb/__version__.py,sha256=ZEItn3OOgzPGQ44WDUROvtDbTuU_UDPqseQiaWn2NJc,511
4
4
  wwvb/decode.py,sha256=llTLKBW49nl6COheM90NsyMnTNeVApl2oeCHtl6Tf3w,2759
5
5
  wwvb/dut1table.py,sha256=HVX1338RlQzAQ-bsMPEdmCqoyIxSWoJSoRu1YGyaJO4,875
6
6
  wwvb/gen.py,sha256=_fpUypu_2nZfG5Vjnya0B8C26nk1WOhnLMTCXwskAHs,3720
7
- wwvb/iersdata.json,sha256=VwE_jHstK9FpcfW-Txqh7CMd_w0hH0G5FEUVhNZ3biQ,765
7
+ wwvb/iersdata.json,sha256=4vVfaxfifkNv570_NjNbS2JwSpPqDx1HSeESkcJom44,765
8
8
  wwvb/iersdata.json.license,sha256=1k5fhRCuOn0yXbwHtB21G0Nntnf0qMxstflMHuK3-Js,71
9
9
  wwvb/iersdata.py,sha256=nMqA1xcE-iPtmi9m5qcTIJwfsCxZwoNsxHfM-wvooMQ,1210
10
10
  wwvb/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  wwvb/tz.py,sha256=nlxKnzFPmqLLtC-cEDhWaJ3v3GCSPfqzVtUMf8EEdZ0,248
12
12
  wwvb/updateiers.py,sha256=Zemj6m0hwPLP31y8ODAS7sqLeB8SSHvv833pfUPHMUo,5661
13
13
  wwvb/wwvbtk.py,sha256=9RcSssben6CEsX7P3Rmphvmlnp8HoAb9gMFcCP35ryk,5184
14
- wwvb-5.0.3.dist-info/METADATA,sha256=Nq0GMmxrFBXRlCBnznV3BoiyWZSAm8Y8n7JKI4BAjug,10201
15
- wwvb-5.0.3.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
16
- wwvb-5.0.3.dist-info/entry_points.txt,sha256=KSevvHWLEKxOxUQ-L-OQidD4Sj2BPEfhZ2TQhOgyys4,179
17
- wwvb-5.0.3.dist-info/top_level.txt,sha256=0IYdkhEAMgurpv_F-76rlyn4GdxepGFzG99tivVdQVU,11
18
- wwvb-5.0.3.dist-info/RECORD,,
14
+ wwvb-6.0.0.dist-info/METADATA,sha256=ogZFIs2sa1yGdE7h1raS3ctgaLx4iGjHYrB4gubR2g8,10201
15
+ wwvb-6.0.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
16
+ wwvb-6.0.0.dist-info/entry_points.txt,sha256=KSevvHWLEKxOxUQ-L-OQidD4Sj2BPEfhZ2TQhOgyys4,179
17
+ wwvb-6.0.0.dist-info/top_level.txt,sha256=0IYdkhEAMgurpv_F-76rlyn4GdxepGFzG99tivVdQVU,11
18
+ wwvb-6.0.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.7.1)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5