Skip to content

Commit

Permalink
BETSE 1.4.1: The Resurrection of BETSE
Browse files Browse the repository at this point in the history
Welcome to **BETSE 1.4.1,** the first stable release of BETSE in (*almost exactly*) two years! Let's model some bioelectricity. 🥳

## Install All this Good Stuff! 👇

Like all prior BETSE releases, **BETSE 1.4.1** is publicly available via both [`pip` + PyPI](https://pypi.org/project/betse) and [`conda` + @conda-forge](https://anaconda.org/conda-forge/betse). Pick your open-source packaging ~~poison~~ solution:

* **"I choose `pip`!"** *Excellent choice.* Everyone feels peppy with `pip`:

  ```bash
  pip install --upgrade betse
  ```

* **"I choose `conda`!"** *Also excellent.* You can't go wrong with reptiles:

  ```bash
  conda config --add channels conda-forge
  conda install betse
  ```

## Verify That BETSE Still Behaves Itself! 👌

After upgrading to *any* new BETSE version (including **BETSE 1.4.1**), it's a great idea to validate that BETSE still behaves itself. Just run the ``betse try`` subcommand from a temporary directory you don't particularly care about: e.g.,

```bash
cd /tmp
betse try
```

You should see an animated plot of a sample bioelectric simulation subject to a **cut profile** (i.e., sudden removal of cells mimicking a tissue wound). If you see something *other* than that, see the "B-b-but Nothing Works..." section below. 😮‍💨

## What's So Good about BETSE 1.4.1, Anyway? 🤔

**Everything.** Literally everything. **BETSE 1.4.1** is a whole new computational beast.

Prior versions of BETSE (like BETSE 1.3.0) no longer run under a modern Python workflow. Incompatibilities with recent scientific dependencies (like NumPy 2.0.0, SciPy 1.14.0, and Matplotlib 3.9.0) render prior versions of BETSE all but unusable.

**BETSE 1.4.1** resolves *all* outstanding issues, deprecations, exceptions, and warnings by:

* Requiring a modern version of CPython: **CPython ≥ 3.11.** 🌝
* Requiring recent versions of most scientific dependencies, including:
  * **NumPy ≥ 2.0.0.** ✔️
  * **SciPy ≥ 1.14.0.** ✔️
  * **Matplotlib ≥ 3.9.0.** ✔️
  * **@beartype ≥ 0.18.0.** ✔️
* Refactoring the BETSE build system from the antiquated `setuptools` + `setup.py` <sup> 🤮 </sup> to [**Hatch**](https://github.com/pypa/hatch) + `pyproject.toml`. <sup> 🥂 </sup>
* Runtime type-checking the entire BETSE codebase with @beartype – a [hyper-fast standards-compliant type-checker designed from the ground-up for scientific workloads](https://github.com/beartype/beartype/). 😮

## "B-b-but Nothing Works, Everything Is Busted, and My Paper Is Due in 5 Minutes!"

Having issues... *again*? Seeing a slew of exceptions? Drowning in a deluge of warnings? Fear not. We are here for you and your exciting research. Please submit:

* All [**issues** and **feature requests** directly to our friendly issue tracker here on **GitHub**](https://github.com/betsee/betse/issues). Let us assuage your valid problems.
* All [**scientific inquiries** and **collaborative inspiration** directly to Dr. Alexis Pietak at **ResearchGate**](https://www.researchgate.net/profile/Alexis-Pietak). Science!

## This Is Where We Thank You 👏

The principal authors of BETSE – [Dr. Alexis Pietak (@pietakio)](https://www.researchgate.net/profile/Alexis-Pietak) and [Cecil Curry (@leycec)](https://github.com/leycec) – humbly thank *everyone* for your renewed interest in BETSE. Together, we will model all the bioelectricity.

We'd also like to congratulate [Dr. Andre Norfleet](https://bioengineering.gatech.edu/index.php/user/andre-norfleet) on his [recent explosive Cells 2024 submission: **"Identification of Distinct, Quantitative Pattern Classes from Emergent Tissue-Scale hiPSC Bioelectric Properties"**](https://www.mdpi.com/2073-4409/13/13/1136). This *super*-exciting paper leverages BETSE to validate experimental bioelectric findings. Due in large part to this paper's high-profile inclusion in the [Cells 2024 Special Issue **"Multiscale Studies of Cell Behavior"**](https://www.mdpi.com/journal/cells/special_issues/49AYA0UO06), we've fielded a sudden uptick of interest in using BETSE to validate similar findings *and* concern over the future well-being of BETSE.

Allow us to now say:

> **BETSE is here to stay.**

And BETSE 1.4.1 is the proof in the bioelectric pudding.
  • Loading branch information
leycec committed Sep 24, 2024
1 parent 9cd61d9 commit 5fe4683
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion betse/metadata.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@
'''


PYTHON_VERSION_MINOR_MAX = 13
PYTHON_VERSION_MINOR_MAX = 14
'''
Maximum minor stable version of this major version of Python currently released
(e.g., ``5`` if Python 3.5 is the most recent stable version of Python 3.x).
Expand Down

0 comments on commit 5fe4683

Please sign in to comment.