This new stable version of MOABB brings several new features (details below) and this is a new major version as the integration of BIDS compatibility was the opportunity to normalize dataset names, including a more regular naming scheme for sessions and runs. New addition includes support for new datasets, including cVEP ones.
**API changes**
- Renaming datasets, sessions and runs, see [455](https://github.com/NeuroTechX/moabb/issues/455) and [#471](https://github.com/NeuroTechX/moabb/issues/471)
**Enhancements**
- Adding extra thank you section in the documentation ([390](https://github.com/NeuroTechX/moabb/issues/390) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Adding new script to get the meta information of the datasets ([389](https://github.com/NeuroTechX/moabb/issues/389) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Fixing the dataset description based on the meta information ([389](https://github.com/NeuroTechX/moabb/issues/389) and 398 by [Bruno Aristimunha](https://github.com/bruAristimunha) and [Sara Sedlar](https://github.com/Sara04))
- Adding second deployment of the documentation ([374](https://github.com/NeuroTechX/moabb/issues/374) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Adding Parallel evaluation for [moabb.evaluations.WithinSessionEvaluation()](https://neurotechx.github.io/moabb/generated/moabb.evaluations.WithinSessionEvaluation.html#moabb.evaluations.WithinSessionEvaluation) , [moabb.evaluations.CrossSessionEvaluation()](https://neurotechx.github.io/moabb/generated/moabb.evaluations.CrossSessionEvaluation.html#moabb.evaluations.CrossSessionEvaluation) ([364](https://github.com/NeuroTechX/moabb/issues/364) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Add example with VirtualReality BrainInvaders dataset ([393](https://github.com/NeuroTechX/moabb/issues/393) by [Gregoire Cattan](https://github.com/gcattan) and [Pedro L. C. Rodrigues](https://github.com/plcrodrigues))
- Adding saving option for the models ([401](https://github.com/NeuroTechX/moabb/issues/401) by [Bruno Aristimunha](https://github.com/bruAristimunha) and [Igor Carrara](https://github.com/carraraig))
- Adding example to load different type of models ([401](https://github.com/NeuroTechX/moabb/issues/401) by [Bruno Aristimunha](https://github.com/bruAristimunha) and [Igor Carrara](https://github.com/carraraig))
- Add resting state paradigm with dataset and example ([400](https://github.com/NeuroTechX/moabb/issues/400) by [Gregoire Cattan](https://github.com/gcattan) and [Pedro L. C. Rodrigues](https://github.com/plcrodrigues))
- Speeding the augmentation method by 400% with NumPy vectorization ([419](https://github.com/NeuroTechX/moabb/issues/419) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Add possibility to convert datasets to BIDS, plus [example](https://neurotechx.github.io/moabb/examples/example_bids_conversion.py) (PR [#408](https://github.com/NeuroTechX/moabb/issues/408), PR [#391](https://github.com/NeuroTechX/moabb/issues/391) by [Pierre Guetschel](https://github.com/PierreGtch) and [Bruno Aristimunha](https://github.com/bruAristimunha))
- Allow caching intermediate processing steps on disk, plus [example](https://neurotechx.github.io/moabb/examples/example_disk_cache.py) (PR [#408](https://github.com/NeuroTechX/moabb/issues/408), issue [#385](https://github.com/NeuroTechX/moabb/issues/385) by [Pierre Guetschel](https://github.com/PierreGtch))
- Restructure the paradigms and datasets to move all preprocessing steps to moabb.datasets.preprocessing and as sklearn pipelines (PR [408](https://github.com/NeuroTechX/moabb/issues/408) by [Pierre Guetschel](https://github.com/PierreGtch))
- Add [moabb.paradigms.FixedIntervalWindowsProcessing()](https://neurotechx.github.io/moabb/generated/moabb.paradigms.FixedIntervalWindowsProcessing.html#moabb.paradigms.FixedIntervalWindowsProcessing) and [moabb.paradigms.FilterBankFixedIntervalWindowsProcessing()](https://neurotechx.github.io/moabb/generated/moabb.paradigms.FilterBankFixedIntervalWindowsProcessing.html#moabb.paradigms.FilterBankFixedIntervalWindowsProcessing), plus [example](https://neurotechx.github.io/moabb/examples/example_fixed_interval_windows.py) (PR [#408](https://github.com/NeuroTechX/moabb/issues/408), issue [#424](https://github.com/NeuroTechX/moabb/issues/424) by [Pierre Guetschel](https://github.com/PierreGtch))
- Define [moabb.paradigms.base.BaseProcessing()](https://neurotechx.github.io/moabb/generated/moabb.paradigms.base.BaseProcessing.html#moabb.paradigms.base.BaseProcessing), common parent to [moabb.paradigms.base.BaseParadigm()](https://neurotechx.github.io/moabb/generated/moabb.paradigms.base.BaseParadigm.html#moabb.paradigms.base.BaseParadigm) and [moabb.paradigms.BaseFixedIntervalWindowsProcessing()](https://neurotechx.github.io/moabb/generated/moabb.paradigms.BaseFixedIntervalWindowsProcessing.html#moabb.paradigms.BaseFixedIntervalWindowsProcessing) (PR [408](https://github.com/NeuroTechX/moabb/issues/408) by [Pierre Guetschel](https://github.com/PierreGtch))
- Allow passing a fixed processing pipeline to [moabb.paradigms.base.BaseProcessing.get_data()](https://neurotechx.github.io/moabb/generated/moabb.paradigms.base.BaseProcessing.html#moabb.paradigms.base.BaseProcessing.get_data) and cache its result on disk (PR [408](https://github.com/NeuroTechX/moabb/issues/408), issue [#367](https://github.com/NeuroTechX/moabb/issues/367) by [Pierre Guetschel](https://github.com/PierreGtch))
- Update [moabb.datasets.fake.FakeDataset()](https://neurotechx.github.io/moabb/generated/moabb.datasets.fake.FakeDataset.html#moabb.datasets.fake.FakeDataset)’s code to be unique for each parameter combination (PR [408](https://github.com/NeuroTechX/moabb/issues/408) by [Pierre Guetschel](https://github.com/PierreGtch))
- Systematically set the annotations when loading data, eventually using the stim channel (PR [408](https://github.com/NeuroTechX/moabb/issues/408) by [Pierre Guetschel](https://github.com/PierreGtch))
- Allow [moabb.datasets.utils.dataset_search()](https://neurotechx.github.io/moabb/generated/moabb.datasets.utils.dataset_search.html#moabb.datasets.utils.dataset_search) to search across paradigms paradigm=None (PR [408](https://github.com/NeuroTechX/moabb/issues/408) by [Pierre Guetschel](https://github.com/PierreGtch))
- Improving the review processing with more pre-commit bots ([435](https://github.com/NeuroTechX/moabb/issues/435) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Add methods make_processing_pipelines and make_labels_pipeline to [moabb.paradigms.base.BaseProcessing](https://neurotechx.github.io/moabb/generated/moabb.paradigms.base.BaseProcessing.html#moabb.paradigms.base.BaseProcessing) ([447](https://github.com/NeuroTechX/moabb/issues/447) by [Pierre Guetschel](https://github.com/PierreGtch))
- Pipelines’ digests are now computed from the whole processing+classification pipeline ([447](https://github.com/NeuroTechX/moabb/issues/447) by [Pierre Guetschel](https://github.com/PierreGtch))
- Update all dataset codes to remove white spaces and underscores ([448](https://github.com/NeuroTechX/moabb/issues/448) by [Pierre Guetschel](https://github.com/PierreGtch))
- Add moabb.utils.depreciated_alias() decorator ([455](https://github.com/NeuroTechX/moabb/issues/455) by [Pierre Guetschel](https://github.com/PierreGtch))
- Rename many dataset class names to standardize and deprecate old names ([455](https://github.com/NeuroTechX/moabb/issues/455) by [Pierre Guetschel](https://github.com/PierreGtch))
- Change many dataset codes to match the class names ([455](https://github.com/NeuroTechX/moabb/issues/455) by [Pierre Guetschel](https://github.com/PierreGtch))
- Add moabb.datasets.compound_dataset.utils.compound_dataset_list ([455](https://github.com/NeuroTechX/moabb/issues/455) by [Pierre Guetschel](https://github.com/PierreGtch))
- Add c-VEP paradigm and Thielen2021 c-VEP dataset ([463](https://github.com/NeuroTechX/moabb/issues/463) by [Jordy Thielen](https://github.com/thijor))
- Add option to plot scores vertically. ([417](https://github.com/NeuroTechX/moabb/issues/417) by [Sara Sedlar](https://github.com/Sara04))
- Change naming scheme for runs and sessions to align to BIDS standard ([471](https://github.com/NeuroTechX/moabb/issues/471) by [Pierre Guetschel](https://github.com/PierreGtch))
- Increase the python version to 3.11 ([470](https://github.com/NeuroTechX/moabb/issues/470) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Add match_all method in paradigm to support CompoundDataset evaluation with MNE epochs ([473](https://github.com/NeuroTechX/moabb/issues/473) by [Gregoire Cattan](https://github.com/gcattan))
- Automate setting of event_id in compound dataset and add data_origin information to the data ([475](https://github.com/NeuroTechX/moabb/issues/475) by [Gregoire Cattan](https://github.com/gcattan))
- Add possibility of not saving the model ([489](https://github.com/NeuroTechX/moabb/issues/489) by [Igor Carrara](https://github.com/carraraig))
**Bugs**
- Restore 3 subject from Cho2017 ([392](https://github.com/NeuroTechX/moabb/issues/392) by [Igor Carrara](https://github.com/carraraig) and [Sylvain Chevallier](https://github.com/sylvchev))
- Correct downloading with VirtualReality BrainInvaders dataset ([393](https://github.com/NeuroTechX/moabb/issues/393) by [Gregoire Cattan](https://github.com/gcattan))
- Rename event subtraction in [moabb.datasets.Shin2017B()](https://neurotechx.github.io/moabb/generated/moabb.datasets.Shin2017B.html#moabb.datasets.Shin2017B) ([397](https://github.com/NeuroTechX/moabb/issues/397) by [Pierre Guetschel](https://github.com/PierreGtch))
- Save parameters of [moabb.datasets.PhysionetMI()](https://neurotechx.github.io/moabb/generated/moabb.datasets.PhysionetMI.html#moabb.datasets.PhysionetMI) ([403](https://github.com/NeuroTechX/moabb/issues/403) by [Pierre Guetschel](https://github.com/PierreGtch))
- Fixing issue with parallel evaluation ([401](https://github.com/NeuroTechX/moabb/issues/401) by [Bruno Aristimunha](https://github.com/bruAristimunha) and [Igor Carrara](https://github.com/carraraig))
- Fixing SSLError from BCI competition IV ([404](https://github.com/NeuroTechX/moabb/issues/404) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Fixing moabb.datasets.bnci.MNEBNCI.data_path() that returned the data itself instead of paths ([412](https://github.com/NeuroTechX/moabb/issues/412) by [Pierre Guetschel](https://github.com/PierreGtch))
- Adding moabb.datasets.fake() in the init file to use in braindecode object ([414](https://github.com/NeuroTechX/moabb/issues/414) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Fixing the parallel download issue when the dataset have the same directory ([421](https://github.com/NeuroTechX/moabb/issues/421) by [Sara Sedlar](https://github.com/Sara04))
- Fixing fixes the problem with the annotation loading for the P300 datasets Sosulski2019, Huebner2017 and Huebner2018 ([396](https://github.com/NeuroTechX/moabb/issues/396) by [Sara Sedlar](https://github.com/Sara04))
- Removing the print in the dataset list ([423](https://github.com/NeuroTechX/moabb/issues/423) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Fixing bug in moabb.pipeline.utils_pytorch.BraindecodeDatasetLoader() where incorrect y was used in transform calls ([426](https://github.com/NeuroTechX/moabb/issues/426) by [Gabriel Schwartz](https://github.com/Kaos9001))
- Fixing one test in moabb.pipeline.utils_pytorch.BraindecodeDatasetLoader() ([426](https://github.com/NeuroTechX/moabb/issues/426) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Fix [moabb.benchmark()](https://neurotechx.github.io/moabb/generated/moabb.benchmark.html#moabb.benchmark) overwriting include_datasets list ([408](https://github.com/NeuroTechX/moabb/issues/408) by [Pierre Guetschel](https://github.com/PierreGtch))
- Fix [moabb.paradigms.base.BaseParadigm()](https://neurotechx.github.io/moabb/generated/moabb.paradigms.base.BaseParadigm.html#moabb.paradigms.base.BaseParadigm) using attributes before defining them (PR [408](https://github.com/NeuroTechX/moabb/issues/408), issue [#425](https://github.com/NeuroTechX/moabb/issues/425) by [Pierre Guetschel](https://github.com/PierreGtch))
- Fix moabb.paradigms.FakeImageryParadigm(), moabb.paradigms.FakeP300Paradigm() and moabb.paradigms.FakeSSVEPParadigm() is_valid methods to only accept the correct datasets (PR [408](https://github.com/NeuroTechX/moabb/issues/408) by [Pierre Guetschel](https://github.com/PierreGtch))
- Fix dataset_list construction, which could be empty due to bad import order (PR [449](https://github.com/NeuroTechX/moabb/issues/449) by [Thomas Moreau](https://github.com/tommoral)).
- Fixing dataset downloader from servers with non-http (PR [433](https://github.com/NeuroTechX/moabb/issues/433) by [Sara Sedlar](https://github.com/Sara04))
- Fix dataset_list to include deprecated datasets (PR [464](https://github.com/NeuroTechX/moabb/issues/464) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Fixed bug in moabb.analysis.results.get_string_rep() to handle addresses such as 0x__0A as well (PR [468](https://github.com/NeuroTechX/moabb/issues/468) by [`Anton Andreev`_](https://neurotechx.github.io/moabb/whats_new.html#id37))
- Moving the moabb.evualation.grid_search() to inside the base evaluation ([487](https://github.com/NeuroTechX/moabb/issues/487) by [Bruno Aristimunha](https://github.com/bruAristimunha))
- Removing joblib Parallel ([488](https://github.com/NeuroTechX/moabb/issues/488) by [Igor Carrara](https://github.com/carraraig))
- Fix case when events specified via raw.annotations but no events ([491](https://github.com/NeuroTechX/moabb/issues/491) by [Pierre Guetschel](https://github.com/PierreGtch))
- Fix bug in downloading Shin2017A dataset ([493](https://github.com/NeuroTechX/moabb/issues/493) by [Igor Carrara](https://github.com/carraraig))
- Fix the cropped option in the dataset preprocessing ([502](https://github.com/NeuroTechX/moabb/issues/502) by [Bruno Aristimunha](https://github.com/bruAristimunha))