Skip to content

Releases: ruby-rdf/rdf

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.

Release 3.2.3

17 Jan 02:16
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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).

Release 3.1.13

06 Mar 20:59
Compare
Choose a tag to compare
  • In CLI Reuse prefixes established when reading when serializing.
  • Update enabled methods defined for Query::Solution to include public_methods, and method`.
    • Note overridden instance methods and deprecate their usage.

Release 3.1.12

16 Feb 22:43
Compare
Choose a tag to compare

Normalize existential accessors (e.g. #statement?) to take both 0-ary and 1-ary variations.

  • #term?
  • #statement?
  • #variable?
  • #graph?