Skip to content

adiftools release v0.1.7

Choose a tag to compare

@JS2IIU-MH JS2IIU-MH released this 22 Jun 12:51
· 37 commits to main since this release
b4cc49c

Functions

  • Read adif file into Pandas DataFrame.
  • Generate basic Matplotlib plots from adif data.
  • Utility tool to calculate Grid Locator from/to geographic coordinate.

Performance Improvements

  • Major performance optimization in ADIFParser.read_adi() method
    • Issue: The original implementation used inefficient DataFrame merging operations that caused O(n²) complexity, making it extremely slow for large ADIF files with many records.
    • Solution: Replaced the inefficient approach with a list accumulation method that builds the DataFrame once at the end.
    • Performance gain:
      • Time complexity improved from O(n²) to O(n)
      • Expected 10-50x speed improvement for files with 10,000+ records
      • Reduced memory usage by eliminating intermediate DataFrame duplications
    • Technical details:
      • Removed pd.merge() operations in the processing loop
      • Implemented list-based record accumulation
      • Single DataFrame construction at the end of processing
      • Pre-compiled regex pattern for faster parsing

Install

adiftools can now officially pip install from PyPI. If you have already installed a previous version, please update it with the following command All previous functions can still be used with this update.

pip install adiftools
pip install -U adiftools
  • When you got an error from subprocess, try to install wheel by pip install wheel command

Other

Thank you, JS2IIU