forked from obspy/obspy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG.txt
657 lines (643 loc) · 30.4 KB
/
CHANGELOG.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
master:
- General:
* Requirements have been increased to reflect latest distributions:
* Removed support for Python 2.6.
* matplotlib >= 1.1.0 is now required.
* numpy >= 1.6.1 is now required
* scipy >= 0.9.0 is now required
* Reorganized the submodule structure. We provide a deprecation path so the
old imports will continue to work for one ObsPy version.
* Consistent naming scheme across the code base. This results in some
functions having different names. Most things that worked with ObsPy 0.10
will continue to work with this version, but starting with the next
version they will fail. Pay attention to the deprecation warnings.
* Support for additional event data formats:
- CMTSOLUTION files used by many waveform solvers.
- ESRI shapefile write support, useful in GIS applications (see #1066)
- obspy.core:
* New method for generating sliding windows from Stream/Trace windows.
(see #860)
* Stream/Trace.slice() now has the optional `nearest_sample` argument from
Stream/Trace.trim().
- obspy.clients.neries:
* Removed the dedicated client. Data can still be accessed by using the FDSN
client.
- obspy.imaging:
* Experimental support for Cartopy when plotting maps. Use the `method`
argument to functions that plot maps to select between Basemap or Cartopy.
- obspy.io.mseed:
* Upgrade to libmseed 2.16
- obspy.io.shapefile:
* New module for ESRI shapefile write support (see #1066)
- obspy.signal:
* Switch to second-order sections for filters; backported from SciPy 0.16.0
(see #1028)
0.10.x:
- obspy.fdsn:
* More detailed error messages on failing requests (see #1079)
- obspy.mseed:
* Blockette 100 is now only written for Traces that need it. Previously
it was written or not for all Traces, depending on whether the last
Trace needed it or not. (see #1069)
- obspy.signal:
* Bug fixed within rotate.rotate2ZNE(). Additionally it can now also
perform the inverse rotation (see #1061).
- obspy.station:
* ObsPy no longer assumes that the StationXML namespace is the default
namespace (see #1060).
- obspy.taup:
* Calculating arrival times for surface waves now works (see #1055)
0.10.2: (doi: 10.5281/zenodo.17641)
- obspy.core:
* Fix catalog plot with events that have no origin depth or
origin time (see #1021)
- obspy.datamark:
* Fix datawide=3 and datawide=0.5 block reading (see #1016)
- obspy.earthworm:
* Fix Python3 compatibility problem
- obspy.imaging:
* Fix flipped maps due to bug in Basemap
* Fix handling of velocity reduction in section plots with degree offsets
(see #1029)
* Allow section plots over existing figures by not modifying existing lines
* Don't prematurely close waveform figure if returning its handle
- obspy.seedlink:
* Fix Python3 compatibility for seedlink.easyseedlink
* Basic seedlink client: Properly timeout requests with valid station
selection but no data available in selected time window (see #1045)
- obspy.signal:
* Fix return data types/values of polarization routines (see #1026)
- obspy.station:
* Fix URL to FDSN StationXML schema in StationXML output (see #1023)
0.10.1: (doi: 10.5281/zenodo.16248)
- minor changes for correct distribution of official release
tar/zipball (see #993, #994)
- one minor encoding-related bugfix in mopad script (see #992)
0.10.0: (doi: 10.5281/zenodo.16200)
- Highlights:
* Python3 support
* anaconda support
* New formats: AH, CNV, Kinemetrics EVT, NDK, NLLOC, PDAS, ZMAP
* ObsPy licensed under LGPL v3.0 now as a whole.
- General:
* Support for Python 3.3 and 3.4 in addition to 2.6 and 2.7
* ObsPy licensed under LGPL v3.0 now as a whole.
* More generic processing history for most Stream and Trace methods.
* Now requires NumPy >= 1.4.0
* Now requires SciPy >= 0.7.2
* Tested compatibility with most major Linux distributions still
receiving updates.
* The next major obspy release (0.11) will drop support for:
* Python < 2.7
* matplotlib < 1.1
* numpy < 1.6
* scipy < 0.10
- obspy.ah
* New submodule for reading the AH (Ad Hoc) waveform format
- obspy.arclink:
* add support for Poles and Zeros type "B" (Analog, Hz), see #899
- obspy.core:
* Preview waveform plot improved: interactive updating of ticks and
ticklabels, correct ticklabels for sub-minute zoom level (#657)
* fixed a problem with UTCDateTime with timestamps of far future
dates (larger than 2038, often seen in StationXML end dates,
see #805)
* Support for basic custom namespace tags in QuakeML I/O (see #454)
* `interpolate()` method for Stream/Trace objects.
* Dictionary values added to an AttribDict will now be converted to an
AttribDict.
* Removed custom OrderedDict backport for Python 2.6. Now relies on the one
provided by the future package.
* Renamed 'type' argument to 'method' in the Trace.differentiate() method.
* Renamed 'type' argument to 'method' in the Trace.integrate() method.
Additionally, several broken alternate methods have been removed.
* new plugins for NonLinLoc formats for readEvents() and
Catalog/Event.write() (see obspy.nlloc and #900)
* The wrap_long_string utility function is deprecated. Users may use the
textwrap module which provides similar functionality.
* new plugin for CNV event format (used by VELEST) for
Catalog/Event.write() (see obspy.cnv and #905)
* better customizable control during merging traces with sub-sample shift
of sampling points (see #980)
- obspy.cnv:
* new plugin to write CNV event files (used by VELEST) from
Catalog/Event objects. (see #905)
- obspy.css:
* Support for little-endian binary and ASCII files (see #881).
* Support exporting Inventory objects to CSS relations.
- obspy.fdsn:
* WADL files are cached per Python process.
* Bulk station downloading using POST requests.
* Support for FDSNWS 1.1, e.g. the `matchtimeseries` parameter for the
station service.
- obspy.imaging:
* Maintain beach ball aspect ratio through optional axes argument (see
#734)
* Refactored Catalog.plot() into helper routine
obspy.imaging.maps.plot_basemap() (see #753).
* The projections of Catalog.plot() have been modified slightly to provide
equal-area projections:
* The `"cyl"` projection is now named `"global"`. It is now the Mollweide
projection.
* The '"local"` projection now uses the Albers Equal Area projection.
- obspy.kinemetrics
* New submodule for reading the Kinemetrics EVT waveform format
- obspy.mseed:
* Support for reading and writing all encodings supported by libmseed.
* proper error reporting while reading
* `details=True` when reading will now write to
`Trace.stats.mseed.blkt1001.timing_quality` instead of
`Trace.stats.mseed.timing_quality`.
* The timing quality will now also be written to a file if it is set.
* Non-existing values when reading with `details=True` will now be set to
`False` instead of `-1`.
* New utility function `obspy.mseed.util.set_flags_in_fixed_header()`
giving the ability to overwrite flags in the fixed header of existing
MiniSEED files.
* The sequence number of the first record of each Trace can now be
specified when writing MiniSEED files.
* `obspy-mseed-recordanalyzer`:
- Bugfix: when specifying an out-of-bounds record number, information
about the last record in the file was displayed (see #957). Now a
proper error message is shown and the command line script exits
with non-zero exit code.
- Faster reading of a single record header
- Added option "-a" to print information of all records
* upgrade to libmseed 2.15
- obspy.ndk:
* New submodule able to read NDK files from the Global CMT project.
- obspy.neries:
* The whole module is deprecated and will be removed with the next major
release. To access EMSC event data please use the obspy.fdsn client
(use `Client(base_url='NERIES', ...)`), for access to ORFEUS waveform
data please use the obspy.fdsn client (use
`Client(base_url='ORFEUS', ...)`) and for travel times please use
obspy.taup.
- obspy.nlloc:
* new plugins to write NonLinLoc Phase observations files from
Catalog/Event objects and to read NonLinLoc Hypocenter-Phase file into
Catalog/Event objects. (see #900)
- obspy.pdas:
* read support for PDAS waveform files
- obspy.sac:
* New `byteorder` option for writing sac files to disk.
* Can now read/write from/to file-like objects like io.BytesIO and open
files.
- obspy.seedlink:
* bugfix: INFO responses from the IRIS ringserver are now parsed
correctly (see #807)
* New submodule `easyseedlink` providing an easier way to create
SeedLink clients
* New `Client` class providing a basic seedlink client for individual
requests of finite time windows (i.e. non-continuous programs)
* Fix memory leak in `SLClient` (MiniSEED record leak in packet parser,
see #918)
- obspy.seisan:
* bugfix the actual data were misaligned by one
- obspy.seishub:
* use specified timeout in all requests to server (see #786)
* Helper method `Client.event.getEvents()` to fetch a `Catalog` object
from a seishub server of version 1.4.0 or higher.
- obspy.signal:
* Increased performance of PPSD plotting.
* Interpolating methods. Wrappers around routines from scipy and a custom
`weighted average slopes` method from Wiggins 1976.
* PPSD has new methods to extract mean and mode of the histogram by
frequency (see #804)
* PPSD: water level in instrument correction can now be specified by user
on PPSD initialization
* New polarization analysis methods: flinn, vidale, pm
- obspy.station:
* add plotting methods (response/bode, location maps) to
Inventory/Station/Channel/Response objects (see #750)
* add get_coordinates method to inventory and network objects (see #740)
* read/write support for DataAvailability tags in StationXML files.
* write support for SACPZ ASCII representation of channel responses.
- obspy.taup:
* Replaced Fortran implementation with much more powerful Python port of
Java TauP. This enabled us to drop all Fortran code, which simplifies
releases and builds tremendously.
- obspy.xseed:
* add support for Poles and Zeros type "B" (Analog, Hz), see #899
- obspy.zmap:
* New module which adds ZMAP read/write support
- scripts:
* All scripts now require argparse instead of optparse.
* All scripts now accept -V or --version to print version information.
* obspy-dataless2xseed: -v and --version options are renamed to -x and
--xml-version to not conflict with above option.
* obspy-indexer: Options have been modified or amended slightly:
* --data is a new alias to -d.
* --db-uri is a new alias to -u.
* --log is a new alias to -l.
* --poll-interval is a new alias to -i.
* --recent is a new alias to -r.
* -a is a new alias to --all-files.
* -f is a new alias to --force-reindex.
* -H is a new alias to --host.
* -p is a new alias to --port.
* --check_duplicates is renamed to --check-duplicates.
* --drop_database is renamed to --drop-database.
* --mapping_file is renamed to --mapping-file.
* --run_once is renamed to --run-once.
* obspy-mopad: Options have been modified or amended slightly:
* convert subcommand:
* No changes.
* decompose subcommand:
* --input_system is renamed to --input-system.
* --output_system is renamed to --output-system.
* gmt subcommand:
* --show_1fp is renamed to --show-1fp.
* --show_isotropic_part is renamed to --show-isotropic-part.
* plot subcommand:
* --basis_vectors is renamed to --basis-vectors.
* --full_sphere is renamed to --full-sphere.
* --input_system is renamed to --input-system.
* --lines_only is renamed to --lines-only.
* --output_file is renamed to --output-file.
* --pa_system is renamed to --pa-system.
* --pressure_colour is renamed to --pressure-colour.
* --show1fp is renamed to --show-1fp.
* --show_isotropic_part is renamed to --show-isotropic-part.
* --tension_colour is renamed to --tension-colour.
* obspy-plot: --format option is accepted as an alias of -f.
* obspy-print: Options have been modified or amended slightly:
* --format is a new alias of -f.
* --nomerge is renamed to --no-merge.
* obspy-runtests: -a option is accepted as an alias of --all.
* obspy-scan: Options have been modified or amended slightly:
* --endtime is renamed to --end-time.
* --event-times is renamed to --event-time. --event-time may be specified
multiple times.
* --ids is renamed to --id. --id may be specified multiple times.
* --nox is renamed to --no-x.
* --nogaps is renamed to --no-gaps.
* --starttime is renamed to --start-time.
0.9.2: (doi: 10.5281/zenodo.10648)
- general:
* fix installation on CygWin (see #755)
- obspy.core:
* bugfix: Input/Output to/from QuakeML was missing Amplitude
elements (see #763)
* fixing very slow response removal for some magic bad values of npts
(see #715)
* extend remove_response for polynomial responses
(thanks to Sebastien/bonaime, see #566)
- obspy.datamark:
* bugfix: channel code now correctly read (4 hex char)
* bugfix: channels can have different sampling rate
* improvement: datawide 0.5 (4 bits) encoding now supported
* century of data can now be specified
- obspy.fdsn:
* time out errors get raised properly now. timeout can be specified at
Client initialization now. (see #717)
* for advanced users: endpoints of any particular service can now be
specified explicitly (see #754)
* new known FDSN providers: 'ORFEUS', 'GFZ', 'NERIES'
* more robust WADL parser
* the `attach_response=True` argument now uses a faster approach to
download the station data
- obspy.imaging:
* Fixing waveform plotting.
- obspy.sac:
* SAC files with two digit year header field are now interpreted as
"19xx", same as done by SAC (see #779)
- obspy.seedlink:
* bugfix: different instances of a SeedLink connection had a shared
state (see #561)
* multiple smaller bugfixes (see #777)
* trailing null characters are now stripped from INFO responses (see #778)
- obspy.seg2:
* numbers are now also recognized as months
* now filters non-printable chars from the header enabling it to read some
more files
- obspy.signal:
* the TF misfits now correctly use logarithmic axes instead of scaling an
image
- obspy.station:
* some bugfixes in the obspy.station object classes (see #710)
* more robust writing of StationXML in case of missing elements
- obspy.taup:
* bugfix: avoid a bug that caused multiple calls to taup to result in
spurious unexpected results (see #728)
0.9.0:
- general:
* Added mock testing library.
- obspy.arclink:
* user keyword is now required during client initialization
- obspy.core:
* Stream/Trace.attach_response(): convenience method to attach response to
traces from inventories.
* new method Stream/Trace.remove_response() to remove instrument response
from Response object attached to trace(s), e.g. after parsing a
StationXML file. Similar to Stream/Trace.simulate(seedresp=...) for
using a Parser object (from dataless or xseed) or RESP file, but less
cluttered parameters and without the simulating a different instrument
part.
* Updated event classes to QuakeML 1.2 final.
* Moved obspy.core.event.validate() to obspy.core.quakeml.validate()
* The writeQuakeML() function, also accessible through
Catalog.write(..., format="quakeml"), now has an optional keyword
argument 'validate'. If True, the resulting QuakeML file will be
validated against the QuakeML schema before being written. An
AssertionError will be raised in case the validation fails.
* validation of QuakeML against official schema working now
* renamed obspy.core.util.types into obspy.core.util.obspy_types (#595)
* new parameter replace for Enums which allows definition of replaceable
keywords (fixes #531)
* Trace.split() will return a stream object containing traces with unmasked
arrays
* trim(pad=True, fill_value=xxx) will return a NumPy ndarray as stated in
the API documentation (#540)
* read() supports now tar und zip archives and variants (tar.gz, tar.bz2)
* new options for Stream/Trace.taper() to control the length of the
tapering for all windowing functions and perform one-sided tapering
* Many Stream and Trace methods are now chainable, e.g. st.taper().plot()
* when using Stream/Trace.simulate(seedresp={...})) parameter "date" can
now be omitted, start time of each trace is used for response lookup then
* when using Stream/Trace.simulate(seedresp={...})) for parameter
"filename" instead of the path to a local file now also can be provided
either a file-like object with RESP information or an obspy.xseed.Parser
object (e.g. created reading a dataless SEED file).
* fix Stream.select() when using values like "" or 0, e.g.
Stream.select(location="") or when filtering by component with a channel
code less than 3 characters long (now these traces will be omitted from
the result when filtering by component).
* fix a bug when merging valid data into a masked trace (see #638)
* event.ResourceIdentifier objects are now initialized with a QuakeML
conform string by default, i.e. if no custom prefix is provided during
initialization.
* event.ResourceIdentifier.resource_id attribute was renamed to
event.ResourceIdentifier.id
* event.ResourceIdentifier now was has a method regenerate_uuid() that
allows the random hash part to be regenerated for resource identifiers
with no fixed id string (can be useful to generate a new hash if the
referred object changes).
* added a new test that asserts that the whole codebase is valid according
to the flake8 tool.
* inverse filtering of catalogs.
* bugfix: Trace.simulate() now passes the SEED network, station, location,
and channel identifiers to evalresp.
* added command line script "obspy-print" to print information on local
waveform files
* check if ndim == 1 when setting Trace.data and raise if necessary,
see #695
* change waveform_id parameter in obspy.core.event.FocalMechanism to list
of WaveformStreamID as specified in QuakeML docs (#633)
- obspy.css:
* new module for CSS (Center for Seismic Studies) format
* currently read support for waveform data
- obspy.db:
* obspy-indexer script uses from now on hash symbols (#) instead
of pipe (|) for features because pipe has a special meaning on
most operating systems
- obspy.fdsn:
* new client module to access servers based on the FDSN web service
definition (http://www.fdsn.org/webservices/)
- obspy.gse2:
* read/write STA2 header line which is officialy mandatory but in pratice
often not used
- obspy.imaging:
* more options to customize day plots
* dayplot now plots matching picks (station, network, location) if a list
of event objects is provided using the `events` kwarg.
* obspy-scan: new option --print-gaps
* added plotting of record sections
* automatic merging can be disabled for obspy-plot
- obspy.pde:
* new module for reading NEIC PDE bulletin files into an obspy catalog
object. Only the "mchedr" format (file format revision of February 24,
2004) is supported.
- obspy.realtime:
* two new processing plugins (offset, kurtosis)
- obspy.seg2:
* adding read support for SEG2 data format code 1 and 2
(signed 16bit/32bit integer)
- obspy.segy:
* fix a bug in plotting (see #689)
* Removed the SEG Y benchmark plots. Now part of obspy/apps.
- obspy.signal:
* adding cross correlation single-station similarity checking with
master event templates to coincidence trigger
* new function for rotating arbitrarily oriented components to vertical,
north, and east.
* add PPSD support for segments of arbitrary length
* default bin width of PPSD is changed to 1dB. This is the value used by
McNamara and Buland 2004.
* fix a bug when using evalresp with RESP files with very short epochs.
see #631.
* for seisSim(seedresp={...})) for parameter "filename" instead of the
path to a local file now also can be provided either a file-like
object with RESP information or an obspy.xseed.Parser object
(e.g. created reading a dataless SEED file).
* seisSim(seedresp={...}): the seedresp dictionary now requires network,
station, location, and channel keys.
* removed deprecated psd module - use spectral_estimation module instead
* removed deprecated sonic function - use array_processing function instead
* corrected function signature of c_sac_taper
- obspy.station:
* adding support for FDSN StationXML
- obspy.mseed:
* new kwarg arguments for reading mseed files: header_byteorder and
verbose
* libmseed v2.12
- obspy.neic:
* new module to access data from CWB QueryServer run at the National
Earthquake Information Center (NEIC) in Golden, CO USA.
- obspy.y:
* adding read support for Nanometrics Y file format
- scripts:
* obspy-plot: new option "-o" to output plot to file instead of opening
a window
0.8.4
- bugfixes to make ObsPy work with the latest Python 2.x and NumPy releases
- critical bugfixes for the waveform plotting and the xml wrapper
- bugfix so that copy.deepcopy() works with the obspy.core.stream.Stream
class
- fixing some imports
0.8.3:
- circumventing an issue in the current libmseed release that can lead to
some float values being read in wrongly
0.8.2:
- fixing a bug in plotting methods of Trace and Stream
- stream/trace.plot(type="dayplot") can display event information now
0.8.1:
- fixing a bug parsing QuakeML from a StringIO object using xml and
autodetection
0.8.0:
- version numbering: one single, common version number for ObsPy now.
Use "import obspy; print obspy.__version__"
- discontinuing Python 2.5 support
- most important classes/functions can be imported like "from obspy import
...", currently: read, Trace, Stream, UTCDateTime and readEvents
- obspy.arclink:
* refactored attributes in getPAZ to stick better with the SEED standard
- obspy.core:
* fixing preview generation for sampling rates containing floats
* fixing deprecated_keywords decorator for the case of removed keywords
* fixing SLIST and TSPAIR reading/writing of empty traces or traces
containing only one or two data points
* adding taper() method to Trace/Stream using cosTaper of ObsPy and also
all scipy windowing functions
* adding cutout() method to Stream
* removed all deprecated UTCDateTime methods
* adding a class and script to determine flinn-engdahl regions for given
longitude and latitude
* adding rotate() method to Stream wrapping rotate functions in
obspy.signal
- obspy.imaging:
* obspy-scan: adding options to control start/endtime and channels, adding
options to not plot gaps and reducing file size for plots considerably.
- obspy.iris:
* many services have been discontinued on the server side. Use obspy.fdsn
instead for discontinued services.
* still existing services now are distinguished by a major version of the
particular service (like obspy.fdsn).
- obspy.mseed:
* Bugfix writing traces containing one or two samples only
* writeMSEED emits an UserWarning while writing an empty trace
- obspy.sac:
* fixing SAC and SACXY reading/writing of empty traces or traces containing
only one or two data points
* new debug_headers flag for reading SAC files in order to extract all
header variables (issue #390)
- obspy.segy:
* unpack SEGYTrace.data on-the-fly patch contributed Nathaniel Miller
* fixing a bug related to negative values in trace header
- obspy.seishub:
* adding kwarg to control number of retries for failing requests
* adding obspy.xseed as dependency (in setup.py and debian/control)
* changing obspy.client.station.getPAZ() call syntax to use seed_id
(args/kwargs)
* adding local caching of requests for PAZ and coordinates to avoid
repeated requests to server
- obspy.sh:
* file extension 'QBN' not added twice anymore if data_directory was set
* fixing SH_ASC and Q reading/writing of empty traces or traces containing
only one or two data points
- obspy.signal:
* module psd has been refactored to spectral_estimation
* adding function for cross correlation pick correction
* removing pitsa-compatibility in response function calculation
(no complex conjugate)
* preventing a possible duplicated overall sensitivity removal in seisSim
when using the option seedresp
* adding optimized C-code for classic STALTA. Runs approximately, 1000x
faster than pure python code. It has now the same order of speed as the
recursive STALTA
* new CAPON method for array_analysis / array_processing
* sonic was renamed to array_processing, sonic is now deprecated
- obspy.xseed:
* fixed a bug with Dataless to XSEED conversion using split_stations=True
* fixed a bug affecting getPAZ() and getCoordinates() when selecting
specific channels from complex dataless files
(see: https://github.com/obspy/obspy/issues/412)
* added getInventory() method to the Parser object. Returns a dictionary
about the contents of the Parser object. This is also integrated in the
string representation and makes it more informative.
* allow parsing of oversized VariableString from SEED, but warn and cut
string to max_length at writing SEED (#701)
- obspy.mseed:
* adding experimental details option, which extracts timing quality and
info on the calibration
0.7.1:
- obspy.arclink:
* proper DeprecationWarning for deprecated keywords for
Client.getWaveform()
- obspy.core:
* fixing negative azimuths returned by gps2DistAzimuth [#375]
0.7.0:
- obspy.arclink:
* requesting time spans (using 'starttime' and 'endtime' keywords) are
deprecated in Client.getPAZ() and Client.getMetadata() - use 'time'
instead
* output format has changed for Client.getPAZ(..., time=dt)
* 'getCoordinates' and 'getPAZ' keywords are deprecated in
Client.getWaveform() - use 'metadata' instead
* Client.getWaveform(..., metadata=True) will return both keywords as well
as PAZ - inventory request is done only once per request -> huge
performance improvement compared to previous implementation
* traces requested via Client.getWaveform(..., metadata=True) covering
multiple instrumentations will be split and the correct PAZ are appended
- obspy.core:
* new Catalog/Event classes
* read/write support for QuakeML files
* new resample method for Trace and Stream object
* Trace.__mod__ (splits Trace into Stream containing traces with num
samples)
* Trace.__div__ (splits Trace into Stream containing num traces)
* implementation of __mul__ method for Trace and Stream objects
* new formatSeedLink method for UTCDateTime object
* new split method for transforming streams containing masked arrays into
contiguous traces
* new util.xmlwrapper module for uniform API for Python's default xml and
lxml
* new obspy.core.util.types.Enum class
* refactored obspy.core.util.ordereddict into obspy.core.util.types
* refactored kilometer2degrees and locations2degrees from obspy.taup into
obspy.core.util.geodetics
* adding 'equal_scale' option to plot() method
* removing __hash__ fixture for Stream and Trace
* stream.select works now case insensitive
* support for initialization of UTCDateTime from numpy.string_ types
* new dtype parameter on read method allows converting data into given
dtype
* AttribDict may now be initialized with (key, value) kwarg pairs, e.g.
AttribDict(a=1, b=2).
* changed many setter/getter in UTCDateTime to private methods, e.g.
_getDate
* added UTCDateTime.DEFAULT_PRECISION
* import of an unsupported waveform will result into a TypeError [#338]
* added compatibility methods for AttribDict and UTCDateTime
* retaining trace order in stream while merging
* deprecated_keywords decorator may warn and ignore keywords by setting the
keyword mapping to None
- obspy.db:
* added client for a database created by obspy.db
* adapting to changes in obspy.core.util.base version 0.6.0 and above
- obspy.gse2:
* bugfix for buffer overflow in test_readDos
* bugfix checksum calculation of GSE2/GSE1
- obspy.imaging:
* Trace.label/Stream.label can be used to overwrite default labels
* better support for huge/tiny y-ticks and plots containing multiple traces
* adding 'equal_scale' option to plot() method
* Limited localization support and the time axis(es) can be swapped.
* traces with same id but different processing steps will not be merged
anymore using the plot() method
* accept a list of two values for width of beachballs (using Ellipse patch)
- obspy.iris:
* added low-level interface for IRIS timeseries WS
* added low-level interface for IRIS traveltime WS
* new Client.getEvents method able to return a ObsPy catalog object
- obspy.mseed:
* changing license to LGPL (same as libmseed)
* libmseed 2.7 (fixes sampling rates above 32,767 Hz)
* adding read/write support for very large and very small sampling rates
using blockette 100 in MiniSEED
* new obspy-mseed-recordanalyzer script for analyzing SEED files via
console
* new obspy.mseed.util.shiftTimeOfFile() function for shifting
the time of all records without interfering with the rest of the file.
- obspy.neries:
* new format 'catalog' for getEvents, getEventDetail and getLatestEvents
methods - deprecating old format defaults
- obspy.sac:
* bugfix for SAC files containing null terminated strings
- obspy.seg2:
* bugfix in parsing starttime from seg2 header
- obspy.signal:
* adding toolbox to calculate Time-Frequency Misfits
* fixed bug in calculation of time derivatives
* fixing a misleading entry point for trigger, adding a missing one
* adding coincidence triggering routine
- obspy.taup:
* deprecated kilometer2degrees and locations2degrees - one can find those
methods on obspy.core.util now
- obspy.xseed:
* fixed a bug with exactly one pole or one zero in response information
0.1.0:
- obspy.datamark:
* read support
- obspy.realtime:
* initial release