MES 4.0 RC Release Notes
- 4.83.2 RC5 Release Notes
- 4.83.2 RC4 Release Notes
- 4.83.2 RC3 Release Notes
- 4.83.2 RC2 Release Notes
- 4.83.2 RC1 Release Notes
- 4.83.0 RC4 Release Notes
- 4.83.0 RC3 Release Notes
- 4.83.0 RC2 Release Notes
4.83.2 RC5 Release Notes
| MES-7853 | Bug | Changesets | Fixed - Corrected an issue where copying batch recipes in the Gateway scope wouldn't set parameter values. | |
| MES-7790 | Bug | Changesets | OEE | Fixed - Corrected an issue where operations would not auto-start due to the operation begin property not being copied over from the Definition Segment |
| MES-7805 | Bug | Changesets | Fixed - Corrected an error that prevent analysis task routing servers from being able to start. | |
| MES-7807 | Bug | Core | Fixed - Corrected an issue that could cause missing property values when complex properties are added and renamed |
|
Batch Procedure Module: when installing 3.81.12 SP4 you must resync phases, and then validate and save of all batch recipes |
| MES-7021 | Bug | Batch | Fixed - Batch Recipes that do not contain at least 1 Unit Procedure, will now sync down to all Enterprise Children. |
| MES-7605 | Bug | Batch | Feature - Updated the Pending Authorizations list with a new design, improved filtering, and support for direct role selection. |
| MES-7815 | Bug | Batch | Fixed - New Batch Params added to User Phases on module upgrade, no longer share Property UUIDs |
| MES-7818 | Bug | Batch | Fixed - Restart commands are no longer incorrectly sent to Idle phases |
| MES-7820 | Bug | Batch | Fixed - Flush any pending parameters to the database when an EBR is requested Fixed - Include procedure-level parameters when getting idle step properties. |
| MES-3127 | New Feature | Core | Feature - Added system.mes.changelog scripting namespace that allows acquires Changelog Datasets, similar to those used in the Vision MES Changelog Viewer. |
| MES-7801 | Bug | Core | Fixed - Prevented components from throwing a minimum-size error in the Designer. |
| MES-6480 | Bug | OEE/Downtime | Fixed - downtime reason override behavior so prohibited reasons cannot be overridden and scope rules are consistently enforced across Perspective and Vision and backend update paths. |
| MES-7758 | Bug | SPC | Fixed - Corrected an issue where C, NP, and U SPC charts in Perspective would throw errors loading sample definition attributes when refreshing. |
| MES-7660 | Bug | Trace | Fixed - Adding new Materials, Personnel, or Supplemental Equipment values to optional Trace operations using modifyOperation, now defaults to using Operation Begin/End date times instead of null. |
| MES-7824 | Bug | WebServices | Fixed - Web Service Gateway REST requests now handle empty HTTP response bodies correctly. |
| MES-7344 | Bug | WebServices | Fixed - Outbound Web Services XML (request and response bodies built from the configured variable tree) now lists elements in the same order as defined in the Web Service configuration, including nested elements, which improves compatibility with strict partner schemas. |
| MES-7813 | Bug | WebServices | Fixed - SOAP consumer response parsing preserves number-like string values (for example, `2E3F`) as strings. |
| MES-7814 | Bug | WebServices | Fixed - REST XML responses from Web Services Provider preserve script dictionary field order, including nested list/dictionary payloads. |
The following updates refine the Batch module by enhancing BatchMasterLogic validation and expanding the scripting functions. These updates enable more dynamic interaction with batch data while enforcing structural rules to preserve recipe integrity during configuration.
| MES-7681 | Core | Production | Fixed - Data retention now purges all batches outside of the cutoff date instead of limiting it to 1000 batches per day. | |||
| MES-7458 | Batch | Improved:
Fixed:
Added:
Added new convenience scripting methods:
Other methods that do the same:
| |||
| MES-7781 | Batch | Fixed - Batches that are held while a Unit Procedures is waiting for allocation now properly allocate that Unit after the batch has been restarted and a Unit is free | |||
| MES-7754 | Batch | Fixed - Formula parameters visibility property now correctly defaults to 'True' if not specified | |||
| MES-7253 | Batch | Fixed - Batch Actions go to RUNNING after a restart | |||
| MES-7718 | Batch | Document Management | Improved - Updated batch components to apply more translations across Batch components, translate Recipe Names, Recipe Descriptions, Phase Names, Parameter Names, Parameter Values, Phase Types | |||
| MES-7585 | SPC | Fixed - Perspective Sample Definition Manager now allows attribute sample sizes different from the definition default, as long as the value is greater than zero. | |||
| MES-7749 | OEE/Downtime | Fixed - OEE Material XML Exports and Imports now handle description fields. | |||
| MES-5839 | Perspective | Fixed - Copy Equipment Path now reports clear in-app errors when clipboard access is unavailable instead of throwing a browser exception. | |||
4.83.2 RC4 Release Notes
Released Date: 3/26/2026
This RC includes a subset of the tickets that will be released in this month's maintenance: version 4.83.1 SP2.
| MES-7775 | Bug | Batch | Artifact not found for doc phases in operational templates after upgrading | Fixed - Corrected an issue where artifacts could not be found when trying to create a master recipe in scripting and using templates that contain documents. |
| MES-7773 | Bug | Batch | Templates not updated with new parameters after Sync and Save if created before Propagate_Mode_To_Parent | Fixed - Synchronize Logic parameters with templates
Fixed - Prevent an error removing extra sub-parameters from logic objects when a unit procedure or operation comes from a template |
| MES-7367 | Improvement | Batch | Add Formula Name & Version to EBR | |
| MES-7587 | Bug | Batch | Adding TransferOut / TransferIn phases to Unit Class not added to MES Tag provider | |
| MES-7670 | Improvement | Batch | Add BatchID to script phases as a default parameter | |
| MES-7708 | Bug | Batch | Batch ChangeBy column in definition changelog is Null for Task Routing | |
| MES-7717 | Improvement | Batch | Make All Batch Recording Type Fields Editable | |
| MES-7733 | Bug | Batch | Batch Calculation Expressions may be encoded incorrectly when parameter names are similar | |
| MES-7737 | Bug | Batch | Task-Routing | Batch Task Routing fails to load Enterprise Batch Recipe Settings |
| MES-7775 | Bug | Batch | Artifact not found for doc phases in operational templates after upgrading | Fixed - Corrected an issue where artifacts could not be found when trying to create a master recipe in scripting and using templates that contain documents. |
| MES-7773 | Bug | Batch | Templates not updated with new parameters after Sync and Save if created before Propagate_Mode_To_Parent | Fixed - Synchronize Logic parameters with templates
Fixed - Prevent an error removing extra sub-parameters from logic objects when a unit procedure or operation comes from a template |
| MES-7778 | Bug | Changesets | Reconcile isn't removing changesets that are removed from disk | Fixed - Reconcile will now remove changeset meta records that are not matching a file on disk |
| MES-7778 | Bug | Changesets | Reconcile isn't removing changesets that are removed from disk | Fixed - Reconcile will now remove changeset meta records that are not matching a file on disk |
| MES-7648 | Bug | Core | Vision: Equipment Manager: cannot edit Shift | |
| MES-7668 | Improvement | Core | Ability to set the names/descriptions in E-signature challenge | |
| MES-7690 | New Feature | Perspective | Expose the equipment path/object selected in the Equipment Manager | |
| MES-7757 | Bug | Settings&Changeover | S&C - Recipe Export/Import Script functions do not respect equipment assignment |
4.83.2 RC3 Release Notes
| MES-7760 | Bug | Changesets | Fixed - Copy Recipe Change Events from source object to the changeset copy so they are recorded correctly in the SCO Changelog Viewer |
| MES-7753 | Bug | Changesets | Fixed - Objects in a pending open changeset will respect Object Selectors `showEquipmentPath` setting. |
| MES-7752 | Bug | Changesets | Fixed - system.mes.changeset.commit(UUID) now reuses existing close and apply logic. Added - system.mes.changeset.getSessionChangesetUUID() returns the current changeset UUID for the session as a string, or null if there isn't a changeset associated with the session. |
| MES-7751 | Bug | Changesets | Fixed - New changesets created via scripting are now immediately visible in the open changesets list. |
| MES-7742 | Bug | Changesets | Added - New ignition conf argument that can be set with `-Dcom.sepasoft.changeset.allowHashRewrite=True` that allows recomputing the hash during changeset bootstrapping. |
| MES-7734 | Bug | Changesets | Fixed - Corrected an issue where Batch Documents wouldn't propagate from the Master Logic to the Control Logic correctly. |
| MES-7725 | Bug | Changesets | Fixed - Prevented an issue where saving the same object type with the same name would allow duplicate object names on types that require global or sibling unique names |
| MES-7724 | Bug | Changesets | Fixed - saveMESObjects can be called on unmodified objects without an exception |
| MES-7693 | Bug | Changesets | Fixed - The 'Move Equipment' in the Perspective Equipment Manager now works as expected. |
4.83.2 RC2 Release Notes
Change Sets (Script APIs + REST)
Software Version Restrictions: Change Sets are exclusively for 4.x environments.
For user information, see Changesets
See notes below:
- batchID
- Summary
- What’s New (Key Features & Concepts)
- Scripting Interface (New/Updated APIs)
- Applies a Closed Change Set
- Activate an Open Changeset
- Update a Database with Changeset
- Create a New Changeset
- Deactivate the Session’s Open Changeset
- Cancel a Session’s Open Changeset
- Closes an Open Changeset
- View All Closed Changesets
- View All Open Changesets
- View a Closed Changeset
- View an Open Changeset
- Create a Change Set
- Apply a Change Set
- Cancel a Change Set
- REST API Access (OpenAPI)
- Considerations
- Production Module
Summary
Change Sets add an isolated, session-scoped workflow for staging MES configuration changes without impacting the live system until explicitly applied. Changes are captured within a Change Set tied to a Perspective user session, serialized as human-readable JSON on disk, and can be promoted between environments using export/import style workflows (Dev → Test → Prod).
What’s New (Key Features & Concepts)
Session Isolation and Safe Staging: Change Sets are bound to a specific user session (Perspective browser session). While Change Sets are open, edits to MES objects, such as Recipes and Operations, are held temporarily and isolated within a specific user session. Staged changes do not affect the live database, production runs, or other user sessions until the Change Sets are closed, approved, and applied.
JSON-on-Disk for Version Control: Change Sets are serialized into human-readable JSON files. This supports storing MES configuration changes in version control, like Git, and using Software Development Life Cycle (SDLC) workflows such as review, commit, and promote.
Environment Promotion: Change Sets facilitate promoting the same validated configuration across environments. Change Sets created and validated in Test can be exported and imported into Production to apply an identical configuration package.
Lifecycle and Statuses: Change Sets progress through several statuses.
Open means they are accepting new staged changes.
Close (Pending Approval) means staged changes are frozen and waiting for approval prior to commit.
Applied means changes have been committed to the live MES database.
Canceled means the Change Sets are discarded, but a record is retained for audit purposes.
Scripting Interface (New/Updated APIs)
Applies a Closed Change Set
system.mes.changeset.applyChangeset()
Applies a Closed Changeset.
Activate an Open Changeset
system.mes.changeset.attachSessionChangesetUUID()
Activates the Open Changeset, causing edits to be attributed to it.
Update a Database with Changeset
system.mes.changeset.commit()
Updates the database with the current state of the target Open Changeset.
Create a New Changeset
system.mes.changeset.createNewChangeset()
Creates a new Open Changeset for the current session. Does not activate it for the session.
Deactivate the Session’s Open Changeset
system.mes.changeset.detachSessionChangeset()
Deactivates the session's currently active Open Changeset, causing further edits to no longer be attributed to it.
Cancel a Session’s Open Changeset
system.mes.changeset.cancelChangeset()
Cancels an Open Changeset.
Closes an Open Changeset
system.mes.changeset.closeChangeset()
Closes an Open Changeset.
View All Closed Changesets
system.mes.changeset.listClosed()
Returns a list of all Closed Changesets found for the current session.
View All Open Changesets
system.mes.changeset.listOpen()
Returns a list of all Open Changesets found for the current session.
View a Closed Changeset
system.mes.changeset.getClosedConfigurationChangeset()
Fetches a Closed Changeset. Will return an empty Closed Changeset if none exists with the given UUID.
View an Open Changeset
system.mes.changeset.getOpenConfigurationChangeset()
Fetches an Open Changeset. Will generate a new Open Changeset if none exists with the given UUID.
Create a Change Set
system.mes.changeset.create()
Creates a new Change Set for the current session. After creation, configuration edits made within the session are captured to the Change Set rather than written to the live database.
Apply a Change Set
system.mes.changeset.apply(changesetUUID)
Commits staged changes to the live MES database.
Cancel a Change Set
system.mes.changeset.cancel(changesetUUID)
Discards a Change Set that has not been applied and reverts all uncommitted modifications staged within it.
REST API Access (OpenAPI)
Change Sets also expose REST APIs (OpenAPI-compliant) to allow external systems to:
list Change Sets
retrieve Change Set details
apply Change Sets programmatically
This supports automation scenarios like CI/CD-style promotion gates and controlled rollout workflows. https://gateway/openapi
Considerations
Scope: Change Sets are 4.x only and introduced in MES 4.83.2 RC2.
Isolation: Changes are session-bound and isolated until applied.
Auditing: Canceled Change Sets retain a record for audit purposes (even though changes are discarded).
4.83.2 RC1 Release Notes
Permissive Start adds an optional “ready-to-start” gate so a batch equipment phase can be prevented from starting until the equipment/PLC reports a permissive condition. This helps reduce failed starts and operator workarounds by aligning “Start” with real equipment readiness. With Permissive Start enabled, the system can hold off on issuing the START command until the permissive state is satisfied, while preserving the existing command/state handshake pattern.
|
Important note: Permissive Start is intended for operational coordination. It is not a replacement for safety-rated interlocks. |
4.83.0 RC4 Release Notes
| MES-7624 | Bug | Core | Fixed - MES Settings page is accessible without errors. |
| MES-7606 | Bug | Core | Fixed - Pie chart can now become a ring chart. |
4.83.0 RC3 Release Notes
| MES-7484 | Bug | Core | Fixed - Replace instances of removed library 'org.joda.time' with equivalents from 'java.time' |
| MES-7522 | Bug | Core | Fixed - Task Routing Visualization servers now correctly registers components |
| MES-7563 | Bug | Web Services | Fixed - An NPE is no longer thrown after upgrading a Web Services project from 3.0 to 4.0. |
| MES-7564 | Bug | Core | Fixed - Vision Clients no longer throw a client permission error stopping the modules from starting up. |
| MES-7521 | Bug | Core | Improved - Provide better user feedback if settings are not available on the current server type. |
| MES-7575 | Bug | Core | Fixed - Resolved issue where some scripting functions would fail to return the correct Dataset object |
4.83.0 RC2 Release Notes
Production Module
| MES-7484 | Bug | Production Module | Fixed - Replace instances of removed library 'org.joda.time' with equivalents from 'java.time'. |