Skip to content

Extensions

TimeseriesTools exposes most of its analysis surface as package extensions. The function stubs live in core, but each method is only loaded when you using the corresponding package. This keeps the base load light and prevents the package from pulling unwanted heavy dependencies (CUDA, Makie, DSP, …) into every project.

ExtensionLoaded byProvides
DSPExtusing DSPbandpass, highpass, lowpass, hilbert, analyticphase, analyticamplitude, instantaneousfreq, phasestitch, downsample
DataInterpolationsExtusing DataInterpolationsinterpolate, upsample, resample, impute (1-D / per-axis)
DataInterpolationsNDExtusing DataInterpolationsNDinterpolate, upsample, resample (joint multi-axis)
ContinuousWaveletsExtusing ContinuousWaveletswaveletspectrogram
CUDAExtusing CUDA, ContinuousWaveletsGPU-accelerated wavelet transform
AutocorrelationsExtusing Autocorrelationsfftacf, dotacf, msdist
ComplexityMeasuresExtusing ComplexityMeasuresapply estimators directly to AbstractTimeseries
GeneralizedPhaseExtusing GeneralizedPhasegeneralizedphase
NaturalNeighboursExtusing NaturalNeighbours2-D scattered interpolation
SignalDecompositionExtusing SignalDecompositiontrend/oscillation decomposition
OptimExtusing OptimMAPPLE refinement (fit!)
BootstrapExtusing Bootstrapbootstrapmean, bootstrapmedian, bootstrapaverage

Why extensions?

  • Faster cold start: no precompile-time cost for capabilities you don't use.

  • No version churn: heavy deps (CUDA, Makie, DSP) move quickly; a weak dep means TimeseriesTools doesn't force a particular version on the rest of your project.

  • Discoverable failure mode: calling bandpass(x) without using DSP returns x unchanged (the stub) rather than throwing a MethodError. (See the warning at the top of each function's docstring.)