Changelog
All notable changes to the AIMBAT project will be documented in this file.
[Unreleased]
โ๏ธ DevOps & Infrastructure
- Artifact@v4
- Use vcs versioning
๐จ Styling
- Switch to formatting with black
๐ Bug Fixes
- Fix type hint
- Fix importlib error for Python 3.7
- Fix typo on readme
- Listing snapshots when there were non causes error
- Debug flag from cli commands didn't do anything
๐ Documentation
- Correct links in badges
- Add AIMBAT workflow
- Link to contributros.md in root folder
- Update data section
- Add notebook to docs (#168)
- Add CNAME file
- Installation instructions using uv (#190)
- Add asciinema
- Switch to zensical
- Re-arange api reference
- Restructure usage section into workflow-based pages and TUI improvements
๐ฆ Miscellaneous
- Ignore black commit in git blame
- Add py312 to matrix
- Switch to uv
- Rename some commands to group them a bit better
- Update to new pysmo names
๐ Other Changes
- Create CNAME
- Switch from pipenv to poetry
- Add new aimbat cli and setup defaults framework
- Remove old stuff and add aimbat V2 files.
- Add github actions and initial tests for the cli
- Don't fail-fast (i.e. continue checks for other python versions)
- Add command to download sample data
- Use descriptors for defaults
- Cleanup aimbat defaults class
- Add checkdata command
- Rename package from pysmo.aimbat to aimbat (#129)
- Setup docs structure (#130)
- Cleanup defaults script
- Add cli for project
- Switch to using sqlmodel to save project metadata.
- Add devcontainer config
- Add .tox and nohup.out to gitignore
- Add autodoc to docs (#134)
- Update Readme
- Fix text alignment
- Add accent colour to theme and add watch directory to make live-docs
- Add logging (#189)
๐ง Refactoring
- Add id column to default table
- Split lib and cli files to speed up cli (#170)
- Move AimbatDefaults class to other models and rename some things.
- Save active event in a single row table
- Move defaults directly to model instead of the yaml nonsense
- Use more classes for tests (#192)
- Rely on pydantic for validation instead of doing it manually (#193)
- Use uuid as datbase id instead of int
- Use window_pre and window_post as defaults instead of the whole timewindow
- Better relationships between tables
- Use env vars for defaults
- Single uuid function for all classes
- Make data reading more modular
- Move aimbat source to src directory
- Use pandas Timestamp and Timedelta
- Improve docstrings, io DI pattern, and data source terminology
- (core) Re-arange core, move set_default_event and friends out of core.
- Active event -> default event
- Use default event concept only for cli commands
- Update plot seismograms.
- Remove dead code (#231)
- Quality stats integrated into read models and tui
๐ New Features
- Initial checks in checkdata lib
- Add-data to project
- List data
- Add parameters to data
- Add parameter snapshots
- Add plotseis
- Add pyqtgraph plot option (#165)
- Add icecream to print debug information
- Add event select function and cli command
- Switch to typer (#172)
- Print table data for active events by default
- Add snapshot rollback
- Add enum types for Event and Seismogram parameters
- Add initial iccs functionality (#185)
- Add plot command group
- Add time window picker
- Add iccs ccnorm selector
- Use a trigger to ensure only one event can be active
- Update cli and lib to use new iccs options
- Add ability to delete seismograms, events, and stations from project
- Use pydantic-settings
- Add dump option to main tables
- Add simple errors to cli
- Use channel and location in station table
- Use pysmo defaults for ICCS
- Add bandpass filtering (#214)
- Add mccc
- Add in-memory seismogram data cache
- Add JSON datasource
- Add TUI and supporting changes
- Implement interactive shell and major documentation update for v2
- Store ICCS/MCCC quality metrics in database
๐งช Testing
- Add test data for 3 events instead of just a single sac file
- Add integration and functional test suite (#218)
aimbat-v1.0.7
Sep 6, 2021
- Bug fixes.
aimbat-v1.0.5
Aug 18, 2019
Main contributor: smlloyd, xlougeo.
- Lots of code clean and restructure, including src, docs, and tests.
- Package installation: make fortran optional, update dependencis, update travis, setup pipenv.
- Update documentation.
- Bug fixes.
aimbat-v1.0.4
Dec 23, 2018
- Add SAC P1 Button to the main GUI
- Plot only a subset of traces for faster data QC and (de)selection. All labels are plotted. Add a button to plot more traces
aimbat-v1.0.3
Dec 7, 2018
- Some GUI setting changes
aimbat-v1.0.2
Dec 5, 2018
- Add option to plot simple delay time map by matplotlib.pyplot
aimbat-v1.0.1
Dec 4, 2018
- Fix bugs in changing trace selection status (QC), manual phase picking, and trace label.
- Change in GUI settings. Using right button dragging is enough and give up on QScrollArea.
- In cross-correlation, do not allow reverse polarity which causes cycle skipping too often.
aimbat-v1.0.0
Dec 3, 2018
Main contributor: smlloyd:
- Use new pysmo.core.sac.SacIO (pysmo-pysmo-v0.7.0) instead of pysmo.sac.sacio.SacFile
- New setup.py:
- Wrap all scripts into a callable function and add them to entry_point, e.g., aimbat-ttpick is automatically generated in your bin folder.
- Use git commit/tag to determine version automatically.
- Setup travis
- Package uploaded to pypi.org for each release since this.
Main contributor: xlougeo, ASankaran:
- SAC plotting and aimbat-ttpick are still using Matplotlib GUI.
- New GUI (aimbat-qttpick) using pyqtgraph for fast plotting. Similar user interactions as v0.3:
- Key pressed event handler in pyqtgraph is redefined
- Use mouse to change time window and press key 'w' to set <-- work on stack only
- Press key 't[0-9]' to set time picks like SAC PPK <-- work on both stack and traces
- Mouse click on waveform to change trace selection status <-- work on trace only
- Better separation between data and plot.
- Filter and sort are both in the main GUI controlled by a parameter tree.
aimbat-v0.3-alpha1
June 3, 2018
Main contributor: xlougeo
- Upgrade to python3 (May not back-compatible with python2). No change in functionalities from v0.2.
aimbat-v0.2
Main contributor: lkloh
For changes made between Dec 19, 2012 (v0.1.2) and Aug 23, 2016:
- Added a warning button if you hit ICCS-A or ICCS-B button, to make sure do did not hit it by accident.
- Hitting one of those buttons will undo all the work you did in manually picking arrival times.
- Added a button to allow you to jump to the front page. Note that hitting MCCC again will do just that.
- Added a summary of the event at the top right hand corner: Magnitude, Location, Depth
- Added a GUI to allow sorting of the seismograms according to header, time difference, file name, ...
- Added a button to return to original screen after you zoom in/out
aimbat-0.1.2
Dec 19, 2012
Main contributor: xlougeo
- Change sci format for scientific notation of sacp2: from 1e-5 to 10^{-5}
- Change font properties for station label to "monospace" for equal width
- Minor changes in program descriptions, example scripts
- Further code development on github.com after this version.
aimbat-0.1.1
Sep 27, 2012
Main contributor: xlougeo
- Change setup.py and package directory: modules --> src/pysmo/aimbat.
- AIMBAT becomes a part of pysmo (https://github.com/pysmo/aimbat).
- Python usage: import aimbat --> from pysmo import aimbat
- Minor changes in help messages for scripts using the OptionParser module.
- Adjust figsize-related function of ttpick.py to support backends other than Tk.
aimbat-0.1
Sep 19, 2012
Main contributor: xlougeo
First release on Northwestern website <https://www.earth.northwestern.edu/~xlou/aimbat.html>_