From 7cc68b316ac7528fe9d63da8cdf98b0d3124ef83 Mon Sep 17 00:00:00 2001 From: Ali Sher Date: Tue, 18 Aug 2026 14:09:06 +0500 Subject: [PATCH] =?UTF-8?q?chore(release):=20v0.7.0=20=E2=80=94=20version?= =?UTF-8?q?=20bump,=20changelog,=20docs=20sync?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 2 +- README.md | 6 +++--- package.json | 2 +- src/cache/parsed.ts | 10 +++++----- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 923817c..8b1e81d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ All notable changes to Ripple are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.7.0] - 2026-08-18 ### Added diff --git a/README.md b/README.md index df3845e..d10aad3 100644 --- a/README.md +++ b/README.md @@ -100,7 +100,7 @@ Everything below is real output against a shipped example project in `tests/fixt ```bash npm install -g @alimaandev/ripple -ripple version # → 0.6.0 +ripple version # → 0.7.0 ``` Or install from source: @@ -132,7 +132,7 @@ ripple analyze src/authentication/login.ts Expected output: ```text -ripple · impact analysis · v0.6.0 +ripple · impact analysis · v0.7.0 File src/authentication/login.ts Risk MEDIUM · 34.7/100 ███░░░░░░░ @@ -165,7 +165,7 @@ ripple graph ``` ```text -ripple · dependency graph · v0.6.0 +ripple · dependency graph · v0.7.0 Files 25 Edges 28 diff --git a/package.json b/package.json index 505d95c..2ad1685 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@alimaandev/ripple", - "version": "0.6.0", + "version": "0.7.0", "description": "Dependency impact analysis for TypeScript and JavaScript. Know the blast radius of any change — before you commit.", "keywords": [ "cli", diff --git a/src/cache/parsed.ts b/src/cache/parsed.ts index b1528c7..7a7feea 100644 --- a/src/cache/parsed.ts +++ b/src/cache/parsed.ts @@ -13,13 +13,13 @@ import { toPosix } from "../utils/paths.js"; * Parsing a file with ts-morph (imports, exports, symbols) is the dominant * cost of an analysis run. For every discovered file we reuse the previously * parsed surface when the file is provably unchanged. Freshness is checked - * with a cheap mtime+size match first — the steady-state hot path touches - * neither the file contents nor the hasher — and the cache is only rewritten + * with a cheap mtime+size match first — the steady-state hot path touches + * neither the file contents nor the hasher — and the cache is only rewritten * to disk when something actually changed, so repeated runs are near-free. * * The cache is keyed by the discovery-affecting config (include/ignore), so * changing discovery invalidates it wholesale. The parsed surface is only a - * function of file content — resolution, cycles and risk are recomputed + * function of file content — resolution, cycles and risk are recomputed * fresh on every run, so cached runs are byte-identical to cold runs. * * The cache lives in `/.ripple/cache/` and is written atomically. @@ -79,7 +79,7 @@ function cachePath(rootDir: string): string { return path.join(rootDir, CACHE_FILE); } -/** Load the cache manifest; any problem (missing, corrupt, stale) → empty. */ +/** Load the cache manifest; any problem (missing, corrupt, stale) → empty. */ export async function loadParsedCache( rootDir: string, configHash: string, @@ -139,7 +139,7 @@ export interface ParsedCacheStats { * whose content changed since the last run. The result is ordered exactly * like `filePaths`, so downstream output is identical to a cold run. * - * When nothing changed, the on-disk cache is not rewritten at all — the + * When nothing changed, the on-disk cache is not rewritten at all — the * steady-state hot path is stat + JSON parse + graph rebuild. */ export async function loadParsedFiles(options: {