Skip to content

Releases: ruby-rdf/rdf

Release 3.2.7

22 Apr 22:57

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

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

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

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.

Release 3.2.3

17 Jan 02:16

Choose a tag to compare

  • Improve documentation of URI#pname and URI#qname when using the prefixes keyword argument. (Fixes #73).
  • Add RDF::Vocabulary.__prefix__= to set the prefix to use for a given vocabulary. (fixes #431).
  • In URI#pname, escape any reserved characters in the suffix.
  • In Vocabulary.expand_pname, unescape reserved characters in the suffix.

Release 3.2.2

03 Jan 23:37

Choose a tag to compare

Reinstate RDF::Repository::Implementation::SerializedTransaction as an alias of RDF::Transaction:: SerializedTransaction. (@no-reply)

Release 3.2.1

30 Dec 21:47

Choose a tag to compare

  • Add failing test doing list manipulations inside a transaction on the default repository implementation. This works with serialized transactions.
  • Add back SerializedTransaction as a sub-class of Transaction, and use in default Repository implementation.

Release 3.2.0

29 Dec 21:34

Choose a tag to compare

  • Minimum Ruby version now 2.6.
  • Update N-Triples/N-Quads production names for quoted triples.
  • Improve Literal#comperable_datatypes2.
  • Handle corner-case on canonicalizing a Double whose value is nil. (to_sxp issues).
  • Initialize Logger instanance variables, if not defined. (Fixes #428.)
  • Fix Term.to_ruby to better serialize attributes containing blank node terms.
  • Allow URI#qname and URI#pname to take a :prefixes named parameter, which skips vocabulary navigation and uses any specified prefixes.
  • Now that RDF::HamsterRepo has been extracted into the rdf-hamster-repo gem, replace the builtin implementation for RDF::Repository with that used in RDF::OrderedRepo.

Release 3.1.15

14 Jun 17:10

Choose a tag to compare

  • Create Pattern#dup, which will recursively duplicate itself.
  • Use RDF-star sense of Statement#eql? by comparing array values of statements using #eql? instead of #==.
  • Add <=> (spaceship) operator for Literal and Numeric to better support RDF-star semantics.

(Note, this is the same as 3.1.14, which was yanked due to a problem with the released gem).

Release 3.1.14

29 May 18:30

Choose a tag to compare

  • Create Pattern#dup, which will recursively duplicate itself.
  • Use RDF-star sense of Statement#eql? by comparing array values of statements using #eql? instead of #==.
  • Add <=> (spaceship) operator for Literal and Numeric to better support RDF-star semantics.

(Note, version was yanked due to a problem with the released gem; re-released as 3.1.15).