Release notes#
0.2.7#
Bug Fixes#
Fix a regression introduced in 0.2.6 where
is_monotonicwas significantly degrading.selperformance.Fix
xdas.concatto gracefully handle empty inputs, preventing errors when selecting out-of-range data from aDataCollection(@atrabattoni).
Documentation#
Achieved 100% docstring coverage (excluding
__magic__and private_methods) (@atrabattoni).Improved User Guide index (@atrabattoni).
Added new Sampled Coordinates page (@atrabattoni).
Enhanced Processing documentation (@atrabattoni).
Improved FAQ page (@atrabattoni).
Added missing API documentation for several methods (@atrabattoni).
Refactoring#
Achieved 100% test coverage across the codebase (@atrabattoni).
Migrated development workflow from conda to uv (@atrabattoni).
Reduced test suite execution time by ~50% (@atrabattoni).
Migrated formatting tooling from
isort+blacktoruffincluding docstring checks (@atrabattoni).Ensure all ruff checks pass (@atrabattoni).
0.2.6#
New features#
Add
xdas.openthat automatically infers whichxdas.open_*function to use (@atrabattoni, @yetinam).Add automatic engine detection to every
xdas.open_*function (@atrabattoni, @yetinam).Add
pathlib.Pathsupport as input for all xdas file-related functions and methods (@atrabattoni).Add
xdas.io.compressedthat compresses a specific dataset in an HDF5 file while preserving the rest of the file structure and metadata (@marbail).Add
xdas.concat_coordsto merge coordinates. AlsoCoordinate.appendis nowCoordinate.concat(avoid in-place confusion) andxdas.concatenatehas now a preferred aliasxdas.concat(@atrabattoni).
Improvements#
All
to_netcdfmethods now have acreate_dirsargument to create intermediate directories if necessary (@aurelienfalco).Make
DataArray.selhandle overlaps when slicing, andxdas.splitcan split on overlaps or gaps now (@atrabattoni).New
io.Enginebackend system to register different file formats (@atrabattoni).Make
open_mfdataarrayraiseRuntimeErrorwhen opening all files fails (@asladen).Add “prodml” engine (@atrabattoni) and make “optasense” and “sintela” aliases of it (@atrabattoni).
Add the
component_strategyargument to thexdas.atoms.MLPickerto choose whether to use the same component on the 3 channels or to use one channel and set the others to 0 based (@marbail).Make
DataArray.renamecapable of renamingdimsandcoords(@atrabattoni).Add
parallelargument to mostopen*functions to let the user choose the file opening strategy (@atrabattoni).
Bug Fixes#
Fix memory accumulation when slicing multiple times data arrays, e.g. when using atoms (@atrabattoni).
Fix non-terminating loaders and writers in
xdas.processing(@atrabattoni).Fix/improve distance handling for: “apsensing”, “febus”, “optasense”, “silixa”, and “sintela” (@atrabattoni).
Add dim swapping handling for the “prodml” based engines with the
swapped_dims=Falsekwarg (@atrabattoni).Fix ASN ROI handling (@asladen).
Use the
annotate_batch_premodel’s function to normalize inxdas.atoms.MLPicker(@marbail).Fix the RuntimeError encountered when using
open_mf*functions in scripts due to the use of multiprocessing by using the loky library (@atrabattoni)
0.2.5#
Add SampleCoordinate for more SEED-like coordinates and refactor the coordinate backend (@atrabattoni).
Add
xdas.picking.tapered_selectionto extract windows around picks (@atrabattoni).Add
create_dirsto.to_netcdfmethods to create intermediate directories (@aurelienfalco).Add support for multiple ROI for ASN engine (@martijnende).
tolerancecan now be passed as seconds for datetime64 coordinates (@martijnende, @atrabattoni)Add support for python 3.14, numpy 2.4 and obspy 1.4.2 incompatibilities and add
xdas.__version__(@atrabattoni).
0.2.4#
Add StreamWriter to write long time series to miniSEED (@marbail).
Fix OptaSense engine’s wrong axis attribution (@smouellet).
Fix ASN (OptoDAS) engine: handling of roiDec (@AndresLaurine).
Fix NaN handling for several methods (@ClaudioStrumia).
Fix
InterpCoordinate.get_availabilities(@AMordret).
0.2.3#
Fix Febus engine (round timestamps to closest us).
Faster
xdas.concatenate(faster linking for efficient reading of Febus files).
0.2.2#
Add support for Python 3.13
Fix bugs and dependency issues
0.2.1#
Add
xdas.signal.stft.Add inverse Fourier transforms
xdas.fft.ifftandxdas.fft.irfft.Add support for APSensing format.
Improve overlap error message.
Fix decimation of freshly opened multi-file datasets.
Fix
zerophasekeyword argument forxdas.signal.filter.Fix applying FFT functions in presence of non-dimensional coordinates.
0.2#
Add Dask virtualization backend for non-HDF5 formats (@atrabattoni).
Add support for miniSEED format (@atrabattoni, @chauvetige).
Add support for Silixa (TDMS) format (@atrabattoni, @Stutzmann).
0.1.2#
Add ZeroMQ streaming capabilities (@atrabattoni).
Add support of Terra15 format (@chauvetige).
Fix Febus engine (@ClaudioStrumia).
0.1.1#
Add support for
hdf5plugincompression schemes.Drop
netCDF4dependency and only useh5netcdfto fix incompatibilities.Drop useless
daskdependency.
0.1#
Initial stable version.