Irritierende Meldung beim Versuch, ein abhängiges Paket zu installieren

  • Affected App
    WoltLab Suite Core

    Mir ist gerade beim Versuch einer Plugininstallation eine etwas verwirrende Fehlermeldung untergekommen:

    Benötigt das Paket „bli.bla.blub“ in Version „3.0.0“ oder höher, es ist aber nur Version „3.1.0“ installiert.

    Es stellte sich folgendes heraus:

    Paket 1 hat den Bezeichner net.norse.wcf.ExamplePackage und wird in Version 3.1 installiert.

    Paket 2 erfordert irrtümlicherweise das Vorhandensein von net.norse.wcf.examplepackage mindestens in Version 3.0.

    Beim Versuch, Paket 2 zu installieren, wird trotz der unterschiedlichen Groß/Kleinschreibung der Paketbezeichner die Existenz von Paket 1 zwar erkannt (was m. E. schon nicht sein dürfte), aber zu allem Überfluss die falsche Version ermittelt, so dass es zur eingangs erwähnten verwirrenden Fehlermeldung kommt.

    Zwei Beispielpakete zum Nachstellen gibt es hier.

    Was sagt Ihr, ist das ein Fehler im WSC?


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Hallo,

    aus Kompatibilitätsgründen kann man Paketbezeichner weder sinnvoll voll case-insensitive noch voll case-sensitive machen. Man könnte möglicherweise die Fehlermeldung an der Stelle verbessern. Wenn man aber berücksichtigt, dass deine Meldung die erste zu dieser Problematik in den letzten 13 Jahren ist, dann ist eine derartige Änderung am Paketsystem im Sinne der Stabilität nicht überaus attraktiv und die Zeit an anderer Stelle besser investiert.

  • Tim Düsterhus August 19, 2020 at 10:57 AM

    Added the Label Won’t fix
  • Hallo,

    Warum kann man das nicht voll case-insensitive machen? Gibt es hier tatsächlich ein bekanntes Paket, das dem im Wege steht?

    sinnvollerweise wird im case-insensitiven Fall komplett mit Bezeichnern in Kleinbuchstaben gearbeitet, damit nicht bei jedem Vergleich die beiden Werte in Kleinbuchstaben umgewandelt werden müssen. Warum ein konsequentes Umwandeln von Bezeichnern in Kleinbuchstaben im Sinne der Kompatibilität eine blöde Idee ist, ist denke ich klar.

  • Warum ein konsequentes Umwandeln von Bezeichnern in Kleinbuchstaben im Sinne der Kompatibilität eine blöde Idee ist, ist denke ich klar.

    Ehrlich gesagt: Nein.

    Wenn es in 13 Jahren noch niemand geschafft hat, über diesen Bug zu stolpern, dann wäre es ja, de facto, egal, ob der Bezeichner case-sensitive oder case-insensitive verglichen wird.

    Die Bezeichner sind doch auch Domains rückwärts. Da könnte man sie doch auch so behandeln (woltlab.com ist dasselbe wie WoltLab.com für den Browser).


    (inb4 dieser Post ist das Outing als kompletter Noob. RIP.)

    Milestones:

    • 18.02.2022 19:14 CET: Erste PWA installiert (und es war ausgerechnet YouTube Music)
  • Warum ein konsequentes Umwandeln von Bezeichnern in Kleinbuchstaben im Sinne der Kompatibilität eine blöde Idee ist, ist denke ich klar.

    Prinzipiell musst nur der Bezeichner in der Datenbank „korrigiert“ werden und dann bei der Kommunikation mit den Updateservern und bei der Installation. Hier sollte es ausreichen den Identifier beim Auslesen der XML-Daten zu konvertieren. Alles andere läuft dann ja wie gehabt.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!