RDF.rb Release Release 3.0.0

I'm happy to announce release 3.0.0 of RDF.rb and related gems. Detailed information on changes are in the RDF.rb release nodes [1].

Unlike the 2.0 release, 3.0 does not bring substantial new features, but deprecates problematic methods that were interfering with Ruby 2.0 keyword arguments. In particular, the #to_hash, and #to_ary methods are automatically invoked, in certain circumstances, to automatically turn objects implementing these methods into Hashes and Arrays respectively.

The 3.0 release is needed for semantic versioning purposes as they technically cause an incompatibility with 2.x versions. Prior to this change, a call such as RDF::Query.new(pattern) could have implicitly turned the pattern into a hash, as pattern implemented #to_hash. By removing RDF::Statement#to_hash, this no longer happens. Note that RDF::Statement, and other classes, continue to implement #to_h (and #to_a) so that appropriate conversions can still be made, they just need to be explicit.

With the exception of the SPARQL gem, this release is fully compatible with Ruby 2.5. The SPARQL gem has issues related to a reported bug [3].

For complete notes on the 3.0 release see [4].

Gregg Kellogg
gregg@greggkellogg.net

[1] https://github.com/ruby-rdf/rdf/releases/tag/3.0.0
[2] https://makandracards.com/makandra/36013-heads-up-ruby-implicitly-converts-a-hash-to-keyword-arguments
[3] https://bugs.ruby-lang.org/issues/14263
[4] https://github.com/ruby-rdf/linkeddata/releases/tag/3.0.0

Received on Sunday, 31 December 2017 23:49:41 UTC