Skip to content

Releases: ruby-rdf/rdf

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.

Release 3.2.5

23 Feb 01:35
Compare
Choose a tag to compare
  • Adds Temporal literal as superclass of Date, Time, and DateTime.
    • Adds #adjust_to_timezone (and #adjust_to_timezone!) based on XPath function. Takes either a [+1]HH:MM or an xsd:dayTimeDuration restricted to hours and minutes.
    • Adds <=> comparison operator.
    • Adds #year, #month, #day, #hours, #minutes, and #seconds accessors.
    • Add and subtract temporals with each other and durations, per XPath/XQuery functions spec.
  • Updates to Date literal:
    • Object base is now ::DateTime instead of ::Date to record and manipulate timezone.
    • Better conformance to XSD and XPath specs.
  • Updates to DateTime literal:
    • Better conformance to XSD and XPath specs.
      *Add XPath math functions and constants to Literal::Numeric. PI, #exp, #exp10, #log, #log10, #sqrt, #sin, #cos, #tan, #asin, #acos, #atan, #atan2.

Release 3.2.4

08 Feb 19:21
Compare
Choose a tag to compare

Vocabulary representation

  • When reading a vocabulary, don't skip non-english literals.
  • When writing a vocabulary, use language-map form for language-tagged literals with any in english serialized as the first entry of the map,
  • Remove more redundant string freezes.
  • Fixes #432.

Documentation

  • Document and parse datatype/language maps as part of Term attribute definitions.
  • Update documentation links to use gh-pages, and add action to publish gh-pages from Yard docs.
  • Improve Vocabulary DSL documentation.
  • Add Yard tag to prevent parsing vocabularies if :noDoc is set.

Other

  • Exclude '_' and '-' from PN_LOCAL escapes. Not all reserved characters need to be escaped in SPARQL/Turtle, but they must be unescaped when encountered.
  • Improve #quoted? accessor for RDF::Statement, and set it when parsing embedded triples in NTriples/NQuads.
  • Update expectation for RDF:URI with a hash argument, due to updates to rspec-mock.
  • Update Countable, Enumerable, and Queryable to include their Enumerator classes inline, and remove a separate enumerator.rb to address #433.