Skip to content

Commit

Permalink
release 1.6.0
Browse files Browse the repository at this point in the history
  • Loading branch information
oliche committed Dec 6, 2024
1 parent d2f8b65 commit 2af823b
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 30 deletions.
43 changes: 18 additions & 25 deletions release_notes.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,29 @@
# 1.5
# Changelog

## 1.5.0 2024-10-24
## [1.6.0] - 2024-12-06

### added
- single derivative option for CSD for RIGOR metrics
- radon forward and inverse transforms
- support headerless binary files (open ephys)
-
### fixed
- cadzow iterations
- numpy 2.0 support
- destripe with channels=False

## [1.5.0] - 2024-10-24
- Automatic sorting per shank / row / col
- Minimum Python version is 3.10

# 1.4

## 1.4.0 2024-10-05
## [1.4.0] - 2024-10-05
- Waveform extraction:
- Optimization of the waveform extractor, outputs flattened waveforms
- Refactoring ot the waveform loader with back compability
- Bad channel detector:
- The bad channel detector has a plot option to visualize the bad channels and thresholds
- The default low-cut filters are set to 300Hz for AP band and 2 Hz for LF band

# 1.3

## 1.3.2 2024-09-18

- Hotfix for WaveformsLoader label ids
Expand All @@ -29,16 +37,12 @@
- Add support for NPultra high-density probes
- NumPy and SciPy version floors

# 1.2

## 1.2.1 2024-08-20
- bugfix waveform extraction: fix logic when channel labels is not None

## 1.2.0 2024-08-01
- Adds `ibldsp.waveform_extraction.WaveformsLoader`, an interface for waveforms extracted by `extract_wfs_cbin`.

# 1.1.0

## 1.1.3 2024-07-11
- Add features and tests for `extract_wfs_cbin`, including various preprocessing options.

Expand All @@ -48,7 +52,6 @@
## 1.1.1 2024-06-07
- Add support for NP2.0 prototype probe with probetype 1030

# 1.0.0
## 1.0.1 2024-05-29: support for waveform extraction on non-standard electrode layouts
- bugfix waveform extraction: the probe channel layout is inferred from the spikeglx metadata by default
- bugfix waveform extraction: the channel neighnourhood fill value is the last channel index + 1 by default instead of 384
Expand All @@ -58,7 +61,6 @@
- `ibldsp.voltage.saturation()` is a function that returns a boolean array indicating which samples are saturated, and a mute function
- `ibldsp.voltage.decompress_destripe_cbin` saves a `_iblqc_ephysSaturation.samples.npy` and applies the mute function post-destriping

# 0.10.0
## 0.10.3 2024-04-18
- Patch fixing memory leaks for `waveform_extraction` module.
## 0.10.2 2024-04-10
Expand All @@ -69,21 +71,17 @@
## 0.10.0 2024-03-14
- add support for online spikeglx reader

# 0.9.0
## 0.9.2 2024-02-08
- `neurodsp` is now `ibldsp`. Drop-in replacement of the package name is all that is required to update. The `neurodsp` name will disappear on 01-Sep-2024; until then both names will work.
## 0.9.0 2024-01-17
- `neurodsp.utils.sync_timestamps`: uses FFT based correlation to speed up large arrays alignments
- `waveforms`: new wiggle plot for multi-trace waveforms

# 0.8.0
## 0.8.1 2023-09-21
- revert to reading channel info from private methods in shank splitting NP2.4 code to get the original channel layout from shank metadata file
## 0.8.0 2023-09-01
- add compatibility with spikeglx metadata version 2023-04 to get probe geometry

# 0.7.0

## 0.7.0 2023-06-29
- Add function `spike_venn3` in new module `neurodsp.spiketrains`
- Update `iblutil` dependency to 1.7.0 to use `iblutil.numerical.bincount2D`
Expand All @@ -97,7 +95,6 @@
## 0.6.0 2023-05-15
- Add waveforms utilities for spike features computations

# 0.5.0
## 0.5.3 2023-04-24
- Fix for cases where channel map keys are not present

Expand All @@ -112,28 +109,23 @@
- KCSD option for LFP current source density
- Cadzow for NP1: expose spatial parameters for LFP

# 0.4.0
## 0.4.1 2022-11-29
- CAT GT command in meta file

## 0.4.0 2022-10-28
- current source density simple double diff with denoising from raw LFP

# 0.3.0
-
## 0.3.2 2022-10-27
- spikeglx geometry chops the ADC sample shift to the number of channels to accomodate legacy 3A probes with 276 channels
- agc: gain refers to the inverse of applied gains for agc - done to handle dead channels in destriping
-
## 0.3.1
- neurodsp.utils.rises / falls: detects rising and falling edges of oversampled analog signals


## 0.3.0
- neuropixel: add functions to reconstruct original files from split NP2.4 files

## minor changes
- support for returning number of shanks from metadata

# 0.2.0
## 0.2.2
- BUGFIX change getattr of `neuropixel` to allow for stared imports

Expand All @@ -147,3 +139,4 @@
## minor changes
- deprecated SITES_COORDINATES that would default on Neuropixel 1.0 early generations (3A probes with 374 channels)
- spikeglx compress: pass dtype to mtscomp
-
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

setuptools.setup(
name="ibl-neuropixel",
version="1.5.0",
version="1.6.0",
author="The International Brain Laboratory",
description="Collection of tools for Neuropixel 1.0 and 2.0 probes data",
long_description=long_description,
Expand Down
2 changes: 1 addition & 1 deletion src/ibldsp/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ def parabolic_max(x):
)
)
poly = np.matmul(0.5 * np.array([[1, -2, 1], [-1, 0, 1], [0, 2, 0]]), v010)
ipeak = -poly[1] / (poly[0] + np.double(np.sum(poly[0] == 0))) / 2
ipeak = -poly[1] / (poly[0] + np.double(poly[0] == 0)) / 2
maxi = poly[2] + ipeak * poly[1] + ipeak**2.0 * poly[0]
ipeak += imax
# handle edges
Expand Down
1 change: 1 addition & 0 deletions src/ibldsp/voltage.py
Original file line number Diff line number Diff line change
Expand Up @@ -907,6 +907,7 @@ def current_source_density(lfp, h, n=2, method="diff", sigma=1 / 3):
).values("CSD")
return csd


def _svd_denoise(datr, rank):
"""
SVD Encoder: does the decomposition, derank the mtrix and reproject in the feature's space
Expand Down
3 changes: 0 additions & 3 deletions src/tests/unit/test_ibldsp.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,6 @@ class TestParabolicMax(unittest.TestCase):
]
)

def test_error_cases(self):
pass

def test_2d(self):
ipeak_, maxi_ = utils.parabolic_max(self.x)
self.assertTrue(np.all(np.isclose(self.maxi, maxi_, equal_nan=True)))
Expand Down

0 comments on commit 2af823b

Please sign in to comment.