not1mm 24.10.5.1__py3-none-any.whl → 24.10.8__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.
- not1mm/__main__.py +26 -25
- not1mm/lib/multicast.py +2 -2
- not1mm/lib/settings.py +36 -5
- not1mm/lib/version.py +1 -1
- not1mm/plugins/cq_wpx_rtty.py +3 -3
- not1mm/plugins/cq_ww_rtty.py +2 -2
- {not1mm-24.10.5.1.dist-info → not1mm-24.10.8.dist-info}/METADATA +4 -2
- {not1mm-24.10.5.1.dist-info → not1mm-24.10.8.dist-info}/RECORD +12 -12
- {not1mm-24.10.5.1.dist-info → not1mm-24.10.8.dist-info}/LICENSE +0 -0
- {not1mm-24.10.5.1.dist-info → not1mm-24.10.8.dist-info}/WHEEL +0 -0
- {not1mm-24.10.5.1.dist-info → not1mm-24.10.8.dist-info}/entry_points.txt +0 -0
- {not1mm-24.10.5.1.dist-info → not1mm-24.10.8.dist-info}/top_level.txt +0 -0
not1mm/__main__.py
CHANGED
@@ -95,7 +95,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
95
95
|
"command_buttons": False,
|
96
96
|
"cw_macros": True,
|
97
97
|
"bands_modes": True,
|
98
|
-
"bands": ["160", "80", "
|
98
|
+
"bands": ["160", "80", "40", "20", "15", "10"],
|
99
99
|
"current_database": "ham.db",
|
100
100
|
"contest": "",
|
101
101
|
"multicast_group": "239.1.1.1",
|
@@ -2609,13 +2609,16 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
2609
2609
|
self.rig_control.poll_callback.connect(self.poll_radio)
|
2610
2610
|
self.radio_thread.start()
|
2611
2611
|
|
2612
|
-
|
2613
|
-
|
2614
|
-
|
2612
|
+
self.cw = None
|
2613
|
+
if (
|
2614
|
+
self.pref.get("cwport")
|
2615
|
+
and self.pref.get("cwip")
|
2616
|
+
and self.pref.get("cwtype")
|
2617
|
+
):
|
2615
2618
|
self.cw = CW(
|
2616
2619
|
int(self.pref.get("cwtype")),
|
2617
2620
|
self.pref.get("cwip"),
|
2618
|
-
int(self.pref.get("cwport"
|
2621
|
+
int(self.pref.get("cwport")),
|
2619
2622
|
)
|
2620
2623
|
self.cw.speed = 20
|
2621
2624
|
if self.cw.servertype == 2:
|
@@ -2646,13 +2649,9 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
2646
2649
|
self.pref["bands"] = [
|
2647
2650
|
"160",
|
2648
2651
|
"80",
|
2649
|
-
"60",
|
2650
2652
|
"40",
|
2651
|
-
"30",
|
2652
2653
|
"20",
|
2653
|
-
"17",
|
2654
2654
|
"15",
|
2655
|
-
"12",
|
2656
2655
|
"10",
|
2657
2656
|
]
|
2658
2657
|
|
@@ -2711,7 +2710,8 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
2711
2710
|
self.callsign_changed()
|
2712
2711
|
self.callsign.setFocus()
|
2713
2712
|
self.callsign.activateWindow()
|
2714
|
-
|
2713
|
+
# This broke somehow.
|
2714
|
+
# window.raise_()
|
2715
2715
|
continue
|
2716
2716
|
|
2717
2717
|
if (
|
@@ -3602,6 +3602,21 @@ def run() -> None:
|
|
3602
3602
|
"""
|
3603
3603
|
Main Entry
|
3604
3604
|
"""
|
3605
|
+
splash.show()
|
3606
|
+
# app.processEvents()
|
3607
|
+
splash.showMessage(
|
3608
|
+
"Starting Up",
|
3609
|
+
alignment=Qt.AlignmentFlag.AlignBottom | Qt.AlignmentFlag.AlignCenter,
|
3610
|
+
color=QColor(255, 255, 0),
|
3611
|
+
)
|
3612
|
+
QCoreApplication.processEvents()
|
3613
|
+
|
3614
|
+
families = load_fonts_from_dir(os.fspath(fsutils.APP_DATA_PATH))
|
3615
|
+
logger.info(f"font families {families}")
|
3616
|
+
window = MainWindow(splash)
|
3617
|
+
window.callsign.setFocus()
|
3618
|
+
splash.finish(window)
|
3619
|
+
window.show()
|
3605
3620
|
logger.debug(
|
3606
3621
|
f"Resolved OS file system paths: MODULE_PATH {fsutils.MODULE_PATH}, USER_DATA_PATH {fsutils.USER_DATA_PATH}, CONFIG_PATH {fsutils.CONFIG_PATH}"
|
3607
3622
|
)
|
@@ -3625,25 +3640,11 @@ logging.basicConfig(
|
|
3625
3640
|
)
|
3626
3641
|
logging.getLogger("PyQt6.uic.uiparser").setLevel("INFO")
|
3627
3642
|
logging.getLogger("PyQt6.uic.properties").setLevel("INFO")
|
3643
|
+
|
3628
3644
|
app = QtWidgets.QApplication(sys.argv)
|
3629
3645
|
|
3630
3646
|
pixmap = QPixmap(f"{os.fspath(fsutils.APP_DATA_PATH)}/splash.png")
|
3631
3647
|
splash = QSplashScreen(pixmap)
|
3632
|
-
splash.show()
|
3633
|
-
# app.processEvents()
|
3634
|
-
splash.showMessage(
|
3635
|
-
"Starting Up",
|
3636
|
-
alignment=Qt.AlignmentFlag.AlignBottom | Qt.AlignmentFlag.AlignCenter,
|
3637
|
-
color=QColor(255, 255, 0),
|
3638
|
-
)
|
3639
|
-
QCoreApplication.processEvents()
|
3640
|
-
|
3641
|
-
families = load_fonts_from_dir(os.fspath(fsutils.APP_DATA_PATH))
|
3642
|
-
logger.info(f"font families {families}")
|
3643
|
-
window = MainWindow(splash)
|
3644
|
-
window.callsign.setFocus()
|
3645
|
-
splash.finish(window)
|
3646
|
-
window.show()
|
3647
3648
|
|
3648
3649
|
if __name__ == "__main__":
|
3649
3650
|
run()
|
not1mm/lib/multicast.py
CHANGED
@@ -31,11 +31,11 @@ class Multicast:
|
|
31
31
|
int(self.multicast_port),
|
32
32
|
QtNetwork.QAbstractSocket.BindFlag.ReuseAddressHint,
|
33
33
|
)
|
34
|
-
logger.
|
34
|
+
logger.warning(f"multicast bind {b_result}")
|
35
35
|
join_result = self.server_udp.joinMulticastGroup(
|
36
36
|
QtNetwork.QHostAddress(self.multicast_group)
|
37
37
|
)
|
38
|
-
logger.
|
38
|
+
logger.warning(f"joinMulticastGroup result {join_result}")
|
39
39
|
|
40
40
|
def has_pending_datagrams(self) -> bool:
|
41
41
|
"""Check if there is a pending datagram"""
|
not1mm/lib/settings.py
CHANGED
@@ -20,6 +20,9 @@ class Settings(QtWidgets.QDialog):
|
|
20
20
|
self.logger = logging.getLogger("settings")
|
21
21
|
uic.loadUi(app_data_path / "configuration.ui", self)
|
22
22
|
self.buttonBox.accepted.connect(self.save_changes)
|
23
|
+
self.usecwdaemon_radioButton.clicked.connect(self.set_cwdaemon_port_hint)
|
24
|
+
self.usepywinkeyer_radioButton.clicked.connect(self.set_winkeyer_port_hint)
|
25
|
+
self.usecwviacat_radioButton.clicked.connect(self.set_catforcw_port_hint)
|
23
26
|
self.preference = pref
|
24
27
|
if sd:
|
25
28
|
self.devices = sd.query_devices()
|
@@ -37,7 +40,6 @@ class Settings(QtWidgets.QDialog):
|
|
37
40
|
if index != -1:
|
38
41
|
self.sounddevice.setCurrentIndex(index)
|
39
42
|
self.useqrz_radioButton.setChecked(bool(self.preference.get("useqrz")))
|
40
|
-
# self.usehamdb_radioButton.setChecked(bool(self.preference.get("usehamdb")))
|
41
43
|
self.usehamqth_radioButton.setChecked(bool(self.preference.get("usehamqth")))
|
42
44
|
self.lookup_user_name_field.setText(
|
43
45
|
str(self.preference.get("lookupusername", ""))
|
@@ -51,7 +53,10 @@ class Settings(QtWidgets.QDialog):
|
|
51
53
|
self.useflrig_radioButton.setChecked(bool(self.preference.get("useflrig")))
|
52
54
|
|
53
55
|
self.cwip_field.setText(str(self.preference.get("cwip", "")))
|
54
|
-
self.
|
56
|
+
if self.preference.get("cwport", ""):
|
57
|
+
self.cwport_field.setText(str(self.preference.get("cwport", "")))
|
58
|
+
else:
|
59
|
+
self.cwport_field.setText("")
|
55
60
|
self.usecwdaemon_radioButton.setChecked(
|
56
61
|
bool(self.preference.get("cwtype") == 1)
|
57
62
|
)
|
@@ -61,6 +66,13 @@ class Settings(QtWidgets.QDialog):
|
|
61
66
|
self.usecwviacat_radioButton.setChecked(
|
62
67
|
bool(self.preference.get("cwtype") == 3)
|
63
68
|
)
|
69
|
+
if self.preference.get("cwtype") == 1:
|
70
|
+
self.set_cwdaemon_port_hint()
|
71
|
+
elif self.preference.get("cwtype") == 2:
|
72
|
+
self.set_winkeyer_port_hint()
|
73
|
+
elif self.preference.get("cwtype") == 3:
|
74
|
+
self.set_catforcw_port_hint()
|
75
|
+
|
64
76
|
self.connect_to_server.setChecked(bool(self.preference.get("useserver")))
|
65
77
|
self.multicast_group.setText(str(self.preference.get("multicast_group", "")))
|
66
78
|
self.multicast_port.setText(str(self.preference.get("multicast_port", "")))
|
@@ -73,13 +85,14 @@ class Settings(QtWidgets.QDialog):
|
|
73
85
|
str(self.preference.get("n1mm_station_name", ""))
|
74
86
|
)
|
75
87
|
self.n1mm_operator.setText(str(self.preference.get("n1mm_operator", "")))
|
76
|
-
# self.n1mm_ip.setText(str(self.preference.get("n1mm_ip", "")))
|
77
88
|
self.n1mm_radioport.setText(str(self.preference.get("n1mm_radioport", "")))
|
78
89
|
self.n1mm_contactport.setText(str(self.preference.get("n1mm_contactport", "")))
|
79
90
|
self.n1mm_lookupport.setText(str(self.preference.get("n1mm_lookupport", "")))
|
80
91
|
self.n1mm_scoreport.setText(str(self.preference.get("n1mm_scoreport", "")))
|
81
92
|
self.send_n1mm_radio.setChecked(bool(self.preference.get("send_n1mm_radio")))
|
82
|
-
self.send_n1mm_contact.setChecked(
|
93
|
+
self.send_n1mm_contact.setChecked(
|
94
|
+
bool(self.preference.get("send_n1mm_contact"))
|
95
|
+
)
|
83
96
|
self.send_n1mm_lookup.setChecked(bool(self.preference.get("send_n1mm_lookup")))
|
84
97
|
self.send_n1mm_score.setChecked(bool(self.preference.get("send_n1mm_score")))
|
85
98
|
|
@@ -105,11 +118,28 @@ class Settings(QtWidgets.QDialog):
|
|
105
118
|
self.activate_6m.setChecked(bool("6" in self.preference.get("bands", [])))
|
106
119
|
self.activate_4m.setChecked(bool("4" in self.preference.get("bands", [])))
|
107
120
|
self.activate_2m.setChecked(bool("2" in self.preference.get("bands", [])))
|
108
|
-
self.activate_1dot25.setChecked(
|
121
|
+
self.activate_1dot25.setChecked(
|
122
|
+
bool("1.25" in self.preference.get("bands", []))
|
123
|
+
)
|
109
124
|
self.activate_70cm.setChecked(bool("70cm" in self.preference.get("bands", [])))
|
110
125
|
self.activate_33cm.setChecked(bool("33cm" in self.preference.get("bands", [])))
|
111
126
|
self.activate_23cm.setChecked(bool("23cm" in self.preference.get("bands", [])))
|
112
127
|
|
128
|
+
def set_cwdaemon_port_hint(self):
|
129
|
+
"""Sets placeholder hint for the CW interface."""
|
130
|
+
self.cwip_field.setPlaceholderText("127.0.0.1")
|
131
|
+
self.cwport_field.setPlaceholderText("6789")
|
132
|
+
|
133
|
+
def set_winkeyer_port_hint(self):
|
134
|
+
"""Sets placeholder hint for the CW interface."""
|
135
|
+
self.cwip_field.setPlaceholderText("127.0.0.1")
|
136
|
+
self.cwport_field.setPlaceholderText("8000")
|
137
|
+
|
138
|
+
def set_catforcw_port_hint(self):
|
139
|
+
"""Sets placeholder hint for the CW interface."""
|
140
|
+
self.cwip_field.setPlaceholderText("")
|
141
|
+
self.cwport_field.setPlaceholderText("")
|
142
|
+
|
113
143
|
def save_changes(self):
|
114
144
|
"""
|
115
145
|
Write preferences to json file.
|
@@ -131,6 +161,7 @@ class Settings(QtWidgets.QDialog):
|
|
131
161
|
try:
|
132
162
|
self.preference["cwport"] = int(self.cwport_field.text())
|
133
163
|
except ValueError:
|
164
|
+
self.preference["cwport"] = None
|
134
165
|
...
|
135
166
|
self.preference["cwtype"] = 0
|
136
167
|
if self.usecwdaemon_radioButton.isChecked():
|
not1mm/lib/version.py
CHANGED
not1mm/plugins/cq_wpx_rtty.py
CHANGED
@@ -491,7 +491,7 @@ def ft8_handler(the_packet: dict):
|
|
491
491
|
ALTEREGO.contact["Call"] = the_packet.get("CALL", "")
|
492
492
|
ALTEREGO.contact["SNT"] = ALTEREGO.sent.text()
|
493
493
|
ALTEREGO.contact["RCV"] = ALTEREGO.receive.text()
|
494
|
-
ALTEREGO.contact["Exchange1"] = f
|
494
|
+
ALTEREGO.contact["Exchange1"] = f'{the_packet.get("STATE", "")}'.strip()
|
495
495
|
ALTEREGO.contact["ZN"] = the_packet.get("CQZ", "")
|
496
496
|
ALTEREGO.contact["Mode"] = the_packet.get("MODE", "ERR")
|
497
497
|
ALTEREGO.contact["Freq"] = round(float(the_packet.get("FREQ", "0.0")) * 1000, 2)
|
@@ -502,6 +502,6 @@ def ft8_handler(the_packet: dict):
|
|
502
502
|
str(int(float(the_packet.get("FREQ", "0.0")) * 1000000))
|
503
503
|
)
|
504
504
|
logger.debug(f"{ALTEREGO.contact=}")
|
505
|
-
ALTEREGO.other_1.setText(f
|
506
|
-
ALTEREGO.other_2.setText(f
|
505
|
+
ALTEREGO.other_1.setText(f'{the_packet.get("STX", "")}'.strip())
|
506
|
+
ALTEREGO.other_2.setText(f'{the_packet.get("SRX", "")}'.strip())
|
507
507
|
ALTEREGO.save_contact()
|
not1mm/plugins/cq_ww_rtty.py
CHANGED
@@ -477,7 +477,7 @@ def ft8_handler(the_packet: dict):
|
|
477
477
|
ALTEREGO.contact["Call"] = the_packet.get("CALL", "")
|
478
478
|
ALTEREGO.contact["SNT"] = ALTEREGO.sent.text()
|
479
479
|
ALTEREGO.contact["RCV"] = ALTEREGO.receive.text()
|
480
|
-
ALTEREGO.contact["Exchange1"] = f
|
480
|
+
ALTEREGO.contact["Exchange1"] = f'{the_packet.get("STATE", "")}'.strip()
|
481
481
|
ALTEREGO.contact["ZN"] = the_packet.get("CQZ", "")
|
482
482
|
ALTEREGO.contact["Mode"] = the_packet.get("MODE", "ERR")
|
483
483
|
ALTEREGO.contact["Freq"] = round(float(the_packet.get("FREQ", "0.0")) * 1000, 2)
|
@@ -489,5 +489,5 @@ def ft8_handler(the_packet: dict):
|
|
489
489
|
)
|
490
490
|
logger.debug(f"{ALTEREGO.contact=}")
|
491
491
|
ALTEREGO.other_1.setText(str(the_packet.get("CQZ", "ERR")))
|
492
|
-
ALTEREGO.other_2.setText(f
|
492
|
+
ALTEREGO.other_2.setText(f'{the_packet.get("STATE", "")}'.strip())
|
493
493
|
ALTEREGO.save_contact()
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: not1mm
|
3
|
-
Version: 24.10.
|
3
|
+
Version: 24.10.8
|
4
4
|
Summary: NOT1MM Logger
|
5
5
|
Author-email: Michael Bridak <michael.bridak@gmail.com>
|
6
6
|
Project-URL: Homepage, https://github.com/mbridak/not1mm
|
@@ -219,6 +219,8 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
|
|
219
219
|
|
220
220
|
## Recent Changes
|
221
221
|
|
222
|
+
- [24-10-8] Fix crash on Tune to spot. Change placeholder text for the CW port for those unable to read documentation.
|
223
|
+
- [24-10-6] Removed 60, 30, 17 and 12M from the default list of bands.
|
222
224
|
- [24-10-5-1] Store the bandmap spots age timer in the preferences.
|
223
225
|
- [24-10-5] Force reselction of contest after different DB opened.
|
224
226
|
- [24-10-2] Add WPX RTTY.
|
@@ -567,7 +569,7 @@ onscreen icon for CAT status. Green good, Red bad, Grey neither.
|
|
567
569
|
### CW Keyer interface
|
568
570
|
|
569
571
|
Under the `CW` TAB, There are three options. `cwdaemon`, which normally uses IP
|
570
|
-
`127.0.0.1`
|
572
|
+
`127.0.0.1`port `6789`. `pywinkeyer` which normally uses IP `127.0.0.1` port `8000` and
|
571
573
|
`CAT` which if your radio supports it, sends Morse characters via rigctld. As far
|
572
574
|
as I can tell rigctld does not support setting the radios internal keyer speed. So
|
573
575
|
the CW speed control widget will not be functional and you'd need to control the
|
@@ -1,5 +1,5 @@
|
|
1
1
|
not1mm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
2
|
-
not1mm/__main__.py,sha256=
|
2
|
+
not1mm/__main__.py,sha256=IjYrGDuq8T-Noe8gJ736-Mo7pyVepAHDGcMUigUGb-Y,131546
|
3
3
|
not1mm/bandmap.py,sha256=P91rYGmd8r5K6TRNZt7kqqW6zCBVlFA1_n9-V7as1WE,31672
|
4
4
|
not1mm/checkwindow.py,sha256=aI-nr8OF90IWV7R_XRdmitvBJ9M85evCs72HoU3Jnvc,10374
|
5
5
|
not1mm/fsutils.py,sha256=ukHKxKTeNKxKwqRaJjtzRShL4X5Xl0jRBbADyy3Ifp8,1701
|
@@ -106,15 +106,15 @@ not1mm/lib/fldigi_watcher.py,sha256=reZz3fZLDoJVVZhJD9nIssk2aczCzadDSQTVu-5mTCM,
|
|
106
106
|
not1mm/lib/ft8_watcher.py,sha256=BFmVIsnbwuRMWoe-dIBybuCgi0WFmr8Km0O9l4eiwMM,4624
|
107
107
|
not1mm/lib/ham_utility.py,sha256=WMmYLDI_fJHHsn0wkpGVit2Hv8fo6r9ybexXROia8Cg,11967
|
108
108
|
not1mm/lib/lookup.py,sha256=_Awt1HjiuSrhLTrwoF8EoFQC_bYYH1vqfAo_HSaMb00,10838
|
109
|
-
not1mm/lib/multicast.py,sha256=
|
109
|
+
not1mm/lib/multicast.py,sha256=KJcruI-bOuHfHXPjl3SGQhL6I9sKrygy-sdFSvxffUM,3255
|
110
110
|
not1mm/lib/n1mm.py,sha256=H54mpgJF0GAmKavM-nb5OAq2SJFWYkux4eMWWiSRxJc,6288
|
111
111
|
not1mm/lib/new_contest.py,sha256=IznTDMq7yXHB6zBoGUEC_WDYPCPpsSZW4wwMJi16zK0,816
|
112
112
|
not1mm/lib/playsound.py,sha256=kxkcitBFbZCXJ2wxQ1lxg4rBwfxiSpuNpJSXHOPCoXA,9241
|
113
113
|
not1mm/lib/plugin_common.py,sha256=TbFUbftjELFt4QRdsjSHbqnXSngZOlSwlCTClqosDXA,9727
|
114
114
|
not1mm/lib/select_contest.py,sha256=WsptLuwkouIHeocJL3oZ6-eUfEnhpwdc-x7eMZ_TIVM,359
|
115
|
-
not1mm/lib/settings.py,sha256=
|
115
|
+
not1mm/lib/settings.py,sha256=YYAAdvhqlQ6y4GOJSxNmE4eDlgsIt2MvLxxOAbcpscY,11184
|
116
116
|
not1mm/lib/super_check_partial.py,sha256=p5l3u2ZOCBtlWgbvskC50FpuoaIpR07tfC6zTdRWbh4,2334
|
117
|
-
not1mm/lib/version.py,sha256=
|
117
|
+
not1mm/lib/version.py,sha256=UYQ03Ct1PZCaboAlM47NoWvd3H9bDtVzUrLc-mKQ5h8,48
|
118
118
|
not1mm/lib/versiontest.py,sha256=8vDNptuBBunn-1IGkjNaquehqBYUJyjrPSF8Igmd4_Y,1286
|
119
119
|
not1mm/plugins/10_10_fall_cw.py,sha256=IttjX1yy4nDdACGsiYlPteFG8eVseX_WtoFio6bqHE8,10953
|
120
120
|
not1mm/plugins/10_10_spring_cw.py,sha256=ThCptdM3dX4ywhoy2JRcOEyHSqcJolFaT7O_PYzM1Mg,10958
|
@@ -135,10 +135,10 @@ not1mm/plugins/canada_day.py,sha256=OVpcCl1Chse_zLHf6PayTrgawWM4W-pmrTw40Al-o9s,
|
|
135
135
|
not1mm/plugins/cq_160_cw.py,sha256=5s6rIZdJEnmWe1SI06BEyz7p5vP0N2n9mI4l_mZ0icw,14139
|
136
136
|
not1mm/plugins/cq_160_ssb.py,sha256=zIwSMAjHSt6W2edrDzVbyTf860JowHoFkU9BKO8Enag,14182
|
137
137
|
not1mm/plugins/cq_wpx_cw.py,sha256=9aNzAR-KhznIwUlxUFjAi_hbiw_6RrCMwUBk9I2f6Hs,14037
|
138
|
-
not1mm/plugins/cq_wpx_rtty.py,sha256=
|
138
|
+
not1mm/plugins/cq_wpx_rtty.py,sha256=PpU_PxjQGeMjzbofYNsl-No37s7IgkPyW2bKFRkN9jU,16473
|
139
139
|
not1mm/plugins/cq_wpx_ssb.py,sha256=-hGRovqHR9rfOUnG4LPOoABTb4heH8VAX6rYdJbCqsw,12687
|
140
140
|
not1mm/plugins/cq_ww_cw.py,sha256=m4Xkqb_qFyXWEgkxqbanvtiCTvI8NNPKNXzHgFZzhnE,12340
|
141
|
-
not1mm/plugins/cq_ww_rtty.py,sha256=
|
141
|
+
not1mm/plugins/cq_ww_rtty.py,sha256=WnqSfCNX6ieLZlUg_P_vx-Z2iY0lxdwEgPuT9aax1JU,16772
|
142
142
|
not1mm/plugins/cq_ww_ssb.py,sha256=hZwG88-hPLmwIGXHX_S_ty8Nhn1kIuPjSuTRpCWoN9g,12631
|
143
143
|
not1mm/plugins/cwt.py,sha256=KvvkEfQrYSra0y8qE4yThvZNLrZcslt0IqYEomDpf-M,12774
|
144
144
|
not1mm/plugins/general_logging.py,sha256=n-2es7erqK1ptwq_wwIKIwktptKN7ra2eWjAQlpXUac,3479
|
@@ -157,9 +157,9 @@ not1mm/plugins/ref_cw.py,sha256=aWjHHkqIKutjRUtzh09y5haFfnZK9poRQDWRQMDRxxU,1632
|
|
157
157
|
not1mm/plugins/stew_perry_topband.py,sha256=CKBQbYl4ETxhXJd2dma4fg_C5pag_s7Nf61SCztZtqE,10668
|
158
158
|
not1mm/plugins/weekly_rtty.py,sha256=DQcy3SY0Zn56EdlYGf3NxrRhTnkNa5IqRQPRQdKDSPs,14255
|
159
159
|
not1mm/plugins/winter_field_day.py,sha256=4rcfRtobwjHO6BNL3WOTHzBmyyeuX79BNGBG8PfjrI8,10238
|
160
|
-
not1mm-24.10.
|
161
|
-
not1mm-24.10.
|
162
|
-
not1mm-24.10.
|
163
|
-
not1mm-24.10.
|
164
|
-
not1mm-24.10.
|
165
|
-
not1mm-24.10.
|
160
|
+
not1mm-24.10.8.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
161
|
+
not1mm-24.10.8.dist-info/METADATA,sha256=Fkd1pSMlrrpa3X5I6LYhg_L0Ul2ZI1ntz1WJAjqCDJ8,30857
|
162
|
+
not1mm-24.10.8.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
|
163
|
+
not1mm-24.10.8.dist-info/entry_points.txt,sha256=pMcZk_0dxFgLkcUkF0Q874ojpwOmF3OL6EKw9LgvocM,47
|
164
|
+
not1mm-24.10.8.dist-info/top_level.txt,sha256=0YmTxEcDzQlzXub-lXASvoLpg_mt1c2thb5cVkDf5J4,7
|
165
|
+
not1mm-24.10.8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|