Versionsnummern und deprecated

28. Nov 2007

Die CakePHP Entwickler empfehlen immer einen Blick in die API, wenn man eine Funktion benutzen will. Dies ist, in Zeiten wo tempdocs noch nicht auf dem aktuellen Stand sind, und auch sonst eigentlich, nie verkehrt. Allerdings führt es manchmal zu Problemen, wenn man nicht immer die neuste Version benutzt.

Beispiel gefällig?
Die aktuelle auf der CakePHP Seite downloadbare Version der 1.2 Serie ist 1.2.0.5875 pre-beta (October 22, 2007). Die aktuelle API ist jedoch bereits auf dem Stand von 1.2.0.6053. Wo genau gerade die Tempdocs stehen ist mir nicht bekannt :-)

Folgendes ist mir nun passiert: Laut der API für die Cake 1.2 Version ist das beliebte $this->cleanUpFields(), was aus $this->form->dateTime() Werten einen datetime String baut, den man schön in der DB abspeichern kann, deprecated. Dies ist schon etwas verwunderlich, da diese Funktion erst bei 1.2 ihren Einstand feierte, aber man hat sich dabei wohl etwas gedacht. Die neue Funktion, die cleanUpFields ersetzt, nennt sich deconstruct und wird per Model::deconstruct($field,$data) aufgerufen. Leider ist diese Funktion aber noch nicht in der aktuell verbreiteten 1.2.0.5875 Version implementiert. Das Dilemma dürfte nun offensichtlich sein. Einerseits möchte man keine deprecated Elemente verwenden, andererseits hat man, wenn man nicht den letzten SVN hat, nicht die Funktion, die dort beschrieben ist.

Fazit: In einem so im Fluss befindlichen Framework wie CakePHP ist es manchmal schwer, den Überblick über die Funktionen zu behalten.

Kategorie: CakePHP | 1 Kommentar »


Veröffentlicht am Mittwoch, den 28. November 2007 um 10:43 Uhr veröffentlicht

Du kannst einen Kommentar schreiben, oder einen Trackback auf deiner Seite einrichten.

Eine Reaktion zu “Versionsnummern und deprecated”

 

  1. Arne Am 28. November 2007 um 16:01 Uhr

    Ja, da spürt man aber bei CakePHP finde ich auch ein ganz generelles Problem, und zwar die Diskrepanz zwischen 1.1 und 1.2.

    Dass die 1.2 feature frozen wäre kann man ja ob Ihres Alpha-Statusses nicht wirklich erwarten, dementsprechend ist der Überblick über die API da natürlich schwer zu behalten.

    Andererseits ist aber insbesondere CakePHP ein Projekt, das diese 1.2 derart dringend benötigt, dass man mit 1.1 gar nicht mehr arbeiten möchte. Was nur etwas dumm ist, wenn man sieht, dass die 1.2 noch ein halbes Jahr brauchen soll bis zur Final.

    Ich finde, das macht das Leben mit Cake schon etwas beschwerlich, wenngleich ich es natürlich wirklich toll finde, quasi mein Einstieg ins agile Development :-)

Einen Kommentar schreiben

Du mußt angemeldet sein, um kommentieren zu können.