[ruby-de] [ANN] ruby-xz 1.0.0 veröffentlicht

Marvin Gülker m-guelker at phoenixmail.de
Mo Mai 21 04:55:43 JST 2018


Liebe Liste,

nachdem ich in den letzten Jahren wenig Software veröffentlichen konnte,
bin ich endlich dazu gekommen, mein RubyGem ruby-xz¹ grundlegend zu
überarbeiten. Ich freue mich, die Veröffentlichung von Version 1.0.0
bekanntgeben zu können.

Das RubyGem ruby-xz stellt Bindings für die C-Programmbibliothek
liblzma² in Ruby bereit. liblzma ist die Programmbibliothek hinter dem
Kompressionsprogramm xz(1). ruby-xz kann deshalb u.a. dazu benutzt
werden, XZ-komprimierte Tarballs zu erstellen oder zu
entpacken. Beispiele enthält die README³ des Projekts. In aller Kürze:

    require "xz"

    XZ.compress_file("myfile.txt", "myfile.txt.xz")
    XZ.decompress_file("myfile.txt.xz", "myfile.txt")

liblzma wird mithilfe von Rubys „fiddle“-Bibliothek angebunden. Das
RubyGem enthält deshalb keine nativen Erweiterungen und bedarf nicht der
Kompilation. liblzma selbst muß aber natürlich installiert sein.

ruby-xz steht unter der MIT-Lizenz und kann über RubyGems installiert
werden:

    $ gem install ruby-xz

Die neue stabile Version 1.0.0 beendet die Rückwärtskompatibilität mit
der 0er Serie. Das API wurde grundlegend überholt und ersetzt die
langen Parameter-Ketten nunmehr durch Rubys neue
Schlüsselwort-Argumente. Besonders hervorheben möchte ich noch, daß
ruby-xz nunmehr auch Rubys Konzept externer und interner
Programm-Encodings beachtet, wobei ein „externes“ Encoding aus Sicht von
ruby-xz natürlich nicht die XZ-Datei selbst ist (hierbei handelt es sich
stets um Binärdaten), sondern der Inhalt derselben. Erwähnenswert ist
auch, daß die oft kritiserte Abhängigkeit vom RubyGem „io-like“ mit
dieser Version entfallen ist. Dank „fiddle“ hat ruby-xz jetzt sogar gar
keine Abhängigkeiten außer der stdlib mehr.

Weitere Informationen können meinem Blog⁴ und der HISTORY.rdoc⁵
entnommen werden.

Projektwebseite: https://mg.guelker.eu/projects/ruby-xz/
Online-Doku:     https://mg.guelker.eu/projects/ruby-xz/doc/
Repositorium:    https://git.guelker.eu/?p=ruby-xz.git;a=summary
Ticketsystem:    https://github.com/Quintus/ruby-xz/issues

Marvin

¹ https://mg.guelker.eu/projects/ruby-xz/
² https://tukaani.org/xz/
³ https://git.guelker.eu/?p=ruby-xz.git;a=blob;f=README.md;h=f9c9060785420592706cafc011c61e910366e2e3;hb=d6c6f712e7ed50368fb7462bae6fffc631b9baf7https://mg.guelker.eu/articles/2018/05/20/ruby-xz-1-0-0/https://git.guelker.eu/?p=ruby-xz.git;a=blob;f=HISTORY.rdoc;h=aa0430b282097097d456ef9ea543c0a4b813156e;hb=d6c6f712e7ed50368fb7462bae6fffc631b9baf7

-- 
ruby-de-Admin

Blog: https://mg.guelker.eu
PGP/GPG ID: F1D8799FBCC8BC4F
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 488 bytes
Beschreibung: nicht verfügbar
URL         : <http://lists.ruby-lang.org/pipermail/ruby-de/attachments/20180520/ba3380a6/attachment.sig>


Mehr Informationen über die Mailingliste ruby-de