Changelog

June 14, 2026 · View on GitHub

This file is automatically generated from commit messages during releases.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.7.17 - 2026-06-14

Fixed

  • fix(vscode): resolve correctness & robustness bugs from extension bug hunt
  • fix(issue-6): invalidate stale scan cache on resource edits in editor

0.7.16 - 2026-06-10

Fixed

  • fix(issue-6): round-5 — delete key, restart flow, single-line resx, data annotations

0.7.15 - 2026-06-09

Fixed

  • fix(issue-6): round-4 fixes + cross-surface coverage (CodeLens, Add-Key, CLI, TUI, sync)

0.7.14 - 2026-06-07

Fixed

  • fix(web): default-wins merge in GetKey detail endpoint (issue #6)
  • fix(vscode): Add-Key resource-group selector, send resourceGroup, surface errors (issue #6)
  • fix(sync): default-wins merge in push extract so default+culture collision doesn't drop values (issue #6)
  • fix(cloud): merge empty-code and default-code language groups (issue #6)
  • fix(tui): default-wins + gap-fill cell resolution for merged language columns (issue #6)
  • fix(web): merge language columns in GetResources + conflict indicator in editor (issue #6)
  • fix(web): propagate IsPlural through column gap-fill + test gap-fill path (issue #6)
  • fix(web): merge default+culture columns with default-wins in GetAllKeys (issue #6)
  • fix(web): pass config (DefaultLanguageCode) to backend factory (issue #6)
  • fix(web): scan applies configured localization methods (issue #6)
  • fix(scan): separator-aware scan-root prefix check in _Imports walk (issue #6)
  • fix(scan): ignore @using/@namespace directives in Razor scanner (issue #6)
  • fix(scan): ignore namespace/using declarations in C# scanner (issue #6)

Added

  • feat(core): add language-column merge helper with default-wins + conflict (issue #6)
  • feat(scan): apply _Imports.razor injected localizers folder-wide (issue #6)
  • feat(scan): detect indexer usage of per-file injected localizers (issue #6)
  • feat(scan): parse @inject IStringLocalizer variable names (issue #6)

Changed

  • docs(scan): correct InjectedLocalizerExtractor doc to match supported types (issue #6)
  • docs: implementation plan for issue #6 round-3 fixes
  • test(sync): verify default-language mapping across push/pull round-trip (issue #6)
  • style(core): full license header + reuse GetDisplayCode in merge helper (issue #6)

0.7.13 - 2026-06-05

Fixed

  • Fix default-language, recursive discovery, multi-group scanning and VS Code reference paths
  • Fix POT reader test to match new source-text behavior

Added

  • Add multi-base resource group support to the TUI editor

Changed

  • Ignore .superpowers scratch directory
  • Bump Scriban to 7.2.0 and MailKit to 4.16.0 (security)
  • Migrate web GUI to Radzen and propagate PO SourceText to cloud

0.7.12 - 2026-05-28

Fixed

  • Fix web stats calculation to handle plural forms correctly
  • Fix web command static file serving in single-file executable

Added

  • Add multi-base resource group support (closes #6)
  • Add database migration for SourceText columns on ResourceKey
  • Add format-agnostic SourceText support to entities and DTOs
  • Add Source column to grid and improve TranslateDialog UX
  • Add PluralForm tracking and SourceText restoration to sync history

0.7.11 - 2026-01-06

Fixed

  • Fix ISO week calculation in backup rotation policy

0.7.10 - 2026-01-06

Fixed

  • Fix low priority maintenance and consistency issues
  • Fix medium priority logic bugs across all backends
  • Fix critical data loss bugs in iOS, Android, Po, and Json backends

Added

  • Add security hardening and atomic writes to backend writers
  • Add XLIFF 2.0 plural support using group elements

0.7.9 - 2026-01-06

Fixed

  • Fix case-insensitive key lookups in view and data processing commands
  • Fix backup rotation test for weekly backups
  • Fix ApiKeyResolver tests to isolate from system credential store

Added

  • Add Radzen Advanced Filtering for Translation Grid
  • Add Umami analytics integration with runtime website ID injection

Changed

  • Improve PO file format preservation
  • Improve translation grid table readability and column management

0.7.8 - 2026-01-04

Fixed

  • Fix lrm-cloud.com URLs and add ShareX case study to README
  • Fix cloud push duplicate key error on batch insert
  • Fix cloud per-language coverage calculation
  • Fix stats coverage calculation to show coverage vs default language
  • Fix translation lookup and dialog refresh behavior
  • Fix login loop after server redeploy
  • Fix 401 on /api/projects during auth transition
  • Fix export dialog 404 by using authenticated HttpClient
  • Fix cloud tests to match current service behavior

Added

  • Add ShareX case study with cloud integration documentation
  • Add useLocalCredentialStore parameter to prevent server-side credential fallback
  • Add validation to reject empty key names
  • Add Demo badge, banner, and frontend sample project integration
  • Add SampleProjectService and API endpoints for sample project creation
  • Add sample project entities and migration for onboarding
  • Add welcome card with better empty state for first-time users
  • Add import preview endpoint and improve import/export tracking
  • Add token selector pattern for O(1) refresh token lookup
  • Add Import Files dialog to project page
  • Add file import/export API endpoints and web UI
  • Add full integration test suite for cloud sync operations

Changed

  • Improve API key handling in CLI commands
  • Disable local credential store lookup in cloud API
  • Exclude ResXFileRef entries from scan missing keys report
  • Skip ResXFileRef entries in resx parsing
  • Replace ugly Blazor error UI with modern overlay
  • Show GitHub Verified badge for OAuth users
  • Improve auth flow to prevent refresh token loops
  • docs: add Supported Formats section to COMMANDS.md
  • docs: add PO and XLIFF format badges to cloud docs
  • docs: add Po and Xliff configuration sections
  • docs: add PO and XLIFF to supported formats in README
  • Enhance GitHub OAuth to fetch email from /user/emails endpoint

0.7.7 - 2025-12-30

Changed

  • Update CloudSyncValidator tests for client-agnostic API design

0.7.6 - 2025-12-30

Fixed

  • Fix XLIFF backend encoding and structure issues
  • Fix token refresh race condition causing login loop
  • Fix button overlap in KeyDetailDrawer, limit drawer height on mobile
  • Fix Editor page mobile responsiveness: toolbar wrapping, flexible widths, responsive drawer
  • Fix RadzenTabs mobile scrolling with broader CSS selectors
  • Fix mobile responsiveness for project tabs, settings, organizations, and scrollable tab navigation
  • Fix mobile responsiveness: wrap page headers and search/filter rows on small screens
  • Fix cancel upgrade for incomplete subscriptions: fully reset state instead of just setting CancelAtPeriodEnd
  • Fix billing UI: hide Cancel Subscription for incomplete, show PayPal without email
  • Fix billing page: add cancel button for incomplete subscriptions, fix PayPal button
  • Fix PayPal plan IDs to be per-mode (sandbox/live)
  • Fix intermittent login loop caused by timezone and race condition bugs
  • Fix GitHub OAuth login loop caused by forceLoad race condition
  • Fix GitHub OAuth callback navigation paths
  • Fix security issue: GitHub OAuth callback now redirects instead of exposing tokens

Added

  • Add dev.to blog post link to README
  • Add PO and XLIFF format support to cloud project creation
  • Add SourcePluralText support to cloud platform
  • Add SourcePluralText support for PO plural translation
  • Add PO and XLIFF format backends
  • Add centralized rate limit handler to prevent request storms

Changed

  • Refactor cloud sync with language code normalization
  • Refactor: Make API client-agnostic by removing Format from Project entity
  • Handle PayPal subscription NotFound on cancel (incomplete payments)

0.7.5 - 2025-12-28

Fixed

  • Fix OTA API documentation: use X-API-Key header instead of Bearer
  • Fix GitHub localization path detection depth

Added

  • Add cross-reference to .NET Libraries documentation in OTA page
  • Add OTA SDKs to documentation navigation
  • Add dedicated OTA SDKs documentation page
  • Add OTA demo sample with mock HTTP handler
  • Add tests for OTA functionality
  • Add OTA client support to JsonLocalization NuGet package
  • Add OTA API endpoints for over-the-air localization
  • Add default superadmin user creation on first run

Changed

  • Update documentation with OTA sample references
  • Update cloud screenshots and documentation
  • Refactor: Move ResourceDiscovery and ResourceFileParser into backend implementations
  • Refactor project detail page to use in-place tabs

0.7.4 - 2025-12-28

Fixed

  • Fix: SyncStatus default changed from 'pending' to 'idle'
  • Fix: Handle already-decoded content from GitHub API
  • Fix: Clear old PAT when connecting via OAuth
  • Fix SyncStatus not being reset on connect/disconnect
  • Fix GitHub link redirect URL to use AppBaseUrl instead of BaseUrl
  • Fix GitHub integration UI issues
  • Fix Cancel button missing in ConnectGitHubDialog after step 0
  • Fix nginx proxy_pass in regex locations
  • Fix email verification and password reset flows
  • Fix Blazor version mismatch error on deployment

Added

  • Add NeedsReview conflict type for first sync scenarios
  • Add GitHub sync status indicators to project cards and dashboard
  • Add no-cache headers for auth pages and improve error messages

Changed

  • Move Open Editor button to toolbar as primary action
  • UI modernization: light theme, sidebar polish, StatCard component, project toolbar
  • Update docs with GitHub integration and open source emphasis

0.7.3 - 2025-12-27

Fixed

  • Fix cloud test assertions for ApiResponse wrapper and expected values

Added

  • Add per-translation comment support with UI editing and sync
  • Add ca-certificates to API container for Let's Encrypt TLS validation

Changed

  • Run update-ca-certificates to generate SSL bundle in API container

0.7.2 - 2025-12-26

Fixed

  • Fix glossary dialog: use component instead of broken inline dialog
  • Fix service worker update notification by disabling cache for SW and index.html
  • Fix markup error in cloud init project selection
  • Fix project creation JSON serialization and improve error messages
  • Fix snapshot list JSON deserialization error
  • Fix TranslationGrid row deselection after Select All
  • Fix theme persistence when using RadzenAppearanceToggle

Added

  • Add inline validation indicators to Editor TranslationGrid
  • Add validation page and API endpoint for project validation
  • Add i18next placeholder support and use shared PlaceholderValidator in API
  • Add validation cache to Project entity
  • Add organization selector to organization glossary page
  • Add open source and self-hosting section to CLOUD.md documentation
  • Add cloud platform screenshots and documentation

Changed

  • Show validation status icons on project cards
  • Use shared EntryHasher in KeySyncService
  • Make KeyEditorDialog larger and fix grid refresh on data changes
  • Redesign KeyEditorDialog with RadzenDataGrid for better UX
  • Replace numeric CSS variables with theme-adaptive semantic equivalents

0.7.1 - 2025-12-25

Fixed

  • Fix NuGet release notes shell escaping in release workflow

Changed

  • Skip invalid CSS requests in service worker

0.7.0 - 2025-12-25

Fixed

  • Fix GlobalErrorBoundary navigation not working after error
  • Fix Glossary page dropdown by replacing tuples with record class
  • Fix CloudSyncValidator tests to expect errors for DefaultLanguage mismatch
  • Fix Android backend path semantics to be consistent with other backends
  • Fix theme persistence - save user preference to localStorage
  • Fix CloudSyncValidatorTests for updated error messages
  • Fix GlossaryController route attributes
  • Fix RemoteUrlParser test for new org project API route
  • Fix setup.sh to preserve unknown config.json fields (payment, lrmProvider)
  • Fix plural translation for unsaved UI changes
  • Fix plural translation display and token refresh race condition
  • Fix organization billing page to use config-based limits
  • Fix drawer isolation and translation source text handling
  • Fix CloudTranslationService IOptions injection and add SourceTexts support
  • Fix organization page routes to include /app prefix
  • Fix all navigation links to include /app prefix
  • Fix PayPal invoice and payment method lookups using subscription ID
  • Fix empty lrm.json on pull and add RESX BaseName to default config
  • Fix RESX base name detection for pull operations
  • Fix RESX write failing on empty temp files
  • Fix PayPal manage subscription button and usage dashboard link
  • Fix PayPal webhook user lookup and EF Core query splitting
  • Fix registration response parsing - API returns message not user data
  • Fix Blazor UI consistency issues
  • Fix Editor save flow consistency
  • Fix Dockerfile heredoc syntax for non-BuildKit compatibility
  • Fix UsageService to use direct CloudConfiguration injection
  • Fix security vulnerabilities: CORS, MinIO path traversal, CLI path traversal
  • Fix browser autofill on API key fields using text input with CSS masking
  • Fix code quality issues in cloud services
  • Fix code quality issues in OrganizationService
  • Fix Codacy code quality issues
  • Fix authentication and add various improvements
  • Fix completion percentage calculation for plural keys and translation status
  • Fix translation provider settings in project edit dialog
  • Fix Blazor navigation to use relative paths with base href
  • Fix nginx restart in deploy scripts to refresh DNS resolution
  • Fix ConflictDetectorTests to use FileDto instead of ResourceFile
  • Fix hardcoded .resx extensions and default language detection
  • Fix Docker build context to include Core dependencies
  • Fix JWT token uniqueness by adding JTI claim

Added

  • Add Help & Support pages with changelog and about
  • Add admin Communications page for sending emails to users
  • Add documentation for cloud log, revert, and snapshot commands
  • Add Android and iOS support to VS Code extension
  • Add Android and iOS support to cloud sync
  • Add Android and iOS localization backends
  • Add SuperAdmin authorization policy and JWT claims
  • Add IsSuperAdmin field to User entity
  • Add WebhookEvent entity for tracking webhook deliveries
  • Add admin dashboard with analytics, user management, and org details
  • Add review workflow, IMAP mail backend, org project routes, and CLI token refresh
  • Add KeyEditorDialog component for inline key editing
  • Add opt-in organization glossary inheritance for projects
  • Add Glossary feature for projects and organizations
  • Add Translation Memory feature
  • Add per-plan storage and snapshot limits
  • Add LRM Cloud section to README
  • Add Buy Me a Coffee badge and button to README
  • Add www (landing page) support to setup.sh and deploy.sh
  • Add documentation pages and update landing page pricing
  • Add usage events tracking for detailed analytics
  • Add SourceTexts and PluralForm fields to translation DTOs
  • Add organization selector to project settings page
  • Add project-organization assignment/transfer support
  • Add organization usage stats API endpoint
  • Add invoice history and payment method display to billing UI
  • Add cloud clone command and update documentation
  • Add project slug support and subscription fields migration
  • Add Blazor billing UI with dynamic plan limits
  • Add billing API endpoints and webhook handlers
  • Add PayPal configuration and simplify payment provider config
  • Add payment provider abstraction with Stripe and PayPal support
  • Add snapshot error codes to ErrorCodes
  • Add file import functionality to ImportProjectDialog
  • Add pagination support to projects API
  • Add per-provider translation usage tracking
  • Add rate limiting to TranslationController
  • Add Project Settings page and persist translation provider selection
  • Add snapshot management UI to Blazor web app
  • Add commit message support to CLI push command
  • Add snapshot API services and controller
  • Add Snapshot entity and database schema
  • Add --build option to deploy.sh for selective api/web/both builds
  • Add proactive limit checks to UI buttons and translation warnings
  • Add fallback reload for PWA updates
  • Add proper autocomplete attributes to auth password fields
  • Add nginx reverse proxy config for lrm-cloud.com
  • Add plural key support to web editor
  • Add translation preview mode for UI workflow
  • Add stream-based resource reading to Core library
  • Add authorization checks to TranslationController endpoints
  • Add API rate limiting middleware
  • Add privacy policy and terms of service pages
  • Add ByokCharsUsed field to DTOs for BYOK usage tracking
  • Add LRM meta-provider for managed translations
  • Add LRM provider configuration and ByokCharsUsed tracking
  • Add server-side pagination for translation editor
  • Add PWA update notification banner for web app
  • Add provider configuration hierarchy with options support
  • Add controller tests and update project service tests
  • Add static www site for LRM Cloud landing page
  • Add PWA support and update web assets
  • Add reusable UI components for web app
  • Add organization management and invitations
  • Add translation service and UI components
  • Add usage tracking service and API
  • Add CLI API Keys management UI and API endpoints
  • Add CLI API key support for cloud commands
  • Add API key authentication handler and dual auth scheme
  • Add comprehensive Blazor WebAssembly UI implementation plan
  • Add unit tests for SyncStateManager and AuthTokenManager
  • Add unit tests for RemoteUrlParser and ConfigurationManager cloud methods
  • Add comprehensive tests for CloudSyncValidator
  • Add cloud logout command and format validation for sync operations
  • Add cloud init command for interactive project setup
  • Add cloud login command
  • Add authentication and auto-refresh to CloudApiClient
  • Add refresh token support to AuthTokenManager
  • Add file-based sync DTOs and SyncState tracking
  • Add Comment field to Translation entity
  • Add username/project-name API routes for CLI sync
  • Add unit tests for configuration sync
  • Add server-side configuration storage and API endpoints
  • Add CLI configuration sync and cloud integration
  • Add MinIO storage service for file management
  • Add Core API for Projects and Resources (Phase 2)
  • Add Teams & Organizations feature (Phase 1)
  • Add comprehensive unit tests for authentication
  • Add AuthController with complete authentication API
  • Add database schema for Phase 1 authentication
  • Add API response standards and error handling guidelines to ROADMAP
  • Add Blazor WASM frontend container and nginx routing
  • Add nginx configuration prompts and API rebuild option to setup.sh
  • Add nginx reverse proxy with SSL support and security headers
  • Add matching query filters to dependent entities to fix EF Core warnings
  • Add unified log viewer with journalctl-like interface
  • Add database management script with status, export, import, etc.
  • Add interactive password prompts in setup.sh
  • Add entrypoint script for volume permission handling
  • Add LrmCloud solution and gitignore
  • Add LrmCloud.Tests unit test project
  • Add LrmCloud.Web Blazor project scaffold
  • Add LrmCloud.Shared library with configuration and entity models
  • Add LrmCloud.Api Entity Framework data context and configuration
  • Add Docker deployment infrastructure
  • Add Serilog logging to LrmCloud.Api
  • Add CI/CD deployment script to cloud roadmap
  • Add LocalizationManager.Core to version bump scripts
  • Add SaaS planning documentation

Changed

  • Reuse TranslateDialog component in project detail page
  • Enhance TranslateDialog with language display names, character estimates, and checkbox UX
  • Migrate LrmCloud.Web from MudBlazor to Radzen Blazor
  • Implement key-level cloud sync with conflict detection and config protection
  • Update API to match new Android path format
  • Ignore all .lrm folders (contain credentials)
  • Remove accidentally committed cloud.json with credentials
  • Update cloud landing page for Android and iOS support
  • Update documentation for Android and iOS formats
  • Update Blazor UI for Android/iOS and remove EditProjectDialog
  • Update CLI commands for Android and iOS format support
  • Update Blazor UI for auth state and billing display improvements
  • Enhance billing service with BYOK usage tracking and PayPal improvements
  • Integrate TM and Glossary with translation workflow
  • Register TM and Glossary services and add navigation
  • Security: Fix double-encoding path traversal vulnerability
  • Reorganize Usage dashboard into 3 clean sections
  • Security: Fix file upload vulnerabilities (XXE, path traversal, size limits)
  • Set Buy Me a Coffee username
  • Remove platform key support and fix API key hierarchy documentation
  • Minor organization and project page updates
  • Move LRM provider backend configuration to config.json
  • Sync user plan limits with config on login
  • Rename Stripe fields to generic Payment fields for multi-provider support
  • Update components to use UiHelpers
  • Update Organization pages to use UiHelpers
  • Update Project pages to use UiHelpers and improved patterns
  • Refactor TranslationService to use ServiceResult pattern
  • Enhance snapshot service with comparison and restore
  • Improve error handling in Home and ProjectList pages
  • Extract UiHelpers for consistent UI styling
  • Implement email template rendering in SmtpMailService
  • Implement LrmTranslationProvider failover
  • Update ResourceService tests for snapshot integration
  • Use project format from database as fallback when config doesn't specify ResourceFormat
  • Standardize page widths by removing individual MudContainer wrappers
  • Improve sidebar: remove header, add website link, make title clickable
  • Update domain from lrm.cloud to lrm-cloud.com
  • Update landing page messaging to emphasize open source and localization management
  • Update tests for CloudConfiguration and ILrmTranslationProvider
  • Update Blazor UI to show LRM and BYOK usage separately
  • Update CLI to display LRM vs BYOK usage separately
  • Update AuthService and UsageService for BYOK tracking
  • Update documentation for simplified cloud commands
  • Simplify cloud commands with single CloudConfigManager
  • Update cloud roadmap and Blazor UI plan
  • Update Docker and nginx deployment configuration
  • Update web app layouts, pages and auth
  • Update resource service with language management
  • Update documentation for cloud API key authentication
  • Implement Phase 4B and 4C of Blazor UI
  • Implement Phase 4A: Blazor WebAssembly foundation with MudBlazor
  • Reorganize roadmap: merge Blazor UI and Translation Service into Phase 4
  • Mark Phase 3 testing as complete in roadmap
  • Update roadmap - Phase 3 CLI Sync progress
  • Enable automatic token refresh in cloud commands
  • Move remote commands under cloud hierarchy
  • Move cloud configuration from lrm.json to .lrm/remotes.json
  • Update API controllers for file-based sync endpoints
  • Update CloudApiClient and ConflictDetector for file-based sync
  • Update CLI push/pull commands for incremental sync
  • Implement file-based resource sync using Core backends
  • Improve email error handling to prevent operation failures
  • Update roadmap: mark Phase 3 config storage tasks complete
  • Update roadmap with completed phases
  • Update roadmap and add Teams & Organizations plan
  • Implement complete authentication service layer
  • Update README.md to enhance deployment instructions and container details
  • Implement standardized API response structure and global exception handling
  • Enhance deployment script to check for .env file and regenerate nginx configuration based on SSL settings
  • Enable Redis caching and MinIO object storage services in API
  • Handle password changes in setup.sh for PostgreSQL, Redis, and MinIO
  • Update documentation for nginx and mark Phase 0 complete
  • Move API logs to data/logs/api/ subdirectory
  • Update deploy README with db.sh and logs.sh documentation
  • Remove implemented setup/deploy script specs from roadmap
  • Implement IMailService with SMTP provider
  • Exclude cloud folder from main project compilation
  • Update LRM Cloud roadmap
  • Update deploy.sh to default to local development mode
  • Update ROADMAP.md
  • Update README with Core library information
  • Extract LocalizationManager.Core shared library

0.6.25 - 2025-12-06

Fixed

  • Fix JSON plural detection and add i18next suffix consolidation

Added

  • Add comparison table with i18n tools to JSON docs
  • Add JSON Localization section and comprehensive docs for React/Vue/Angular/i18next
  • Add --ask-missing option to add command for CLI-friendly default behavior
  • Add plural support to VS Code extension providers
  • Add plural key indicator and editing support to Web and VS Code UIs
  • Add VS Code extension unit test infrastructure
  • Add VS Code extension unit tests to CI workflow
  • Add plural form support for JSON localization
  • Add plural support to CLI add/update commands and API
  • Add plural key creation and conversion to TUI
  • Add plural key creation and conversion to Web UI
  • Add proper plural form support to ResourceEntry model
  • Add JSON support to VS Code extension
  • Add JSON localization NuGet packages with release workflow integration
  • Add JSON backend support with multi-backend architecture
  • Add JSON backend implementation plan

Changed

  • Filter hidden directories from RESX folder auto-discovery
  • Show all CLDR plural forms in edit modal
  • Update documentation for JSON localization and plural support
  • Update documentation for plural key support
  • Remove inaccurate i18next claims from README
  • Update NuGet package READMEs with comprehensive documentation
  • Improve JSON backend implementation plan
  • Update README.md

0.6.24 - 2025-11-30

Added

  • Add CodeLens provider for localization keys

Changed

  • Update VS Code extension plan with CodeLens implementation

0.6.23 - 2025-11-30

Fixed

  • Fix VS Code extension comment handling and translate dialog

Added

  • Add unit tests for ResourcesController UpdateKey
  • Add per-language comment support to UpdateKey API
  • Add VS Code extension status bar Quick Actions and config listener

0.6.22 - 2025-11-30

Added

  • Add secure credential storage UI integration

0.6.21 - 2025-11-30

Changed

  • Enhance VS Code extension settings panel and fix packaging

0.6.20 - 2025-11-30

Added

  • Add IntelliSense autocomplete for localization keys

0.6.19 - 2025-11-30

Fixed

  • Fix VS Code extension display name for marketplace

0.6.18 - 2025-11-30

Fixed

  • Fix bundle script path in release workflow
  • Fix backend process cleanup on extension exit
  • Fix dashboard to use actual API response format
  • Fix inconsistencies in VS Code extension plan
  • Fix test for new Lingva and MyMemory providers

Added

  • Add link to VS Code extension documentation
  • Add VS Code extension section to main README
  • Add LICENSE file
  • Add VS Code extension build and publish to release workflow
  • Add extension icon and update publisher to nickprotop
  • Add VS Code extension launcher and task configurations
  • Add Windows ARM64 support to VS Code extension
  • Add VS Code extension version sync to release scripts
  • Add content-based scanning support for in-memory file scanning
  • Add VS Code extension build and bundling scripts
  • Add VS Code extension core files
  • Add lrm.json configuration support to Settings Panel
  • Add comprehensive tests for single-file scan functionality
  • Add single-file scan support to CLI and API
  • Add comprehensive VS Code extension development plan with tracking
  • Add security hardening to Web API
  • Add Lingva and MyMemory free translation providers
  • Add unit tests for ConfigurationSchemaService
  • Add multi-select with bulk operations to Web UI Editor
  • Add schema-enhanced configuration editor with inline documentation

Changed

  • Improve VS Code extension marketplace categories and keywords
  • Update extension README for marketplace with screenshots
  • Move extension scripts to vscode-extension/scripts/
  • Update VS Code extension version to 0.6.17
  • Refactor build system: eliminate redundancy, add macOS support
  • Update build script and API documentation
  • Update .gitignore for VS Code extension development
  • Update VS Code extension plan with completed Phase 4 items
  • Register Dashboard and Settings commands in package.json
  • Remove duplicate status bar and use StatusBarManager only
  • Update VS Code extension plan: same repo, bundled binary, random port
  • Refactor provider lists to use factory as single source of truth

0.6.17 - 2025-11-25

Added

  • Add web command to COMMANDS.md documentation
  • Add Web UI documentation and screenshots
  • Add and enhance API controllers for Web UI
  • Add API client services and models for Blazor UI
  • Add Blazor Server UI with terminal-themed design
  • Add Phase 6: Web API implementation with full CLI parity

Changed

  • Update ROADMAP with Web UI implementation status
  • Register Blazor services and SearchApiClient in WebCommand
  • Extend ResourceFilterService for API search support
  • Implement web command foundation for Phase 6
  • Enhance ROADMAP with comprehensive Web API/WASM architecture details

0.6.16 - 2025-11-24

Fixed

  • Fix PPA distribution: change unstable to noble in release.sh

0.6.15 - 2025-11-24

Fixed

  • Fix PPA upload: change distribution from unstable to noble

Added

  • Add Shift+F7 keyboard shortcut to view code references in TUI

Changed

  • Implement Phase 5: Simple CLI Chaining
  • Update man page and completion files for batch operations

0.6.14 - 2025-11-23

Fixed

  • Fix GPG signing in GitHub Actions workflow

0.6.13 - 2025-11-23

Fixed

  • Fix null reference warning in BackupManagerWindow
  • Fix backup list --all showing no output
  • Fix key name standardization not persisting in merge duplicates
  • Fix case-insensitive duplicate detection to match MSBuild behavior
  • Fix build-source-package.sh and remove debian/compat conflict
  • Fix build-deb.sh to properly build Debian packages
  • Fix release script to commit shared project version changes

Added

  • Add batch operations support to TUI editor
  • Add Phase 4 TUI enhancements and refactor ResourceEditorWindow
  • Add Phase 4: TUI Visual & Workflow Enhancements to roadmap
  • Add comprehensive tests for case-variant duplicate handling
  • Add key name selection and standardization to TUI merge duplicates
  • Add comprehensive duplicate key handling to view and merge commands
  • Add Debian package build scripts
  • Add man page for lrm command
  • Add Debian packaging infrastructure
  • Add Debian packaging support to v0.7.0 roadmap

Changed

  • Enhance --show-details to display changed key names in backup list
  • Run both validate and scan in check command regardless of validation result
  • Automate debian/changelog generation in release script
  • Set assembly name to 'lrm' and remove rename logic from build script
  • Update ROADMAP: Mark Phase 3 (Debian packaging) as completed
  • Update documentation for Debian package distribution
  • Update release workflow for Debian packages and PPA

0.6.12 - 2025-11-16

Fixed

  • Fix broken version management system

Added

  • Add shell completions for placeholder validation options
  • Add configurable placeholder type validation with .NET default
  • Add placeholder type filtering support to validation system
  • Add comprehensive backup system documentation
  • Add comprehensive backup system tests and fixes
  • Add comprehensive backup and versioning system

Changed

  • Simplify v0.7.0 roadmap: remove plugin/flow systems, add CLI chaining
  • Update bump-version.sh to handle Shared project version
  • Sync LocalizationManager.Shared version to 0.6.11
  • Update documentation for configurable placeholder validation
  • Implement Phase 2: Placeholder Validation
  • Update roadmap to reflect completion of enhanced backup system implementation
  • Remove non-functional backup configuration
  • Update shell completion for backup commands
  • Mark Phase 1 complete in roadmap
  • Migrate all commands to use BackupVersionManager

0.6.11 - 2025-11-14

Fixed

  • Fix TUI translation dialog to handle duplicate keys and update status correctly

Added

  • Add comprehensive integration tests for duplicate key handling
  • Add duplicate key handling to CLI delete command
  • Add comprehensive comment support and search features to TUI

Changed

  • Update .gitignore file
  • Update documentation and add zsh completion for duplicate handling features
  • Implement merge-duplicates command and update delete command for duplicate handling
  • Update documentation and completion for duplicate key handling
  • Implement duplicate key handling in TUI and fix save flow
  • Update documentation for TUI comment features and translation enhancements

0.6.10 - 2025-11-14

Added

  • Add two-level safety protection to prevent accidental translation overwrites
  • Add comprehensive tests for AI translation prompt generation
  • Add Azure AI Translator provider support
  • Add AI-powered translation providers (OpenAI, Claude, Ollama, Azure OpenAI)

Changed

  • Update documentation and completion to use safe translate patterns
  • Consolidate language configuration by removing redundant DefaultSourceLanguage
  • Improve AI translation prompts with language names
  • Update shell completion with new AI translation providers
  • Update configuration files for AI translation providers
  • Update documentation for AI translation providers
  • Update CLI commands with new AI provider options
  • Update tests for new AI translation providers

0.6.9 - 2025-11-13

Added

  • Add configuration system with scanning settings
  • Add comprehensive tests for source code scanning
  • Add source code scanning functionality
  • Add sample configuration file and comprehensive configuration guide

Changed

  • Update documentation and CLI for new scan and check commands
  • Expand test data and fix test assertions
  • Update installation documentation for automatic shell completion
  • Enhance installation with automatic shell completion setup
  • Update shell completions with new commands and features

0.6.8 - 2025-11-12

Fixed

  • Fix critical and high-severity bugs in ViewCommand

Added

  • Add configuration management and secure credential storage
  • Add machine translation support with multiple providers
  • Add comprehensive tests for translation features
  • Add DefaultLanguageCode configuration for customizable default language display
  • Add comprehensive tests for bug fixes

Changed

  • Integrate translation and config features into CLI
  • Update shell completion with all current commands and options
  • Reorganize documentation and add comprehensive CI/CD guide
  • Update documentation for DefaultLanguageCode configuration

0.6.7 - 2025-11-11

Added

  • Add advanced filtering features to view command
  • Add --search-in option to view command for searching in keys, values, or both
  • Add comprehensive unit tests for ResourceFilterService
  • Add filter infrastructure for TUI
  • Add culture filtering, keys-only mode, and extra keys warning to view command

Changed

  • Update documentation for --search-in and --case-sensitive options
  • Update TUI documentation to reflect new filter UI
  • Improve TUI filter UI and fix hidden column display
  • Update documentation for TUI filtering features
  • Implement advanced filtering and language management in TUI
  • Refactor tests to use persistent TestData folder

0.6.6 - 2025-11-11

Fixed

  • Fix markup bug and simplify wildcard detection logic
  • Fix duplicate -c option conflict by removing shorthand from --config-file

Added

  • Add integration tests for ViewCommand regex functionality
  • Add regex pattern support to ViewCommand
  • Add format support to ImportCommand
  • Add --config-file option and configuration notices
  • Add configuration file infrastructure

Changed

  • Update Scenario 4 to use add-language command instead of manual cp
  • Update documentation to remove -c shorthand from --config-file option
  • Update documentation for configuration file support and regex pattern matching
  • Standardize ListLanguagesCommand format handling

0.6.5 - 2025-11-09

Added

  • Add LocalizationManager.Tests/build/ to .gitignore
  • Add JSON and simple output formats to validate, stats, view, and export commands
  • Add explicit permissions to CI workflow for security

Changed

  • Use 'Release v' naming and exclude from CI workflow

0.6.4 - 2025-11-09

Fixed

  • Fix release script to create new commit instead of amending
  • Fix GitHub Action version references from @v1 to @v0
  • Fix action.yml to use static filenames without version numbers

Added

  • Add language management to TUI editor
  • Add language file management commands
  • Add release.sh script and simplify release workflow

Changed

  • Remove update-changelog workflow and move logic to release.sh
  • Remove version numbers from release artifact filenames

0.6.3 - 2025-11-09

Fixed

  • Fix release workflow to checkout main branch to prevent push conflicts
  • Fix YAML syntax error in update-changelog workflow
  • Fix CI workflow condition syntax
  • Fix ResourceFileParser to preserve file order and structure

Added

  • Add workflow_dispatch to release workflow for manual triggering
  • Add CI/CD integration and streamline documentation
  • Add GitHub Discussions badge and comparison table
  • Add community files and auto-updating changelog
  • Add status badges to README

Changed

  • Update CHANGELOG and add automation workflow
  • Remove VERSION from build.sh for safety

0.6.2 - 2025-01-09

Added

  • GitHub Actions CI/CD workflows for automated releases
  • Version management scripts (bump-version.sh and get-version.sh)
  • Status badges to README (CI, Release, Version, License, .NET, Platform)
  • Repository topics and improved description

Changed

  • Build script now uses dynamic version extraction from .csproj
  • Removed hardcoded VERSION variable from build.sh for safety
  • Workflow only modifies .csproj and README.md (build scripts untouched)

Fixed

  • Build script now explicitly publishes main project only (excludes test project)

0.6.0 - 2025-11-09

Added

  • Initial release of Localization Resource Manager
  • CLI Commands:
    • validate - Validate resource files for missing translations, duplicates, and empty values
    • stats - Display translation coverage statistics with charts
    • view - Display specific key details in table, JSON, or simple format
    • add - Add new localization keys to all languages
    • update - Modify existing key values with preview
    • delete - Remove keys from all languages
    • export - Export translations to CSV format
    • import - Import translations from CSV with conflict resolution
    • edit - Launch interactive TUI editor
  • Interactive TUI Editor:
    • Real-time search and filter
    • Multi-column table view for all languages
    • Add, edit, delete keys with keyboard shortcuts
    • Automatic validation (F6)
    • Unsaved changes tracking
    • Keyboard shortcuts help (F1)
  • Core Features:
    • Auto-discovery of .resx files and languages
    • Dynamic language support (no hardcoded languages)
    • Language validation with helpful errors
    • Automatic backup system before modifications
    • Multi-platform build support (Linux/Windows x64/ARM64)
    • Shell completion scripts (bash and zsh)
  • Testing:
    • 21 passing unit and integration tests
    • Test coverage for core logic, CRUD operations, and validation
  • Documentation:
    • Comprehensive README with usage examples
    • EXAMPLES.md with real-world scenarios
    • INSTALLATION.md with platform-specific instructions
    • BUILDING.md with build and distribution guide
  • Build System:
    • Automated multi-platform build script (build.sh)
    • Self-contained executables (no .NET runtime required)
    • Distribution archives ready for release
  • License:
    • MIT License with copyright headers in all source files