#152694 Report by node gh-actions covering 2326 tests from 61 modules resulted into 1 error

Report

ObsPy version
1.4.2.post0+472.g8381aae147
GitHub Pull Request
https://github.com/obspy/obspy/pull/3692
Report file
JSON document
Total runtime
339.3 sec
Report date/time
March 4, 2026, 9:23 a.m.

System / Python

Architecture
64bit
Machine
AMD64
Node
gh-actions
Processor
AMD64 Family 25 Model 17 Stepping 1, AuthenticAMD
Python Compiler
MSC v.1944 64 bit (AMD64)
Python Implementation
CPython
Python Version
3.12.12
Release
2025Server
System
Windows
Version
10.0.26100

Dependencies

cartopy
0.25.0
decorator
5.2.1
flake8
---
geographiclib
2.1
lxml
6.0.2
matplotlib
3.10.8
numpy
2.4.2
obspy
1.4.2.post0+472.g8381aae147
pyproj
3.7.2
pytest
9.0.2
pytest-json-report
1.5.0
requests
2.32.5
scipy
1.17.1
setuptools
82.0.0
shapefile
---
sqlalchemy
1.4.54

Modules (61)

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

Tracebacks (1)

Traceback (most recent call last):
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\runner.py", line 353, in from_call
result: TResult | None = func()
^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\runner.py", line 245, in <lambda>
lambda: runtest_hook(item=item, **kwds),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_hooks.py", line 512, in __call__
return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_manager.py", line 120, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 167, in _multicall
raise exception
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 139, in _multicall
teardown.throw(exception)
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\logging.py", line 850, in pytest_runtest_call
yield
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 139, in _multicall
teardown.throw(exception)
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 53, in run_old_style_hookwrapper
return result.get_result()
^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_result.py", line 103, in get_result
raise exc.with_traceback(tb)
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 38, in run_old_style_hookwrapper
res = yield
^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 139, in _multicall
teardown.throw(exception)
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\capture.py", line 900, in pytest_runtest_call
return (yield)
^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 139, in _multicall
teardown.throw(exception)
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 53, in run_old_style_hookwrapper
return result.get_result()
^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_result.py", line 103, in get_result
raise exc.with_traceback(tb)
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 38, in run_old_style_hookwrapper
res = yield
^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 139, in _multicall
teardown.throw(exception)
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\skipping.py", line 268, in pytest_runtest_call
return (yield)
^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 121, in _multicall
res = hook_impl.function(*args)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\runner.py", line 179, in pytest_runtest_call
item.runtest()
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\python.py", line 1720, in runtest
self.ihook.pytest_pyfunc_call(pyfuncitem=self)
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_hooks.py", line 512, in __call__
return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_manager.py", line 120, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 167, in _multicall
raise exception
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\pluggy\_callers.py", line 121, in _multicall
res = hook_impl.function(*args)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\python.py", line 166, in pytest_pyfunc_call
result = testfunction(**testargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\obspy\io\kinemetrics\tests\test_core.py", line 413, in test_read_evt_with_nonUTF8_comment
with pytest.raises(UnicodeDecodeError):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\raises.py", line 710, in __exit__
fail(f"DID NOT RAISE {self.expected_exceptions[0]!r}")
File "C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\_pytest\outcomes.py", line 163, in __call__
raise Failed(msg=reason, pytrace=pytrace)
Failed: DID NOT RAISE <class 'UnicodeDecodeError'>

Skipped tests (22)

Submodule Test Skip message
core core/stream.py::obspy.core.stream._is_pickle Skipped: all tests skipped by +SKIP option
core.util core/util/misc.py::obspy.core.util.misc.CatchOutput Skipped: all tests skipped by +SKIP option
core.util core/util/misc.py::obspy.core.util.misc.SuppressOutput Skipped: all tests skipped by +SKIP option
core.util core/util/misc.py::obspy.core.util.misc.TemporaryWorkingDirectory Skipped: all tests skipped by +SKIP option
geodetics geodetics/tests/test_util_geodetics.py::TestUtilGeodetics::test_gps_2_dist_azimuth_bug150 Skipped: Geographiclib installed, not using calc_vincenty_inverse
imaging imaging/tests/test_mopad_script.py::TestMopad::test_script_plot Skipped: Currently broken until further review.
imaging imaging/tests/test_scan.py::TestScan::test_scan_dir_no_permission Skipped: unable to remove read permission from a test file for testing purposes
io.ascii io/ascii/core.py::obspy.io.ascii.core._is_slist Skipped: all tests skipped by +SKIP option
io.ascii io/ascii/core.py::obspy.io.ascii.core._is_tspair Skipped: all tests skipped by +SKIP option
io.gcf io/gcf/core.py::obspy.io.gcf.core._write_gcf Skipped: all tests skipped by +SKIP option
io.nordic io/nordic/utils.py::obspy.io.nordic.utils._evmagtonor Skipped: all tests skipped by +SKIP option
io.nordic io/nordic/utils.py::obspy.io.nordic.utils._nortoevmag Skipped: all tests skipped by +SKIP option
io.pde io/pde/mchedr.py::obspy.io.pde.mchedr._is_mchedr Skipped: all tests skipped by +SKIP option
io.quakeml io/quakeml/core.py::obspy.io.quakeml.core._is_quakeml Skipped: all tests skipped by +SKIP option
io.seisan io/seisan/core.py::obspy.io.seisan.core._is_seisan Skipped: all tests skipped by +SKIP option
io.sh io/sh/core.py::obspy.io.sh.core._is_asc Skipped: all tests skipped by +SKIP option
io.sh io/sh/core.py::obspy.io.sh.core._is_q Skipped: all tests skipped by +SKIP option
io.wav io/wav/core.py::obspy.io.wav.core._is_wav Skipped: all tests skipped by +SKIP option
io.y io/y/core.py::obspy.io.y.core._is_y Skipped: all tests skipped by +SKIP option
signal signal/quality_control.py::obspy.signal.quality_control.MSEEDMetadata Skipped: all tests skipped by +SKIP option
signal signal/tests/test_invsim.py::TestInvSim::test_evalresp_file_like_object Skipped: unreproducible test fail encountered on Appveyor sometimes.
signal signal/tests/test_quality_control.py::TestQualityControl::test_schema_validation Skipped: Test requires the jsonschema module

Slowest tests (20)

Runtime Test
21.222s io/xseed/tests/test_core.py::TestCore::test_response_calculation_from_seed_and_xseed
8.565s clients/fdsn/tests/test_mass_downloader.py::TestDownloadHelper::test_download_method
7.562s io/arclink/tests/test_inventory_xml.py::TestArclinkInventory::test_auto_read_arclink_xml
7.334s core/tests/test_event.py::TestEvent::test_plot_farfield_without_quiver_with_maps
6.058s taup/__init__.py::obspy.taup
5.695s io/mseed/tests/test_mseed_special_issues.py::TestMSEEDSpecialIssue::test_infinite_loop
5.353s taup/tests/test_seismic_phase.py::TestTauPySeismicPhase::test_shoot_existing_ray_param
5.302s taup/tests/test_tau.py::TestTauPyModel::test_regional_models
4.198s core/tests/test_inventory.py::TestInventoryCartopy::test_location_plot_local
3.198s taup/tests/test_tau.py::TestTauPyModel::test_vs_java_iasp91
3.166s core/tests/test_inventory.py::TestInventoryCartopy::test_location_plot_global
2.844s signal/tests/test_cross_correlation.py::TestCrossCorrelation::test_correlate_stream_template_and_correlation_detector
2.827s core/tests/test_waveform_plugins.py::TestWaveformPlugins::test_read_and_write
2.801s signal/tests/test_spectral_estimation.py::TestPsd::test_ppsd_restricted_stacks
2.613s signal/tests/test_calibration.py::TestCalibration::test_relcal_different_overlaps
2.512s core/tests/test_trace.py::TestTrace::test_remove_response_plot
2.379s core/tests/test_waveform_plugins.py::TestWaveformPlugins::test_is_format
2.234s taup/tests/test_seismic_phase.py::TestTauPySeismicPhase::test_many_identically_named_phases
2.234s taup/tests/test_velocity_model.py::TestTauPyVelocityModel::test_read_velocity_model
2.067s core/stream.py::obspy.core.stream.read

Warnings (2)

Stage Filename Category Message
collect C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\obspy\signal\polarization.py:15 DeprecationWarning `scipy.odr` is deprecated as of version 1.17.0 and will be removed in SciPy 1.19.0. Please use `https://pypi.org/project/odrpack/` instead.
runtest C:\Users\runneradmin\miniconda3\envs\test\Lib\site-packages\obspy\core\util\misc.py:399 UserWarning PermissionError(13, 'Access is denied')