-
Notifications
You must be signed in to change notification settings - Fork 0
Release Notes

Generated with Grok Build: Grok 4.5 · xAI Imagine (/imagine)
Grounded in package main @ 328ea9c and tag v0.5.2 (ef9fba8).
Canonical changelog: CHANGELOG.md.
| Pin | Value |
|---|---|
| crates.io / Cargo | neuromod = "0.5.2" |
| MSRV |
1.97.1 (rust-version in Cargo.toml) |
| Edition | 2024 |
| License | MIT OR Apache-2.0 (dual; GPL removed in 0.5.0) |
| docs.rs | https://docs.rs/neuromod |
| Tag commit |
ef9fba8 (v0.5.2) |
| Wiki tip (main) |
328ea9c (#97/#98 after tag) |
Docs, CI, and packaging hygiene. Published to crates.io.
Install pin: neuromod = "0.5.2"
- Optional
sentryCargo feature,examples/sentry.rs,tests/sentry_integration.rs, and.github/workflows/sentry-release.yml. Observability belongs in application binaries (depend onsentrythere); the library no longer pulls or demos Sentry (#88, #78).
- Stop tracking
.cubic/wikiin git; ignore.cubic/and exclude it from the crates.io package so regenerated cubic wiki is not a documentation source of truth (#90, #91). -
Rustdoc textbook spine: crate-root syllabus, module docs for
engine/lif/izhikevich/modulators, and expandedSpikingNetwork::stepcontract (pipeline order, STDP honesty, doctest) (#89). -
MSRV policy: README Requirements + crate docs state Rust 1.97.1; CI verifies
Cargo.toml/rust-toolchain.toml/ workflow pin stay identical (#79). -
CI OS matrix: core CI runs build/clippy/tests on Linux, macOS, and Windows; README documents the three-platform matrix and the
paths-filtergate for nextest/cargo-hack (#94, #95). - Domain-agnostic docs check builds with
cargo doc --all-features --no-depsbefore the forbidden-term scan. -
Codecov: official badge; CI uploads via repo
CODECOV_TOKEN(tokenless returns HTTP 400 for this org); upload steps usefail_ci_if_error: falseso coverage remains non-blocking.
-
Docker dual-push: example runtime images to Docker Hub (
pelon23/neuromod) and GHCR (ghcr.io/limen-neural/neuromod) with SHA, version, andlatesttags (#97). -
Docker verify: PR job asserts example binaries exist in the runtime image; publish job requires full
X.Y.Zcrate version for tags (#98). - README install pin documents 0.5.2; crates.io / docs.rs badges stay version-agnostic (latest).
- Tag commit:
ef9fba8 - Tip (main):
328ea9c - Changelog: CHANGELOG.md @ v0.5.2
- Prior release: v0.5.1
Trust & packaging honesty + Hodgkin–Huxley hygiene.
Install pin: neuromod = "0.5.1"
-
Docs / packaging honesty: honest crates.io
description(no unsubstantiated “high-performance”); README badges and dual-license presentation; crate and README docs state thatSpikingNetworkwires LIF + Izhikevich only, with other models available as standalone types (#66, #67, #69, #70 / #84). -
src/hodgkin_huxley.rs: stripped verbose AI-generated commentary and consolidated repeated RK4/gating calculations (#85). -
src/lif.rs: shortened Poisson-spike generation comment. -
tests/sentry_integration.rs: trimmed redundant feature-gate prose (feature removed in 0.5.2). - Tag tip also includes post-merge Actions dependency group bump (#87).
-
#91 (on
mainafter the tag): untrack committed cubic AI wiki (.cubic/), gitignore + crate exclude — docs SoT is rustdoc / README /docs/(+ this GitHub Wiki).
- Fixed
HodgkinHuxleyNeuron::derivativesto shift the membrane potential back to the HH relative convention before evaluating α/β gating rates for cortical (mammalian) parameterizations, matching the shift already used bysteady_state_gating_mammalianandreset(#85).
- Tag commit:
37b0625 - Changelog: CHANGELOG.md @ v0.5.1
- Prior release: v0.5.0
Published to crates.io. Tag commit: 67c1573.
-
Generic neuromodulator API —
NeuroModulatorsfields:dopamine,serotonin,acetylcholine,norepinephrine -
SignalProfile— map external signals → modulator levels (default(), optionalhardware_calibrated()) -
GenericReward+Observation— domain-agnostic reward shaping for downstream crates -
UnitReward— mean-signal demo/test reward -
apply_neuromodulation— apply modulator effects to weight / threshold slices -
GitHub Actions CI — fmt, clippy, build, test on push/PR to
main - Unit tests for
EligibilityTrace::decayand LIF/Poisson paths - Org boundary / modularization docs (boundary matrix, ADR 001, org modularization)
| Old | New |
|---|---|
cortisol, tempo, aux_dopamine fields |
Removed |
from_signals(...) without profile |
from_signals(&SignalProfile, …) |
add_stress / is_stressed
|
add_norepinephrine / is_aroused
|
- Criterion benches: all four
[[bench]]setharness = false(fixes silentrunning 0 tests) - PoissonEncoder deterministic at intensity 0.0 / 1.0
- Sentry example (later removed in 0.5.2):
SENTRY_ENVIRONMENT, drop info-level probe - License dual MIT/Apache-2.0; domain-agnostic docs (mining/HFT / Eagle-Lander cleaned)
# Cargo.toml
neuromod = "0.5.2"use neuromod::{NeuroModulators, SignalProfile};
// 0.5.0+: SignalProfile required
let profile = SignalProfile::default();
let mut mods = NeuroModulators::from_signals(&profile, 0.2, 0.1, 0.8, 0.9);
mods.add_norepinephrine(0.1); // not add_stress
assert!(mods.is_aroused() || !mods.is_aroused()); // not is_stressed0.5.0 → 0.5.1: API-compatible. Prefer README wording that SpikingNetwork is LIF+Izh only; use standalone types for Lapicque / GIF / FHN / HH.
0.5.1 → 0.5.2: API-compatible for neuron/modulator surfaces. Drop any features = ["sentry"] on the neuromod dependency; wire Sentry in the application binary if needed. Prefer docs.rs rustdoc for the step-pipeline textbook spine.
Last updated: August 12, 2026
Updated by: Grok Build: Grok 4.5 (high)
Package tip reference: 328ea9c (main @ 0.5.2 + #97/#98; tag v0.5.2 = ef9fba8)
Cubic: page-intro
Devin DeepWiki: neuromod @ 328ea9c