Skip to content

Releases: zamdevio/i18nprune

v1.0.1

Choose a tag to compare

@zamdevio zamdevio released this 11 Jul 15:16

Full release notes: https://releases.i18nprune.dev/cli/1.0.1 · https://releases.i18nprune.dev/core/1.0.1

Summary

Patch release for the CLI and Core SDK — placeholder sentinel leak detect and repair across validate/quality/review/sync/generate, kits terminal markdown styling, and CLI help enrichment with mnemonic command and flag aliases.

Changes

Placeholder sentinel repair (CLI + Core)

  • Read-only detect — validate, quality, and review warn with issue i18nprune.locale.placeholder_sentinel_leak; spaced MT mask variants (__I18NPRUNE _0__) detected alongside tight tokens; __I18NPRUNE_MISSING__ scaffold tokens excluded.
  • sync post-merge repair copies source strings over stale __I18NPRUNE_* mask tokens; JSON sentinelRepairs[] with bounded detail lines (respects -T / -F / dry-run).
  • generate force-queues leaked paths for placeholder_copy or full MT repair; live repair notice after translate progress; dry-run preview before translate; fail-closed on post-MT mangling.
  • generate --resume treats leaked leaves as pending until repair succeeds (including preserve paths).
  • Opt out — --no-repair-sentinel-leaks on sync and generate (SDK: noRepairSentinelLeaks: true on runSync / runGenerate).
  • Core module — shared sentinelLeak.ts (scanLocaleForSentinelLeaks, repairSentinelLeaksCopyFromSource, planSentinelLeakGenerateRepairs, isSentinelLeakPending).

Kits terminal output

  • Dim blockquotes, doc links, and sample rows on TTY via formatKitsTerminalMarkdown; plain markdown on --out / file saves.
  • JSON consumers unchanged — standard CliJsonEnvelope; terminal styling does not affect --json or -o files.

CLI help & aliases

  • Root help Workflows: recipes (bootstrap, sentinel fix, CI gate, share snapshot).
  • Per-command Examples, Related, group Workflows, and generic Notes; styled Examples (brand-blue binary, cyan command, dim flags).
  • Inline command aliases in Commands: — mnemonic positional shortcuts (val, gen, cfg, miss, qual, rev, rep, prov, langs); group subs (locales ls|dyn|rm, share up|ls|rm, kits id|dyn|bl).
  • Flag shorts — global -y, -n, -m, -t, -T, -F, -ncl, -ld, -cp, …; generate -P/-R/-W/-f/-nrsl; sync -nrsl/-sm; share -wu; kits -fcs (focus); languages -flt/-tbl (--source, --src, --ask remain long-only).
  • help <topic> resolves mnemonic and group alias paths (help val, help kits id, help locales ls).

Installation

CLI

npm install -g i18nprune@1.0.1

Core SDK

npm install @i18nprune/core@1.0.1

Breaking Changes

None for CLI --json envelopes, issue codes, or exit codes (parity policy).

CLI aliases are argv-only shortcuts — SDK hosts continue to use canonical command and option names.

Migration

npm install -g i18nprune@1.0.1
npm install @i18nprune/core@1.0.1
  • After upgrading: run i18nprune validate to detect stale sentinels; fix with i18nprune sync --metadata --target <locale> (copy) then i18nprune generate --metadata --target <locale> (localized repair).
  • Use --no-repair-sentinel-leaks when you need detect-only sync/generate runs without automatic repair.
  • Optional shortcuts — i18nprune val, gen -m -t ar, locales ls.
  • Pin @i18nprune/core@1.0.1 when mixing SDK + CLI.

Portal: CLI 1.0.1 · Core 1.0.1
Docs: sync · generate · placeholder_sentinel_leak · kits

Full Changelog: v1.0.0...v1.0.1

v1.0.0

Choose a tag to compare

@zamdevio zamdevio released this 09 Jul 19:58

Full release notes: https://releases.i18nprune.dev/cli/1.0.0

Summary

Semver 1.0.0 milestone for the CLI and Core SDK — native i18nprune kits audit commands (dynamic, identical, honest, baseline, pr), standard CliJsonEnvelope JSON, global short flags, and Phase 0 packaging gates (catalog path, ESM loader imports, npm homepage).

Changes

  • Native i18nprune kitsdynamic, identical, honest, baseline, pr (read-only; SDK runValidate / runDynamic / runQuality / runReview).
  • Kits JSON uses standard CliJsonEnvelope (-j pretty by default; -jp false minified).
  • Global short flags — -j, -jp, -T, -F, -ds, -dc; kits flags -t, -o, -fon, -mxdy, -b, -sb.
  • Baseline paths are project-relative via -c/--config (no --cwd); -sb saves terminal-matching .md or .json.
  • Policy gates — -fon / -mxdy / --strict with exit code 2 for CI.
  • Docs — docs/commands/kits/* on the docs portal.
  • Core: catalog languages.json ensure targets monorepo artifact only when bundled; loader_generated relative imports always ./ or ../ prefixed.

Installation

CLI

npm install -g i18nprune@1.0.0

Core SDK

npm install @i18nprune/core@1.0.0

Breaking Changes

None for CLI --json envelopes, issue codes, or exit codes (parity policy).

External Kits toolkit scripts under ~/Tools/Kits/i18nprune are replaced by i18nprune kits … with global -c/--config instead of --cwd.

Migration

npm install -g i18nprune@1.0.0
npm install @i18nprune/core@1.0.0
  • Replace external Kits scripts with i18nprune kits ….
  • Kits JSON consumers: parse the standard envelope (ok, kind, data, issues, meta); payload in data.
  • Pin @i18nprune/core@1.0.0 when mixing SDK + CLI.

Portal: CLI 1.0.0 · Core 1.0.0
Docs: kits

Full Changelog: v0.1.4...v1.0.0

v0.1.4

Choose a tag to compare

@zamdevio zamdevio released this 13 Jun 11:35

Full release notes: https://releases.i18nprune.dev/search?q=0.1.4

Summary

Patch release for the CLI and Core SDK — cleanup defaults to static scan with opt-in ripgrep guard, multi-target prune, grep-friendly log flags, locale suggestions, report HTML in core, D.1 dynamic summaries, extractor hardening, and placeholder sentinel fixes.

Changes

  • Cleanup defaults to static scan; ripgrep guard is opt-in via --rg (--no-rg removed).
  • Multi-target cleanup --target <code[,code]|all> with per-locale UX and JSON targetLocales[] / targets[].
  • Global --no-color, --no-log-channel, and --no-log-prefix for grep-friendly CI logs.
  • Locale suggestion engine surfaces data.suggestions[] on validate, missing, cleanup, and sync JSON.
  • renderReportHtml exported from @i18nprune/core with packaged report SPA in dist.
  • D.1 human summaries show dynamic=active with optional commented=M; core adds dynamicSitesActiveCount / dynamicSitesCommentedCount.
  • locales dynamic shows template detail and grouped dynamic-key sites.
  • Extractor E.1–E.6 mixed-template hardening and T.1 placeholder sentinel hardening for generate/resume.

Installation

CLI

npm install -g i18nprune@0.1.4

Core SDK

npm install @i18nprune/core@0.1.4

Breaking Changes

Cleanup --no-rg removed

The cleanup flag:

- cleanup --no-rg
+ (omit flag — static scan is already the default)

Or pass --rg when you want the ripgrep string-presence guard.

This affects:

  • npm scripts and CI pipelines that passed --no-rg
  • Shell wrappers and Makefile targets around i18nprune cleanup

Not breaking: --json envelopes, issue codes, and exit codes are unchanged (parity policy). D.1 and locale suggestion fields are additive on JSON.

Migration

npm install -g i18nprune@0.1.4
npm install @i18nprune/core@0.1.4
  • Remove --no-rg from cleanup scripts; use default static scan or pass --rg.
  • Pin @i18nprune/core@0.1.4 when mixing SDK + CLI.
  • CI grep-friendly logs: i18nprune validate --no-color --no-log-prefix --no-log-channel or NO_COLOR=1.
  • SDK parsers: optional data.suggestions[] on validate, missing, cleanup, sync.
  • Hosts embedding report UI: prefer renderReportHtml from core.

Full Changelog: v0.1.3...v0.1.4

v0.1.3

Choose a tag to compare

@zamdevio zamdevio released this 05 Jun 15:42

Full release notes: https://releases.i18nprune.dev/search?q=0.1.3

Summary

Patch release focused on cleanup result consistency across the CLI and Core SDK.

Changes

  • Fixed cleanup ripgrep guard defaults.
  • Cleanup summaries now use dynamic for non-literal key site counts.
  • Cleanup JSON envelopes now expose data.dynamic instead of data.dynamicKeySites.
  • Run-event count reporting has been aligned across CLI and SDK outputs.

Installation

CLI

npm install -g i18nprune@0.1.3

Core SDK

npm install @i18nprune/core@0.1.3

Breaking Changes

Cleanup JSON envelope rename

The cleanup payload field:

- data.dynamicKeySites
+ data.dynamic

This affects:

  • JSON consumers
  • jq scripts
  • SDK parsers
  • Automation built around cleanup --json

No changes were made to runCleanup() orchestration signatures; only the payload field name changed.

Migration

npm install -g i18nprune@0.1.3
npm install @i18nprune/core@0.1.3

Update any cleanup JSON consumers:

- .data.dynamicKeySites
+ .data.dynamic

Full Changelog: v0.1.2...v0.1.3

v0.1.2

Choose a tag to compare

@zamdevio zamdevio released this 04 Jun 13:52

Full release notes: https://releases.i18nprune.dev/search?q=0.1.2

Summary

This is the first public release of i18nprune.
Version 0.1.0 introduces both the @i18nprune/core TypeScript SDK and the i18nprune CLI, providing a shared foundation for validation, synchronization, generation, reporting, and automation workflows across local development, CI, IDE integrations, and custom tooling.

Packages

i18nprune CLI

Install globally:

npm install -g i18nprune@0.1.0

Highlights:

  • One binary for local development and CI.
  • Shared JSON contract across commands and integrations.
  • Works alongside the Core SDK for custom workflows.

@i18nprune/core

Install in your project:

npm install @i18nprune/core@0.1.0

Highlights:

  • Pure TypeScript engine.
  • Validate, sync, generate, report, and share operations.
  • Host adapter architecture for Node.js and custom runtimes.
  • Subpath imports for operation-specific usage.

Migration

CLI

  • First public release.
  • Install globally or use npx in CI.
  • Pin @i18nprune/core@0.1.0 when consuming both the SDK and CLI.
  • Set I18NPRUNE_HOME if the default cache directory is unsuitable.

Core SDK

  • First public SDK release on npm.
  • Import from @i18nprune/core or operation-specific subpaths.
  • Provide a runtime adapter and env for operations that access disk or network.
  • CLI users generally do not need to install the Core SDK separately.

What's Next

This release establishes the public foundation for the i18nprune ecosystem. Future releases will continue expanding workflow capabilities, integrations, reporting, and developer tooling.