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

  • Betroffene 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.

    • Offizieller Beitrag

    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 19. August 2020 um 10:57

    Hat das Label Wird nicht behoben hinzugefügt.
    • Offizieller Beitrag

    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.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!