Skip to content

Releases: ruby-rdf/rdf

Release 3.3.4

13 Jul 23:04

Choose a tag to compare

  • Add N-Triples tests for .parse_subject, .parse_object, .parse_predicate, .parse_uri, .parse_node, and .parse_literal.
  • Add RDF versions to Format.
  • Update N-Triples/N-Quads grammar with VERSION
  • Add version option and accessor to RDF::Reader.
    • Add VERSION support in N-Triples parser, with warning when unexpected combination is used.
  • allow --no-validate CLI option.
  • Write VERSION declaration in N-Triples/Quads if version specified, and not canonicalizing.
  • Remove support for the RDF-star CG version of quoted triples, leaving only triple terms.
  • If validating, only return valid triples from N-Triples reader.
  • Add N-Triples tests for ill-formed language-tagged literals and directional variations.
  • When reading a URI, canonicalize when interning, rather than after the fact, to avoid a frozen object error.
  • Always encode U+FFFE and U+FFFF in N-Triples/Quads.

Version 3.3.3

25 Jun 01:35

Choose a tag to compare

  • Don't parse quoted triples when validating.
  • Make sure argument to URI.intern is a string.
  • In URI#freeze, synchronize mutex before checking for frozen? This was a race condition.
  • More moves towards Triple Terms vs Quoted Triples.
  • Don't use Time Zone from a native value in RDF::Literal::Date, as Time Zone is optional and not included in ISO8601. Fixes #447.
  • Add more special handling for URI File scheme in general, and some windows-specific code to disambiguate the drive letter from a scheme. Fixes #443.
    • Just use path if there's a file scheme. This leaves out a potential host, which isn't supported anyway.
  • Link to the rdf-borsh extension (@artob).
  • Fix typo in decimal.rb comments (@bivens-dev).
  • short-circuiting slow inherited methods with fast ones (@doriantaylor)
  • Replace StringScanner in N-Triples reader (@andyundso)
  • Add whitespace to canonical triple term representation.
  • Fix some XSD grammar issues for DECIMAL and DOUBLE.

Version 3.2.12

04 Aug 21:46

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

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

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

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

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

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

Choose a tag to compare

Release 3.2.8

29 May 00:30

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