diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e304230b..1233540e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -51,4 +51,4 @@ jobs: - name: Install wheel run: | python -m pip install --upgrade pip - pip install huginn==$VERSION \ No newline at end of file + pip install packetraven==$VERSION \ No newline at end of file diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index efb2f89a..912f75ca 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -49,6 +49,6 @@ jobs: # POSTGRES_DATABASE: test_database # POSTGRES_USERNAME: test_user # POSTGRES_PASSWORD: test_password - run: coverage run --source huginn -m nose --nologcapture --verbose --ignore-files="test_connections\.py" + run: coverage run --source packetraven -m nose --nologcapture --verbose --ignore-files="test_connections\.py" - name: Generate coverage report run: coverage report -m \ No newline at end of file diff --git a/LICENSE b/LICENSE index 8855fe49..1ba70759 100644 --- a/LICENSE +++ b/LICENSE @@ -1,9 +1,9 @@ -Huginn +PacketRaven Copyright (c) 2015-2017 University of Maryland Space Systems Lab NearSpace Balloon Payload Program -Huginn is licensed under the terms of the MIT License: +PacketRaven is licensed under the terms of the MIT License: Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 1a0b6df9..a853766d 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,10 @@ -# Huginn +# PacketRaven -[![tests](https://github.com/UMDBPP/huginn/workflows/tests/badge.svg)](https://github.com/UMDBPP/huginn/actions?query=workflow%3Atests) -[![build](https://github.com/UMDBPP/huginn/workflows/build/badge.svg)](https://github.com/UMDBPP/huginn/actions?query=workflow%3Abuild) +[![tests](https://github.com/UMDBPP/packetraven/workflows/tests/badge.svg)](https://github.com/UMDBPP/packetraven/actions?query=workflow%3Atests) +[![build](https://github.com/UMDBPP/packetraven/workflows/build/badge.svg)](https://github.com/UMDBPP/packetraven/actions?query=workflow%3Abuild) ### Balloon payload telemetry over APRS -Huginn is a new version of Link-TLM written in Python +PacketRaven is a new version of Link-TLM written in Python #### Features: - APRS packet parsing over serial @@ -13,17 +13,17 @@ Huginn is a new version of Link-TLM written in Python #### Installation: ```bash -pip install huginn +pip install packetraven ``` -#### Starting GUI: +###### starting CLI: ```bash -huginn +packetraven ``` -#### Starting CLI: +###### starting GUI: ```bash -huginn_cli +packetraven_gui ``` #### In-progress Features diff --git a/huginn_cli.py b/packetraven.py similarity index 92% rename from huginn_cli.py rename to packetraven.py index 1ef90c6a..69901c91 100644 --- a/huginn_cli.py +++ b/packetraven.py @@ -9,9 +9,9 @@ import sys import time -from huginn import connections, tracks -from huginn.utilities import get_logger -from huginn.writer import write_aprs_packet_tracks +from packetraven import connections, tracks +from packetraven.utilities import get_logger +from packetraven.writer import write_aprs_packet_tracks BALLOON_CALLSIGNS = ['W3EAX-10', 'W3EAX-11', 'W3EAX-14'] INTERVAL_SECONDS = 5 @@ -27,14 +27,14 @@ def main(): if os.path.isdir(log_filename): if not os.path.exists(log_filename): os.mkdir(log_filename) - log_filename = os.path.join(log_filename, f'{datetime.now():%Y%m%dT%H%M%S}_huginn_log.txt') + log_filename = os.path.join(log_filename, f'{datetime.now():%Y%m%dT%H%M%S}_packetraven_log.txt') if output_filename is not None: output_directory = os.path.dirname(output_filename) if not os.path.exists(output_directory): os.makedirs(output_directory) - logger = get_logger('huginn', log_filename) + logger = get_logger('packetraven', log_filename) aprs_connections = [] if serial_port is not None and 'txt' in serial_port: @@ -99,7 +99,7 @@ def main(): time.sleep(INTERVAL_SECONDS) else: - print('usage: huginn serial_port [log_path] [output_file]') + print('usage: packetraven serial_port [log_path] [output_file]') if __name__ == '__main__': diff --git a/huginn/__init__.py b/packetraven/__init__.py similarity index 100% rename from huginn/__init__.py rename to packetraven/__init__.py diff --git a/huginn/connections.py b/packetraven/connections.py similarity index 97% rename from huginn/connections.py rename to packetraven/connections.py index 6cc43a12..249bc582 100644 --- a/huginn/connections.py +++ b/packetraven/connections.py @@ -14,11 +14,11 @@ from serial.tools import list_ports from shapely.geometry import Point -from huginn.database import DatabaseTable -from huginn.packets import APRSLocationPacket, LocationPacket -from huginn.utilities import CREDENTIALS_FILENAME, get_logger +from packetraven.database import DatabaseTable +from packetraven.packets import APRSLocationPacket, LocationPacket +from packetraven.utilities import CREDENTIALS_FILENAME, get_logger -LOGGER = get_logger('huginn.connection') +LOGGER = get_logger('packetraven.connection') class PacketConnection(ABC): diff --git a/huginn/database.py b/packetraven/database.py similarity index 99% rename from huginn/database.py rename to packetraven/database.py index 7ddc7a60..b68bbdf3 100644 --- a/huginn/database.py +++ b/packetraven/database.py @@ -11,9 +11,9 @@ from shapely.geometry.base import BaseGeometry from sshtunnel import SSHTunnelForwarder -from huginn.utilities import get_logger +from packetraven.utilities import get_logger -LOGGER = get_logger('huginn.connection') +LOGGER = get_logger('packetraven.connection') POSTGRES_DEFAULT_PORT = 5432 SSH_DEFAULT_PORT = 22 diff --git a/huginn/packets.py b/packetraven/packets.py similarity index 99% rename from huginn/packets.py rename to packetraven/packets.py index dd0f68d8..a0517925 100644 --- a/huginn/packets.py +++ b/packetraven/packets.py @@ -11,7 +11,7 @@ import numpy from pyproj import CRS, Geod, Transformer -from huginn.parsing import parse_raw_aprs +from packetraven.parsing import parse_raw_aprs DEFAULT_CRS = CRS.from_epsg(4326) diff --git a/huginn/parsing.py b/packetraven/parsing.py similarity index 100% rename from huginn/parsing.py rename to packetraven/parsing.py diff --git a/huginn/structures.py b/packetraven/structures.py similarity index 100% rename from huginn/structures.py rename to packetraven/structures.py diff --git a/huginn/tracks.py b/packetraven/tracks.py similarity index 97% rename from huginn/tracks.py rename to packetraven/tracks.py index 8c4e3161..dc28e77c 100644 --- a/huginn/tracks.py +++ b/packetraven/tracks.py @@ -9,8 +9,8 @@ import numpy from pyproj import CRS, Geod -from huginn.packets import APRSLocationPacket, DEFAULT_CRS, LocationPacket -from huginn.structures import DoublyLinkedList +from packetraven.packets import APRSLocationPacket, DEFAULT_CRS, LocationPacket +from packetraven.structures import DoublyLinkedList class LocationPacketTrack: diff --git a/huginn/utilities.py b/packetraven/utilities.py similarity index 100% rename from huginn/utilities.py rename to packetraven/utilities.py diff --git a/huginn/writer.py b/packetraven/writer.py similarity index 98% rename from huginn/writer.py rename to packetraven/writer.py index 55b9fbf0..15d43bd3 100644 --- a/huginn/writer.py +++ b/packetraven/writer.py @@ -3,7 +3,7 @@ from geojson import Point from shapely.geometry import LineString -from huginn.tracks import APRSTrack +from packetraven.tracks import APRSTrack KML_STANDARD = '{http://www.opengis.net/kml/2.2}' diff --git a/huginn.py b/packetraven_gui.py similarity index 93% rename from huginn.py rename to packetraven_gui.py index 2d5f142e..f0553620 100644 --- a/huginn.py +++ b/packetraven_gui.py @@ -4,22 +4,22 @@ import tkinter from tkinter import filedialog, messagebox -from huginn import connections, tracks -from huginn.connections import PacketRadio -from huginn.utilities import get_logger -from huginn.writer import write_aprs_packet_tracks +from packetraven import connections, tracks +from packetraven.connections import PacketRadio +from packetraven.utilities import get_logger +from packetraven.writer import write_aprs_packet_tracks BALLOON_CALLSIGNS = ['W3EAX-10', 'W3EAX-11', 'W3EAX-14'] INTERVAL_SECONDS = 5 DESKTOP_PATH = os.path.join(os.path.expanduser('~'), 'Desktop') -LOGGER = get_logger('huginn') +LOGGER = get_logger('packetraven') -class HuginnGUI: +class PacketRavenGUI: def __init__(self): self.main_window = tkinter.Tk() - self.main_window.title('huginn main') + self.main_window.title('packetraven main') self.connections = [] @@ -42,12 +42,12 @@ def __init__(self): self.__add_entry_box(self.frames['top'], 'port') self.__add_entry_box(self.frames['top'], title='log_file', width=45) - self.elements['log_file'].insert(0, os.path.join(DESKTOP_PATH, f'huginn_log_{datetime.now():%Y%m%dT%H%M%S}.txt')) + self.elements['log_file'].insert(0, os.path.join(DESKTOP_PATH, f'packetraven_log_{datetime.now():%Y%m%dT%H%M%S}.txt')) log_file_button = tkinter.Button(self.frames['top'], text='...', command=self.__select_log_file) log_file_button.grid(row=self.last_row, column=2) self.__add_entry_box(self.frames['top'], title='output_file', width=45) - self.elements['output_file'].insert(0, os.path.join(DESKTOP_PATH, f'huginn_output_{datetime.now():%Y%m%dT%H%M%S}.geojson')) + self.elements['output_file'].insert(0, os.path.join(DESKTOP_PATH, f'packetraven_output_{datetime.now():%Y%m%dT%H%M%S}.geojson')) output_file_button = tkinter.Button(self.frames['top'], text='...', command=self.__select_output_file) output_file_button.grid(row=self.last_row, column=2) @@ -110,7 +110,7 @@ def __add_entry_box(self, frame: tkinter.Frame, title: str, row: int = None, wid def __select_log_file(self): filename = os.path.splitext(self.elements['log_file'].get())[0] - path = filedialog.asksaveasfilename(title='Huginn log location...', initialfile=filename, + path = filedialog.asksaveasfilename(title='PacketRaven log location...', initialfile=filename, defaultextension='.txt', filetypes=[('Text', '*.txt')]) if path != '': @@ -118,7 +118,7 @@ def __select_log_file(self): def __select_output_file(self): filename = os.path.splitext(self.elements['output_file'].get())[0] - path = filedialog.asksaveasfilename(title='Huginn output location...', initialfile=filename, + path = filedialog.asksaveasfilename(title='PacketRaven output location...', initialfile=filename, defaultextension='.kml', filetypes=[('GeoJSON', '*.geojson'), ('Keyhole Markup Language', '*.kml')]) if path != '': self.replace_text(self.elements['output_file'], path) @@ -189,7 +189,7 @@ def toggle(self): self.toggle_text.set('Stop') self.active = True except Exception as error: - messagebox.showerror('Huginn Error', f'{error.__class__.__name__} - {error}') + messagebox.showerror('PacketRaven Error', f'{error.__class__.__name__} - {error}') self.active = False self.run() @@ -258,7 +258,7 @@ def replace_text(element, value): def main(): - HuginnGUI() + PacketRavenGUI() if __name__ == '__main__': diff --git a/setup.cfg b/setup.cfg index 2c3f2c9b..22404949 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,11 +1,11 @@ [metadata] -name = huginn +name = packetraven author = Zach Burnett -author_email = zachary.r.burnett@gmail.com +author_email = zrb@umd.edu description = Balloon payload telemetry over APRS long_description = file: README.md license = MIT -url = https://github.com/UMDBPP/huginn.git +url = https://github.com/UMDBPP/packetraven.git [nosetests] exe = True diff --git a/setup.py b/setup.py index 140522ed..901cf274 100644 --- a/setup.py +++ b/setup.py @@ -32,8 +32,8 @@ ], extras_require={'dev': ['coverage', 'dunamai', 'flake8', 'nose']}, entry_points={ - 'console_scripts': ['huginn_cli=huginn_cli:main'], - 'gui_scripts' : ['huginn=huginn:main'] + 'console_scripts': ['packetraven=packetraven:main'], + 'gui_scripts' : ['packetraven_gui=packetraven_gui:main'] }, test_suite='nose.collector' ) diff --git a/tests/test_connections.py b/tests/test_connections.py index 4f984f0f..479568ad 100644 --- a/tests/test_connections.py +++ b/tests/test_connections.py @@ -2,10 +2,10 @@ import os import unittest -from huginn.connections import APRSPacketDatabaseTable, APRS_fi -from huginn.database import database_has_table -from huginn.packets import APRSLocationPacket -from huginn.utilities import CREDENTIALS_FILENAME, read_configuration +from packetraven.connections import APRSPacketDatabaseTable, APRS_fi +from packetraven.database import database_has_table +from packetraven.packets import APRSLocationPacket +from packetraven.utilities import CREDENTIALS_FILENAME, read_configuration class TestConnections(unittest.TestCase): diff --git a/tests/test_packets.py b/tests/test_packets.py index cc550668..32dc4555 100644 --- a/tests/test_packets.py +++ b/tests/test_packets.py @@ -3,8 +3,8 @@ import numpy -from huginn.packets import APRSLocationPacket -from huginn.tracks import APRSTrack +from packetraven.packets import APRSLocationPacket +from packetraven.tracks import APRSTrack class TestPackets(unittest.TestCase): diff --git a/tests/test_parser.py b/tests/test_parser.py index 8a01946b..ce31a6ed 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -1,6 +1,6 @@ import unittest -from huginn.parsing import PartialPacketError, parse_raw_aprs +from packetraven.parsing import PartialPacketError, parse_raw_aprs class TestParser(unittest.TestCase): diff --git a/tests/test_structures.py b/tests/test_structures.py index 00720765..600c8c89 100644 --- a/tests/test_structures.py +++ b/tests/test_structures.py @@ -1,6 +1,6 @@ import unittest -from huginn.structures import DoublyLinkedList +from packetraven.structures import DoublyLinkedList class TestDoublyLinkedList(unittest.TestCase): diff --git a/tests/test_writer.py b/tests/test_writer.py index 8bbf7c01..af77f8f5 100644 --- a/tests/test_writer.py +++ b/tests/test_writer.py @@ -3,9 +3,9 @@ from tempfile import TemporaryDirectory import unittest -from huginn.packets import APRSLocationPacket -from huginn.tracks import APRSTrack -from huginn.writer import write_aprs_packet_tracks +from packetraven.packets import APRSLocationPacket +from packetraven.tracks import APRSTrack +from packetraven.writer import write_aprs_packet_tracks class TestWriter(unittest.TestCase):