Releases: int-brain-lab/ibllib
Releases · int-brain-lab/ibllib
3.4.1
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[3.4.1] 2025-07-02
Fixed
- SpikeSortingLoader takes into account revisions
- There is a specific test for
spikeinterface
CI in our integration tests
Release Note 3.4.0
features
- Add revision as a kwarg to the spike sorting loader
- Register bin files to flatiron
- Ensure pre-existing compressed files are verified and registered
- Only update relevant collections in update_collections
- Update extended QC with task number prefix
- Update trials extractors to handle clean first trial
- Pin numpy to >=1.18,<=2.2 (numpy 2.3 is not compatible with numba)
oneibl.patcher.patch_dataset
: revert from clobber to force- Ensure session paths are ALFPath instances
- Update dataset QC
- Handle
None
session path - Add options for SDSC and EC2 patchers
- Use ALFPath objects in
Task
andDataHandler
classes
Release Note 3.3.1
Bugfixes
- SpikeSortingLoader: returns channels from 'electrodeSites' if available (it always was the intention...)
Release Note 3.3.0
features
- ONE 3
- Handle extraction of sessions where first Bpod trial missed on FPGA
- Support for multi depth sessions by passing slices kwarg to suite2p fork
- Selectively remove old FOV datasets in MesoscopePreprocess
- Added starplot function
- Improvements to LightningPose and SpikeSorting tasks
Bugfixes
- Add back PROJECT_EXTRACTION_VERSION and TASK_VERSION to session JSON
- Fix error in MesoscopeCompress when compressing multiply imaging bouts
- Fix error in MesoscopeSync.setUp with remote location
Release Note 3.2.0
features
- Add session delay info during registration of Bpod session
- Add detailed criteria info to behaviour plots
- Add column filtering, sorting and color-coding of values to metrics table of
task_qc_viewer
Bugfixes
- Read in updated json keys from task settings to establish ready4recording
- Handle extraction of sessions with dud spacers
Release Note 3.1.0
features
- Add narrative during registration of Bpod session
Release Note 3.0.0
features
- Support for py3.8 and 3.9 dropped
- JobCreator Alyx task
- Photometry sync task
- Remove deprecated code, incl. iblatlas and brainbox/quality
- Bugfix: badframes array dtype change int8 -> uint32
- Brain wide map release information
- Limited Numpy 2.0 and ONE 3.0 support
Release Note 2.40.0
features
- iblsorter >= 1.9 sorting tasks with waveform extraction and channel sorting
- s3 patcher prototype
2.40.1
- Bugfix: ibllib.io.sess_params.merge_params supports tasks extractors key
2.40.2
- Bugfix: badframes array dtype change int8 -> uint32
Release Note 2.39.0
features
- register inputs without rename in registerSnapshots
- iterate only plane folders in Suite2P
- removed old pipeline
bugfixes
- NeuromodulatorCW is a subclass of Advanced CW regarding debiasing
- Behaviour QC: StimFreeze QC due to indexing errors, ITI duration and negative feedback delay for nogo trials
- Camera QC fixes
2.39.1
- Bugfix: brainbox.metrics.single_unit.quick_unit_metrics fix for indexing of n_spike_below2
2.39.2
- Bugfix: routing of protocol to extractor through the project repository checks that the
target is indeed an extractor class.
Release Note 2.38.0
features
- Support running large pipeline jobs within multiple python environments
- Extraction and QC of of task pause periods
- Register animated GIF snapshots and tiff images
- Load waveforms low level changes in spike sorting loader
- Loading of additional channel object attributes (qc labels) in spike sorting loader
- Stimulus times now extracted in a more robust manner
bugfixes
- Fix in training plots when no trials in block
Release Note 2.37.0
features
- Add code in preparation for retirement of old training and ephys local server pipelines
bugfixes
- Change handling of trials extraction of iblrigv8 sessions such that pregenerated session is not used
Release Note 2.36.0
features
- Adding spike sorting iblsort task
Release Note 2.35.0
features
- Adding LightningPose task
bugfixes
- SessionLoader can now handle trials that are not in the alf collection
- Extraction of trials from pre-generated sequences supports iblrigv8 keys
2.35.1
- Ensure no REST cache used when searching sessions in IBLRegistationClient
2.35.2
- Flag to allow session registration without water administrations
- Support extraction of repNum for advancedChoiceWorld
- Support matplotlib v3.9; min slidingRP version now 1.1.1
2.35.3
- Use correct task for timeline acquisitions in make_pipeline
Release Note 2.34.0
features
- Task assert_expected_input now take into account revisions
- Camera qc and video motion now take into account dynamic pipeline folder
bugfixes
- Typo in raw_ephys_data documentation
- oneibl.register_datasets accounts for non existing sessions when checking protected dsets
2.34.1
- Ensure mesoscope frame QC files are sorted before concatenating
- Look for SESSION_TEMPLATE_ID key of task settings for extraction of pre-generated choice world sequences
- Download required ap.meta files when building pipeline for task_qc command
Release Note 2.33.0
features
- Datasets no longer registered by default if protected, need to force registration
- Tasks now allows datasets to be registered before qc computation
- Histology channel upload now reads in channel map from data when available
bugfixes
- PostDLC tasks looks in alf folder for lick datasets
Release Notes 2.32
features
- SDSC patcher automatically support revisions
other
- Add extra key to alignment qc with manual resolution for channel upload
2.32.3
- FpgaTrials supports alignment of Bpod datasets not part of trials object
- Support chained protocols in BehaviourPlots task
2.32.4
- Add support for variations of the biaseCW task in the json task description
2.32.5
- Minor fixes to IBL registration client, including use of SESSION_END_TIME key
Release Notes 2.31
features
- Training status uses new extractor map
- Refactor neurodsp to ibldsp
- ITI qc check for iblrig v8
- Support habituationChoiceWorld extraction in iblrig v8.15.0
bugfixes
- NP2 waveforms extracted with correct dtype
- Sorted cluster ids in single unit metrics
Release Notes 2.30
features
- Task QC viewer
- Raw ephys data loading documentation
other
- Pandas 3.0 support
Release Notes 2.29
features
- Added raw data loaders and synchronisation tools in brainbox.io.one.SpikeSortingLoader, method
ssl.raw_electrophysiology()
Release Notes 2.28
features
- Added ibllib.pipes.dynamic_pipeline.get_trials_tasks function
bugfixes
- Fix ibllib.io.extractors.ephys_fpga.extract_all for python 3.8
other
- Change behavior qc to pass if number of trials > 400 (from start) can be found for which easy trial performance > 0.9
2.28.1
- Typo in ibllib.pipes.video_tasks.EphysPostDLC class
- ibllib.io.raw_data_loaders.patch_settings works with iblrigv8 settings files
2.28.2
- Fix loading of personal projects extractor map
Release Notes 2.27
features
- Add full video wheel motion alignment code to ibllib.io.extractors.video_motion module
- Change FPGA camera extractor to attempt wheel alignment if audio alignment fails
- Flexible FpgaTrials class allows subclassing for changes in hardware and task
- Task QC thresholds depend on sound card
- Extractor classes now return dicts instead of tuple
- Support extraction of habituationChoiceWorld with FPGA
- New IBLGlobusPatcher class allows safe and complete deletion of datasets
bugfixes
- Fix numpy version dependent error in io.extractors.camera.attribute_times
- Fix for habituationChoiceWorld stim off times occuring outside of trial intervals
- Improvements to Timeline trials extractor, especially for valve open times
- trainingPhaseChoiceWorld added to Bpod protocol extractor map fixture
- Last trial of FPGA sessions now correctly extracted
- Correct dynamic pipeline extraction of passive choice world trials
2.27.1
- Correct handling of missing TTLs in FpgaTrialsHabituation
other
- Removed deprecated pyschofit module
- Deprecated oneibl.globus module in favour of one.remote.globus
- Deprecated qc.task_extractors in favour of behaviour pipeline tasks
Release Notes 2.26
features
- Deprecate ibllib.atlas. Code now contained in package iblatlas
bugfixes
2.26.1
- fix typo in criterion_ephys where lapse high for 0.8 blocks only passed when non-zero.
Release Notes 2.25
features
- Training status pipeline now compatible with dynamic pipeline
- Dynamic DLC task using description file
- Full photometry lookup table
bugfixes
- fix for untrainable, unbiasable don't repopulate if already exists
2.25.1
- relax assertion on Neuropixel channel mappings to allow for personal projects
2.25.2
- listing of all collections does not skip repeat task protocols anymore for copy/extraction
Release Notes 2.23
Release Notes 2.23.1 2023-06-15
features
- split swanson areas
bugfixes
- trainig plots
- fix datahandler on SDSC for ONEv2
Release Notes 2.23.0 2023-05-19
- quiescence period extraction
- ONEv2 requirement
Release Notes 2.22
Release Notes 2.22.3 2023-05-03
same as 2.22.2 (I messed up the release sorry)
Release Notes 2.22.2 2023-05-03
bugfixes
- training plots
features
- can change download path for atlas
Release Notes 2.22.1 2023-05-02
bugfixes
- use session path in training status task
Release Notes 2.22.0
features
- trials extractors support omissions trials from neuromodulator tasks
- SpikeSortingLoader and EphysSessionLoader utils functions to load re...
3.4.0
What's Changed
- adding revision as a kwarg to the spike sorting loader by @grg2rsr in #958
- Register bin files to flatiron (issue #988) by @k1o0 in #993
- Update extended QC with task number prefix by @k1o0 in #996
- update trials extractors to handle clean first trial by @bimac in #997
- add options for SDSC and EC2 patchers by @oliche in #937
- 3.4.0 by @bimac in #1000
Full Changelog: 3.3.1...3.4.0
Release 3.3.1
Critical Bugfix
- SpikeSortingLoader: returns channels from 'electrodeSites' when available
What's Changed
- Docs by @mayofaulkner in #952
- add more info when sync task tails to the error message by @grg2rsr in #955
- Allow protocol_number in experiment description (resolves issue #942) by @k1o0 in #949
- Manual curation ssloader by @mayofaulkner in #954
- Support extraction of multi-depth frame times by @k1o0 in #961
- IBL Globus patcher fix by @k1o0 in #963
- Timeline trials habituation by @k1o0 in #965
- Ensure user prop set for register snapshots method (issue #964) by @k1o0 in #966
- Fix register kwarg in chained expected datasets (issue #972) by @k1o0 in #973
- Minor fix to MesoscopePreprocess._consolidate_exptQC by @k1o0 in #986
- SpikeSortingLoader channels from electrodeSites by @oliche in #985
New Contributors
Full Changelog: 3.3.0...3.3.1
3.3.0
Release Note 3.3.0
features
- ONE 3
- Handle extraction of sessions where first Bpod trial missed on FPGA
- Support for multi depth sessions by passing slices kwarg to suite2p fork
- Selectively remove old FOV datasets in MesoscopePreprocess
- Added starplot function
- Improvements to LightningPose and SpikeSorting tasks
Bugfixes
- Add back PROJECT_EXTRACTION_VERSION and TASK_VERSION to session JSON
- Fix error in MesoscopeCompress when compressing multiply imaging bouts
- Fix error in MesoscopeSync.setUp with remote location
2.40.1
2.40.0
2.39.0
What's Changed
- Docs by @mayofaulkner in #809
- update wf extractions args in
SpikeSorting
task by @chris-langfield in #807 SpikeSortingLoader.raw_waveforms()
by @chris-langfield in #823- Force dynamic by @k1o0 in #813
- Remove old pipeline by @k1o0 in #840
- Aggregate trials by @k1o0 in #843
- Aggregate training by @k1o0 in #844
- Docs by @mayofaulkner in #847
- Camera fixes by @mayofaulkner in #849
- Mesoscope preprocess class by @k1o0 in #851
- Mesoscope preprocess class by @k1o0 in #855
- AlyxClient instead of ONE in report_health by @k1o0 in #856
- Qc fixes by @oliche in #852
- iterate only plane folders in suite2p dir by @k1o0 in #860
- Register inputs without rename in RegisterSnapshots by @k1o0 in #861
- neuromodulatorCW it a subclass of advancedCW by @oliche in #859
Full Changelog: 2.38.0...2.39.0
2.38.0
Release Note 2.38.0
features
- Support running large pipeline jobs within multiple python environments
- Extraction and QC of of task pause periods
- Register animated GIF snapshots and tiff images
- Load waveforms low level changes in spike sorting loader
- Loading of additional channel object attributes (qc labels) in spike sorting loader
- Stimulus times now extracted in a more robust manner
bugfixes
- Fix in training plots when no trials in block
2.37.0
What's Changed
- Passive extractions by @mayofaulkner in #785
- Support the upload of animated GIF files without resizing by @k1o0 in #780
- Legacy retirement by @k1o0 in #783
- Ephys trials v8 by @mayofaulkner in #789
- fix to check for incorrect namespace when sync is nidq by @mayofaulkner in #790
Full Changelog: 2.36.0...2.37.0
2.36.0
What's Changed
- Docs by @mayofaulkner in #781
- Spike sorting rerun by @chris-langfield in #755
Full Changelog: 2.35.3...2.36.0