#157770 Report by node gh-actions covering 117 tests from 61 modules resulted into 4 errors

Report

ObsPy version
1.5.0.post0+61.g78431e61e3
GitHub Pull Request
https://github.com/obspy/obspy/pull/3757
Report file
JSON document
Total runtime
151.1 sec
Report date/time
June 18, 2026, 4:07 a.m.

System / Python

Architecture
64bit
Machine
x86_64
Node
gh-actions
Processor
x86_64
Python Compiler
GCC 12.3.0
Python Implementation
CPython
Python Version
3.10.13
Release
6.17.0-1018-azure
System
Linux
Version
#18~24.04.1-Ubuntu SMP Thu May 28 16:39:11 UTC 2026

Dependencies

cartopy
0.25.0
decorator
5.3.1
flake8
---
geographiclib
2.1
lxml
4.9.2
matplotlib
3.8.4
numpy
1.25.2
obspy
1.5.0.post0+61.g78431e61e3
pyproj
3.4.1
pytest
9.1.0
pytest-json-report
1.5.0
requests
2.34.2
scipy
1.11.4
setuptools
82.0.1
shapefile
---
sqlalchemy
1.4.54

Modules (61)

Module Errors / Failures Tracebacks
obspy.clients.earthworm - -
obspy.clients.fdsn 4 1 2 3 4
obspy.clients.filesystem Not tested -
obspy.clients.iris - -
obspy.clients.neic - -
obspy.clients.nrl - -
obspy.clients.seedlink - -
obspy.clients.syngine - -
obspy.core - -
obspy.core.event Not tested -
obspy.core.inventory Not tested -
obspy.core.util Not tested -
obspy.geodetics Not tested -
obspy.imaging Not tested -
obspy.io.ah Not tested -
obspy.io.alsep Not tested -
obspy.io.arclink Not tested -
obspy.io.ascii Not tested -
obspy.io.cmtsolution Not tested -
obspy.io.cnv Not tested -
obspy.io.css Not tested -
obspy.io.csv Not tested -
obspy.io.cybershake Not tested -
obspy.io.dmx Not tested -
obspy.io.focmec Not tested -
obspy.io.gcf Not tested -
obspy.io.gse2 Not tested -
obspy.io.hypodd Not tested -
obspy.io.iaspei Not tested -
obspy.io.json Not tested -
obspy.io.kinemetrics Not tested -
obspy.io.kml Not tested -
obspy.io.mseed Not tested -
obspy.io.ndk Not tested -
obspy.io.nied Not tested -
obspy.io.nlloc Not tested -
obspy.io.nordic Not tested -
obspy.io.pdas Not tested -
obspy.io.pde Not tested -
obspy.io.quakeml Not tested -
obspy.io.reftek Not tested -
obspy.io.rg16 Not tested -
obspy.io.sac Not tested -
obspy.io.scardec Not tested -
obspy.io.seg2 Not tested -
obspy.io.segy Not tested -
obspy.io.seisan Not tested -
obspy.io.seiscomp Not tested -
obspy.io.sh Not tested -
obspy.io.shapefile Not tested -
obspy.io.stationtxt Not tested -
obspy.io.stationxml Not tested -
obspy.io.wav Not tested -
obspy.io.win Not tested -
obspy.io.xseed Not tested -
obspy.io.y Not tested -
obspy.io.zmap Not tested -
obspy.realtime Not tested -
obspy.scripts Not tested -
obspy.signal Not tested -
obspy.taup Not tested -
Summary 4 4

Tracebacks (4)

098 (2) :meth:`~obspy.clients.fdsn.client.Client.get_stations()`: Retrieves station
099 data from the server. Results are returned as an
100 :class:`~obspy.core.inventory.inventory.Inventory` object.
101
102 >>> starttime = UTCDateTime("2002-01-01")
103 >>> endtime = UTCDateTime("2002-01-02")
104 >>> inventory = client.get_stations(network="IU", station="A*",
105 ... starttime=starttime,
106 ... endtime=endtime)
107 >>> print(inventory) # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
Differences (unified diff with -expected +actual):
@@ -1,12 +1,13 @@
-Inventory created at ...
- Created by: IRIS WEB SERVICE: fdsnws-station | version: ...
- ...
- Sending institution: IRIS-DMC (IRIS-DMC)
- Contains:
- Networks (1):
- IU
- Stations (3):
- IU.ADK (Adak, Aleutian Islands, Alaska)
- IU.AFI (Afiamalu, Samoa)
- IU.ANMO (Albuquerque, New Mexico, USA)
- Channels (0):
+Inventory created at 2026-06-18T09:05:40.379000Z
+	Created by: EarthScope WEB SERVICE: fdsnws-station | version: 1.1.53
+		 https://service.earthscope.org/fdsnws/station/1/query?starttime=200...
+	Sending institution: EarthScope (EarthScope)
+	Contains:
+		Networks (1):
+			IU
+		Stations (3):
+			IU.ADK (Adak, Aleutian Islands, Alaska)
+			IU.AFI (Afiamalu, Samoa)
+			IU.ANMO (Albuquerque, New Mexico, USA)
+		Channels (0):
+<BLANKLINE>
/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/clients/fdsn/__init__.py:107: DocTestFailure
597
598 Query the station service of the FDSN client.
599
600 >>> client = Client("EARTHSCOPE")
601 >>> starttime = UTCDateTime("2001-01-01")
602 >>> endtime = UTCDateTime("2001-01-02")
603 >>> inventory = client.get_stations(network="IU", station="A*",
604 ... starttime=starttime,
605 ... endtime=endtime)
606 >>> print(inventory) # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
Differences (unified diff with -expected +actual):
@@ -1,12 +1,13 @@
-Inventory created at ...
- Created by: IRIS WEB SERVICE: fdsnws-station | version: ...
- ...
- Sending institution: IRIS-DMC (IRIS-DMC)
- Contains:
- Networks (1):
- IU
- Stations (3):
- IU.ADK (Adak, Aleutian Islands, Alaska)
- IU.AFI (Afiamalu, Samoa)
- IU.ANMO (Albuquerque, New Mexico, USA)
- Channels (0):
+Inventory created at 2026-06-18T09:05:45.275200Z
+	Created by: EarthScope WEB SERVICE: fdsnws-station | version: 1.1.53
+		 https://service.earthscope.org/fdsnws/station/1/query?starttime=200...
+	Sending institution: EarthScope (EarthScope)
+	Contains:
+		Networks (1):
+			IU
+		Stations (3):
+			IU.ADK (Adak, Aleutian Islands, Alaska)
+			IU.AFI (Afiamalu, Samoa)
+			IU.ANMO (Albuquerque, New Mexico, USA)
+		Channels (0):
+<BLANKLINE>
/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/clients/fdsn/client.py:606: DocTestFailure
1083
1084 >>> client = Client("EARTHSCOPE")
1085 >>> t1 = UTCDateTime("2010-02-27T06:30:00.000")
1086 >>> t2 = t1 + 1
1087 >>> t3 = t1 + 3
1088 >>> bulk = [("IU", "ANMO", "*", "BHZ", t1, t2),
1089 ... ("IU", "AFI", "1?", "BHE", t1, t3),
1090 ... ("GR", "GRA1", "*", "BH*", t2, t3)]
1091 >>> inv = client.get_stations_bulk(bulk)
1092 >>> print(inv) # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
Expected:
Inventory created at ...
Created by: IRIS WEB SERVICE: fdsnws-station | version: ...
Got:
Inventory created at 2026-06-18T09:05:45.571400Z
	Created by: EarthScope WEB SERVICE: fdsnws-station | version: 1.1.53
		
	Sending institution: EarthScope (EarthScope)
	Contains:
		Networks (2):
			GR, IU
		Stations (2):
			GR.GRA1 (GRAFENBERG ARRAY, BAYERN)
			IU.ANMO (Albuquerque, New Mexico, USA)
		Channels (0):
<BLANKLINE>
/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/clients/fdsn/client.py:1092: DocTestFailure
Traceback (most recent call last):
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/io/quakeml/core.py", line 71, in _xml_doc_from_anything
xml_doc = etree.parse(source).getroot()
File "src/lxml/etree.pyx", line 3541, in lxml.etree.parse
File "src/lxml/parser.pxi", line 1896, in lxml.etree._parseDocument
File "src/lxml/parser.pxi", line 1916, in lxml.etree._parseMemoryDocument
File "src/lxml/parser.pxi", line 1803, in lxml.etree._parseDoc
File "src/lxml/parser.pxi", line 1144, in lxml.etree._BaseParser._parseDoc
File "src/lxml/parser.pxi", line 618, in lxml.etree._ParserContext._handleParseResultDoc
File "src/lxml/parser.pxi", line 728, in lxml.etree._handleParseResult
File "src/lxml/parser.pxi", line 657, in lxml.etree._raiseParseError
File "<string>", line 10006
lxml.etree.XMLSyntaxError: Extra content at the end of the document, line 10006, column 1
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/io/quakeml/core.py", line 74, in _xml_doc_from_anything
xml_doc = etree.fromstring(source)
File "src/lxml/etree.pyx", line 3257, in lxml.etree.fromstring
File "src/lxml/parser.pxi", line 1915, in lxml.etree._parseMemoryDocument
ValueError: can only parse strings
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/io/quakeml/core.py", line 77, in _xml_doc_from_anything
xml_doc = etree.fromstring(source.encode())
AttributeError: '_io.BytesIO' object has no attribute 'encode'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/_pytest/runner.py", line 361, in from_call
result: TResult | None = func()
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/_pytest/runner.py", line 250, in <lambda>
lambda: runtest_hook(item=item, **kwds),
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_hooks.py", line 512, in __call__
return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_manager.py", line 120, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 167, in _multicall
raise exception
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 139, in _multicall
teardown.throw(exception)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/_pytest/logging.py", line 865, in pytest_runtest_call
yield
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 139, in _multicall
teardown.throw(exception)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper
return result.get_result()
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_result.py", line 103, in get_result
raise exc.with_traceback(tb)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper
res = yield
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 139, in _multicall
teardown.throw(exception)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/_pytest/capture.py", line 900, in pytest_runtest_call
return (yield)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 139, in _multicall
teardown.throw(exception)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper
return result.get_result()
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_result.py", line 103, in get_result
raise exc.with_traceback(tb)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper
res = yield
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 139, in _multicall
teardown.throw(exception)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/_pytest/skipping.py", line 268, in pytest_runtest_call
return (yield)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 121, in _multicall
res = hook_impl.function(*args)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call
item.runtest()
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/_pytest/python.py", line 1707, in runtest
self.ihook.pytest_pyfunc_call(pyfuncitem=self)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_hooks.py", line 512, in __call__
return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_manager.py", line 120, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 167, in _multicall
raise exception
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/pluggy/_callers.py", line 121, in _multicall
res = hook_impl.function(*args)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call
result = testfunction(**testargs)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/clients/fdsn/tests/test_client.py", line 242, in test_isc_example_queries_event
cat = client.get_events(
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/clients/fdsn/client.py", line 584, in get_events
cat = obspy.read_events(data_stream, format="quakeml")
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/decorator/__init__.py", line 247, in fun
return caller(func, *(extras + args), **kw)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/core/util/decorator.py", line 298, in _map_example_filename
return func(*args, **kwargs)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/core/event/catalog.py", line 828, in read_events
return _generic_reader(pathname_or_url, _read, format=format, **kwargs)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/core/util/base.py", line 792, in _generic_reader
generic = callback_func(pathname_or_url, **kwargs)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/decorator/__init__.py", line 247, in fun
return caller(func, *(extras + args), **kw)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/core/util/decorator.py", line 143, in uncompress_file
return func(filename, *args, **kwargs)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/core/event/catalog.py", line 836, in _read
catalog, format = _read_from_plugin('event', filename, format=format,
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/core/util/base.py", line 559, in _read_from_plugin
list_obj = read_format(filename, **kwargs)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/io/quakeml/core.py", line 1833, in _read_quakeml
return Unpickler().load(filename)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/io/quakeml/core.py", line 148, in load
self.xml_doc = _xml_doc_from_anything(file)
File "/home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/io/quakeml/core.py", line 79, in _xml_doc_from_anything
raise ValueError("Could not parse '%s' to an etree element." %
ValueError: Could not parse '<_io.BytesIO object at 0x7fc603433f60>' to an etree element.

Skipped tests (5)

Submodule Test Skip message
clients.earthworm clients/earthworm/tests/test_client.py::TestEWClient::test_get_waveform_no_cleanup Skipped: Example data AV.AKV..BHE no longer valid
clients.fdsn clients/fdsn/tests/test_client.py::TestClient::test_eida_token_resolution Skipped: EIDA token is expired
clients.seedlink clients/seedlink/tests/test_slclient.py::TestSLClient::test_info Skipped: test must be started manually
clients.seedlink clients/seedlink/tests/test_slclient.py::TestSLClient::test_time_window Skipped: test must be started manually
clients.seedlink clients/seedlink/tests/test_slclient.py::TestSLClient::test_issue708 Skipped: test must be started manually

Slowest tests (20)

Runtime Test
16.597s clients/fdsn/tests/test_eidaws_routing_client.py::TestEIDAWSRoutingClient::test_get_waveforms_integration_test
9.458s clients/fdsn/tests/test_client.py::TestClient::test_irisph5_event
7.187s clients/fdsn/tests/test_client.py::TestClient::test_redirection
4.481s clients/syngine/tests/test_client.py::TestClient::test_get_waveforms
4.343s clients/fdsn/tests/test_client.py::TestClient::test_isc_example_queries_event_discover_services_false
4.322s clients/iris/tests/test_client.py::TestClient::test_evalresp
4.306s clients/fdsn/client.py::obspy.clients.fdsn.client.Client.get_events
3.575s clients/fdsn/tests/test_client.py::TestClient::test_redirection_auth
3.326s clients/syngine/__init__.py::obspy.clients.syngine
3.141s core/tests/test_stream.py::TestStream::test_read_url_via_network
2.887s clients/nrl/client.py::obspy.clients.nrl.client.NRL.get_response
2.774s clients/seedlink/basic_client.py::obspy.clients.seedlink.basic_client.Client.get_waveforms
2.645s clients/iris/tests/test_client.py::TestClient::test_resp
2.499s clients/seedlink/tests/test_basic_client.py::TestClient::test_multiple_waveform_requests_with_multiple_info_requests
2.379s clients/fdsn/tests/test_client.py::TestClient::test_dataselect_bulk[True]
2.133s clients/fdsn/tests/test_eidaws_routing_client.py::TestEIDAWSRoutingClient::test_get_stations_integration_test
2.101s clients/fdsn/tests/test_client.py::TestClient::test_dataselect_bulk[False]
1.885s clients/neic/tests/test_client.py::TestClient::test_get_waveform_nscl
1.493s clients/fdsn/tests/test_federator_routing_client.py::TestFederatorRoutingClient::test_get_waveforms_integration_test
1.491s clients/syngine/tests/test_client.py::TestClient::test_reading_saczip_files

Warnings (1)

Stage Filename Category Message
runtest /home/runner/miniconda3/envs/test/lib/python3.10/site-packages/obspy/clients/fdsn/tests/test_client.py:828 ObsPyDeprecationWarning attach_response is deprecated and will be removed in a future release. Use remove_response() instead.