Skip to content

Instantly share code, notes, and snippets.

@megies
Created August 2, 2017 09:32
Show Gist options
  • Save megies/748dec624f73025709cf73b71e8c0671 to your computer and use it in GitHub Desktop.
Save megies/748dec624f73025709cf73b71e8c0671 to your computer and use it in GitHub Desktop.
diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index daedc7520..9eb0bb425 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -5,7 +5,21 @@ master: (doi: 10.5281/zenodo.165135)
* Read support for Reftek 130 (rt130) waveform data,
obspy.io.reftek (see #1433)
* Add Nordic format (s-file) read/write (see #1517)
+ * Read and write support for events in the SCARDEC catlogue format
+ (see #1391).
+ * Write support for AH (Ad Hoc version 1) format (see #1754)
- obspy.core:
+ * UTCDateTime is now based on nanoseconds (long) instead of a unix
+ timestamp in microseconds (float) - resulting in higher precision and
+ support for years 1-9999 (see #1325)
+ * Ensure that Trace.data is always C-contiguous in memory (see #1732)
+ * Event/ResourceIdentifier is now object aware, meaning even if two
+ objects share a resource_id the distinct objects will be returned with
+ the get_referred_object method provided both are still in scope. If one
+ of the objects gets garbage collected, however, a warning will be issued
+ and the behavior will be the same as before (see #1644).
+ * Better error message when attempting to write invalid QuakeML resource
+ ids (see #1699).
* Stream/Trace.write() can now autodetect file format from file extension
(see #1321).
* New convenience property `.matplotlib_date` for `UTCDateTime` objects to
@@ -23,32 +37,83 @@ master: (doi: 10.5281/zenodo.165135)
see #1439).
* Instrument correction for response list stages originating from inventory
objects (see #1514).
+ * Non finite floats (NaN, inf, -inf) can now no longer be set for all
+ event objects (see #1597).
+ * Instrument responses can now also be calculated for a given list of
+ frequencies (see #1598).
+ * Order of extra tags for event type classes serialized to QuakeML can now
+ be controlled by using an OrderedDict (see #1617)
+ * Bode plots can now optionally plot the phase in degrees (see #1763).
+ - obspy.clients.earthworm:
+ * Much faster trace unpacking (see #1762).
- obspy.clients.fdsn:
+ * empty SEED codes (e.g. ``network=''``) will now be properly sent to the
+ server as options and not omitted, which led to wildcard matching (for
+ details see #1578)
* The mass downloader now has `exclude_networks` and `exclude_stations`
arguments to not download certain pieces of data. (see #1305)
* The mass downloader can now download stations that are part of a given
inventory object.
* The mass downloader now also works with restricted data. (See #1350)
+ * No data (HTTP 204) responses now raise `FDSNNoDataException` rather than
+ the more general `FDSNException`.
+ * Fixing cross implementation of bulk waveform and station requests (see
+ #1685).
+ * Updating some endpoint mappings to use HTTPS. (See #1690, #1665, #1048)
+ - obspy.imaging:
+ * The functionality behind the `obspy-scan` command line script has been
+ refactored into a `Scanner` class so that it can be reused in custom
+ workflows. (see #1444)
- obspy.imaging.cm:
* new colormap: viridis_white. This is a modification of viridis that
goes to white instead of yellow but remains perceptually uniform. It
is especially useful for printing when an image should merge with the
white background.
- - obspy.imaging.waveform
+ - obspy.imaging.waveform:
* Support for filling the wiggles when plotting sections (horizontal and
vertical, see #1445).
- - obspy.io.gse2
+ - obspy.io.arclink:
+ * Read support for Arclink Inventory XML (see #1539)
+ - obspy.io.datamark:
+ * Renamed without deprectation to obspy.io.win to match its original name.
+ Datamark is a datalogger, saving the WIN format.
+ - obspy.io.gse2:
* Read support for GSE2.0 bulletin (see #1528)
- - obspy.io.quakeml
+ - obspy.io.nlloc:
+ * Also parse author information and COMMENT line (see #1484)
+ * Fix reading hypocenter files created by NonLinLoc versions of the 6.0.x
+ beta branch (see #1760 and #1783)
+ - obspy.io.quakeml:
* Read and write support for nested custom tags (see #1463)
- - obspy.io.stationxml
+ - obspy.io.seiscomp:
+ * Write support for SC3ML event (see #1638)
+ * Fix bug where files with arbitrary publicIDs and files with missing
+ depth, latitude, longitude, or elevation tags could not be read
+ (see #1817)
+ - obspy.io.stationtxt:
+ * Write support for stationtxt format (see #1466)
+ - obspy.io.stationxml:
* Read and write support for custom tags (see #1024)
* No longer add the (unused) time zone field to StationXML datetimes to
follow the example of big data centers. (see #1572)
+ * Level of detail can be specified during inventory write (see #1830)
+ using the level keyword (one of: network, station, channel, response).
+ * Skip empty and incomplete channels during reading (see #1839, #1840).
- obspy.io.segy:
+ * Fixing an issue when comparing two still packed SEG-Y trace headers
+ (see #1735).
* Iterative reading of large SEG-Y and SU files with
`obspy.io.segy.segy.iread_segy` and `obspy.io.segy.segy.iread_su`.
(see #1400).
+ * Write correct revision number (see #1737).
+ * Textual headers will now always contain the file revision number and the
+ end header mark if nothing else exists at these positions (see #1738).
+ * The SEG-Y format detection now also checks the format version number
+ (see #1781).
+ * Enable reading SEG-Y files that have day of year 0 in trace header
+ (see #1722).
+ * Write textual file headers also if given as a text string
+ (see #1811, #1813).
- obspy.io.css:
* Read support for NNSA KB Core format waveform data. (see #1332)
- obspy.io.mseed:
@@ -57,30 +122,73 @@ master: (doi: 10.5281/zenodo.165135)
get_timing_and_data_quality() function obsolete which is thus
deprecated and will be removed with the next release. The get_flags()
function is also much faster. (see #1141)
- * Update to libmseed v2.18 (see #1540).
+ * Always hook up the libmseed logging to its Python counterpart to avoid
+ some rare segfaults. (see #1658)
+ * Update to libmseed v2.19.4 (see #1703, #1780).
* Correctly read MiniSEED files with a data offset of 48 bytes (see #1540).
+ * InternalMSEEDReadingError now called InternalMSEEDError and
+ InternalMSEEDReadingWarning now called InternalMSEEDWarning as both
+ can now also be raised in non-reading contexts (see #1658).
+ * Should no-longer segfault with arbitrarily truncated files (see #1728).
+ * Will now raise an exception when attempting to directly read mini-SEED
+ files larger than 2048 MiB (#1746).
+ * `.stats.mseed` attributes are no longer per-file but per-trace where
+ applicable (see #1782).
- obspy.io.nlloc:
* Set preferred origin of event (see #1570)
- obspy.io.nordic:
* Add Nordic format (s-file) read/write (see #1517)
+ - obspy.io.win:
+ * see obspy.io.datamark.
- obspy.io.xseed:
- * Added azimuth and dip to the get_coordinates() function. (see #1315)
+ * Added azimuth and dip to the get_coordinates() function. (see #1315)
+ * Fixing some issues with the get_resp() output on Python 3 (see #1748).
- obspy.scripts:
* obspy-scan command line script now also plots and prints overlaps
alongside gaps (see #1366)
* obspy-plot now has option to disable min/max plot (see #1583)
- obspy.signal:
+ * fixed a bug in calibration.rel_calib_stack (resulting amplitude response
+ had wrong scaling if using non-default "overlap_fraction", see #1821)
* New obspy.signal.quality_control module to compute quality metrics from
MiniSEED files. (see #1141)
+ * New correlate function for calculating the cross-correlation function
+ (new implementation based on Scipy).
+ To calculate the shift of the maximum of the cross correlation use
+ xcorr_max. The old xcorr function is deprecated but currently still
+ exists (see #1585).
+ * New obspy.signal.regression module to compute linear regressions, with or
+ without weights, with or without allowing for an intercept. (see #1716,
+ #1747)
+ * add new plotting capabilities to PPSD (temporal variations per frequency
+ and spectrogram-like plot) and also make underlying processed PSDs
+ available via `PPSD.psd_values` property (see #1327)
- obspy.taup:
* Add obspy.taup.taup_geo.calc_dist_azi, a function to return the distance,
azimuth and backazimuth for a source - receiver pair. (see #1538)
+ * Fixing calculations through very small regional models. (see #1761)
-1.0.3:
+1.0.3: (doi: 10.5281/zenodo.165134)
- obspy.core:
* properly pass through kwargs specified for Trace.plot() down to the
low-level plotting routines (e.g. events were not shown properly in
dayplot of a trace, see #1566)
+ * properly pass through kwargs from Stream.detrend() to Trace.detrend()
+ (see #1607)
+ * Correctly splitting masked arrays in Trace objects for a couple of corner
+ cases (see #1650, #1653).
+ - obspy.core.event.source:
+ * Fix `farfield` if input `points` is a 2D array. (see #1499, #1553)
+ - obspy.clients.earthworm:
+ * Better end of stream detection. (see #1605)
+ * More efficient unpacking of server response. (see #1680)
+ - obspy.clients.neic:
+ * Better end of stream detection. (see #1563)
+ - obspy.clients.seedlink:
+ * Better end of stream detection. (see #1605)
+ - obspy.clients.seishub:
+ * Fix wrong kwargs `first_pick` and `last_pick` in
+ `Client.event.get_list()`. (see #1661)
- obspy.io.mseed:
* ObsPy can now also read (Mini)SEED files with noise records. (see #1495)
* ObsPy can now read records with a data-offset of zero. (see #1509, #1525)
@@ -89,20 +197,36 @@ master: (doi: 10.5281/zenodo.165135)
* ObsPy can now read MiniSEED files with no blockette 1000. (see #1544)
* ObsPy now always writes Blockette 100 if sampling rate accuracy is
otherwise lost. (see #1550)
+ * obspy.io.mseed.util.set_flags_in_fixed_header() now works with Python 3
+ and also for files with Blockette 100 (see #1648).
+ - obspy.io.quakeml:
+ * write StationMagnitude.residual even when it is zero (see #1625)
+ * read & write Event.region
- obspy.io.sac:
* `SACTrace.lpspol` and `lcalda` are `True` and `False` by default, when
created via `SACTrace.from_obspy_trace` with a `Trace` that has no SAC
inheritance. (see #1507)
+ * Reference time not written to SAC file when made from scratch
+ (see #1575)
+ * Reinforce ASCII encoding in reading non-ASCII SAC files regardless of
+ default encoding setting. (see #1768)
+ * Implementing encoding flag for reading/writing SAC files.
- obspy.io.sh:
* Fix writing of long headers for Python 3 (see #1526)
- * Fix writing of long headers for python3
* Whitespace in header fields is not ignored anymore (see #1552)
- obspy.io.stationxml:
* Datetime fields are written with microseconds to StationXML if
microseconds are present. (see #1511)
+ - obspy.io.zmap:
+ * Use first origin/magnitude when writing to zmap if no origin/magnitude is
+ set as preferred. (see #1569)
+ * Parse origin time seconds as a float to avoid losing accuracy (see #1573)
- obspy.signal:
* PPSD: fix warning message on Python 3 that gets shown when waveforms and
metadata mismatch (see #1506)
+ - obspy.taup:
+ * Allow for more than 10 phases with identical names (can happen for certain
+ custom models, see #1593).
1.0.2: (doi: 10.5281/zenodo.49636)
- obspy.core:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment