Changelogs » Obsplus

PyUp Safety actively tracks 266,461 Python packages for vulnerabilities and notifies you when to upgrade.



  * Fixed issue with validators flagging picks on stations with the same
  name but different networks (173).
  * Added `subset` parameter to `get_seed_id_series` for selecting subsets
  of full seed id.
  - obsplus.EventBank
  * Fixed issue where path_structure was overriding a user-specified value
  of `""` (178)
  - obsplus.structures.fetcher
  * fixed issue with Fetcher raising Pandas error when an inventory with
  duplicate chanenls was used (183, 184).
  - obsplus.utils
  * Refactored df_to_inventory (182).
  * Refactored compose_docstring and added function for printing dataframe
  columns and their expected dtypes (182).
  - obsplus.WaveBank
  * Fixed issue where path_structure was overriding a user-specified value
  of `""` (178)


- obsplus.structures.fetcher
  * Fixed issue with `time_before` and `time_after` params in `Fetcher`
  (see 168).


  * Refactored logic for getting bank progress bars, now can use instances
  of obsplus.interfaces.ProgressBar to avoid counting files twice
  and for further customizability (see 106).
  * Removed min_file_for_bar argument in favor of class attribute of
  _min_files_for_bar (see 106).
  * Add support for circular searches on EventBank (see 110).
  * Removed concurrent update features for WaveBank (see 117).
  * Add support for using concurrent.futures Executors to speed up indexing
  and reading files (see 108).
  * WaveBank and event Bank now represent time as an int of nanoseconds, see
  * EventBank now limits the number of obspy Event objects which are held in
  memory during indexing (see 136 and 137).
  * WaveBank.get_gaps_df now accounts for small overlapping file which
  previously caused false gaps to be reported (see 140).
  * Added paths parameter to update_index methods to speed up indexing when
  file locations are predictable (see 144).
  * Removed print statement which fired every time the index of a bank  was
  created or updated (see 144).
  * Updated put_x methods to only index newly added files when update_index
  is True. First mentioned in (122), implemented in (144).
  * Removed `concurrent_updates` and `inventory` argument from `WaveBank`.
  see (147 and 152)
  * The `updated` column in wavebank is now correct (see 146, 147).
  * Fixed issue with using `ProcessPoolExecutor` in EventBank for `put_event`
  and `update_index` (see issues 158, 159, 161).
  * Fixed bug where an EventBank with files containing multiple events would
  duplicate events in the catalog on `get_events`. (See 166).
  - obsplus.interfaces
  * Added ProgressBar for defining classes compatible with how obsplus
  uses progress bar, modeled after the ProgressBar class from the
  progressbar2 library (see 106).
  - obsplus.stations
  * Fixed issue where networks and stations could be left un-pruned when
  querying on channel (see 115).
  * Handled an edge case in df_to_inv where an integer NSLC code gets
  misinterpreted by pandas (see 130 and 132).
  - obsplus.utils
  * Deprecate get_nslc_series in favor of get_seed_id_series (120).
  * Refactored all geodetics functions into one utility class (147).
  * Moved all utility functions into one utility modules (147).
  * Removed catalog_to_directory in favor of simply using put_events of
  EventBank (147).
  * Moved all utils into a new utils module (see 147).
  - obsplus.validate
  * Added the obsplus.validate module which contains a simple framework for
  defining and running validators on python objects. Replaced the old
  event validation (see 122).
  * Added the validators created in (64) to PR (122).
  * Dataframe_to_inventory can now fetch NRL responses (125).
  * Changed event_to_dataframe (events_to_df) to report the used_phase_count
  attached to the preferred origin and fall back on counting the arrivals
  * Added notes to the docstring of event_to_dataframe listing the
  assumptions that are made when extracting information from an Event.
  - obsplus.waveforms
  * Added assert_streams_almost_equal method (see 128).
  * The function obsplus.waveforms.stream_split_bulk now has more flexible
  inputs (see 128).
  - obsplus.datasets
  * Removed large kemmerer dataset as it could cause CI to fail (see 147).
  * Added suffix "_test" to all other datasets to indicate they are just for
  testing and not for research (see 147).
  * Switched from MD5 hashing to SHA256 as the latter is more secure and the
  computational differences were negligible (see 147).
  - general
  * All obsplus objects now use pandas datetimes and/or numpy datetime64 for
  representing dates and times (see 88 and 131).
  * Got test suite to pass locally on windows10 (see 147 and 149).
  * Added some basic docstring testing to flake8 (see 147).

0.0.2 not secure

  * Speed up wavebank.get_waveforms_bulk by time-filtering index before
  determining which files to read (see 93).
  * Update time is now set before reading files to update index (95).
  * add try/except in read index to alleviate test failures with concurrent
  updates (see 101).
  - obsplus.conversions
  * Added a preserve_units flag to project and ensured forward compatibility
  with pyproj 2.x.x.
  - obsplus.DataFrameExtractor
  * Fixed a bug where objects with None attributes were being represented with
  'None' rather than '' when converted to str (see 99).
  - obsplus.datasets.crandall
  * Deleted EventDescriptions whose text was set to 'None' (see 99).
  NOTE: This change requires re-downloading the dataset to properly take
  - obsplus.datasets.dataset
  * Renamed from obsplus.datasets.dataloader (100)
  * Added a version numbering scheme to DataSet to enforce that the version of
  a downloaded dataset matches what is required by the DataSet (100).
  * Changed where the datasets are stored. By default they will be stored in
  a directory called opsdata in the users home, but this can be changed
  using an environmental variable (100).
  * Removed Dataset.Path attribute and added Dataset.download_path and
  dataset.source_path since the two are now different (100).
  * Added a dataset_data_path.txt file which will remember where data have
  been downloaded so datasets can live in multiple places (100).
  - obsplus.waveforms
  * Utils.merge_traces now does some quick checks and simply returns the
  input stream when no merging is the be performed (97).
  * Utils.stream_bulk_split now accepts unix style matching for the string
  arguments (97).
  - obsplus.stations
  * Added utility for converting a simple station dataframe into an
  inventory (98).
  - testing
  * Added stream_tester fixture which returns a testing class for common
  stream tests, like testing is streams are almost equal (97).

0.0.1 not secure

  * Speed up wavebank reads of file segments by passing start/end times
  to underlying obspy functions (see 34).
  * Speed up wavebank's get_waveforms and related methods by replacing
  obspy's merge/split with a pandas merge function (see 50).
  * Fixed issue 49 where traces with masked arrays could be returned from
  WaveBank's get_waveforms methods (see 50).
  * Added better error messages for trying to pull data from banks that do
  not exist (see 36)
  * Event bank eventid param can now accept numpy arrays (see 30).
  * Added basic file-locking mechanism for wavebank and multiprocessing
  tests (see 70).
  * Update_index methods now return the bank instance which allows chaining
  the update call with the init (see 83).
  - obsplus.waveforms
  * Added stack_seed and unstack_seed methods to obsplus data array
  accessors (see 27).
  * Added function for creating SDS archives from existing archives
  (see 35).
  * Made `Stream.get_waveforms_bulk` more efficient (see 85).
  * Added `slice_stream_bulk` method for creating lists of sliced streams
  (see 85).
  * Added utility function to create origins based on first hit station if
  an event has only picks (see 32).
  * Added utility function for removed rejected orphaned objects from
  catalog tree (see 63).
  * Added the init_empty parameter to get_preferred, fixed an issue where
  an IndexError could get raised (see 65), and moved get_preferred from
  obsplus.utils to (see 66).
  - obsplus.utils
  * Added method for correcting nullish nslc codes (see 37 and 38)
  * Added function for getting geometric parameters from two groups of
  events or stations see (see 67/72).
  - obsplus.DataSet
  * Made DataSet storage mechanism more customizable (see 84).
  * Implemented md5 hashing for downloaded files. Can be used to check if
  any files have changed hash or if files are missing (see  84).