Skip to content

Open MCT v3.0.2

Compare
Choose a tag to compare
@shefalijoshi shefalijoshi released this 02 Oct 16:53
· 320 commits to master since this release
133e7c3

What's Changed

Caution

Breaking Changes

  • Starting from version 3.0.0, Open MCT requires a child <div> within the document.body in order to mount properly. Ensure that your index.html or hosting document includes a suitable container <div> before initializing Open MCT.
<!-- Bad ❌ -->
<!doctype html>
<html lang="en">
 <head>
   <meta charset="utf-8" />
   <title>Open MCT</title>
 </head>
 <body>
 </body>
</html>
<!-- Good ✅ -->
<!doctype html>
<html lang="en">
 <head>
   <meta charset="utf-8" />
   <title>Open MCT</title>
 </head>
 <body>
   <div id="app"></div>
 </body>
</html>
  • For Open MCT plugin maintainers with views written in Vue 2, ensure compatibility with Open MCT v3.x.x and above by creating a new <div> and appending it to the element passed into the show() function in your ViewProviders. This prevents rendering issues, as Vue 3 no longer replaces the element when mounting applications.
/* ❌ */
show(element) {
    component = new Vue({
        el: element,
        // ... existing code ...
    });
}
/* ✅ */
show(element) {
    // Create a new div, append it to the element, and mount the Vue component to the new div
    const div = document.createElement('div');
    element.appendChild(div);
    component = new Vue({
        el: div,
        // ... existing code ...
    });
}

Warning

Deprecations

Time System and Clock API Updates

The Time API has been updated to improve consistency and provide more descriptive method names. There are now separate methods for getting and setting the time system and clock. Additionally, Open MCT now always has an active clock, even in fixed time mode.

  • The stopClock() method is deprecated and will be removed in a future release.
    • Switching the time conductor mode from "real-time" to "fixed" no longer sets the active clock to undefined. This makes it possible to retrieve the current time of the configured time system and clock by calling openmct.time.now(), even if the time conductor is in "fixed" mode.
  • The timeSystem() method is deprecated. Use getTimeSystem() and setTimeSystem() instead.
  • The bounds() method is deprecated. Use getBounds() and setBounds() instead.
  • The clock() method is deprecated. Use getClock() and setClock() instead.
  • The clockOffsets() method is deprecated. Use getClockOffsets() and setClockOffsets() instead.

Time Events Renaming

The names of events emitted by the Time API have been updated to be more consistent and descriptive.
Please update your listeners to the new event names after migrating to the new Time API.

  • boundsboundsChanged
  • timeSystemtimeSystemChanged
  • clockclockChanged
  • clockOffsetsclockOffsetsChanged

🏕 Features

Commits

🔧 Maintenance

Commits

🐛 Bug Fixes

Commits

Full Changelog: v2.2.5...v3.0.2