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

Several macOS-specific modules do expensive calls to calculate their properties

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P3: Somewhat important
    • Resolution: Done
    • Affects Version/s: 1.7.0
    • Fix Version/s: 1.7.0
    • Component/s: General
    • Labels:
      None
    • Commits:
      28ba269356a0f3cfe4f937ff45c3ecd3d4da8e9c, 18ea9077c0aff50ae1d891bea4d4bbe2ba20bab7

      Description

      I observed that module loading is orders of magnitude slower on macOS compared to other platforms. Profiling showed that the validate() functions for xcode and ib are the culprit (they were slower by a factor of ~100 compared to other modules). A quick look at the xcode module shows that operations like File.directoryEntries() occur at the right-hand side of properties.
      We must not do that. All potentially expensive operations, in particular those accessing the file system, need to be done in Probes, whose results are cached.

        Attachments

        For Gerrit Dashboard: QBS-1033
        # Subject Branch Project Status CR V

          Activity

            People

            Assignee:
            jakepetroules Jake Petroules (DO NOT ASSIGN ISSUES)
            Reporter:
            kandeler Christian Kandeler
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes