- [breaking] updates to abstract-level@2.x, drops support for the
@nxtedition/rocksdb
backend
(#168)
- [breaking] switches to using radix 36 rather than radix 10 to encode
the lengths of terms and quads in support of much longer literal terms.
(#166)
(#158) - [internal] adds
@nxtedition/rocksdb
to the list of backends covered by the test suite
(#164)
- [internal] updated dependencies to latest versions
- [breaking] uses a simpler and faster (de)serialization technique
that operates solely on keys, with no need for values
(#157) - [internal] avoids repeated serializations of the same term
(#156) - [internal] updated dependencies to latest versions
- [internal] updated dependencies to latest versions
- [internal] ported test suite to TypeScript and made it run both
server-side (
mocha
using theMemoryLevel
andClassicLevel
backends) and browser-side (mocha
within a webpage loaded viapuppeteer
using theMemoryLevel
andBrowserLevel
backends)
(#150)
- [fix] fixes breaking serialization of terms that serialize to strings
longer than 127 chars
(#152) - [internal] replaces
asynciterator
'sTransformIterator
withwrap()
following upstream performance work
(RubenVerborgh/AsyncIterator#44)
- [breaking] upgraded to the new generation of
*-level
packages
(https://github.com/Level/community#how-do-i-upgrade-to-abstract-level) - [breaking] uses
Uint16Array
instead ofBuffer
for value (de)serialization - [new] adds support for ES modules through separate CJS and ESM builds
(#138) - [new] adds support for Deno
(#139) - [internal] moves performance tests to dedicated repository
(https://github.com/quadstorejs/quadstore-perf) - [internal] upgrades to newer versions of
asynciterator
where we've done a lot of work on optimizing synchronous transforms (RubenVerborgh/AsyncIterator#44 (comment))
- [breaking] drops all SPARQL-related features in favor of
quadstore-comunica
, for greater separation of concerns - [breaking] stops shipping
rdf-data-factory
as the default implementation of RDF/JS'sDataFactory
interface - [fix] throws when
backend
is not an instance ofAbstractLevelDOWN
(#140) - [fix] lands upstream fix to variable selection in SPARQL OPTIONAL clauses
(#142) - [internal] replaces
immutable
anddecimal.js
with smaller alternatives inquadstore-comunica
, dropping ~60 kB from the final bundle size
(#143) - [docs] adds basic example to
README
(#145)
- [fix] fixes missing dependencies used for type declarations
(#136)
- [breaking] removes support for DEFAULT vs. UNION default graph modes
- [fix] fixes breaking blank node correlations
(#134) - [fix] fixes repeated calls to
AbstractIterator#end()
- [internal] fixes duplicated typings for the comunica engine (#129)
- [internal] offloads SPARQL UPDATE queries to Comunica
- [internal] brings SPARQL spec compliance tests close to 100% passing
- [breaking] deep revision of the serialization mechanism to remove duplicated quad serializations across indexes
- [breaking] removes support for custom
separator
andboundary
- [breaking] an instance of Comunica's
ActorInitSparql
must now be passed to theQuadstore
constructor via theopts
argument, adding support for Comunica configurations other thanquadstore-comunica
(#122) - [fix] fixes deep equality checks for literal terms in tests
- [fix] re-enables the symmetric join actor in Comunica
(comunica/asyncjoin#7) - [internal] takes comparators out of the Quadstore class
- [fix] fixes broken
JOIN
SPARQL queries whenapproximateSize()
rounds to 0
(#127) - [fix] fixes broken SPARQL queries due to Comunica operating in generalized
RDF mode which can lead to literals being passed as the
subject
arg tomatch()
(#127)
- [new] quad scoping support via
initScope()
,loadScope()
,deleteScope()
anddeleteAllScopes()
methods
(#124) - [new] added
rocksdb
to the list of tested backends
- [fix] fixes broken browser builds due to naming collisions between nested
webpack bundles
(https://github.com/quadstorejs/quadstore-comunica/blob/5cfc803cb0864f089b07d3cf9850c0e377373e58/README.md#build)
- [fix] fixes race condition within the
AsyncIterator
wrapper aroundAbstractLevelIterator
(#125) - [internal] updates to
quadstore-comunica@0.2.0
(non-minified bundle) - [internal] updates third-party dependencies to their latest versions
- [fix] fixes unsupported
DESCRIBE
SPARQL queries - [fix] fixes unsupported
ORDER BY
SPARQL expressions
- [new]
preWrite
hook to support atomic writes of quads plus custom key-value pairs
(#120) - [fix] prefix-based compaction/expansion of literal datatype IRIs
(#118) - [fix] quadstore can now be bundles using browserify without the
ignoreMissing
configuration param
(#117) - [fix] dropped indirect dev dependency on
@comunica/actor-init-sparql
(#116)
- [new] added support for range queries
- [new] added support for user-defined indexes
- [new] added support for SPARQL queries via quadstore-comunica
- [breaking] moved to using
master
as the development branch - [breaking] dropped support for matching terms in
del()
andpatch()
methods - [breaking] refactored
del()
,put()
andpatch()
into single-quad and multi-quad variants (multiDel()
,multiPut()
,multiPatch()
) - [breaking] refactored all APIs to return results wrapped in results objects
- [breaking] refactored all streaming APIs to use
AsyncIterator
and asynchronous entrypoints with the exception ofRDF/JS
methods - [breaking] dropped support for the non-RDF API
- [breaking] dropped support for previous implementation of custom indexes
- [breaking] dropped support for callbacks
- [breaking] refactored constructors to only use a single
opts
argument, passing the leveldb backend instance via theopts.backend
property - [breaking] dropped support for the
ready
event, replaced by the.open()
and.close()
methods - [internal] dropped a few dependencies by pulling in the relevant code
- [internal] added index-specific test suites
- [internal] refactored folder structure
- [internal] ported the whole project to Typescript
- [breaking] drops pre-assembled browser bundle.
- [internal] adds node.js 12 to Travis config.
- [internal] updates outdated dependencies.
- [internal] switches to
readable-stream
module as a substitute for the nativestream
module.
- [breaking] extracts sparql and http support into separate packages
- [breaking] updates leveldown, levelup
- [breaking] changes the way
LevelDB
's backends are passed to constructors - [breaking] makes
.sparql()
methodasync
- [internal] updates
N3
to RDF/JS version - [internal] switches to the
@comunica-/actor-init-sparql-rdfjs
SPARQL engine - [internal] consolidates dependencies
- deprecates
.query()
- adds support for SPARQL
- adds HTTP API w/ LDF endpoint
- improves test suite
- new, (hopefully) cleaner API
getStream()
,putStream()
anddelStream()
methodsquery.get()
,query().del()
methods
- less code duplication
master
branch now tracking NPM- work now happening in
devel
branch
- default
contextKey
value changed fromcontext
tograph
- replaces AsyncIterator instances w/ native stream.(Readable|Writable) instances