Skip to content

v4.2.2

Choose a tag to compare

@github-actions github-actions released this 29 Sep 17:47

What's Changed

Breaking Changes

  • feat(delta): browse, preview, verify, generate and validate on Unity Catalog; generated mappings key and join lowercase tables (Iceberg too) by @bplatz in #1902
  • Apply a request's policy on the graph-scoped read path, and to hydration by @zonotope in #1935
  • fix: parse ledger ids once at the edge and key everything by a typed id by @bplatz in #1958
  • fix: scope MCP and the ledger listing by token claims; MCP follows data auth by @bplatz in #1963

Features

  • feat(iceberg): time-pinned graph-source reads via @iso: and @snapshot: by @bplatz in #1896
  • feat(query): @time: as the canonical timestamp selector; @iso: stays an alias by @bplatz in #1897
  • feat(delta): Delta Lake graph sources on local, S3, ADLS Gen2 and OneLake; reqwest 0.13 (outbound TLS trusts the OS certificate store) by @bplatz in #1899
  • feat(delta): Databricks tables by name through Unity Catalog by @bplatz in #1901
  • feat(sparql): support GRAPH ?g in UPDATE templates by @bplatz in #1921
  • feat: encryption key rotation without export and import by @bplatz in #1919
  • feat(server): accept Turtle, N-Triples and TriG on /sync by @bplatz in #1932
  • feat(server): Graph Store HTTP Protocol endpoint and default-graph sync by @bplatz in #1934
  • feat: Turtle and N-Triples output for CONSTRUCT and DESCRIBE by @bplatz in #1940
  • feat: edge annotations and GRAPH blocks in CONSTRUCT templates by @bplatz in #1948
  • feat(server): accept a time pin in the /query ledger path by @bplatz in #1970
  • feat(cli): fluree server run --memory for a throwaway in-memory server by @bplatz in #1968
  • feat(api): branch from a point in time with at: "time:" by @bplatz in #1969
  • Accept TriG on insert (API, server, CLI) by @bplatz in #1971

Bug Fixes

  • fix(query): unmatched OPTIONAL leaves vars unbound in SPARQL, null in Cypher by @bplatz in #1923
  • fix: route named graphs by ledger graph id, not transaction-local numbers by @bplatz in #1926
  • fix(query): keep left joins in written order when they share a variable by @bplatz in #1927
  • fix(storage): apply AES256Key on every encryptable build path and keep the disk cache free of decrypted artifacts by @bplatz in #1916
  • fix(indexer): remove rebuild session directories on every exit by @bplatz in #1917
  • fix(server): honour SPARQL Protocol dataset parameters by @bplatz in #1928
  • fix(query): key literals alike whichever join lane produced them by @bplatz in #1939
  • Compare branches by commit identity instead of t by @zonotope in #1905
  • fix(server): config precedence, boolean switches, and docs for what exists by @bplatz in #1944
  • fix(server): branching from a ledger with no commits is a 400, not a 500 by @bplatz in #1945
  • fix(query): filter and negation placement, and point-in-time visibility after reindex by @bplatz in #1965
  • fix(query): restore fast paths after cached index adoption by @bplatz in #1967

Performance

  • perf(query): fix worker-dependent 1.5x slowdown in COUNT star merges (DBLP regression in 4.2.1) by @bplatz in #1900
  • Read only the probe's slice of untranslatable overlay flakes by @bplatz in #1904
  • perf(query): cut per-row overhead in type scans, stars, grouping, and MINUS by @bplatz in #1933
  • perf(query): let LIMIT stop property joins and OPTIONAL early by @bplatz in #1936
  • perf(query): accelerate joins, existence checks, and counts by @bplatz in #1959

Other Changes

Full Changelog: v4.2.1...v4.2.2