MDriven v7.0.x - November 2025

Released: Dec 11, 2025

v7.0.x - November 2025 での更新項目

機能

Designer

  • OCL Editor and Cross-Reference Power-Up
    • Direct Expression Editing (Major Improvement): The Used-By and Changed-By cross-reference functions now include an Edit button that lets you jump straight to the using expression itself, rather than just the owning model element.
    • OCL Editor History: The internal logic of the OCL Editor was fundamentally rewritten to allow for expression refresh and history, enabling you to swiftly switch between expressions you are actively working on.
    • Centralized Expression Access: The UsedBy, ChangedBy, and Expressions functions are now grouped together in the menu and made available directly from the OCL Editor tree and the OCL edit text.
    • Multi-Tab Support: The OCL Editor now supports opening in multiple views simultaneously by holding Ctrl while showing a new expression.
    • New Edit Control: The underlying OCL edit control (previously RichTextbox) has been replaced to resolve numerous long-standing issues.
  • Platform and Automation
    • Cross-Platform Assembly Compatibility: A major architectural change was implemented to handle platform-specific assemblies (like those used for Active Directory via System.DirectoryServices.Protocols). The Designer now preserves runtime-specific assemblies and their directories (win-x64, linux-arm64, osx-x64, etc.) during AssetUpload. The Turnkey runtime then intelligently resolves missing assemblies based on the current operating system and architecture.
    • Continuous Integration (CI) Adaption: Significant updates were made to adapt the Visual Studio Designer and the overall framework to support the documented Continuous Integration workflow.
    • Automation Improvements: Fixed issues with automation runs and added better logging. The system now allows you to give full file names to log and zip files during automation.

Framework

  • Core Performance and Stability
    • New CascadeFetch() Operator: A new OCL query operator, int CascadeFetch(), has been introduced. This operator follows composite links to ensure all related objects are fully loaded. It is recommended to run this prior to a delete operation to prevent unpredictable object fetching during the deletion process. Improved handling for link objects in CascadeFetch.
  • OCL Editor and Usability Enhancements
    • OCL Editor Overhaul: The internal logic of the OCL Editor was fundamentally rewritten to enable expression history and swift shifting between expressions you work on. The underlying edit control was also replaced to resolve numerous issues.
    • Direct Cross-Reference Access: The UsedBy, ChangedBy, and Expressions functions are now grouped and available directly from the OCL editor tree and the OCL edit text, streamlining cross-reference workflows.
    • Improved Contextual Help: Wiki links for OCL operators are now consolidated. New links were added for OCL cursor nodes (e.g., +, -, /, etc.) to provide instant help.
    • Better Combobox Usability:
      • In Blazor, a transparent text layer was added to comboboxes so that the selected result can be found via the browser's Ctrl+F search function.
  • Integration
    • Automation Integration: Continued updates to support the Continuous Integration workflow in the Framework, including better logging and fixes for Dispatcher issues when the UI is not shown.

Turnkey

  • UI/UX Enhancements
    • Improved "Select All" Behavior: When a user presses Ctrl+A on an empty part of the page, the default browser text selection is now suppressed. Instead, the system intelligently performs a "select all" on the first visible table, if one exists, in both AngularJS and Blazor clients.
  • Stability and Logging
    • Log Optimization: The TurnkeyTracelog now truncates long messages to prevent them from blocking the trace log save function, improving the reliability of logging.
    • Server This release primarily focuses on enhancing cross-platform compatibility for advanced features and improving the Continuous Integration (CI) workflow visibility.
  • Cross-Platform & Architecture Support
    • Runtime-Specific Assembly Handling (Major Change): The server now features a major architectural change to handle assemblies that rely on platform-specific libraries (like System.DirectoryServices.Protocols for Active Directory).
    • The server ensures that runtime-specific assemblies and their directories (win-x64, linux-arm64, osx-arm64, etc.) are preserved in the AssetUpload package.
    • The Turnkey runtime now includes logic to intelligently resolve and load the correct assembly based on the current operating system (Windows, Linux, macOS) and architecture (x64, Arm64).
  • Continuous Integration (CI) Enhancements
    • New CI Status Endpoint: A new endpoint, CurrentStatusCI, has been added to the server.
    • This provides a dedicated method for external tools and CI pipelines to check the current status of the server's continuous integration process.
    • The endpoint is explicitly defined with httpget to simplify external access.

不具合の修正

Designer

  • Platform and Automation
    • WPF Fix: Resolved an issue with the ViewModel's SS PSExpression result type not being valid in the Editor.

Framework

  • Core Performance and Stability
    • Deadlock Prevention:
      • Fixed a recurring deadlock case related to the asynchronous execution of PSEval (OCL Play Script).
      • Fixed an issue where the Debugger step had a tendency to deadlock the application due to a bad synchronous/asynchronous transition in the EcoSpace.
    • Smarter Server Fetching Logic:
      • Removed harmful server-side fetch "pumping" in HandleViewModelQueryplanFetchCondition. This pumping, which was meant to help with self-recursion, was found to dangerously over-fetch thousands of objects in complex scenarios. Fetch-pumping must now be handled at the client level where the reason for the fetch is known, preventing wrongful fetching and unnecessary data transfer.
  • OCL Editor and Usability Enhancements
    • Combobox Usability:
      • Fixed an issue where disabled comboboxes did not show a hint (tooltip) with the selected value, making the value hard to see.
    • AngularJS Null Rendering Fix: When using NumberFormat in AngularJS data binding, a null value no longer renders the binding expression; it now correctly renders nothing (empty string).
  • General Fixes and Integration
    • Database Schema Fix: Fixed an issue where the package version number was missing from the schema definitions for Postgres, SQLite, and MySQL databases.
    • Metric Conversion Handling: Illegal MetricConversion Tagged values are now ignored, falling back to the presentation unit instead of causing errors.

Turnkey

  • UI/UX
    • Disabled Combobox Visibility: Fixed a persistent issue where a disabled combobox did not display the hint (tooltip), making it impossible for users to see the selected value without unlocking the control.
    • Modal and Table Interaction Fixes: Resolved several glitches related to tables displayed within modal windows, including:
      • Issues with "Select all" in tables within a modal.
      • Problems with resizing tables inside a modal.
      • Corrected the behavior of "select first table" when the modal area is empty.
      • Fixed the "open in new" functionality specifically in Blazor.
  • Stability and Logging
    • Popup Navigation Fix: Corrected an issue with the SkipWhenBacking logic when a popup was shown and then closed using frameworkaction.closepopup. This prevents AngularJS from navigating strangely when the user attempts to go back.