[3.3] [Fork] Recent Topics NG

In diesem Forum können Extension-Autoren ihre Extensions vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Benutzeravatar
IMC
Mitglied
Beiträge: 547
Registriert: 25.11.2018 20:32
Wohnort: Lüneburg
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von IMC »

Das war zu einem die Inkompatibilität mit php8.x.
viewtopic.php?p=1419915#p1419915

Dann wurden bei neuen Benutzern die Eingestellten Defaultwerte nicht übernommen. Es wurde zu dem Zweck ein Event genommen bei dem noch keine Benutzer Id vergeben war. Dadurch wurden immer die Werte für die Benutzer Id 1 gesetzt.
https://github.com/IMC-GER/RecentTopics ... #L209-L225

Und dann noch ein Fehlverhalten mit den Seitenauswahlbutton (pagination).
Wenn die Einstellung Alle Seiten anzeigen: ausgewählt ist und kein Benutzer angemeldet ist, ist die Auswahl der Seiten fehlerhaft.
Da habe ich diesen Funktionsaufruf weiter nach vorne geschoben.
https://github.com/IMC-GER/RecentTopics ... #L287-L293
Die Funkion $this->getforumlist() setzt eine Variable die in der, jetzt drauf folgenden Datenbankabfrage benötigt wird.
Gruß, Thorsten
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2176
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von LukeWCS »

Merci. Passt auch prima hier, so hat man alles beisammen, wenn man was sucht.
IMC hat geschrieben: 08.01.2023 14:43 Das war zu einem die Inkompatibilität mit php8.x.
viewtopic.php?p=1419915#p1419915
Ja, das hatte ich schon gesichtet, wobei der besagte Parameter eh nicht passte. Die Funktion erwartet bei dem Parameter eine Record-Nummer, kein Objekt. Warum sich der Fehler erst ab PHP 8 zeigt, hängt sicher damit zusammen, dass PHP 8 auf einigen Gebieten deutlicher strikter ist als PHP 7. Wo der Interpreter früher quasi noch ein Auge zudrückte, gibts jetzt direkt einen Fatal.
Dann wurden bei neuen Benutzern die Eingestellten Defaultwerte nicht übernommen. Es wurde zu dem Zweck ein Event genommen bei dem noch keine Benutzer Id vergeben war. Dadurch wurden immer die Werte für die Benutzer Id 1 gesetzt.
https://github.com/IMC-GER/RecentTopics ... #L209-L225
Das wäre dann standardmässig der Gast Account. Ja, nicht so wirklich sinnvoll. ^^
Und dann noch ein Fehlverhalten mit den Seitenauswahlbutton (pagination).
Wenn die Einstellung Alle Seiten anzeigen: ausgewählt ist und kein Benutzer angemeldet ist, ist die Auswahl der Seiten fehlerhaft.
Da habe ich diesen Funktionsaufruf weiter nach vorne geschoben.
https://github.com/IMC-GER/RecentTopics ... #L287-L293
Die Funkion $this->getforumlist() setzt eine Variable die in der, jetzt drauf folgenden Datenbankabfrage benötigt wird.
Hab einen Moment gebraucht, bis ich den Zusammenhang der vorgeschobenen Funktion verstanden hatte. Es geht um $this->forum_ids, welches wiederum vom nachfolgenden $this->get_allowed_topics_sql() benötigt wird.

Okay, dann bin ich soweit im Boot, was die bisherigen Änderungen des Forks angeht.
Möge das Backup mit dir sein. Immer.

Erweiterungen - Infos zur artgerechten Haltung
phpBB Ext Check - Analysesystem für phpBB Erweiterungen (Entwickler Werkzeug)
Benutzeravatar
IMC
Mitglied
Beiträge: 547
Registriert: 25.11.2018 20:32
Wohnort: Lüneburg
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von IMC »

@Patrick
Ich habe meine Änderungen gerade Hochgeladen.

Was mich ein bisschen irritiert ist das in meinen Commit dieser Text erscheint ##Sajaki#2.2.15-pl3.
Keine Ahnung wie der da rein kommt. :roll:
Gruß, Thorsten
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2176
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von LukeWCS »

nAbend Thorsten
IMC hat geschrieben: 10.01.2023 21:47 @Patrick
Ich habe meine Änderungen gerade Hochgeladen.
Lässt doch wohl auch nicht los, oder? Kenn ich. :D
Was mich ein bisschen irritiert ist das in meinen Commit dieser Text erscheint ##Sajaki#2.2.15-pl3.
Keine Ahnung wie der da rein kommt. :roll:
Hab mir zuerst dein Repo online angeschaut und da hatte ich schon eine Vermutung. Dann das Repo bei mir lokal aktualisiert um sicher zu gehen. Ja, du hast unbewusst ein GH Feature genutzt.

In der Commit Message hast du folgendes:

Code: Alles auswählen

###2.2.15-pl3
Wenn man in einer Commit Message oder an beliebig anderen Stellen auf GH #x benutzt (in deinem Fall also #2), dann interpretiert GH das als Referenz für Issues und PRs. Deswegen hast du jetzt quasi in unserem Repo eine Referenz auf das Issue Nummer 2 von Sajaki's Repo erzeugt. Und umgekehrt wird dort im Issue dann auch ein Backlink auf dein Commit erzeugt:

https://github.com/Sajaki/RecentTopics/issues/2

Siehe ganz am Ende der Historie.
Möge das Backup mit dir sein. Immer.

Erweiterungen - Infos zur artgerechten Haltung
phpBB Ext Check - Analysesystem für phpBB Erweiterungen (Entwickler Werkzeug)
Benutzeravatar
Crizzo
Administrator
Administrator
Beiträge: 11963
Registriert: 19.05.2005 21:45
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von Crizzo »

Servus,

um deine Commit-Nachricht nachträglich zu ändern, sofern es der letzte Commit war, gehst du folgendermaßen vor:

Ich gehe von der Konsole aus, d.h. Git Bash oder CMD.exe und dann in dein lokales Repository gehen. Dort dann:

Code: Alles auswählen

git commit --amend
Da öffnet den letzten Commit und dann kannst du den Konfigurierten Editor die Commit-Nachricht abändern (per Cursor navigieren und abändern). Oft ist als Editor "vim" voreingestellt, sofern dass passiert stehen viele vor dem Problem, dass sie nicht wissen, wie sie dort wieder rauskommen, das geht so:
ESC drücken, dann :wq (wird unten im Editor in der Fußzeile eingetragen, steht für "write quit") danach ENTER.

Jetzt hast du die Änderungen lokal. Also müssen sie noch zum Server gepushed werden und zwar per "force":

Code: Alles auswählen

git push -f <remote-server-name> <branchname>
Hast du keinen Remote-Server konfiguriert:

Code: Alles auswählen

git remote -v
dann kannst du dir einen Shortcut für die URL anlegen:

Code: Alles auswählen

git remote add imc https://github.com/IMC-GER/RecentTopics
und danach einfach:

Code: Alles auswählen

git push -f imc develop32
Mehr dazu: https://git-scm.com/book/de/v2/Git-Tool ... mschreiben

PS: Den Editor kannst du auch konfigurieren, z.B. so:

Code: Alles auswählen

 git config --global core.editor "vim"
https://www.atlassian.com/git/tutorials ... git-config
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2176
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von LukeWCS »

Merci Chris! :)
Möge das Backup mit dir sein. Immer.

Erweiterungen - Infos zur artgerechten Haltung
phpBB Ext Check - Analysesystem für phpBB Erweiterungen (Entwickler Werkzeug)
Benutzeravatar
IMC
Mitglied
Beiträge: 547
Registriert: 25.11.2018 20:32
Wohnort: Lüneburg
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von IMC »

Vielen Dank!
Der Commit scheint bereinigt zu sein. Hat nach der Anleitung gut geklappt. Ich werde versuchen mich in die Thematik etwas besser einzulesen.
Gruß, Thorsten
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2176
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von LukeWCS »

IMC hat geschrieben: 11.01.2023 11:08 Der Commit scheint bereinigt zu sein. Hat nach der Anleitung gut geklappt.
Hat einwandfrei geklappt.
Ich werde versuchen mich in die Thematik etwas besser einzulesen.
Ergänzungen:

Das was Crizzo dir per Shell gezeigt hat, lässt sich so leider nicht mit GH Desktop machen, weil das (noch) kein Force Push bietet. Es bietet ebenfalls leider kein Reset. Deswegen ist man für diese beiden Aufgaben auf Alternativen angewiesen. Also entweder direkt in der Shell (das geht immer), oder mit einem anderen GUI Client. Für die tägliche Praxis ist GH Desktop klasse und sehr komfortabel. Für "speziellere" Aktionen die ich nicht oft brauche, nutze ich zusätzlich Sourcetree. Es gibt noch weitere GUI Clients.

Wegen Force Push: damit muss man generell vorsichtig sein, weil du damit im Prinzip dein Repo "überschreibst", egal in welchem Zustand das ist. In unserem Fall kein Problem, da ja aktuell nur ich einen Fork von deinem Repo habe und wir beide ja direkt kommunizieren. Wenn da aber noch andere einen Fork von deinem Repo "hätten" und du nutzt Force Push, hat das zur Folge, dass die anderen dann nicht ohne Weiteres ihren Fork mit deinem Repo synchronisieren können. Da ich gestern schon alle deine letzten Commits bei mir im Repo hatte, bevor du Force Push gemacht hast, musste ich also nach deinem Force Push einen Reset auf einen Commit machen, der vor deinem pl3 lag. Dann konnte ich wieder mit deinem Repo synchronisieren.

Das hängt mit den digitalen Signaturen jedes Commits zusammen. Wenn du ein Force Push machst, ändert sich die Signatur des letzten Commits und somit haben wir einen asynchronen Zustand vom Repo und den davon abgeleiteten Forks.
Möge das Backup mit dir sein. Immer.

Erweiterungen - Infos zur artgerechten Haltung
phpBB Ext Check - Analysesystem für phpBB Erweiterungen (Entwickler Werkzeug)
Benutzeravatar
IMC
Mitglied
Beiträge: 547
Registriert: 25.11.2018 20:32
Wohnort: Lüneburg
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von IMC »

Danke für die Ergänzungen.

Das sehr viele Möglichkeiten gibt die nur über die Konsole durchzuführen sind habe ich schon mitbekommen. Habe es immer vermieden mich näher damit zu beschäftigen. Das war ja nun gestern anders.

Um Git Bash zu nutzen musste ich Gestern ein 50MB Bundle installieren. Mit im Packet war Git GUI. Dort habe ich eben eine Checkbox entdeckt mit dem Text Amend Last Commit die bei Aktivierung auch den Letzten Commid angezeigt.

Mein Ziel wird es sein solche Fehler nicht mehr zu machen. Bin aber immer wieder begeistert wie schnell ihr hier Support gebt, der schnell zu einer Lösung führt. Deshalb nochmal Danke dafür.
Gruß, Thorsten
Benutzeravatar
LukeWCS
Supporter
Supporter
Beiträge: 2176
Registriert: 15.12.2014 10:19
Kontaktdaten:

Re: [3.2][3.3][Fork] Recent Topics

Beitrag von LukeWCS »

IMC hat geschrieben: 11.01.2023 16:04 Das sehr viele Möglichkeiten gibt die nur über die Konsole durchzuführen sind habe ich schon mitbekommen. Habe es immer vermieden mich näher damit zu beschäftigen.
Ist mit der richtigen GUI auch nicht notwendig. Ich habe in den Anfängen (70er/80er) ja nur in der Shell gearbeitet. Logisch, gab ja auch nix anderes. Grafische Benutzeroberfläche? Maus? Mehr als ein Programm gleichzeitig ausführen können? Das gabs ganz einfach nicht. :lol:

Shell habe ich lange und exzessiv genug benutzt, ich habe darauf keine Lust mehr. Ausserdem wird man nicht jünger, ein klein bisschen Komfort darf schon sein, vor allem beim programmieren.
Um Git Bash zu nutzen musste ich Gestern ein 50MB Bundle installieren. Mit im Packet war Git GUI. Dort habe ich eben eine Checkbox entdeckt mit dem Text Amend Last Commit die bei Aktivierung auch den Letzten Commid angezeigt.
Das git Bundle habe ich auch installiert, trotz GUIs. Ist auch sinnvoll, denn wenn es mal richtig kompliziert werden sollte, kann Crizzo helfen, da er ausschliesslich mit git Bash arbeitet.

Mit der Git GUI die im Bundle dabei ist, komme ich überhaupt nicht klar. Die ist derart umständlich, das ich gleich mit der Shell arbeiten kann. Zwei GUI Alternativen (zusätzlich zu GH Desktop):

Sourcetree Stammt vom gleichen Hersteller wie der Bugtracker, der bei phpBB genutzt wird.
Git Extensions Das ist inzwischen richtig gut geworden.

Ich habe beide installiert. Finde raus, was dir besser zusagt. Dann noch:

SmartGit Hab ich auch gehabt bis vor kurzem, aber die Handhabung liegt mir nicht.
Mein Ziel wird es sein solche Fehler nicht mehr zu machen.
Die lassen sich nicht immer vermeiden. Nicht lange her, als ich bei phpBB einen PR eingereicht hatte, durfte rubencm meinen Mist reparieren den ich da verbrochen hatte. Eigentlich sollte durch meinen PR nur eine einzige Datei geändert werden, tatsächlich wären es aber ein paar tausend gewesen. Das hat bestimmt den einen oder anderen Lacher generiert. :D

Wegen pl3: schau ich mir heute Abend genau an, bisher nur den Source im Repo gesichtet.
Möge das Backup mit dir sein. Immer.

Erweiterungen - Infos zur artgerechten Haltung
phpBB Ext Check - Analysesystem für phpBB Erweiterungen (Entwickler Werkzeug)
Antworten

Zurück zu „Extensions in Entwicklung“