Minor changes to get running in Python 3.13.

This commit is contained in:
Matt
2026-01-20 22:04:28 -06:00
parent bf2d101d63
commit 7f5bf50fac
3 changed files with 38 additions and 18 deletions

View File

@@ -18,8 +18,9 @@
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
import datetime as dt
import pytz
#import pytz
from tzlocal import get_localzone
from zoneinfo import ZoneInfo
import threading
@@ -47,12 +48,18 @@ class arElement():
self._arTz = v
def arGetLocalTime(self):
ldt = self._arLtz.localize(dt.datetime.now())
naive_dt = dt.datetime.now()
#print(naive_dt)
#aware_dt = naive_dt.replace(tzinfo=ZoneInfo('America/Chicago'))
ldt = naive_dt.replace(tzinfo=self._arLtz)
#ldt = self._arLtz.localize(dt.datetime.now())
return ldt.astimezone(self._arTz)
def arGetUTCTime(self):
ldt = self._arLtz.localize(dt.datetime.now())
return ldt.astimezone(pytz.utc)
#ldt = self._arLtz.localize(dt.datetime.now())
naive_dt = dt.datetime.now()
ldt = naive_dt.replace(tzinfo=self._arLtz)
return ldt.astimezone("Etc/UTC")
def arPrint(self, message):
self._arPrintLock.acquire()

View File

@@ -183,8 +183,8 @@ class arNet(arElement, threading.Thread):
if len(v) > 7:
raise ValueError("Invalid objfreq, len <= 7" % v)
if not re.fullmatch('[\d ]\d\d\.\d\d[\d ]', v):
raise ValueError("Invalid objfreq[%], format [\d ]\d\d.\d\d[\d ]" % v)
if not re.fullmatch(r'[\d ]\d\d\.\d\d[\d ]', v):
raise ValueError(r"Invalid objfreq[%], format [\d ]\d\d.\d\d[\d ]" % v)
self._objfreq = v
@@ -198,9 +198,9 @@ class arNet(arElement, threading.Thread):
if len(v) > 4:
raise ValueError("Invalid objtone, len <= 4" % v)
if v != 'none' and not re.fullmatch('[CDTcdt]\d\d\d', v) \
if v != 'none' and not re.fullmatch(r'[CDTcdt]\d\d\d', v) \
and not re.fullmatch('[1l]750', v):
raise ValueError("Invalid objtone[%s], format none, [1l]750 or [CDTcdt]\d\d\d" % v)
raise ValueError(r"Invalid objtone[%s], format none, [1l]750 or [CDTcdt]\d\d\d" % v)
self._objtone = v
@@ -214,9 +214,9 @@ class arNet(arElement, threading.Thread):
if len(v) > 4:
raise ValueError("Invalid objrange, len <= 4")
if v != 'none' and not re.fullmatch('R\d\d[mk]', v) \
and not re.fullmatch('[+-]\d\d\d', v):
raise ValueError("Invalid objrange[%s], format none or R\d\d[mk]" % v)
if v != 'none' and not re.fullmatch(r'R\d\d[mk]', v) \
and not re.fullmatch(r'[+-]\d\d\d', v):
raise ValueError(r"Invalid objrange[%s], format none or R\d\d[mk]" % v)
self._objrange = v
@@ -233,7 +233,7 @@ class arNet(arElement, threading.Thread):
if v != 'none' and \
not re.fullmatch('WIDE[21]-[21]', v) and \
not re.fullmatch('[A-Za-z]{1,2}\d[A-Za-z]{1,3}-\d{1,2}', v):
not re.fullmatch(r'[A-Za-z]{1,2}\d[A-Za-z]{1,3}-\d{1,2}', v):
raise ValueError("Invalid path[%s], format none or WIDEN-M or call-ssid" % v)
self._path = v
@@ -249,7 +249,7 @@ class arNet(arElement, threading.Thread):
if len(v) > 8:
raise ValueError("Invalid latitude[%s], len == 8" % v)
if not re.fullmatch('[0-9]{4}\.[0-9]{2}[NS]', v):
if not re.fullmatch(r'[0-9]{4}\.[0-9]{2}[NS]', v):
raise ValueError("Invalid latitude[%s], format 0000.00[SN]" % v)
self._latitude = v
@@ -265,7 +265,7 @@ class arNet(arElement, threading.Thread):
if len(v) > 9:
raise ValueError("Invalid longitude[%s], len == 9" % v)
if not re.fullmatch('[0-9]{5}\.[0-9]{2}[EW]', v):
if not re.fullmatch(r'[0-9]{5}\.[0-9]{2}[EW]', v):
raise ValueError("Invalid longitude[%s], format 00000.00[EW]" % v)
self._longitude = v
@@ -367,7 +367,7 @@ class arNet(arElement, threading.Thread):
def packHeader(self, call, path):
valb = struct.pack('6s B', 'APZFRG'.encode('utf-8'), 0x70)
m = re.search("([A-Za-z]{1,2}\d[A-Za-z]{1,3})-(\d{1,2})", call)
m = re.search(r"([A-Za-z]{1,2}\d[A-Za-z]{1,3})-(\d{1,2})", call)
if m:
callbase = m.group(1).ljust(6)
callssid = int(m.group(2))
@@ -382,7 +382,7 @@ class arNet(arElement, threading.Thread):
valb += struct.pack('6s B', *vals)
vals = []
dp = re.search("([A-Za-z]{1,2}\d[A-Za-z]{1,3})-(\d{1,2})", path)
dp = re.search(r"([A-Za-z]{1,2}\d[A-Za-z]{1,3})-(\d{1,2})", path)
wp = re.search("(WIDE[12])-([12])", path)
if dp:
pathbase = dp.group(1).ljust(6)
@@ -488,7 +488,7 @@ class arNetSked(arElement):
# connect to TNC
self.arPrint("Binding TNC client socket...")
if re.fullmatch("\S\S:\S\S:\S\S:\S\S:\S\S:\S\S", self.tnchost):
if re.fullmatch(r"\S\S:\S\S:\S\S:\S\S:\S\S:\S\S", self.tnchost):
self.arPrint("Bluetooth host address detected")
if self.tncport == 8001:
self.arPrint("Setting default bluetooth RFCOMM channel to 1")
@@ -520,7 +520,7 @@ class arNetSked(arElement):
lineno = 2
for line in f:
lineno += 1
if re.search('^\s*#', line):
if re.search(r'^\s*#', line):
continue
# print (line)
line = line.ljust(75)

13
w1cdn_sked.cfg Normal file
View File

@@ -0,0 +1,13 @@
DAY TIME RATE LATITUDE LONGITUDE NAME FREQ TONE RA/O PATH COMMENT
--- ------- ---- -------- --------- --------- ------- ---- ---- --------- -------------|---------
#FRI 08:00PM 3/30 0000.00N 00000.00W NET-????? 146.520 none R05m none NetSked Example
#SAT 09:00AM 5/45 0000.00N 00000.00W NET-????? 147.265 T100 +060 WIDE2-1 NetSked Example
#MON 03:00PM 3/30 4755.61N 09701.68W NET-TEST 146.940 T123 +060 WIDE2-1 NetSked Example
MON 09:00PM 5/30 4755.61N 09701.68W NET-WEEK 146.940 T123 -060 WIDE1-1 Weekly FM Net
WED 07:15PM 5/30 4755.61N 09701.68W NET-WEEK2 147.33 T123 +060 WIDE1-1 Weekly FM Net
WED 07:30PM 5/30 4755.61N 09701.68W NET-WEEK3 147.33 T123 +060 WIDE1-1 Weekly Dig Net
MON 08:30AM 5/30 4755.61N 09701.68W NET-AM 146.940 T123 -060 WIDE1-1 Morning Net
TUE 08:30AM 5/30 4755.61N 09701.68W NET-AM 146.940 T123 -060 WIDE1-1 Morning Net
WED 08:30AM 5/30 4755.61N 09701.68W NET-AM 146.940 T123 -060 WIDE1-1 Morning Net
THU 08:30AM 5/30 4755.61N 09701.68W NET-AM 146.940 T123 -060 WIDE1-1 Morning Net
FRI 08:30AM 5/30 4755.61N 09701.68W NET-AM 146.940 T123 -060 WIDE1-1 Morning Net