From bd90a1f1b5d0f237983287ad7d93ecb2b88a5494 Mon Sep 17 00:00:00 2001 From: Paul Ambrose Date: Fri, 10 Jul 2026 23:53:15 -0700 Subject: [PATCH] Release 1.2.0 Bump the template's own version from 1.1.0 to 1.2.0 (released 2026-07-10), now versioned independently of the bundled Vapi4k library. - CHANGELOG.md: add [1.2.0] - 2026-07-10 entry, rework the intro to note the independent version line, and fix the 1.7.0 compare link. - RELEASE_NOTES.md: rewrite for v1.2.0. - CLAUDE.md, README.md, llms.txt: refresh dependency versions to Kotlin 2.4.0, Ktor 3.5.1, Vapi4k 1.8.0. - gradle.properties: version 1.1.0 -> 1.2.0. --- CHANGELOG.md | 36 +++++++++++++++++++++++++++++---- CLAUDE.md | 2 +- README.md | 2 +- RELEASE_NOTES.md | 51 ++++++++++++++++++++++++----------------------- gradle.properties | 2 +- llms.txt | 6 +++--- 6 files changed, 64 insertions(+), 35 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f69b2c4..e8da085 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,36 @@ All notable changes to this project are documented in this file. -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), -and this project tracks the bundled [Vapi4k](https://github.com/vapi4k/vapi4k) -library version. +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). +As of **1.2.0**, the template is versioned independently of the bundled +[Vapi4k](https://github.com/vapi4k/vapi4k) library, and each release records +the Vapi4k version it ships. Earlier entries (**1.7.0** and below) mirror the +bundled Vapi4k library version. + +## [1.2.0][1.2.0-2026] - 2026-07-10 + +First template release versioned independently of the bundled Vapi4k library. +Ships **Vapi4k 1.8.0**, **Ktor 3.5.1**, **Kotlin 2.4.0**, and the **Gradle +9.6.1** wrapper. + +### Added +- GitHub Actions CI workflow (`.github/workflows/ci.yml`) that builds the + project on every push and pull request. +- `CHANGELOG.md` and `RELEASE_NOTES.md` documenting the project's history. +- Makefile `help` target, release/Docker/image guards, and Docker + build/run/push shortcuts. + +### Changed +- Vapi4k upgraded to **1.8.0**; Ktor to **3.5.1**; Kotlin to **2.4.0**. +- Gradle wrapper upgraded to **9.6.1**. +- `build.gradle.kts` refactored into `configureKotlin`, `configureKtor`, and + `configureVersions` helper functions. +- Dependency-update filtering now uses a delimiter-aware regex that rejects a + pre-release candidate only when the current version is stable, so + intentionally-tracked pre-release lines still surface newer pre-releases. +- Makefile modernized: parsed project/dependency versions, target guards, + Docker hygiene, and the `versioncheck` target renamed to `versions`. +- Version catalog key renamed from `gradle` to `gradle-wrapper`. ## [1.7.0] - 2026-04-08 @@ -96,7 +123,8 @@ library version. ### Changed - Vapi4k pinned to **1.1.0**; Ktor upgraded to **3.0.1**; Kotlin **2.0.20**. -[1.7.0]: https://github.com/vapi4k/vapi4k-template/compare/c16fbbf...HEAD +[1.2.0-2026]: https://github.com/vapi4k/vapi4k-template/compare/8b86ea6...HEAD +[1.7.0]: https://github.com/vapi4k/vapi4k-template/compare/c16fbbf...8b86ea6 [1.6.1]: https://github.com/vapi4k/vapi4k-template/compare/49dfb5f...1a3ec08 [1.4.0]: https://github.com/vapi4k/vapi4k-template/compare/0b846c5...cadd1d0 [1.3.2]: https://github.com/vapi4k/vapi4k-template/compare/bcba402...0b846c5 diff --git a/CLAUDE.md b/CLAUDE.md index 619834e..fec31f1 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -46,7 +46,7 @@ Each app configures a model, voice provider, system message, and the `WeatherLoo ## Dependencies -- **Kotlin** 2.3.20, **Ktor** 3.4.2, **Vapi4k** 1.7.0 +- **Kotlin** 2.4.0, **Ktor** 3.5.1, **Vapi4k** 1.8.0 - Gradle with Kotlin DSL (version in `gradle/wrapper/gradle-wrapper.properties`) - Two Vapi4k libraries: `vapi4k-core` (voice app framework) and `vapi4k-dbms` (persistence) - All versions managed in `gradle/libs.versions.toml` — update versions there, not in `build.gradle.kts` diff --git a/README.md b/README.md index d5b02d0..cd01e54 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Vapi4k Application Template -[![Kotlin version](https://img.shields.io/badge/kotlin-2.3.20-red?logo=kotlin)](http://kotlinlang.org) +[![Kotlin version](https://img.shields.io/badge/kotlin-2.4.0-red?logo=kotlin)](http://kotlinlang.org) [![ktlint](https://img.shields.io/badge/ktlint%20code--style-%E2%9D%A4-FF4081)](https://pinterest.github.io/ktlint/) This template is a starting point for creating a new [Vapi](https://vapi.ai) application using diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index c802bd7..ddb07f3 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,39 +1,40 @@ -# Release Notes — v1.7.0 (2026-04-08) +# Release Notes — v1.2.0 (2026-07-10) The full version history is in [CHANGELOG.md](CHANGELOG.md). This file covers the most recent release only and is intended for use as the body of a GitHub release. +This is the first template release versioned independently of the bundled +Vapi4k library. + ## Highlights -- **Vapi4k 1.7.0** and **Ktor 3.4.2** — pulled in the latest upstream features - and fixes. -- **Vapi4k now resolves from Maven Central.** The Maven group ID changed from - `com.github.vapi4k.vapi4k` to `com.vapi4k`, and the JitPack repository has - been removed from the build. -- **`.env`-based configuration.** A new `.env.example` documents the - environment variables the template reads at startup; copy it to `.env` - locally. Heroku and Docker continue to inject env vars through their own - mechanisms. -- **Voice and model configurations refreshed** across all three apps: - - Inbound call app — OpenAI GPT-4 Turbo + DeepGram Luna - - Outbound call app (`/callCustomer`) — Anthropic Claude Opus 4 + ElevenLabs Paula - - Web talk app (`/talkApp`, UI at `GET /talk`) — Groq Llama3 70B + PlayHT Jack -- **JVM 21** is now required (already the default in the Docker image and - `system.properties`; now also enforced by the Gradle toolchain). -- **README** points at the new documentation site, `https://docs.vapi4k.com/`. +- **Vapi4k 1.8.0**, **Ktor 3.5.1**, and **Kotlin 2.4.0** — the latest upstream + features and fixes. +- **Gradle 9.6.1 wrapper.** +- **Continuous integration.** A new GitHub Actions workflow + (`.github/workflows/ci.yml`) builds the project on every push and pull + request. +- **Build script refactor.** `build.gradle.kts` configuration is split into + `configureKotlin`, `configureKtor`, and `configureVersions` helpers. The + `dependencyUpdates` pre-release filter now uses a delimiter-aware regex that + rejects an unstable candidate only when the current version is stable, so + dependencies intentionally tracked on a pre-release line still surface newer + pre-releases. +- **Makefile modernization.** Parsed project and dependency versions, a + self-documenting `help` target, guards for the release/Docker targets, and + Docker build/run/push shortcuts. The `versioncheck` target is now `versions`. +- **Project history docs.** `CHANGELOG.md` and `RELEASE_NOTES.md` were added. ## Upgrade notes -If you have a fork or downstream copy of this template: +If you have a fork or downstream copy of this template, no source changes are +required. To match this release: -1. Replace any `com.github.vapi4k.vapi4k:vapi4k-*` dependency coordinates with - `com.vapi4k:vapi4k-*`. -2. Remove the JitPack `maven(url = "https://jitpack.io")` repository entry. -3. Make sure your build environment has **JDK 21** available - (`./gradlew --version` should report Java 21). -4. Copy `.env.example` to `.env` and populate the variables your deployment - needs. +1. Upgrade the Gradle wrapper to **9.6.1** (`make upgrade-wrapper` or + `./gradlew wrapper --gradle-version 9.6.1`). +2. Pull the dependency versions from `gradle/libs.versions.toml` (Vapi4k + **1.8.0**, Ktor **3.5.1**, Kotlin **2.4.0**). ## Build & run diff --git a/gradle.properties b/gradle.properties index 687e6ee..24b374a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,5 @@ group = "com.myapp" -version=1.1.0 +version=1.2.0 kotlin.code.style=official org.gradle.configuration-cache=true diff --git a/llms.txt b/llms.txt index a6c256b..784614f 100644 --- a/llms.txt +++ b/llms.txt @@ -21,9 +21,9 @@ Each app configures an AI model, a voice provider, a system message, and service ## Tech Stack -- **Language**: Kotlin (JVM 21) -- **Web framework**: Ktor with CIO engine -- **Voice AI**: Vapi4k (`vapi4k-core` + `vapi4k-dbms`) via Maven Central +- **Language**: Kotlin 2.4.0 (JVM 21) +- **Web framework**: Ktor 3.5.1 with CIO engine +- **Voice AI**: Vapi4k 1.8.0 (`vapi4k-core` + `vapi4k-dbms`) via Maven Central - **Build**: Gradle with Kotlin DSL, version catalog (`gradle/libs.versions.toml`) - **HTML rendering**: kotlinx.html DSL - **Deployment**: Heroku (Procfile), Docker (Alpine + JDK 21), or standalone fat JAR