Skip to content

Releases: ruby-rdf/rdf

Version 3.2.12

04 Aug 21:46
Compare
Choose a tag to compare
  • Make sure argument to URI.intern is a string.
  • In URI#freeze, synchronize mutex before checking for frozen? This was a race condition.

Release 3.3.2

05 Jul 23:47
Compare
Choose a tag to compare
  • Fix problem parsing ill-formed URI query parameters such as "?&a".
  • Don't normalize literal direction so that validation can work.
  • Add check to see if subject implements supports? before using it, which isn't the case for a Writer.
  • Fix documentation on RDF::Query#initialize and #execute to note that variable graph names do not match the default graph due to SPARQL semantics.
  • Remove CHANGES.md
  • Reference GitHub Release Notes from README.
  • CI on Ruby 3.3.
  • Add expllicit dependencies on base64 and bigdecimal gems.
  • Fix some IRI regular expressions.
  • Add support for RDF 1.2 Triple Terms and deprecation notices for RDF-star quoted triples. (provisional)
  • Even though deprecated, when matching a quoted triple (<< ... >>) be sure it's not a triple term (<<( ... )>>).
  • Add rdf:reifies to the RDF vocabulary.
  • Implement Literal#english? to aid matching English literals. (@artob)
  • Update #start_with? to match String#start_with signature. (@tpendragon)

Release 3.3.1

11 Sep 21:06
Compare
Choose a tag to compare

When Mutable#load is called with a base_uri option, it takes precedence over the resource location.

Release 3.3.0

01 Sep 19:54
Compare
Choose a tag to compare
  • Add support for directional language-tagged strings from RDF 1.2.
  • Consolidate N-Triples and N-Triples Star grammars. Use LANG_DIR terminal instead of LANGTAG.
  • Removes support for legacy text/plain (as an alias for application/n-triples) and text/x-nquads (as an alias for application/n-quads)
  • Cleanup RDF* nomenclature, and use :quoted_triples instead of :rdfstar for supports?.
  • Add :base_direction as something supported (or not) by writeable.
  • Require rdfstar option to read directional language-tagged strings.
  • Add missing Statement#dup. Does not duplicate blank node components.
  • Added documentation to clarify that term canonicalization is not the same as Graph/Dataset canonicalization, which is impleented in the rdf-normalize gem.
  • Add Enumerable#canonicalize method, which can be overridden by rdf-normalize, which normalizes each statement in an enumerable.
  • Minimum Ruby version now 3.0.

Release 3.2.11

08 Jun 00:47
Compare
Choose a tag to compare
  • Ruby extensions no longer necessary.
  • Make Ruby warnings visible and reduce warnings.
  • Updates to URI normalization. Fixes #439.

Release 3.2.10

15 Apr 20:48
Compare
Choose a tag to compare
  • Fix arguments to Logger.log_depth to pass depth keyword parameter to #log_depth.
  • Minor update in mutable to change the way keyword argument overrides work.
  • Update N-Triples/Quads ASCII escapes when writing literals based on proposed RDF 1.2 behavior.
  • Fix memory leak on RDF::Util::Cache (#438@abrisse)

Release 3.2.9

07 Aug 22:10
Compare
Choose a tag to compare

Release 3.2.8

29 May 00:30
Compare
Choose a tag to compare
  • Query#execute and Pattern#execute can take a Solution for bindings, in addition to a hash. This supports passing pre-bound variables from SPARQL.
  • When generating docs, add etc/doap files to yard output.
  • Fix Dataset#inspect

Release 3.2.7

22 Apr 22:57
Compare
Choose a tag to compare
  • Add :uri option to Format,content_type, and uris and to_uri class methods. This allows retrieving the defined format URI for specified formats. (See https://www.w3.org/ns/formats/).
  • pass format keyword parameter as option when filtering CLI commands.
  • Check for windows drive letter to not confuse it with a URI scheme (windows platform only).

Release 3.2.6

14 Mar 18:43
Compare
Choose a tag to compare
  • In Temporal#to_s, set @string if it is nil.
  • Reset the string representation for Time values having an hour > 23.
  • Temporal#adjust_to_timezone! can certainly take a Literal::DayTimeOffset, in addition to a String.
    Treat the empty string as nil, to remove the timezone.
  • Add Solutions#variable_names= to override automated variable name count.
  • Add Solutions#== and Solutions#eql?` to test solutions including variable names.