Skip to content

Commit 4b7bc05

Browse files
committed
Bump version to 0.8.0
- Spinal network simulator improvements - Strict mode for NEURON mechanism loading - API documentation additions (HillModel, Network, SimulationRunner, etc.) - Watanabe examples updated with 2015 citation - NEO blocks documentation consolidated - ReadTheDocs configuration with uv support - Examples documentation paths fixed
1 parent 74f72e2 commit 4b7bc05

File tree

4 files changed

+54
-20
lines changed

4 files changed

+54
-20
lines changed

.readthedocs.yaml

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,26 +3,21 @@
33

44
version: 2
55

6-
# Set the OS, Python version, and other tools
76
build:
87
os: ubuntu-22.04
98
tools:
109
python: "3.12"
11-
uv: "latest"
1210
apt_packages:
13-
# Required for NEURON and MPI support
11+
- libegl1-mesa-dev
1412
- libopenmpi-dev
1513
- openmpi-bin
16-
jobs:
17-
# Install using uv sync (includes docs dependencies)
18-
post_create_environment:
19-
- uv sync --group docs
20-
# First build pass (generates sphinx-gallery examples and autosummary stubs)
21-
pre_build:
22-
- uv run sphinx-build -b html docs/source $READTHEDOCS_OUTPUT/html
23-
24-
# Build documentation in the "docs/" directory with Sphinx
25-
# This is the second pass - RTD runs this automatically after pre_build
26-
sphinx:
27-
configuration: docs/source/conf.py
28-
fail_on_warning: false
14+
- openmpi-common
15+
- libgtk2.0-dev
16+
commands:
17+
# Install uv and sync dependencies
18+
- pip install uv
19+
- uv sync --group dev --group docs
20+
# Setup myogen (compile NEURON mechanisms)
21+
- uv run poe setup_myogen
22+
# Build docs (first pass generates stubs, second pass succeeds)
23+
- uv run sphinx-build -b html docs/source $READTHEDOCS_OUTPUT/html || uv run sphinx-build -b html docs/source $READTHEDOCS_OUTPUT/html

CHANGELOG.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,45 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [0.8.0] - 2025-12-28
11+
12+
### Added
13+
- **Spinal Network Simulator**: Enhanced connectivity and afferent population support
14+
- Improved interneuron and motor neuron connectivity patterns
15+
- Added Group II (GII) afferent pathway support
16+
- Enhanced afferent population configuration options
17+
- **Strict Mode for NEURON**: New error handling mode for mechanism loading
18+
- Added `strict` parameter to `load_nmodl_files()` function
19+
- Warnings by default, exceptions opt-in with `strict=True`
20+
- Clearer error messages when NEURON mechanisms fail to load
21+
- **API Documentation**: Added missing classes to API docs and module exports
22+
- `HillModel` - Hill-type muscle model
23+
- `Network` - Spinal network container
24+
- `SimulationRunner` - Simulation orchestration
25+
- `JointDynamics` - Joint dynamics model
26+
- `SpindleModel` - Muscle spindle proprioceptor
27+
- `GolgiTendonOrganModel` - Golgi tendon organ proprioceptor
28+
- `ContinuousSaver` and `convert_chunks_to_neo` utility functions
29+
- **ReadTheDocs Configuration**: New `.readthedocs.yaml` with uv package manager support
30+
- Uses `uv sync --group docs` for dependency installation
31+
- Double-build for sphinx-gallery (pre_build + sphinx section)
32+
- MPI dependencies via apt packages
33+
34+
### Changed
35+
- **NEO Blocks Documentation**: Consolidated 4 documentation files into single `docs/neo_blocks.md`
36+
- Reduced from ~47KB across multiple files to ~4.5KB single digestible document
37+
- Clearer structure with block types, access patterns, and troubleshooting
38+
- **API Documentation Order**: Reorganized `simulator_api.rst` to follow simulation workflow
39+
- RecruitmentThresholds → Populations → Network → SimulationRunner → Muscle → Proprioception → JointDynamics → Force → Electrodes → EMG
40+
- **Watanabe Examples**: Updated paper citations from 2013 to 2015 (J. Neurosci.)
41+
- Corrected DOI references across all example scripts
42+
- Simplified README to essential information only
43+
- **README**: Rewritten for beginners with uv as primary installation method
44+
45+
### Fixed
46+
- **Documentation Links**: Fixed examples toctree paths (`01_basic`, `02_finetune`)
47+
- **Literature Reproductions Link**: Added `watanabe-reproduction` ref label for cross-references
48+
1049
## [0.7.0] - 2025-12-24
1150

1251
### Added

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
[![Documentation](https://img.shields.io/badge/docs-latest-blue.svg)](https://nsquaredlab.github.io/MyoGen/)
1010
[![Python 3.12+](https://img.shields.io/badge/python-3.12+-blue.svg)](https://www.python.org/downloads/)
11-
[![Version](https://img.shields.io/badge/version-0.6.5-orange.svg)](https://github.com/NsquaredLab/MyoGen)
11+
[![Version](https://img.shields.io/badge/version-0.8.0-orange.svg)](https://github.com/NsquaredLab/MyoGen)
1212

1313
[Installation](https://nsquaredlab.github.io/MyoGen/#installation)
1414
[Documentation](https://nsquaredlab.github.io/MyoGen/)
@@ -39,6 +39,8 @@ MyoGen is designed for algorithm validation, hypothesis-driven research, and edu
3939

4040
# Installation
4141

42+
> **Requires Python 3.12+** — Check your version with `python --version`
43+
4244
## System Requirements
4345

4446
| Platform | Before Installing MyoGen |
@@ -47,8 +49,6 @@ MyoGen is designed for algorithm validation, hypothesis-driven research, and edu
4749
| **Linux** | `sudo apt install libopenmpi-dev` (Ubuntu/Debian) or `sudo dnf install openmpi-devel` (Fedora) |
4850
| **macOS** | `brew install open-mpi` |
4951

50-
**Python**: 3.12 or higher required
51-
5252
> [!CAUTION]
5353
>
5454
> ## Windows Users: Install NEURON First

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "MyoGen"
3-
version = "0.7.0"
3+
version = "0.8.0"
44
description = "Modular and extensible neuromuscular simulation framework for generating physiologically grounded motor-unit activity, muscle force, and EMG signals (surface and intramuscular)"
55
readme = "README.md"
66
requires-python = ">=3.12"

0 commit comments

Comments
 (0)