Commit graph

289 commits

Author SHA1 Message Date
Brian Grinstead 5ac47fd6ff Add a stub CLI tool and run tests on it. Fixes #136. r=rnewman 2016-12-16 14:26:10 -08:00
Brian Grinstead f7c97e776c Merge pull request #135 from mozilla/bgrins-patch-1-1
Include instructions for building and testing with cargo
2016-12-16 12:53:54 -08:00
Brian Grinstead 4bebb3cbe4 Include instructions for building and testing with cargo 2016-12-16 11:57:18 -08:00
Brian Grinstead 973c32ff77 Update test boilerplate for running on travis (#134). r=rnewman
* Include a local and external test.
* Add license blocks.
2016-12-16 11:50:08 -08:00
Richard Newman 789eb59c9a Alter Travis config to build Rust. 2016-12-16 10:45:58 -08:00
Richard Newman f8682a65fa Initial Rust commit.
If you want to go fast, go alone. If you want to go far, go together.
2016-12-16 10:39:08 -08:00
Richard Newman cbd278dd7e Remove Clojure and JS application code. 2016-12-16 10:32:23 -08:00
Richard Newman 44d50c9005 Update README for oxidation. 2016-12-16 10:31:06 -08:00
Richard Newman 73f179c887 Strip out Clojure tests and release directories. 2016-12-16 10:30:57 -08:00
Richard Newman 9cc26616a9 Implement unified setup/bootstrapping, bootstrapping new databases in a single transaction. Fixes #125. 0.3.7. 2016-12-16 10:25:17 -08:00
Richard Newman 8e16bee201 Pass existing idents to datoms->schema-fragment, allowing the 'upgrade' of an existing ident to an attribute. 2016-12-16 10:25:17 -08:00
Richard Newman 7cf67474a8 0.3.5. 2016-11-28 18:27:33 -08:00
Richard Newman 9c2978c04e Revert "Bump ClojureScript dependency to 1.9.293." Fixes #122. Version 0.3.3.
This reverts commit 327711bb53.
2016-11-28 17:03:35 -08:00
Richard Newman 103a86f440 Add a :none migration for schema management. Fixes #113. r=grisha
This allows for code to run before and after a schema fragment is
added for the first time.

The anticipated use for this is twofold:

1. To do initial setup, e.g., defining global entities.
2. To 'adopt' unmanaged attributes already defined in the store.

This 'pre' would manually alter or retract attributes so that the
transact of the new schema datoms can complete.

For example, if properties :foo/bar and :foo/baz will be unchanged,
but :noo/zob needs to change from a string to an integer, the :none
pre-function can alter the ident, and the :none post-function can
migrate and clean up.
2016-11-23 17:06:04 -08:00
Richard Newman 7784834fb3 Begin 0.3.3 release. 2016-11-23 17:06:04 -08:00
Richard Newman 6cc0b7a0d5 Give up on running lein doo. 2016-11-23 09:27:05 -08:00
Richard Newman cb0112c9f5 Singing softly to Travis. 2016-11-23 09:20:22 -08:00
Richard Newman b46465ac68 Add dependency on 'tmp'. 2016-11-23 09:15:49 -08:00
Richard Newman ad9cf03642 Run doo tests first on Travis. 2016-11-23 09:11:03 -08:00
Richard Newman f5f57da113 Rename datomish.places.import to datomish.places.importer to silence warnings. 2016-11-23 09:02:10 -08:00
Richard Newman 1789b00b07 Version 0.3.2: disable Places tests, add Travis configuration. 2016-11-23 08:51:28 -08:00
Richard Newman cefa8770fe Fix license in package.json.
Signed-off-by: Richard Newman <rnewman@twinql.com>
2016-11-23 08:51:01 -08:00
Richard Newman b79f7d3dac Note license in README. 2016-11-22 11:43:05 -08:00
Richard Newman 6f006f247d Bump to 0.3.1 to bump a dependency. 2016-11-22 11:40:37 -08:00
Richard Newman 1a05a4beb5 Release 0.3.0. 2016-11-22 11:40:37 -08:00
Richard Newman eeb1bd329f Specify Maven group-id for mozilla/datomish. 2016-11-22 11:40:37 -08:00
Richard Newman 99e7fafd1b Change license to Apache. Fixes #74. 2016-11-22 11:40:37 -08:00
Richard Newman 97911d86b2 Update README. 2016-11-21 08:51:36 -08:00
Richard Newman 7df48d0599 Add missing Tufte stub function. 2016-11-17 13:28:54 -08:00
Brian Grinstead f4519a7779 Update CONTRIBUTING.md
Use correct URL for cloning
2016-11-17 13:14:11 -08:00
Richard Newman 8a9d59aaf3 Implement schema management proposal. Fixes #95. r=grisha 2016-11-16 21:05:37 -08:00
Richard Newman d568977fa9 Implement schema management proposal. Fixes #95. 2016-11-16 21:04:13 -08:00
Richard Newman 451f13a053 Add :db.schema/version and :db.schema/attribute. 2016-11-16 21:04:13 -08:00
Richard Newman 3212be565c Allow callers to run functions within the scope of a transaction.
This generalizes the transactor loop to allow callers to run
an arbitrary function within an `in-transaction!` body.

Combined with exposing `<report-transact-tx-data!`, this allows
an admittedly sophisticated consumer to conditionally query and
transact in a consistent way -- for example, cleaning up inconsistent
data then transacting a new schema version.
2016-11-16 21:04:13 -08:00
Richard Newman bd0a56e501 Expose datomish.schema/validate-schema so that schema management can use it. 2016-11-16 21:04:13 -08:00
Richard Newman 5fa26c58a8 Expose id-literal? in the API. 2016-11-16 21:04:13 -08:00
Richard Newman 8e6f8399ae Add <??, a null-safe variant of <?. 2016-11-16 21:04:13 -08:00
Richard Newman 7e50528788 Add repeated-keys utility. 2016-11-16 21:04:13 -08:00
Richard Newman df378cee81 Add a simple test that in-memory databases are isolated. 2016-11-16 21:04:12 -08:00
Richard Newman 30023dd939 Move test helpers so they're not included in the built output. 2016-11-16 21:04:12 -08:00
Richard Newman 8ad434574e Remove dependency on Tufte. Fixes #109. 2016-11-16 21:03:59 -08:00
Richard Newman 8432e89b97 Bump promise-sqlite and node-sqlite3. 2016-11-16 20:59:27 -08:00
Richard Newman 5f3e84943c Bump DataScript dependency to 0.15.4. 2016-11-16 20:55:56 -08:00
Richard Newman 327711bb53 Bump ClojureScript dependency to 1.9.293. 2016-11-16 20:55:56 -08:00
Richard Newman d89ac5fbcd Bump to latest sqlite libraries on the JVM side. 2016-11-16 20:55:56 -08:00
Richard Newman 9d361055d3 Implement schema alteration. Fixes #78.
Altering uniqueness and cardinality attributes works, with the exception
of enabling uniqueness from nothing.

:db/noHistory and :db/isComponent changes are implemented but untested,
and aren't really supported by Datomish anyway.
2016-10-24 20:01:44 -07:00
Richard Newman 46269fe720 Add db.alter/attribute to the bootstrap schema. 2016-10-24 20:01:44 -07:00
Richard Newman 9d81abace5 Implement ident renaming. Fixes #103. 2016-10-24 20:01:44 -07:00
Richard Newman a08dc13480 Reorder test file. 2016-10-24 20:01:44 -07:00
Richard Newman be5aa5dad9 Add schema-changes-test to cljs test file. 2016-10-24 16:14:01 -07:00