mentat/Cargo.toml
Richard Newman e21156a754
Implement simple pull expressions (#638) r=nalexander
* Refactor AttributeCache populator code for use from pull.

* Pre: add to_value_rc to Cloned.

* Pre: add From<StructuredMap> for Binding.

* Pre: clarify Store::open_empty.

* Pre: StructuredMap cleanup.

* Pre: clean up a doc test.

* Split projector crate. Pass schema to projector.

* CLI support for printing bindings.

* Add and use ConjoiningClauses::derive_types_from_find_spec.

* Define pull types.

* Implement pull on top of the attribute cache layer.

* Add pull support to the projector.

* Parse pull expressions.

* Add simple pull support to connection objects.

* Tests for pull.

* Compile with Rust 1.25.

The only choice involved in this commit is that of replacing the
anonymous lifetime '_ with a named lifetime for the cache; since we're
accepting a Known, which includes the cache in question, I think it's
clear that we expect the function to apply to any given cache
lifetime.

* Review comments.

* Bail on unnamed attribute.

* Make assert_parse_failure_contains safe to use.

* Rework query parser to report better errors for pull.

* Test for mixed wildcard and simple attribute.
2018-05-04 12:56:00 -07:00

89 lines
1.7 KiB
TOML

[package]
authors = [
"Richard Newman <rnewman@twinql.com>",
"Nicholas Alexander <nalexander@mozilla.com>",
"Victor Porof <vporof@mozilla.com>",
"Jordan Santell <jsantell@mozilla.com>",
"Joe Walker <jwalker@mozilla.com>",
"Emily Toop <etoop@mozilla.com>",
"Grisha Kruglov <grigory@kruglov.ca>",
"Kit Cambridge <kit@yakshaving.ninja>",
"Edouard Oger <eoger@fastmail.com>",
"Thom Chiovoloni <tchiovoloni@mozilla.com>",
]
name = "mentat"
version = "0.7.0"
build = "build/version.rs"
[features]
default = ["bundled_sqlite3"]
bundled_sqlite3 = ["rusqlite/bundled"]
[workspace]
members = ["tools/cli", "ffi"]
[build-dependencies]
rustc_version = "0.2"
[dependencies]
chrono = "0.4"
error-chain = { git = "https://github.com/rnewman/error-chain", branch = "rnewman/sync" }
lazy_static = "0.2"
time = "0.1"
uuid = { version = "0.5", features = ["v4", "serde"] }
[dependencies.rusqlite]
version = "0.13"
# System sqlite might be very old.
features = ["limits"]
[dependencies.edn]
path = "edn"
[dependencies.mentat_parser_utils]
path = "parser-utils"
[dependencies.mentat_core]
path = "core"
[dependencies.mentat_sql]
path = "sql"
[dependencies.mentat_db]
path = "db"
[dependencies.mentat_query]
path = "query"
[dependencies.mentat_query_algebrizer]
path = "query-algebrizer"
[dependencies.mentat_query_parser]
path = "query-parser"
[dependencies.mentat_query_projector]
path = "query-projector"
[dependencies.mentat_query_pull]
path = "query-pull"
[dependencies.mentat_query_sql]
path = "query-sql"
[dependencies.mentat_query_translator]
path = "query-translator"
[dependencies.mentat_tx]
path = "tx"
[dependencies.mentat_tx_parser]
path = "tx-parser"
[dependencies.mentat_tolstoy]
path = "tolstoy"
[profile.release]
opt-level = 3
debug = false
lto = true