# Changes to Datomic ## Changes in 0.8.3479 * new API: `Entity.touch` touches all attributes of an entity, and any component entities recursively. ## Changes in 0.8.3470 * Fixed bug where some recursive queries return incorrect results. * Fixed bug in command-line entry point for restoring from S3. ## Changes in 0.8.3460 * Fixed bug where peers could continue to interact with connections to deleted databases. * Fixed query bug where constants in queries were not correctly joined with answers. * Fixed directory structure in JAR file format, which was causing problems for some tools. * Report serialization errors back to data function callers, rather than make them wait for transaction timeout. * Better error messages for some common URI misspellings. ## Changes in 0.8.3438 * Fixed bug in :db/txInstant that prevented backdating before db was created. ## Changes in 0.8.3435 * new API: `Peer.resolveTempid` provides the actual database ids corresponding to temporary ids submitted in a transaction. * changed API: You can now explicitly specify the :db/txInstant of a transaction. This facilitates backdating transactions during data imports. * changed API: Transaction futures now return a map with DB_BEFORE, DB_AFTER, TX_DATA and TEMPIDS. * changed API: Transaction report queues now report the same data as calls to `Connection.transact` * changed API: Transaction report TX_DATA now includes retractions in addition to assertions. * new API: `Database.basisT` returns the t of the most recent transaction * Bugfix: fixed bug that prevented AWS provisioning scripts from running ## Changes in 0.8.3423 * new API: `Database.history` returns a value of a database containing all assertions and retractions across time * new API: `Database.isHistory` returns true if database is a history database * new API: `Datom.added` returns true if datom is added, false if retracted * changed API: the Datom relation in a query now exposes a fifth component, containing a boolean that is true for adds, false for retracts * changed API: removed `Index` class, range capability now available directly from `Database` * Bugfix: calling `keys` on an entity with no current attributes no longer throws NPE * udpated to use recent (12.0.1) version of Google Guava * when a peer calls `deleteDatabase`, shutdown that peer's connection ## Changes in 0.8.3397 * fixed bug where some recursive queries returned partial results * simplified license key install: pro license keys are installed via a `license-key` entry in the transactor properties file * connection catalog lookup is cached, so it is inexpensive to call `Peer.connect` as often as you like * improved fulltext indexing and query performance ## Changes in 0.8.3372 * changed API: query clauses are considered in order * changed API: when navigating entities, references to entities that have a `db/ident` return that ident, instead of the entity * new API: `Database.index` supports range requests * fixed broken dependency that prevented datomic-pro peer jar from working with DynamoDB * new API: `Peer.part` function returns the partition of an entity id * new API: `Peer.toTx` and `Peer.toT` conversion functions * entity equality is ref-like, i.e. identity-based * eliminated resource leaks that affected multiple databases and some failover scenarios ## Changes in 0.8.3343 * added API entry points for generating semi-sequential UUIDs, a.k.a squuids * use correct maven artifact ids: `datomic-free` for Datomic Free Edition, and `datomic-pro` for Datomic Pro Edition * fixed bug where queries could see retracted values of a cardinality-many attribute ## Changes in 0.8.3335 Initial public release of Datomic Free Edition and Datomic Pro Edition