Uploaded image for project: 'Qbs ("Cubes")'
  1. Qbs ("Cubes")
  2. QBS-1030

Module properties set on generated artifacts will not cause dependent properties to change their values

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Not Evaluated
    • None
    • 1.6.1
    • General
    • None

    Description

      Consider a module m:

      Module {
          property int x: 1
          property int y: x
      }
      

      If you set m.x on a source artifact, m.y will get that value too (unless it is also overwritten). But we can also set module properties on generated artifacts:

      Artifact {
          filePath: "myartifact.art"
          fileTags: ["myart"]
          m.x: 2
      }
      

      For this artifact, only m.x will get the new value, while m.y will keep the one it has in the product. This is because during rule execution, we do not have access to the full context anymore (namely, the item hierarchy). It appears we need to keep that context after the resolving phase and re-evaluate the module properties for generated artifacts pretty much the same way we do for group items. Like for groups, we can make use of the gathered dependency information to make sure we only re-evaluate the properties for which that is necessary.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              Unassigned Unassigned
              kandeler Christian Kandeler
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes