Skip to content

Releases: vrognas/vscode-nmtran

Release v0.2.18

05 Feb 00:37

Choose a tag to compare

Fixed

  • Memory Leaks: Fixed potential memory leaks in client and server
    • Configuration change handler now properly disposed via context.subscriptions
    • Document settings cache now cleared when documents close

Release v0.2.17

04 Feb 17:36

Choose a tag to compare

Changed

  • Test Framework Migration: Migrated server tests from Jest to Vitest

    • Replaced Jest with Vitest v3.0.0 for faster test execution
    • Added @vitest/coverage-v8 for coverage reporting
    • Created vitest.config.ts with 80% coverage thresholds
    • Removed Jest dependencies (jest, ts-jest, @types/jest)
  • Test Type Safety: Added typed mock infrastructure

    • Created mocks/mockConnection.ts with MockConnection type and factory
    • Replaced all any typed mocks with proper TypeScript types
    • Added getHoverValue() helper for type-safe hover content extraction
    • Zero ESLint warnings in test files (was 24)

Added

  • DocumentService Tests: New comprehensive test suite for document caching
    • LRU eviction behavior tests
    • Cache statistics tests

Fixed

  • Package Size: Improved .vscodeignore to exclude dev files from vsix
    • Excluded tsconfig files, tsbuildinfo, vitest config
    • Excluded package-lock.json files and test runners
    • Reduced package to 15 essential files

Release v0.2.15

03 Feb 16:45

Choose a tag to compare

Fixed

  • Snippet Syntax: Fixed VSCode warning about confusing snippet variables and placeholders
    • Corrected extra brace in Surge model snippet (THETA({${3:...})THETA(${3:...}))
    • Fixed $TM_FILENAME_BASE variable syntax in FOCEI snippet
    • Escaped literal $TABLE in Xpose TABLEs snippet comment

Release v0.2.14

03 Feb 14:57

Choose a tag to compare

Fixed

  • Security Vulnerabilities: Resolved all npm audit vulnerabilities across root, client, and server packages
  • ESLint Migration: Upgraded from ESLint v8 to v9 with flat config format (eslint.config.mjs)

Updated

  • eslint: Updated from v8.57.0 to v9.18.0
  • typescript-eslint: Migrated from separate @typescript-eslint/* packages to unified typescript-eslint v8.38.0
  • brace-expansion: Patched ReDoS vulnerability
  • diff: Patched DoS vulnerability in parsePatch/applyPatch
  • js-yaml: Patched prototype pollution vulnerability

Changed

  • Package Exclusions: Improved .vscodeignore to exclude dev files from vsix package

Release v0.2.13

02 Aug 22:35

Choose a tag to compare

Added

  • NONMEM 7.6.0 Support: Added function highlighting for new NONMEM 7.6.0 functions (PLOG, PEXP, PSQRT, PSIGN, PSIND, PCOSD, PSIND1, PCOSD1)
  • Parameter Bounds Validation: Comprehensive validation for THETA, OMEGA, and SIGMA parameter bounds syntax
  • Continuation Marker Validation: Proper validation of & continuation characters in NMTRAN code
  • BLOCK Matrix Validation: Enhanced validation for BLOCK matrix syntax in OMEGA and SIGMA records
  • NMTRAN Parameter Examples: Added comprehensive parameter syntax reference examples for documentation
  • ERR/EPS Equivalence: Full support for ERR() as synonym for EPS() parameters throughout the extension

Enhanced

  • Syntax Highlighting: Improved highlighting for generated subroutines (ADVAN/TRANS combinations)
  • Performance Optimization: Enhanced ERR/EPS equivalence processing for better responsiveness
  • FormattingService: Refactored for improved maintainability and code organization
  • Error Handling: Added structured error context and enhanced parameter validation utilities
  • Test Coverage: Comprehensive test suites for NONMEM 7.6.0 features, edge cases, and validation scenarios
  • Code Organization: Better utility class structure and improved parameter scanning architecture

Fixed

  • Parameter Bounds: Resolved OMEGA/SIGMA parameter bounds validation edge cases
  • THETA Hover: Fixed hover functionality for THETA parameters in complex syntax scenarios
  • TypeScript Compliance: Resolved strict mode compliance issues for reliable builds
  • Test Reliability: Fixed various test cases and TypeScript compilation errors
  • Build Management: Added dist/ directory to .gitignore for cleaner repository state
  • Code Quality: Fixed unused parameter lint error in ParameterScanner service

Updated

  • Reserved Variables: Updated for NONMEM 7.6.0 compatibility
  • Documentation: Enhanced CLAUDE.md, MAINTENANCE.md, and ARCHITECTURE.md with current practices
  • Development Tools: Improved pre-release scripts and build configuration

Release v0.2.12

31 Jul 08:30

Choose a tag to compare

Enhanced

  • Architecture Overhaul: Refactored extension to service-based architecture with proper dependency injection
  • Modern Bundling: Implemented ESBuild bundling for improved performance and reliable dependency packaging
  • Configuration Management: Added centralized configuration service with user-configurable debug settings
  • Structured Logging: Professional logging service with configurable levels and consistent formatting
  • Code Quality: Comprehensive improvements across maintainability, readability, performance, and testability
  • Modular Design: Extracted features into dedicated services (folding, language server, parameter parsing)
  • TypeScript Strict Mode: Enhanced type safety with proper null checking and strict compilation
  • Error Handling: Improved error handling and recovery throughout the extension

Fixed

  • TypeScript Compilation: Fixed strict mode errors in parameter parser for reliable GitHub CI builds
  • Dependency Updates: Updated TypeScript ESLint packages to v8.x for better code quality enforcement
  • Import Statements: Converted legacy require() calls to modern ES6 imports for better bundling
  • ESLint Configuration: Enhanced rules to properly handle unused variables and caught errors

Updated

  • @typescript-eslint/eslint-plugin: Updated from v6.21.0 to v8.38.0
  • @typescript-eslint/parser: Updated from v6.21.0 to v8.38.0
  • @types/vscode: Updated from v1.80.0 to v1.102.0
  • @types/node: Updated from v20.19.9 to v22.10.2

Release v0.2.11

30 Jul 23:04

Choose a tag to compare

Fixed

  • Bugfix

Release v0.2.10

30 Jul 22:48

Choose a tag to compare

Fixed

  • Extension Activation: Fixed TypeScript compilation error that prevented extension from activating properly
  • Go to Definition: Resolved "Cannot find module 'vscode-languageclient/node'" error that blocked parameter navigation features

Release v0.2.9

30 Jul 22:16

Choose a tag to compare

Release v0.2.5

26 Jul 21:10

Choose a tag to compare