Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-25717

Improve dependency validation for hotreload

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 10.2
    • Fix Version/s: 11.1

      Description

      For now, the validation of the dependencies when hotreloading a package is done by calling the PackageManager#resolveDependencies method :

      This method does not only validate that a package has all its dependencies installed but also try to "resolve" them, which means :

      • what versions are available and what is the best global match
      • what needs to be uninstalled in case of conflict
      • what needs to be reinstalled in cas of optional dependencies
        As the hotreload feature does not allow to actually do what is needed when changes other than reinstall the target package are required, this "resolution" is not needed.

      A solution that does not require a remote call to Connect could be to check only :

      • if this package is already installed and dependencies/conflicts have changed, otherwise, no need for the other verifications
      • if all the package direct dependencies are installed
      • if there is no conflict between this package and the installed packages
      • if there is no installed package with an optional dependency on this package
        In the case one of these 3 last checks fails, we could then call the PackageManager#resolveDependencies method and suggest a solution that may need a restart of the server.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                yjulienne Yannis Julienne
                Participants:
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:

                  PagerDuty

                  Error rendering 'com.pagerduty.jira-server-plugin:PagerDuty'. Please contact your Jira administrators.