Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • PyI40AAS PyI40AAS
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 48
    • Issues 48
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Lehrstuhl für Informations- und AutomatisierungssystemeLehrstuhl für Informations- und Automatisierungssysteme
  • PyI40AASPyI40AAS
  • Issues
  • #134
Closed
Open
Issue created Feb 22, 2021 by Michael Thies@mhthiesContributor

NamespaceSet: update_nss_from() on V30RC01 does not update Qualifiers and Extensions correctly

This issue is only relevant for the V30RC01 branch.

In the current version of the improve/V30RC01-branch, the update_nss_from() method of NamespaceSets does not consider Qualifiers and Extensions correctly. If a Referable object with Qualifiers or Extensions is updated from another Referable object, only new and deleted Qualifiers/Extensions will be updated, whereas changed Qualifiers/Extensions are not updated. This is due to the missing code in base.py near line 1477: https://git.rwth-aachen.de/acplt/pyi40aas/-/blob/6711a5bb3f9d951e59d3c4311600b1b5a6413bd1/aas/model/base.py#L1477

Since Qualifiers and Extensions are not Referable and thus have no update_from() method, we cannot update them recursively. Instead, we should just replace the old objects with the new ones. In fact, this simplyfies the whole update_nss_from() behaviour: We don't have to divide into new, deleted and update Qualifiers/Extensions, but instead, we can simply remove all of these objects from self and move all of the ones from other into self. Thus, I propose to add a high-level if statement, that checks if the NamespaceSet uses the id_short attribute for identification: If it does, we can use the old behaviour of update_nss_from() (we don't even need to check the type of the objects), if not, we should use the simplified updating (deleting and moving).

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking