eXist-db / packagemanager

Browse local and remote packages, install, upload or remove packages.
GNU Lesser General Public License v2.1
2 stars 4 forks source link

package manager struggling with dependencies #9

Open duncdrum opened 6 years ago

duncdrum commented 6 years ago

what is the problem?

When users have installed an application called app that depends on the app-lib (think tei-publisher, or anything depending on shared-resources) updates can break installation in the following way:

Packemanager shows two new updates: One to app, one to app-lib. If users attempt to update app first, the process fails silently, since the requested app 1.1 dependency on app-lib 1.1 is at this point not fulfilled. app can no longer be reached from dashboard.

what did I expect

When first installing apps, dependencies are automatically resolved and installed. I d expect the same behavior for updates.

The old package manager displays installation errors in a pop-up warning, the new one should do something similar. Silent failures are never a good thing.

to reproduce

duncdrum commented 5 years ago

@eXist-db/exist-webcomponents any comments? see also #10 in both instances the fact that intallation errors are no longer displayed creates problems for users

JoernT commented 5 years ago

this ticket does not belong here but to exist-db/packageservice. This is the app querying the repo. The code has been factored out as it is used by launcher and packagemanager.

@duncdrum regarding errors - yes, that's true and due to the fact that the server is returning 200 also for errors while client expects an error response for its handler to fire. Thus each ajax request needs to check whether response didn't contain an error. In some place this has been done but not in all.

duncdrum commented 5 years ago

feel free to move the ticket. Or split, transient dependency handling is one problem, the app reporting errors (or not) is another.