diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4d059e0e2b..7ad85f975a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,18 @@
+
+### v0.15.1 (2020-06-20)
+
+
+#### Bug Fixes
+
+* Allow find_type etc to work without calling global ([6e469b9a](https://github.com/gluon-lang/gluon/commit/6e469b9a311d1bdb7b5e4fc62688fc7d4d08ceea))
+
+#### Features
+
+* Make the query code compatible with the language server ([14e8f1de](https://github.com/gluon-lang/gluon/commit/14e8f1ded3f4e02d6b8ab9c50dbd29b35b534996))
+* Add Default for Root/OwnedExpr ([fedb7322](https://github.com/gluon-lang/gluon/commit/fedb732270eb24e544b047e19e5a7533028a2f5b))
+
+
+
## v0.15.0 (2020-06-06)
diff --git a/Cargo.lock b/Cargo.lock
index ffcb14e744..b6258b380f 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1109,7 +1109,7 @@ checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
[[package]]
name = "gluon"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"async-trait",
"bincode",
@@ -1190,7 +1190,7 @@ dependencies = [
[[package]]
name = "gluon_base"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"anymap",
"bitflags 1.2.1",
@@ -1220,7 +1220,7 @@ dependencies = [
[[package]]
name = "gluon_c-api"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"futures 0.3.4",
"gluon",
@@ -1229,7 +1229,7 @@ dependencies = [
[[package]]
name = "gluon_check"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"codespan",
"codespan-reporting",
@@ -1253,7 +1253,7 @@ dependencies = [
[[package]]
name = "gluon_codegen"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"env_logger 0.7.1",
"gluon",
@@ -1267,7 +1267,7 @@ dependencies = [
[[package]]
name = "gluon_completion"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"codespan",
"collect-mac",
@@ -1283,7 +1283,7 @@ dependencies = [
[[package]]
name = "gluon_doc"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"cargo-deadlinks",
"clap",
@@ -1310,7 +1310,7 @@ dependencies = [
[[package]]
name = "gluon_format"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"codespan",
"difference",
@@ -1329,7 +1329,7 @@ dependencies = [
[[package]]
name = "gluon_parser"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"codespan",
"codespan-reporting",
@@ -1350,7 +1350,7 @@ dependencies = [
[[package]]
name = "gluon_repl"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"ansi_term 0.12.1",
"app_dirs",
@@ -1381,7 +1381,7 @@ dependencies = [
[[package]]
name = "gluon_vm"
-version = "0.15.0"
+version = "0.15.1"
dependencies = [
"async-trait",
"bitflags 1.2.1",
diff --git a/Cargo.toml b/Cargo.toml
index a499f9832e..8ea3256293 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus "]
keywords = ["script", "scripting", "language"]
build = "build.rs"
@@ -26,12 +26,12 @@ name = "gluon"
path = "src/lib.rs"
[dependencies]
-gluon_base = { path = "base", version = "0.15.0" } # GLUON
-gluon_check = { path = "check", version = "0.15.0" } # GLUON
-gluon_parser = { path = "parser", version = "0.15.0" } # GLUON
-gluon_codegen = { path = "codegen", version = "0.15.0" } # GLUON
-gluon_vm = { path = "vm", version = "0.15.0", default-features = false } # GLUON
-gluon_format = { path = "format", version = "0.15.0", default-features = false } # GLUON
+gluon_base = { path = "base", version = "0.15.1" } # GLUON
+gluon_check = { path = "check", version = "0.15.1" } # GLUON
+gluon_parser = { path = "parser", version = "0.15.1" } # GLUON
+gluon_codegen = { path = "codegen", version = "0.15.1" } # GLUON
+gluon_vm = { path = "vm", version = "0.15.1", default-features = false } # GLUON
+gluon_format = { path = "format", version = "0.15.1", default-features = false } # GLUON
async-trait = "0.1"
log = "0.4"
@@ -68,7 +68,7 @@ rand = { version = "0.7", optional = true }
rand_xorshift = { version = "0.2", optional = true }
[build-dependencies]
-gluon_base = { path = "base", version = "0.15.0" } # GLUON
+gluon_base = { path = "base", version = "0.15.1" } # GLUON
itertools = "0.8"
little-skeptic = { version = "0.15.0", optional = true }
@@ -95,8 +95,8 @@ bincode = "1"
pulldown-cmark = "0.6"
-gluon_completion = { path = "completion", version = "0.15.0" } # GLUON
-gluon_codegen = { path = "codegen", version = "0.15.0" } # GLUON
+gluon_completion = { path = "completion", version = "0.15.1" } # GLUON
+gluon_codegen = { path = "codegen", version = "0.15.1" } # GLUON
[features]
default = ["regex", "random"]
diff --git a/README.md b/README.md
index b898f9eef0..7a4b3b58ec 100644
--- a/README.md
+++ b/README.md
@@ -303,7 +303,7 @@ Gluon requires a recent Rust compiler to build (1.9.0 or later) and is available
```toml
[dependencies]
-gluon = "0.15.0"
+gluon = "0.15.1"
```
### Other languages
diff --git a/base/Cargo.toml b/base/Cargo.toml
index cf14b95c97..fbf4db12c0 100644
--- a/base/Cargo.toml
+++ b/base/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_base"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus "]
edition = "2018"
@@ -33,7 +33,7 @@ either = "1"
vec_map = "0.8"
typed-arena = "1"
-gluon_codegen = { version = "0.15.0", path = "../codegen" } # GLUON
+gluon_codegen = { version = "0.15.1", path = "../codegen" } # GLUON
serde = { version = "1.0.0", features = ["rc"], optional = true }
serde_state = { version = "0.4.0", features = ["rc"], optional = true }
diff --git a/base/src/lib.rs b/base/src/lib.rs
index 2614c8e419..d88d741fac 100644
--- a/base/src/lib.rs
+++ b/base/src/lib.rs
@@ -1,4 +1,4 @@
-#![doc(html_root_url = "https://docs.rs/gluon_base/0.15.0")] // # GLUON
+#![doc(html_root_url = "https://docs.rs/gluon_base/0.15.1")] // # GLUON
#![allow(unknown_lints)]
//! The base crate contains pervasive types used in the compiler such as type representations, the
//! AST and some basic containers.
diff --git a/c-api/Cargo.toml b/c-api/Cargo.toml
index 901dec8b30..6ec381cf26 100644
--- a/c-api/Cargo.toml
+++ b/c-api/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_c-api"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus Westerlind "]
edition = "2018"
@@ -19,7 +19,7 @@ travis-ci = { repository = "gluon-lang/gluon" }
crate-type = ["cdylib"]
[dependencies]
-gluon = { version = "0.15.0", path = ".." } # GLUON
+gluon = { version = "0.15.1", path = ".." } # GLUON
futures = "0.3"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
diff --git a/c-api/src/lib.rs b/c-api/src/lib.rs
index e1f5be25dd..0f8c6cc242 100644
--- a/c-api/src/lib.rs
+++ b/c-api/src/lib.rs
@@ -1,5 +1,5 @@
//! A (WIP) C API allowing use of gluon in other langauges than Rust.
-#![doc(html_root_url = "https://docs.rs/gluon_c-api/0.15.0")] // # GLUON
+#![doc(html_root_url = "https://docs.rs/gluon_c-api/0.15.1")] // # GLUON
use std::{slice, str};
diff --git a/check/Cargo.toml b/check/Cargo.toml
index c7700bc76a..d2f45bf6a9 100644
--- a/check/Cargo.toml
+++ b/check/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_check"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus "]
edition = "2018"
@@ -30,13 +30,13 @@ codespan-reporting = "0.3"
strsim = "0.9.0"
-gluon_base = { path = "../base", version = "0.15.0" } # GLUON
-gluon_codegen = { path = "../codegen", version = "0.15.0" } # GLUON
+gluon_base = { path = "../base", version = "0.15.1" } # GLUON
+gluon_codegen = { path = "../codegen", version = "0.15.1" } # GLUON
[dev-dependencies]
env_logger = "0.7"
-gluon_parser = { path = "../parser", version = "0.15.0" } # GLUON
+gluon_parser = { path = "../parser", version = "0.15.1" } # GLUON
gluon_format = { path = "../format", version = ">=0.9" }
collect-mac = "0.1.0"
diff --git a/check/src/lib.rs b/check/src/lib.rs
index 8bea807ef9..71958d6145 100644
--- a/check/src/lib.rs
+++ b/check/src/lib.rs
@@ -3,7 +3,7 @@
//! If an AST passes the checks in `Typecheck::typecheck_expr` (which runs all of theses checks
//! the expression is expected to compile succesfully (if it does not it should be considered an
//! internal compiler error.
-#![doc(html_root_url = "https://docs.rs/gluon_check/0.15.0")] // # GLUON
+#![doc(html_root_url = "https://docs.rs/gluon_check/0.15.1")] // # GLUON
#[macro_use]
extern crate collect_mac;
diff --git a/codegen/Cargo.toml b/codegen/Cargo.toml
index a522a65b1a..cfe4438c80 100644
--- a/codegen/Cargo.toml
+++ b/codegen/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_codegen"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus "]
edition = "2018"
diff --git a/completion/Cargo.toml b/completion/Cargo.toml
index 9424ab0887..034f304487 100644
--- a/completion/Cargo.toml
+++ b/completion/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_completion"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus "]
edition = "2018"
@@ -17,12 +17,12 @@ itertools = "0.8"
walkdir = "2"
codespan = "0.3"
-gluon_base = { path = "../base", version = "0.15.0" } # GLUON
+gluon_base = { path = "../base", version = "0.15.1" } # GLUON
[dev-dependencies]
collect-mac = "0.1.0"
env_logger = "0.7"
quick-error = "1"
-gluon_check = { path = "../check", version = "0.15.0" } # GLUON
-gluon_parser = { path = "../parser", version = "0.15.0" } # GLUON
+gluon_check = { path = "../check", version = "0.15.1" } # GLUON
+gluon_parser = { path = "../parser", version = "0.15.1" } # GLUON
diff --git a/completion/src/lib.rs b/completion/src/lib.rs
index a56b276280..0562279a22 100644
--- a/completion/src/lib.rs
+++ b/completion/src/lib.rs
@@ -1,5 +1,5 @@
//! Primitive auto completion and type quering on ASTs
-#![doc(html_root_url = "https://docs.rs/gluon_completion/0.15.0")] // # GLUON
+#![doc(html_root_url = "https://docs.rs/gluon_completion/0.15.1")] // # GLUON
extern crate codespan;
extern crate either;
diff --git a/doc/Cargo.toml b/doc/Cargo.toml
index af7762b179..f680cffdc4 100644
--- a/doc/Cargo.toml
+++ b/doc/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_doc"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus Westerlind "]
edition = "2018"
@@ -32,8 +32,8 @@ serde = "1.0.0"
serde_derive = "1.0.0"
serde_json = "1.0.0"
-gluon = { version = "0.15.0", path = ".." } # GLUON
-completion = { package = "gluon_completion", version = "0.15.0", path = "../completion" } # GLUON
+gluon = { version = "0.15.1", path = ".." } # GLUON
+completion = { package = "gluon_completion", version = "0.15.1", path = "../completion" } # GLUON
[dev-dependencies]
diff --git a/format/Cargo.toml b/format/Cargo.toml
index 6b8b139f2f..2fd227015f 100644
--- a/format/Cargo.toml
+++ b/format/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_format"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus "]
edition = "2018"
@@ -17,7 +17,7 @@ pretty = "0.10"
itertools = "0.8"
codespan = "0.3"
-gluon_base = { path = "../base", version = "0.15.0" } # GLUON
+gluon_base = { path = "../base", version = "0.15.1" } # GLUON
[dev-dependencies]
difference = "2"
@@ -27,7 +27,7 @@ pretty_assertions = "0.6"
tokio = { version = "0.2", features = ["macros", "rt-core"] }
walkdir = "2"
-gluon_base = { path = "../base", version = "0.15.0" } # GLUON
+gluon_base = { path = "../base", version = "0.15.1" } # GLUON
gluon = { path = "..", version = ">=0.9" }
tensile = { version = "0.6", features = ["tokio"] }
diff --git a/format/src/lib.rs b/format/src/lib.rs
index e18245cd53..5ebc033009 100644
--- a/format/src/lib.rs
+++ b/format/src/lib.rs
@@ -1,5 +1,5 @@
//! Code formatter.
-#![doc(html_root_url = "https://docs.rs/gluon_formatter/0.15.0")] // # GLUON
+#![doc(html_root_url = "https://docs.rs/gluon_formatter/0.15.1")] // # GLUON
extern crate codespan;
#[macro_use]
diff --git a/parser/Cargo.toml b/parser/Cargo.toml
index d04909b3d7..a4b694cb38 100644
--- a/parser/Cargo.toml
+++ b/parser/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_parser"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus "]
edition = "2018"
@@ -24,7 +24,7 @@ quick-error = "1.0.0"
lalrpop-util = "0.19"
log = "0.4"
pretty = "0.9"
-gluon_base = { path = "../base", version = "0.15.0" } # GLUON
+gluon_base = { path = "../base", version = "0.15.1" } # GLUON
ordered-float = "1"
codespan = "0.3"
codespan-reporting = "0.3"
diff --git a/parser/src/lib.rs b/parser/src/lib.rs
index 94526c7bb5..a44a4c30d4 100644
--- a/parser/src/lib.rs
+++ b/parser/src/lib.rs
@@ -1,7 +1,7 @@
//! The parser is a bit more complex than it needs to be as it needs to be fully specialized to
//! avoid a recompilation every time a later part of the compiler is changed. Due to this the
//! string interner and therefore also garbage collector needs to compiled before the parser.
-#![doc(html_root_url = "https://docs.rs/gluon_parser/0.15.0")] // # GLUON
+#![doc(html_root_url = "https://docs.rs/gluon_parser/0.15.1")] // # GLUON
extern crate codespan;
extern crate codespan_reporting;
diff --git a/repl/Cargo.toml b/repl/Cargo.toml
index 99bf4d04bf..5ac3153118 100644
--- a/repl/Cargo.toml
+++ b/repl/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_repl"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus Westerlind "]
edition = "2018"
@@ -20,12 +20,12 @@ path = "src/main.rs"
doc = false
[dependencies]
-gluon = { version = "0.15.0", path = "..", features = ["serialization"] } # GLUON
-gluon_vm = { version = "0.15.0", path = "../vm", features = ["serialization"] } # GLUON
-gluon_completion = { path = "../completion", version = "0.15.0" } # GLUON
-gluon_codegen = { path = "../codegen", version = "0.15.0" } # GLUON
-gluon_format = { version = "0.15.0", path = "../format" } # GLUON
-gluon_doc = { version = "0.15.0", path = "../doc" } # GLUON
+gluon = { version = "0.15.1", path = "..", features = ["serialization"] } # GLUON
+gluon_vm = { version = "0.15.1", path = "../vm", features = ["serialization"] } # GLUON
+gluon_completion = { path = "../completion", version = "0.15.1" } # GLUON
+gluon_codegen = { path = "../codegen", version = "0.15.1" } # GLUON
+gluon_format = { version = "0.15.1", path = "../format" } # GLUON
+gluon_doc = { version = "0.15.1", path = "../doc" } # GLUON
app_dirs = "1.0.0"
failure = "0.1"
diff --git a/src/lib.rs b/src/lib.rs
index 4a3ae9bc6e..c047c8eb0f 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -4,7 +4,7 @@
//! behaviour. For information about how to use this library the best resource currently is the
//! [tutorial](http://gluon-lang.org/book/index.html) which contains examples
//! on how to write gluon programs as well as how to run them using this library.
-#![doc(html_root_url = "https://docs.rs/gluon/0.15.0")] // # GLUON
+#![doc(html_root_url = "https://docs.rs/gluon/0.15.1")] // # GLUON
#![recursion_limit = "128"]
#[cfg(test)]
extern crate env_logger;
diff --git a/vm/Cargo.toml b/vm/Cargo.toml
index b2cf4da586..dd6049ee6e 100644
--- a/vm/Cargo.toml
+++ b/vm/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "gluon_vm"
-version = "0.15.0" # GLUON
+version = "0.15.1" # GLUON
authors = ["Markus "]
edition = "2018"
build = "build.rs"
@@ -46,10 +46,10 @@ serde_state = { version = "0.4.0", optional = true }
serde_derive = { version = "1.0.0", optional = true }
serde_derive_state = { version = "0.4.8", optional = true }
-gluon_base = { path = "../base", version = "0.15.0" } # GLUON
-gluon_check = { path = "../check", version = "0.15.0" } # GLUON
-gluon_codegen = { path = "../codegen", version = "0.15.0" } # GLUON
-gluon_parser = { path = "../parser", version = "0.15.0", optional = true } # GLUON
+gluon_base = { path = "../base", version = "0.15.1" } # GLUON
+gluon_check = { path = "../check", version = "0.15.1" } # GLUON
+gluon_codegen = { path = "../codegen", version = "0.15.1" } # GLUON
+gluon_parser = { path = "../parser", version = "0.15.1", optional = true } # GLUON
[build-dependencies]
lalrpop = { version = "0.19", features = ["lexer"], optional = true }
@@ -68,7 +68,7 @@ regex = "1"
serde_json = "1.0.0"
tokio = { version = "0.2", features = ["macros"] }
-gluon_parser = { path = "../parser", version = "0.15.0" } # GLUON
+gluon_parser = { path = "../parser", version = "0.15.1" } # GLUON
[features]
serialization = ["serde", "serde_state", "serde_derive", "serde_derive_state", "serde_json", "gluon_base/serialization", "codespan/serialization"]
diff --git a/vm/src/lib.rs b/vm/src/lib.rs
index 78c09fc7e5..34533ac611 100644
--- a/vm/src/lib.rs
+++ b/vm/src/lib.rs
@@ -1,5 +1,5 @@
//! Crate which contain the virtual machine which executes gluon programs
-#![doc(html_root_url = "https://docs.rs/gluon_vm/0.15.0")] // # GLUON
+#![doc(html_root_url = "https://docs.rs/gluon_vm/0.15.1")] // # GLUON
#![recursion_limit = "1024"]
#[macro_use]