Skip to content

Releases: tonsky/datascript

0.13.0

19 Sep 20:53
Compare
Choose a tag to compare
  • [ BREAKING ] Main namespace to include is now datascript.core, not datascript
  • [ BREAKING ] Old datascript.core (internal namespace) was renamed to datascript.db
  • [ BREAKING ] datascript.shim (internal namespace) was renamed to datascript.arrays

Motivations:

  • Usage of top-level namespaces is discouraged and even generates a warning in CLJS.
  • Better sooner than later.
  • 0.13 seems like a great number for this sort of release.

Migration procedure:

  • Just change (require '[datascript :as d]) to (require '[datascript.core :as d]) and you’re good to go.

For the sake of easy migration, there’re no other changes in this release. Just renamings.

0.12.2

16 Sep 07:44
Compare
Choose a tag to compare
  • Fix null pointer exception when contains? is called with an entity (PR #114, thx Kevin Lynagh)

0.12.1

12 Sep 16:30
Compare
Choose a tag to compare
  • db-init respects :db/index property

0.12.0

07 Sep 10:27
Compare
Choose a tag to compare

[ BREAKING ] Introducing new :db/index schema attribute:

  • Attributes are not put to AVET by default anymore
  • Following attributes are put to AVET:
    • :db/index true
    • :db/unique :db.unique/identity
    • :db/unique :db.unique/value
    • :db/valueType :db.type/ref
  • All attributes put to AVET should be comparable. Note: maps and list are not comparable by default, vectors are compared value-by-value
  • [ BREAKING ] Min/max aggregation functions will only work on a comaparable values

0.11.6

19 Jul 20:42
Compare
Choose a tag to compare
  • msec argument to squuid (#95, #97)
  • lookup refs in JS API pull, pull_many, entity (#94, thx Matt Senior)
  • fix in Pull API for reverse non-component attributes (#91, thx Matt Senior)
  • Node.js and Browser repls for dev profile (#93)
  • Preconditions to validate db/conn arguments (#101)
  • Id allocation bug (#66)

0.11.5

28 Jun 21:16
Compare
Choose a tag to compare
  • Ported BTSet to JVM
  • BTSet and BTSetIter implement ChunkedSeq
  • New benchmark runner

This release brings a significant performance boost for JVM version of DataScript (numbers are in comparison to JS/v8 version):

  • queries with single clause, no join: ~5–6 times faster
  • queries with joins: ~3–4.5 times faster
  • transact: ~3 times faster
  • init-db: ~3–4 times faster
  • rules: ~3-4 times faster

0.11.4

28 Jun 21:18
Compare
Choose a tag to compare

Experimental support for Clojure on JVM:

  • sorted-set instead of BTSet
  • polymorphic get lookup in query
  • no sorting optimisation for init-db
    Performance numbers so far (raw data):
    • queries with single clause, no join: 30–50% faster
    • queries with joins: ~50% slower
    • transact: ~3.5–4 times faster
    • init-db: ~2–2.5 times slower
    • rules: ~2–5 times faster
    • db equiv: ~5 times slower
    • db hash: ~10 times slower

0.11.3

28 Jun 21:18
Compare
Choose a tag to compare
  • Fixed UUID constructor warning under CLJS 0.0-3291 and later

0.11.2

28 Jun 21:18
Compare
Choose a tag to compare
  • Support reverse attribute refs in combination with wildcards (issue #80)
  • *.cljc sources do not conflict with Clojure now. Code compiles under [lein-cljsbuild "1.0.6"]

0.11.1

03 May 08:21
Compare
Choose a tag to compare
  • Return nil from entity when passed nil eid (issue #75)