ruby-mine

exploring the mine

[1.8.6] Die Zeit ist "wirklich" vorbei

von bovi am 24.04.2010 (18 Uhr)

Ein Artikel von Eric Hodel sollte jetzt wirklich noch mal jeden darüber nachdenken lassen, wieviel Aufwand es für Ihn bedeutet Ruby 1.8.6 hinter sich zu lassen. Offiziell werden neue Versionen von RubyGems und RDoc nun nicht mehr kompatibel zu dieser Version sein. Und ich denke viele andere Entwickler könnten diesem Beispiel folgen.


Kommentar schreiben

Name (notwendig)

Mail (wird nicht veröffentlicht)

Webseite


Kommentare

  1. murphy schrieb am 25.04.2010 (16 Uhr)

    Interessanter Fund! Aber zumindest CodeRay 1.0 wird erstmal 1.8.6-kompatibel bleiben, schon weil 1.8.7 noch nicht die erweiterten Regexps von Oniguruma unterstützt. Aber gibt es überhaupt ein Ruby 1.8.7 für Debian? Oder für Windows? ;)

  2. Skade schrieb am 26.04.2010 (10 Uhr)

    Klar gibt es Ruby 1.8.7 auf Windows: ruby-lang.org stellt offizielle Binaries bereit.

    Einen One-Click-Installer gibts nicht, das stimmt.

  3. Skade schrieb am 26.04.2010 (10 Uhr)

    Ums weiter auszuführen: aktuelle Debians kommen mit 1.8.7, Ubuntu führt 1.8.7 seit 8.10 (Intrepid Ibex).

    Ja, 1.8.6 ist tot. Selbst die REE ist inzwischen auf 1.8.7.

  4. toxicburst schrieb am 26.04.2010 (11 Uhr)

    Solange JRuby, Rubinius und IronRuby nicht vollständig 1.9-kompatibel sind, wird 1.8.6 eher sehr lebendig bleiben. 1.8.7 ist ein Übergangsrelease: Lohnt es sich da wirklich umzusteigen, wenn in wenigen Monaten der “große” Wechsel nach 1.9 stattfinden kann? Bisher hat mich nichts wirklich davon überzeugt.

  5. Skade schrieb am 26.04.2010 (17 Uhr)

    JRuby implementiert 1.8.7 und ist momentan der einzige alternative Ruby-Interpreter der als “produktionsreif” anzusehen ist. Rubinius hat als Kompatibilitätsziel “MRI 1.8.7” (siehe Webseite). IronRuby stelzt etwa hinterher, wird aber auch bald auf 1.8.7 setzen, weil sie sonst die wichtigste Real-World-Benchmark (“Rails-Compatible”) verlieren.

    Rails benötigt 1.8.7, die wenigsten Entwickler auf OS X haben noch 1.8.7, etc. pp. Ich finde das Argument, das 1.8.7 nur ein Zwischenrelease sei (ist es im übrigen nicht, es ist die Produktionsversion des 1.8er-Zweigs, der Support für 1.8.6 ist von offizieller Seite schon lange eingestell) inzwischen ziemlich an den Haaren herbeigezogen. Die reale Inkompatibilität ist minimal, alle gepflegten libs laufen auf 1.8.7.

    Ich muss mich im übrigen noch korrigieren: ruby-installer.org hat Windows-Installer für 1.8.6, 1.8.7 und 1.9.1.

  6. toxicburst schrieb am 27.04.2010 (09 Uhr)

    Das Release 1.8.7 enthält Backports aus dem 1.9er Stand und ist damit definitiv ein Transition-Release. Und da ich mangels Dokumentation nicht wirklich beurteilen kann, wie sich die Backports auf meine bestehende Anwendung auswirken, lasse ich davon die Finger. Und die Erfahrung zeigt, dass Tests immer da lückenhaft sind, wo die “minimalen Inkompatibilitäten” zum tragen kommen.

  7. Skade schrieb am 27.04.2010 (10 Uhr)

    Es ist nicht unüblich, dass alte Produktlinien Features der neueren erhalten. Darüber hinaus enthält 1.8.7 bei weitem mehr echte Bugfixes und Erweiterungen als Feature-Backports, die das Verhalten ändern (das größte, was mir einfallen würde, ist Enumerable::Enumerator).

    1.8.7 ist nun schon gut 2 Jahre auf dem Markt. Wenn es größere Probleme gäbe, wären die aufgefallen. Aus prinzipiellen Gründen dann auf ungepflegten Versionen zu verbleiben, ist meiner Meinung nach mindestens ebenso gefährlich.

    Die Änderungen sind im übrigen sehr wohl gut dokumentiert:

    http://svn.ruby-lang.org/repos/ruby/tags/v1_8_7/NEWS

    Das enthält alles, was man über 1.8.7 wissen muss (oder kurz zusammengefasst: “b = a.collect” wandelt nicht mehr jede Collection in einen Array um – dazu war es auch nie da).

    Es ist auch nicht so, als wäre Ruby innerhalb einer Produktlinie einfach nur im Maintenance-Mode: zwischen 1.8.0 und 1.8.6 ist auch eine ganze Menge passiert.

    Die einzige andere Konsequenz wäre, auf den aktuellen Produktionsrelease von Ruby umzusteigen. Und das ist 1.9.1.

  8. WoNáDo schrieb am 30.04.2010 (12 Uhr)

    Nur mal ‘ne Frage am Rande – macht es denn überhaupt noch Sinn eine Ruby 1.8.x-Version zu nutzen, wenn jetzt (hoffentlich) Ruby 1.9.2 raus ist?