CS
SCALE.sdm
Toggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage
Confidential information

0.54.0

Release date: May 28, 2024

Service release for bug fixing

This is a service release. It fixes miscellaneous bugs and improves the overall system performance.


List of all changes

New featureAn attribute key field was added to the requirement grid and the MDM requirement grid. [#6001]

This feature relates to the requirements grid in  Project and the MDM requirements grid, which is found under   > Configuration > MDM > Requirements. These views now include a field called Attribute key.

image
Attribute key

New featureSupport for local folders was added to the backup/restore management command. ]
New feature
API
There is now a filter to query client states that have a given list of client state tags. [#6072]
ImprovementA grouping panel was added to the calculation rules page and the jobs page. [#5984]

This improvement relates to the Calculation rules view, which can be accessed by navigating to   > Configuration > MDM > Calculation rules. This improvement also relates to the Job detail view, which can be accessed by clicking on   in the toolbar or by navigating to   > Configuration > Jobs. A grouping panel was added to these pages. That means, there is now an area called Drag here to set row groups in the upper left corner of the grid. Users can drag a column header to this area. The data in the grid will be grouped by this column.

ImprovementThe font sizes and paddings were improved for card components. [#4768]

This improvement relates to card components, for example the contact data card, which is displayed under   > Configuration > Add-ons > [Open add-on]. The font sizes were decreased and the padding was adjusted, so that the card component better matches the rest of the layout.

ImprovementThe line number of an error is now displayed in the calculation rule debug view. [#6075]

This improvement relates to the Apply calculation rule function, which can be accessed by navigating to  Result and right-clicking on a test in the grid. Specifically, it relates to the debug view, which can be accessed by clicking on   on the far right. Now the error’s line number is displayed in both the grid and in the detailed information, which is displayed after clicking on  .

image
Line number of error

ImprovementThe payload of the PermUpdateOfRdTestJob was reduced to lower the load on the Redis server. ]
ImprovementUsers can now copy the name of a test case group. [#6060]

This improvement relates to the requirements grid in  Project. Users can now copy the name of a test case group by clicking on the test case group and then pressing Ctrl+C.

Feature changeThe discipline is no longer mandatory for MDM test cases and project test cases. [#6037]

This change relates to the MDM test cases, which can be accessed by navigating to   > Configuration > MDM > Test cases. This change also relates to the project test cases, which can be accessed by opening a project, clicking on Requirements in the left sidebar, right-clicking on a requirement in the overview and then selecting Edit test case [Name of test case] from the context menu. The Discipline field is no longer mandatory. It has been changed to an optional field.

Bug fixAttributes are now correctly updated after using the debug mode of a calculation rule. [#6085]

This fix relates to the Apply calculation rule function in  Result. Specifically, it relates to situations when a user corrected an argument in the debug mode and then clicked on the button Calculate again. Afterwards, when saving the calculation, the attributes were not updated as they should have been. This behavior has been fixed. The attributes are now correctly calculated after having used the debug mode.

Bug fixEvents can now correctly be sorted by their score. [#6042]

This fix relates to the test details in  Result. Specifically, it relates to the Events tab. Users can now sort the test events by their numerical value in the column Score.

Bug fixGrouping on generic SSRM now works correctly even if the 'groupCount' is not included in the requested fields. [#6083]
Bug fixIt is now possible to modify the input values of multiple calculation results. [#6133]

This fix relates to the Apply calculation rule function, which can be accessed by navigating to  Result and right-clicking on a test in the grid. Specifically, it relates to the debug view, which can be accessed by clicking on   on the far right. In the past, changes were discarded under the following conditions:

  • The user modified the input values of a result and clicked on Calculate again.
  • The user then modified the input values of a second result and clicked on Calculate again.

In this case, changes to the first result were discarded and only the changes to the second result were saved. This behavior has been fixed.

Bug fix
UI
Private statuses are now displayed correctly in the project requirement side panel. [#6104]

This fix relates to the requirements grid in  Project. Under certain conditions, the status displayed in the grid was different than the status displayed in the side panel. This happened if:

  • User A saved a private status for a requirement.
  • User B then saved a public status for the same requirement.
  • Under these conditions, user A would see the private status in the requirements grid, and the public status in the side panel.

This behavior has been fixed. Now, if a user has saved a private status, the private status is displayed in both the grid and the side panel.

Bug fixProject requirement assessments are now correctly aggregated. [#6098]

This fix relates to the requirements grid in  Project. Specifically, it relates to cases when users view the status of a requirement group. In the past, public statuses were not correctly aggregated after their assessment color was manually changed. That means, if the user manually selected a different assessment color, then the group’s color was not correctly updated to reflect the worst status within the group. This behavior has been fixed. The assessments are now correctly aggregated.

Bug fix
API
Querying all client states no longer results in duplicates if the client tag filter was used. [#6071]
Bug fixQuickly switching to the project requirement page no longer causes an error when adding test cases. [#6038]

This fix relates to the requirements grid in  Project. In the past, quickly switching to the project requirement page and clicking on the Add button caused an error to occur and the addition of test cases failed. This behavior has been fixed.

Bug fixThe debug context menu is no longer grayed out. [#6065]

This fix relates to the Apply calculation rule function, which can be accessed by navigating to  Result and right-clicking on a test in the grid. Specifically, it relates to the debug view, which can be accessed by clicking on   on the far right. In the past, when a user right-clicked on a result, the Debug context matching context menu was grayed out. The context menu remained disabled until the attributes had finished loading. This was misleading as it suggested that the debug context matching was not available. This behavior has been fixed. The context menu is now enabled by default.

Bug fixThe disciplines of test cases are now taken into account for project requirement permissions. [#6034]

This fix relates to the requirements grid in  Project. Specifically, it relates to the logic that determines which requirements a user can see/edit in the grid. The logic works as follows:

  1. Disciplines are assigned to each test case and to each user.
  2. A user can see a requirement in the grid if the user has the same discipline as the test case in which the requirement is located.
  3. If a user is not assigned to any discipline, then the user will not be able to see any test cases.
  4. If a test case is not assigned to any discipline, then the test case will be visible to users with any discipline.

Bug fixThe history section of the project requirement details now displays the correct entries. [#6101]

This fix relates to the history section of the requirement details, which can be accessed by opening a project, clicking on Requirements in the left sidebar, clicking on a requirement in the overview and then clicking on  . In the past, the history section displayed the correct number of entries, but the content of those entries was sometimes incorrect. This was because the ‘Load-More’ component was working incorrectly for historized models, resulting in duplicates in the history view. This behavior has been fixed. The history section now displays the correct entries.

Bug fixThe server worker now restarts after a redis connection error. [#6011]
Bug fixThe thresholds in the project requirement overview now respect the history/date filter. ]

This fix relates to the project requirement overview, which can be accessed by opening a project and clicking on Requirements in the left sidebar. Now when you expand the Milestones area and select a previous date from the Choose a date field, the thresholds change to display what their values were on the selected date.

Bug fixUnits are now correctly converted in the 'Context' area of MDM test cases. [#6040]

This fix relates to the MDM test cases, which can be accessed by navigating to   > Configuration > MDM > Test cases. Specifically, it relates to the numerical range values that are saved in the Context area, for example a speed between 15 and 20km/h. Such numerical range values are now correctly converted from the display unit (e.g. km/h) to base SI units (e.g. m/s) when they are saved to the backend server. Likewise, they are correctly converted from the base SI units (e.g. m/s) to the display units (e.g. km/h) when they are retrieved from the backend server.


API changes
BreakingField automaticStatusAssessmentColor was removed from object type LoadProjectRequirementsType
BreakingField statusPrivate was removed from object type LoadProjectRequirementsType
BreakingField statusComment was removed from object type LoadProjectRequirementsType
BreakingField statusReferenceTestId was removed from object type LoadProjectRequirementsType
BreakingField privateStatusAssessmentOverridden was removed from object type LoadProjectRequirementsType
BreakingField statusAssessmentOverridden was removed from object type LoadProjectRequirementsType
BreakingField privateAutomaticStatusAssessmentColor was removed from object type LoadProjectRequirementsType
BreakingField statusUsername was removed from object type LoadProjectRequirementsType
BreakingField statusId was removed from object type LoadProjectRequirementsType
BreakingField automaticStatusAssessmentRank was removed from object type LoadProjectRequirementsType
BreakingField statusUpdatedAt was removed from object type LoadProjectRequirementsType
BreakingField privateStatusAssessmentRank was removed from object type LoadProjectRequirementsType
BreakingField statusCreatedAt was removed from object type LoadProjectRequirementsType
BreakingField privateAutomaticStatusAssessmentRank was removed from object type LoadProjectRequirementsType
BreakingField privateStatusAssessmentName was removed from object type LoadProjectRequirementsType
BreakingField privateStatusAssessmentColor was removed from object type LoadProjectRequirementsType
BreakingField statusReferenceTestName was removed from object type LoadProjectRequirementsType
BreakingField statusDisplayName was removed from object type LoadProjectRequirementsType
BreakingField automaticStatusAssessmentName was removed from object type LoadProjectRequirementsType
BreakingField privateAutomaticStatusAssessmentName was removed from object type LoadProjectRequirementsType
Non-BreakingType StatusReportType was added
Non-BreakingType StatusReportTypeConnection was added
Non-BreakingType StatusReportTypeEdge was added
Non-BreakingType LoadStatusReportResponseType was added
Non-BreakingType LoadStatusReportType was added
Non-BreakingType LoadStatusReportsInput was added
Non-BreakingType HistoricalRequirementValueTypeConnection was added
Non-BreakingType HistoricalRequirementValueTypeEdge was added
Non-BreakingType HistoricalRequirementValueType was added
Non-BreakingType HistoricalProjectRequirementType was added
Non-BreakingType HistoricalProjectRequirementTypeConnection was added
Non-BreakingType HistoricalProjectRequirementTypeEdge was added
Non-BreakingType StatusReportCreateMutationPayload was added
Non-BreakingType StatusReportCreateMutationInput was added
Non-BreakingType StatusReportUpdateMutationPayload was added
Non-BreakingType StatusReportUpdateMutationInput was added
Non-BreakingType StatusReportDeleteMutationPayload was added
Non-BreakingType StatusReportDeleteMutationInput was added
Non-BreakingType StatusReportPublishMutationPayload was added
Non-BreakingType StatusReportPublishMutationInput was added
Non-BreakingType StatusReportDeriveMutationPayload was added
Non-BreakingType StatusReportDeriveMutationInput was added
Non-BreakingField selectCount was added to object type LoadTaskType
Non-BreakingField isSelected was added to object type LoadTaskType
Non-BreakingField selectCount was added to object type LoadMdmAttributeType
Non-BreakingField isSelected was added to object type LoadMdmAttributeType
Non-BreakingField selectCount was added to object type LoadMdmRequirementsResponse
Non-BreakingField loadStatusReports was added to object type Query
Non-BreakingField statusReport was added to object type Query
Non-BreakingField allStatusReports was added to object type Query
Non-BreakingField historicalProjectRequirement was added to object type Query
Non-BreakingField historicalRequirementValue was added to object type Query
Non-BreakingField allHistoricalRequirementValues was added to object type Query
Non-BreakingField allHistoricalProjectRequirements was added to object type Query
Non-BreakingArgument tags_Identifier_All: [String] added to Query.allClientStates
Non-BreakingField selectCount was added to object type LoadRoleResponseType
Non-BreakingInput Field public: Boolean was added to input type ClientStateUpdateMutationInput
Non-BreakingField selectCount was added to object type LoadRoleType
Non-BreakingField isSelected was added to object type LoadRoleType
Non-BreakingField selectCount was added to object type LoadProjectTestCaseType
Non-BreakingField isSelected was added to object type LoadProjectTestCaseType
Non-BreakingField selectCount was added to object type LoadColumnValuesResponse
Non-BreakingField selectCount was added to object type LoadUserTokenType
Non-BreakingField isSelected was added to object type LoadUserTokenType
Non-BreakingInput Field statusReportId: UUID was added to input type LoadProjectRequirementsInput
Non-BreakingInput Field showPrivateValuesOnPastRecords: Boolean was added to input type LoadProjectRequirementsInput
Non-BreakingField selectCount was added to object type LoadProjectTestCaseResponseType
Non-BreakingField historicalRecords was added to object type RequirementValueType
Non-BreakingField selectCount was added to object type LoadCalculationRuleResponseType
Non-BreakingField nextMilestoneName was added to object type ProjectType
Non-BreakingField nextMilestonePlannedAt was added to object type ProjectType
Non-BreakingInput Field selected: Boolean was added to input type LoadStatusReportTemplatesInput
Non-BreakingInput Field projectId: UUID was added to input type LoadStatusReportTemplatesInput
Non-BreakingField selectCount was added to object type LoadCalculationRuleType
Non-BreakingField isSelected was added to object type LoadCalculationRuleType
Non-BreakingField filter was added to object type LoadStatusReportTemplateType
Non-BreakingField selectCount was added to object type LoadStatusReportTemplateType
Non-BreakingField isSelected was added to object type LoadStatusReportTemplateType
Non-BreakingField selectCount was added to object type LoadStatusReportTemplateResponseType
Non-BreakingField mdmTestCase was added to object type ProjectTestCaseType
Non-BreakingField selectCount was added to object type LoadTaskResponseType
Non-BreakingField selectCount was added to object type LoadProjectRequirementsResponse
Non-BreakingField createdAt was added to object type ClientStateType
Non-BreakingField updatedAt was added to object type ClientStateType
Non-BreakingInput Field statusreport: [ID] was added to input type ProjectRequirementAttributesInputType
Non-BreakingField selectCount was added to object type LoadMdmTestCasesType
Non-BreakingField isSelected was added to object type LoadMdmTestCasesType
Non-BreakingField selectCount was added to object type LoadMdmTestCasesResponse
Non-BreakingField selectCount was added to object type LoadMdmAttributeResponseType
Non-BreakingField mdmAttributeIdentifierOverride was added to object type LoadMdmRequirementsType
Non-BreakingField selectCount was added to object type LoadMdmRequirementsType
Non-BreakingField isSelected was added to object type LoadMdmRequirementsType
Non-BreakingField selectCount was added to object type LoadUserType
Non-BreakingField isSelected was added to object type LoadUserType
Non-BreakingField selectCount was added to object type LoadRdTestTemplateResponseType
Non-BreakingField selectCount was added to object type LoadUserTokenResponseType
Non-BreakingArgument tags_Identifier_All: [String] added to ClientStateTagType.clientstateSet
Non-BreakingField selectCount was added to object type LoadUserResponseType
Non-BreakingField updateStatusReport was added to object type Mutation
Non-BreakingField deriveStatusReport was added to object type Mutation
Non-BreakingField createStatusReport was added to object type Mutation
Non-BreakingField deleteStatusReport was added to object type Mutation
Non-BreakingField publishStatusReport was added to object type Mutation
Non-BreakingField selectCount was added to object type LoadRdTestTemplateType
Non-BreakingField isSelected was added to object type LoadRdTestTemplateType
Non-BreakingInput Field discipline: ID was added to input type ClientStateCreateMutationInput
Non-BreakingField publicStatusUsername was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusDisplayName was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusUpdatedAt was added to object type LoadProjectRequirementsType
Non-BreakingField selectCount was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusManualAssessmentName was added to object type LoadProjectRequirementsType
Non-BreakingField mdmAttributeIdentifierOverride was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusReferenceTestId was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusAutomaticAssessmentRank was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusManualAssessmentRank was added to object type LoadProjectRequirementsType
Non-BreakingField privateStatusAutomaticAssessmentName was added to object type LoadProjectRequirementsType
Non-BreakingField privateStatusManualAssessmentRank was added to object type LoadProjectRequirementsType
Non-BreakingField privateStatusManualAssessmentName was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusAutomaticAssessmentColor was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusAutomaticAssessmentName was added to object type LoadProjectRequirementsType
Non-BreakingField isSelected was added to object type LoadProjectRequirementsType
Non-BreakingField privateStatusAutomaticAssessmentRank was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusValue was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusId was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusReferenceTestName was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusComment was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusManualAssessmentColor was added to object type LoadProjectRequirementsType
Non-BreakingField privateStatusAutomaticAssessmentColor was added to object type LoadProjectRequirementsType
Non-BreakingField publicStatusCreatedAt was added to object type LoadProjectRequirementsType
Non-BreakingField privateStatusManualAssessmentColor was added to object type LoadProjectRequirementsType
Non-BreakingLoadProjectRequirementsType.privateStatusComment description changed from Comment on the current requirement value to Private assessment: Comment on the current value
Non-BreakingLoadProjectRequirementsType.privateStatusUpdatedAt description changed from The date and time when the status was updated to Private assessment: The date and time when the status was updated
Non-BreakingLoadProjectRequirementsType.privateStatusDisplayName description changed from Display name of the user who reported the status to Private assessment: Display name of the user who reported the status
Non-BreakingLoadProjectRequirementsType.privateStatusReferenceTestName description changed from The test record this value is taken from to Private assessment: The name of the test record this value is taken from
Non-BreakingLoadProjectRequirementsType.privateStatusUsername description changed from Username of the user who reported the status to Private assessment: Username of the user who reported the status
Non-BreakingLoadProjectRequirementsType.statusAssessmentName description changed from The name of the threshold rank that the value matches to The name of the threshold rank
Non-BreakingLoadProjectRequirementsType.privateStatusCreatedAt description changed from The date and time when the status was reported to Private assessment: The date and time when the status was reported
Non-BreakingLoadProjectRequirementsType.privateStatusId description changed from The ID of the actual value of the project requirement to Private assessment: The ID of the actual value of the project requirement
Non-BreakingLoadProjectRequirementsType.statusAssessmentColor description changed from The color of the threshold rank that the value matches to The color of the threshold rank
Non-BreakingLoadProjectRequirementsType.privateStatusReferenceTestId description changed from The test record this value is taken from to Private assessment: The ID of the test record this value is taken from
Non-BreakingLoadProjectRequirementsType.privateStatusValue description changed from The actual value of the project requirement to Private assessment: The actual value of the project requirement
Non-BreakingLoadProjectRequirementsType.statusAssessmentRank description changed from The threshold rank that the value matches to The threshold rank

Deprecations
REST-API Endpoints (deprecated in 0.40.0, removal in January, 2025)
Condition wildcards (deprecated in 0.49.0, removal in October, 2024)
Addon command-line arguments (deprecated in 0.51.0, removal in April, 2025)