Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,22 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog 1.1.0](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
## [0.1.1] - 2026-07-16

### Changed

- Renamed plugin from Twist Your Guts to Crypta (new plugin code `Cryp`, new bundle id `com.yvesvogl.crypta`). Old identity: plugin code `Tygt`, bundle id `com.yvesvogl.twistyourguts` — DAWs treat this as a new plugin; v0.1.0-era sessions will need to be re-pointed at the new plugin identity. Part of the suite's move to Basilica Audio naming (the crypt: the basilica's low-end foundation).
- `.github/workflows/release.yml` reconciled with the suite-wide release template: org-level Apple signing secrets (`APPLE_CERT_P12`, `APPLE_CERT_PASSWORD`, `APPLE_API_KEY_P8`, `APPLE_API_KEY_ID`, `APPLE_API_ISSUER_ID`) instead of the prior per-repo secret set, `find`-based artefact discovery, tag-only (`v*`) trigger with no `workflow_dispatch` dry-run path.
- Removed `docs/releasing.md` and `docs/adr/0006-macos-signing-notarization.md`, which documented the prior per-repo signing pipeline; the org-level signing setup is now documented centrally at `.scaffold/SIGNING-SETUP.md`, matching sibling suite repos (none of which carry a per-repo releasing runbook or signing ADR).
- Reworded the stale "symphonic-metal" suite framing in `CLAUDE.md` and `docs/manual.md` to "heavy-music", matching the suite bible.
- `juce_add_plugin` now sets `ICON_BIG` from `docs/assets/icon.png`, so the plugin bundle carries its own icon instead of JUCE's default.

### Fixed

- `CryptaAudioProcessor` now overrides `reset()`, flushing every per-stage DSP class's own state (LR4 crossover filter memory, gate/compressor envelopes, the high-band voicing's oversampling/mid/tone filter state, the low-band latency-compensation delay line, EQ biquad history, IR convolution engine) on a host transport stop/loop/rewind, instead of leaving stale state ringing into whatever plays next.
- `Voicing::setVoicing()` now resets `midFilter`'s state on every voicing change, matching `preHighPass`'s existing Razor-switch handling, so a coefficient jump between voicings (e.g. Wool's -6dB scoop to Razor's +5dB hump) no longer rings a stale-state transient.
- `getTailLengthSeconds()` now reports `IRLoader`'s actually-loaded impulse response length instead of a hardcoded `0.0`, so hosts making bounce/freeze/render-tail decisions don't truncate a loaded cab IR's convolution tail.
- Added regression coverage for `processBlock()`'s chunking path when a host block exceeds `prepareToPlay()`'s `samplesPerBlock` (no functional bug found - the existing chunking logic was already correct, just untested).

## [0.1.0] - 2026-07-14

Expand Down
3 changes: 2 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0" CACHE STRING "Minimum macOS deployment ta
# here at the top level avoids it being enabled implicitly deeper inside
# JUCE's CMake helpers, which has been observed to break Ninja's generate
# step (missing CMAKE_C_COMPILE_OBJECT rule variable).
project(Crypta VERSION 0.1.0 LANGUAGES C CXX)
project(Crypta VERSION 0.1.1 LANGUAGES C CXX)

set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
Expand Down Expand Up @@ -53,6 +53,7 @@ juce_add_plugin(Crypta
NEEDS_MIDI_INPUT FALSE
NEEDS_MIDI_OUTPUT FALSE
IS_MIDI_EFFECT FALSE
ICON_BIG "docs/assets/icon.png"
)

# ==============================================================================
Expand Down