Wp-rocket: Rollback auf mehr als eine Version rückwärts führt zum Upgrade auf die neueste Version

Erstellt am 9. Sept. 2020  ·  4Kommentare  ·  Quelle: wp-media/wp-rocket

Bevor Sie ein Problem einreichen, überprüfen Sie bitte, ob Sie die folgenden Schritte ausgeführt haben:

  • Vergewissern Sie sich, dass Sie die neueste Version verwenden Ja
  • Die Suchfunktion verwendet, um sicherzustellen, dass der Fehler nicht vor Ja gemeldet wurde

Beschreibe den Fehler
Wenn Sie mehr als einmal versuchen, ein Rollback durchzuführen, führt dies zu einem Upgrade anstelle von mehreren Rollbacks.

Fortpflanzen
Schritte zum Reproduzieren des Verhaltens:

  1. Ich habe 3.7.0.1 installiert.
  2. Ich rollback auf 3.6.4 und das ist erfolgreich passiert
  3. von da aus versuche ich auf 3.5.5.1 zurück zu rollen.
  4. Stattdessen wird es auf 3.7.0.1 aktualisiert

Erwartetes Verhalten
Wir haben hier zwei Szenarien :-

  1. nicht mehr als ein Rollback durchführen, und hier müssen wir den Text der Rollback-Schaltfläche anpassen, um zum Beispiel auszudrücken, dass er aktualisiert wird oder eine Fehlermeldung anzeigt.
  2. Öffnen Sie die Anzahl der Rollbacks und passen Sie die Funktionalität der Schaltfläche an, wenn Benutzer mehr als einmal Rollbacks ausführen.

Screenshots
Erstes Rollback von 3.7.0.1 auf 3.6.4
image

image

Zweites Rollback von 3.6.4 auf 3.5.5.1
image

image

Zusätzlicher Kontext
Wir brauchen hier Produkt-Input

Backlog Grooming (nur für die Verwendung durch das WP Media-Entwicklerteam)

  • [ ] Reproduzieren Sie das Problem
  • [ ] Identifizieren Sie die Ursache
  • [ ] Scope eine Lösung
  • [ ] Aufwand abschätzen
[S] tools low major bug

Hilfreichster Kommentar

Dies ist nicht das erwartete Verhalten. Wenn wir aus irgendeinem Grund zweimal einen Rollback durchführen möchten, sollten wir dies tun können.

Alle 4 Kommentare

Öffnen Sie die Anzahl der Rollbacks und passen Sie die Funktionalität der Schaltfläche an, wenn Benutzer mehr als einmal Rollbacks ausführen.

Ich dachte immer, dass das Rollback immer wieder zurückrollen würde. Also das sollte meiner Meinung nach passieren.

  • Nehmen wir an, ein Benutzer rollt zurück zu 3.6.4. Dieses WP Rocket sollte genau so aussehen und sich verhalten wie bei der ersten Installation von 3.6.4.
  • Der letzte Stable ist in WP Rocket fest codiert . Ein Benutzer von 3.6.4 würde erwarten, dass er vorher auf den stabilen zurückrollt und so weiter.
  • Wenn der Benutzer die neueste Version erhalten möchte, kann er jederzeit aktualisieren.
  • Aber wenn der Benutzer (aus welchem ​​Grund auch immer) zurückkehren möchte, ist das Ausführen mehrerer Rollbacks der einzige Weg.

Laden Sie @GeekPress hier ein.

Dies ist nicht das erwartete Verhalten. Wenn wir aus irgendeinem Grund zweimal einen Rollback durchführen möchten, sollten wir dies tun können.

Reproduziere das Problem
Ja, reproduziert lokal und auf einer unserer Kundenseiten.
Beim Rollback auf 3.6.4 kann ich auf der Rollback-Schaltfläche bei WPR-Admin (Tools) sehen, dass wir auf 3.5.5.1 zurücksetzen können und wenn ich darauf klicke, wird es auf 3.7.0.1 aktualisiert

Identifizieren Sie die Ursache
https://github.com/wp-media/wp-rocket/blob/5434080ccd89b36f3312846e4288a50c9d6b7c3e/inc/classes/subscriber/Plugin/class-updater-subscriber.php#L247 -L249

Diese Zeile überprüft die neueste Version des Wordpress-Plugins und wenn die neueste Version neuer als die aktuelle Version ist, wird immer die neuere hinzugefügt
Ich habe eine Frage im Kopf: Warum wird von 3.7.0.1 auf 3.6.4 zurückgesetzt und die Antwort einfach: Die aktuelle Version des Plugin-Codes ist 3.7.0.1 und die neueste Version ist 3.7.0.1, also wird dieser Zustand nicht erreicht .

Scope eine Lösung
https://github.com/wp-media/wp-rocket/blob/5434080ccd89b36f3312846e4288a50c9d6b7c3e/inc/classes/subscriber/Plugin/class-updater-subscriber.php#L247 -L249

dieser Code wird beim Aktualisieren und beim Rollback aufgerufen, also innerhalb der Rollback-Funktion
https://github.com/wp-media/wp-rocket/blob/2b2fe800bfd9ba748159dafe0eb5ec00b63212d7/inc/admin/admin.php#L204

Wir werden eine neue Konstante definieren und den ersten Code überprüfen, um die Überprüfung der letzten Versionsnummer zu stoppen.

Fügen Sie auch ein Häkchen bei der letzten Version hinzu, bei der gestoppt werden soll: 2.3.7

Schätzen Sie den Aufwand ein
@arunbasillal Bitte bestätigen Sie, dass die letzte Version, mit der Sie aufhören sollten, 2.3.7 ist, da wir angefangen haben, die Konstante WP_ROCKET_LASTVERSION .

@engahmeds3ed

@arunbasillal Bitte bestätigen Sie, dass die letzte Version, auf der Sie aufhören, ist: 2.3.7, da wir angefangen haben, die Konstante WP_ROCKET_LASTVERSION zu verwenden.

Ich bin ziemlich viel zurückgegangen und dieser Commit bestätigt, dass 2.3.7 tatsächlich die letzte Version ist - https://github.com/wp-media/wp-rocket/commit/f5e1b8c9fb4ed74c64dc9eac92f6d79091204477

Danke 👍

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen