Skip to content

Conversation

@tab-cmd
Copy link
Contributor

@tab-cmd tab-cmd commented Aug 24, 2025

Overview

The official release of BciPy version 2.0 is here!

Major Changes

The 2.0 release will be the first non-release candidate to merge with the main branch. This is what has changed since the last release candidate.

Note: All other functionality described in rc1-4 is also included here for the major release.

Testing

  • make test-all
  • TimeTesting

Documentation

This release features significant documentation improvements in both top-level READMEs and docstrings. While the coverage is not 100%, most major functionality is covered by unit tests, linting, and typing.

lawhead and others added 24 commits March 7, 2025 17:03
… file. Added script for generating marker data and documented its usage.
* add script for simulating lm change with different phrases, small updates

* add processing script, add NullDAQ

* Update to custom typing parameters

TODO: finish processing script, integrate LLM

* Add progress bar and WIP update to average phrases across LM

* update the process script to the new output format

* Add final phrases

* add plotting and stats to the processing script

* add missing params command

* add more logging and custom metrics

* Integration of causal model, add phrases, update processing scripts

* matrix processing

* update figure

* move script to a group demo

* reset devices default

* remove retry logic from language model init

* reset static defaults

* update parameters

* remove bad test

* lint

* remove integration tests (for now) and add some info to sim README + linting

* drop support for 3.8

* Added textpredict dependency, removed LM dependencies that are included in that package now

* Refactored main language model classes into adapters that use the new textpredict package

* Renamed ngram model

* Updated imports

* More ngram renaming

* More ngram renaming, adjusted mixture default params

* Updated textpredict version

* Converted mixture model to adapter

* Conveted oracle model into adapter

* Deprecated InvalidLanguageModelException from bcipy in favor of aactextpredict's exception

* Upgraded transformers version to address pytorch deprecation warnings

* Adjusted max bump to 1, all mass on target

* Updated test cases to use adapters

* Store bcipy symbol set alongside toolkit model symbol set

* Updated demos to use new adapter classes

* Updated test class names

* Fixed LM class references

* Updated LM documentation

* Fixed misc LM class references

* Updated LM class references

* lint

* Update textpredict dependency to fix 3.10

* Converted LanguageModelAdapter base class to BciPyLanguageModel protocol. Adjusted subclasses and references

* Restored BciPy's own uniform model

* Renamed base LM class back to LanguageModel

* Removed language module exclusion from mypy

* Deprecated response type, added separate protocols for char and word LMs

* Updated dependency to the new toolkit name

* Loosened textslinger dependency to allow minor changes without updating requirement every time

* Refactored Language Model protocols; fixed linting issues and import sort order.

---------

Co-authored-by: Tab Memmott <[email protected]>
Co-authored-by: lawhead <[email protected]>
Organized imports across the code base
@tab-cmd tab-cmd requested a review from celikbasak August 24, 2025 19:18
@tab-cmd tab-cmd self-assigned this Aug 24, 2025
@codacy-production
Copy link

Coverage summary from Codacy

See diff coverage on Codacy

Coverage variation Diff coverage
Report missing for b551dbc1 75.16% (target: 10.00%)
Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (b551dbc) Report Missing Report Missing Report Missing
Head commit (e40b9d3) 9104 6153 67.59%

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#394) 2758 2073 75.16%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

See your quality gate settings    Change summary preferences

Footnotes

  1. Codacy didn't receive coverage data for the commit, or there was an error processing the received data. Check your integration for errors and validate that your coverage setup is correct.

Copy link
Member

@celikbasak celikbasak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Huge release! Thank you Tab!!

@tab-cmd tab-cmd merged commit bc44ae7 into main Aug 25, 2025
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants