Ruby-xz 0.1.0 released

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi folks,

I am proud to announce the 0.1.0 release of ruby-xz, a binding to the
liblzma compression library[1] whose native XZ compression format is
known to achieve very high compression ratios. With ruby-xz, you can
use its compression power in an easy-to-use rubyish way.

ruby-xz is written ontop of ffi[2] so there’s no need to compile
anything.

== Examples

require “xz”

Compress a string

str = XZ.compress(“I love Ruby”)

Decompress it

puts XZ.decompress(str)) #=> I love Ruby

Use it together with archive-tar-minitar in order to read

XZ-compressed tarballs (.tar.xz files):

require “archive/tar/minitar”
XZ::StreamReader.open(“foo.tar.xz”) do |txz|
Archive::Tar::Minitar.unpack(txz, “foo”)
end

For more possible usecases, refer to the RDoc documentation.

== What’s new?

  • Thanks to Christoph Plank’s contribution, we’re currently
    1.8-compatible. But don’t count on this for the future.
  • The new classes XZ::StreamReader and XZ::StreamWriter allow to
    access XZ-compressed data through an IO-like interface, letting
    you easily (de)compress .tar.xz files with your favourite TAR
    reader library.
  • New dependency on the “io-like” gem.
  • Several minor bugs such as encoding mismatches have been corrected.
    See the git commit log for the complete list.
  • No breaking changes, so programs written for the previous version
    should still work. If not, file a bug.

== Web pages

Sourcecode: GitHub - Quintus/ruby-xz: Ruby bindings for liblzma, using fiddle
Bug tracker: Issues · Quintus/ruby-xz · GitHub

== How to install

Just as always, ruby-xz is available via RubyGems.

gem install ruby-xz

== License

ruby-xz is licensed under the MIT license, see the README for the
complete text. Please also note that this gem contains Steve K.’s
require_relative gem’s sourcecode for a 1.8-compatible
require_relative method. That gem is licensed under the BSDL (see the
sourcecode in xz.rb for further information)[3].

Enjoy! :wink:

Valete,
Marvin

[1] XZ Utils
[2] GitHub - ffi/ffi: Ruby FFI
[3] Reasoning for including the sourcecode: I didn’t want two separate
gems for 1.8 and 1.9, but it’s not possible to specify dependencies
just for a specific Ruby version.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJPPo/3AAoJELh1XLHFkqha/9oH/j158XPZA29j/surErSpH/El
9VdqfwErDWXnrYIrQm3eMA9hlL+wLEYZCJK+ZwyJS8PlIfvaKI1DO896LKxn8M6b
Ivot5BnNCCKpCLj+ehwvLmktbu8V/HEpQSbQIF4YjfsxMa/WiHIdwdPX7Uc0xSkm
gp0un6VoY9Icr1hSIUg3oZGAQE9Zn72N6ckVu98jQKCBRLBPY1S0R/O6ojN3x0Fg
ChE1Fd7XIMp8RUmtz1NC7qVyKuGvgjUQZAOM3WHlqcvBrJo3D2oAHpl2atpKXwzc
FhZXGdjAQVDYa1aAm0C7bXg7CAo3YqU+HOECWWArQkfAlcJR6AppBydX7Fhr0ms=
=OM0v
-----END PGP SIGNATURE-----

After installing it I get this message:

require ‘xz’
LoadError: no such file to load – io/like

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 17.02.2012 19:00, schrieb Daniel Hernández:

After installing it I get this message:

require ‘xz’ LoadError: no such file to load – io/like

Just fixed this and released version 0.1.1. The gemspec was missing
the dependency on io-like.

Vale,
Marvin

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJPPpieAAoJELh1XLHFkqha70sH/0fi5T9J1k0DiUjjf30zoaFH
CvTilH+I+WEhNYgadzjpWNVGU/eu5mnE6s7x8m24y5i0QOFz1eCZUUgpJ58agjGv
Hb7/idlU4H7AdAIIPyv6e36T11N2rQA9hwM/+dTXwGD7yc+c1iCMyuBo31xCbO7F
ieH5OJ2eYc/uu5qXOOHa2YkyTjLsqO5ty2863A61OBP8eEACRRW1tCflZYlaB0Pk
Jv0tbPtLr7tD2C3PuYbc8Ou/H/obyRMaJS3MXsckdGCt+ZrIbCO0v4iSKcxLNrIA
jGW9QOFH1OWxO3pjKwoBUk8dWAHewi31s4CavWXMqzlmsNlWcE0054B29DY1ITc=
=oong
-----END PGP SIGNATURE-----