Skip to content

Commit

Permalink
Merge #826
Browse files Browse the repository at this point in the history
826: Version 0.14.0 r=Marwes a=Marwes

## v0.14.0 (2020-04-14)

#### Bug Fixes

*   Rework how hanging lambda/parens are handled ([732f09f](732f09f))
*   Accept filenames that start with `.`/`..` as modules ([01e450b](01e450b))
*   Don't deadlock when collecting and cloning a thread concurrently ([5886f59](5886f59))
* **check:**  Reject programs which misspecifies the number of patterns ([248387d](248387d), closes [#807](#807))
* **doc:**  Correct the style.css path ([4e629ab](4e629ab))
* **format:**  Improve tuple multiline formatting ([5122fe3](5122fe3))

#### Features

*   Add AstClone to clone arena allocated ASTs ([3ee7bd2](3ee7bd2))
*   Compile modules in parallel using salsa-async ([e0ab181](e0ab181))
*   Compile modules in parallel ([57fca16](57fca16))
*   Add Function::call_any ([2c06104](2c06104))
*   Export Array from the prelude ([16eb345](16eb345))
*   Allow serde_json::Value to be marshalled to std.json.Value ([aabdec8](aabdec8))
* **check:**
  *  Avoid propagating errors on lift_io! misuse ([3dbabe5](3dbabe5))
  *  Avoid generating more errors from a type that could not be imported ([752e2bc](752e2bc))

#### Performance

*   Avoid some unnecessary allocations ([089bae4](089bae4))
*   Shrink the size of Pattern ([75fb884](75fb884))
*   Avoid hashing symbols twice ([0cfb52c](0cfb52c))
*   Allocate all temporaries into the same Vec ([af945c4](af945c4))
* **compiler:**  Hoist a remove_alias call out from match alternatives ([c13172e](c13172e))

Co-authored-by: Markus Westerlind <marwes91@gmail.com>
  • Loading branch information
bors[bot] and Marwes authored Apr 14, 2020
2 parents 0ce8c76 + 108a518 commit 8b91768
Show file tree
Hide file tree
Showing 26 changed files with 106 additions and 75 deletions.
35 changes: 35 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,38 @@
<a name="v0.14.0"></a>
## v0.14.0 (2020-04-14)


#### Bug Fixes

* Rework how hanging lambda/parens are handled ([732f09f3](https://github.com/gluon-lang/gluon/commit/732f09f3c4c866f8b1b1be231a39604b8e2128e8))
* Accept filenames that start with `.`/`..` as modules ([01e450bb](https://github.com/gluon-lang/gluon/commit/01e450bbc2f0737ecc80fde112174f52585c3445))
* Don't deadlock when collecting and cloning a thread concurrently ([5886f59f](https://github.com/gluon-lang/gluon/commit/5886f59ff68cbfe029fc6a1697784d2800f42b0a))
* **check:** Reject programs which misspecifies the number of patterns ([248387d9](https://github.com/gluon-lang/gluon/commit/248387d9c8d8121ab0f25645f79f7a47aeedfb25), closes [#807](https://github.com/gluon-lang/gluon/issues/807))
* **doc:** Correct the style.css path ([4e629ab5](https://github.com/gluon-lang/gluon/commit/4e629ab5afb923ec0e097935f02f42717a2b51d5))
* **format:** Improve tuple multiline formatting ([5122fe38](https://github.com/gluon-lang/gluon/commit/5122fe38f4c1360c13bf2ff483b6a7d35f2e7d2d))

#### Features

* Add AstClone to clone arena allocated ASTs ([3ee7bd28](https://github.com/gluon-lang/gluon/commit/3ee7bd28bdc7126f5f4401e6fbe3368da94aa921))
* Compile modules in parallel using salsa-async ([e0ab1811](https://github.com/gluon-lang/gluon/commit/e0ab18115a99115e54294b7240bb5d0360d4043a))
* Compile modules in parallel ([57fca165](https://github.com/gluon-lang/gluon/commit/57fca165df50ff61ba87fb81d34dc4087f7ebc60))
* Add Function::call_any ([2c06104f](https://github.com/gluon-lang/gluon/commit/2c06104fe2454f6636d811e77384945b4744a4bf))
* Export Array from the prelude ([16eb3456](https://github.com/gluon-lang/gluon/commit/16eb3456ca864b7f6c12d7145d15a1c07fb683dc))
* Allow serde_json::Value to be marshalled to std.json.Value ([aabdec86](https://github.com/gluon-lang/gluon/commit/aabdec86f49bda922fa01c9c1c84f32fdf2e3011))
* **check:**
* Avoid propagating errors on lift_io! misuse ([3dbabe53](https://github.com/gluon-lang/gluon/commit/3dbabe5355aeb6b4f61dfa8bdae95b6593f5575c))
* Avoid generating more errors from a type that could not be imported ([752e2bce](https://github.com/gluon-lang/gluon/commit/752e2bce68f6ef7726f0cc92a5b0e194648eb743))

#### Performance

* Avoid some unnecessary allocations ([089bae4c](https://github.com/gluon-lang/gluon/commit/089bae4c4578d36163ec9a84ee83bbfc6e41ab04))
* Shrink the size of Pattern ([75fb8840](https://github.com/gluon-lang/gluon/commit/75fb8840001f3e4d17ada88077b111024d673cf9))
* Avoid hashing symbols twice ([0cfb52c8](https://github.com/gluon-lang/gluon/commit/0cfb52c871e80272a087311f230c11a5ad218c39))
* Allocate all temporaries into the same Vec ([af945c4a](https://github.com/gluon-lang/gluon/commit/af945c4ad177839aa881d88aefa199b0c9f79aac))
* **compiler:** Hoist a remove_alias call out from match alternatives ([c13172e2](https://github.com/gluon-lang/gluon/commit/c13172e2c9ee1fabbf267d83101458af47231436))



<a name="v0.13.1"></a>
### v0.13.1 (2019-10-29)

Expand Down
22 changes: 11 additions & 11 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 10 additions & 10 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus <marwes91@gmail.com>"]
keywords = ["script", "scripting", "language"]
build = "build.rs"
Expand All @@ -26,12 +26,12 @@ name = "gluon"
path = "src/lib.rs"

[dependencies]
gluon_base = { path = "base", version = "0.13.1" } # GLUON
gluon_check = { path = "check", version = "0.13.1" } # GLUON
gluon_parser = { path = "parser", version = "0.13.1" } # GLUON
gluon_codegen = { path = "codegen", version = "0.13.1" } # GLUON
gluon_vm = { path = "vm", version = "0.13.1", default-features = false } # GLUON
gluon_format = { path = "format", version = "0.13.1", default-features = false } # GLUON
gluon_base = { path = "base", version = "0.14.0" } # GLUON
gluon_check = { path = "check", version = "0.14.0" } # GLUON
gluon_parser = { path = "parser", version = "0.14.0" } # GLUON
gluon_codegen = { path = "codegen", version = "0.14.0" } # GLUON
gluon_vm = { path = "vm", version = "0.14.0", default-features = false } # GLUON
gluon_format = { path = "format", version = "0.14.0", default-features = false } # GLUON

async-trait = "0.1"
log = "0.4"
Expand Down Expand Up @@ -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.13.1" } # GLUON
gluon_base = { path = "base", version = "0.14.0" } # GLUON

itertools = "0.8"
little-skeptic = { version = "0.15.0", optional = true }
Expand All @@ -95,8 +95,8 @@ bincode = "1"

pulldown-cmark = "0.6"

gluon_completion = { path = "completion", version = "0.13.1" } # GLUON
gluon_codegen = { path = "codegen", version = "0.13.1" } # GLUON
gluon_completion = { path = "completion", version = "0.14.0" } # GLUON
gluon_codegen = { path = "codegen", version = "0.14.0" } # GLUON

[features]
default = ["regex", "random"]
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -303,7 +303,7 @@ Gluon requires a recent Rust compiler to build (1.9.0 or later) and is available

```toml
[dependencies]
gluon = "0.13.1"
gluon = "0.14.0"
```

### Other languages
Expand Down
4 changes: 2 additions & 2 deletions base/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon_base"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus <marwes91@gmail.com>"]
edition = "2018"

Expand Down Expand Up @@ -33,7 +33,7 @@ either = "1"
vec_map = "0.8"
typed-arena = "1"

gluon_codegen = { version = "0.13.1", path = "../codegen" } # GLUON
gluon_codegen = { version = "0.14.0", path = "../codegen" } # GLUON

serde = { version = "1.0.0", features = ["rc"], optional = true }
serde_state = { version = "0.4.0", features = ["rc"], optional = true }
Expand Down
2 changes: 1 addition & 1 deletion base/src/lib.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#![doc(html_root_url = "https://docs.rs/gluon_base/0.13.1")] // # GLUON
#![doc(html_root_url = "https://docs.rs/gluon_base/0.14.0")] // # GLUON
#![allow(unknown_lints)]
//! The base crate contains pervasive types used in the compiler such as type representations, the
//! AST and some basic containers.
Expand Down
4 changes: 2 additions & 2 deletions c-api/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon_c-api"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus Westerlind <marwes91@gmail.com>"]
edition = "2018"

Expand All @@ -19,7 +19,7 @@ travis-ci = { repository = "gluon-lang/gluon" }
crate-type = ["cdylib"]

[dependencies]
gluon = { version = "0.13.1", path = ".." } # GLUON
gluon = { version = "0.14.0", path = ".." } # GLUON
futures = "0.3"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
Expand Down
2 changes: 1 addition & 1 deletion c-api/src/lib.rs
Original file line number Diff line number Diff line change
@@ -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.13.1")] // # GLUON
#![doc(html_root_url = "https://docs.rs/gluon_c-api/0.14.0")] // # GLUON

use std::{slice, str};

Expand Down
8 changes: 4 additions & 4 deletions check/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon_check"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus <marwes91@gmail.com>"]
edition = "2018"

Expand Down Expand Up @@ -30,13 +30,13 @@ codespan-reporting = "0.3"

strsim = "0.9.0"

gluon_base = { path = "../base", version = "0.13.1" } # GLUON
gluon_codegen = { path = "../codegen", version = "0.13.1" } # GLUON
gluon_base = { path = "../base", version = "0.14.0" } # GLUON
gluon_codegen = { path = "../codegen", version = "0.14.0" } # GLUON

[dev-dependencies]
env_logger = "0.7"

gluon_parser = { path = "../parser", version = "0.13.1" } # GLUON
gluon_parser = { path = "../parser", version = "0.14.0" } # GLUON
gluon_format = { path = "../format", version = ">=0.9" }

collect-mac = "0.1.0"
Expand Down
4 changes: 0 additions & 4 deletions check/src/implicits.rs
Original file line number Diff line number Diff line change
Expand Up @@ -372,10 +372,6 @@ impl<'a, 'b, 'ast> ResolveImplicitsVisitor<'a, 'b, 'ast> {
Some(Ok(replacement)) => Some(replacement),
Some(Err(err)) => {
debug!("UnableToResolveImplicit {:?} {}", id.name, id.typ);
error!(
"UnableToResolveImplicit {:?} {} {:#?}",
id.name, id.typ, expr
);

self.tc.errors.push(Spanned {
span: expr.span,
Expand Down
2 changes: 1 addition & 1 deletion check/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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.13.1")] // # GLUON
#![doc(html_root_url = "https://docs.rs/gluon_check/0.14.0")] // # GLUON

#[macro_use]
extern crate collect_mac;
Expand Down
2 changes: 1 addition & 1 deletion codegen/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon_codegen"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus <marwes91@gmail.com>"]

edition = "2018"
Expand Down
8 changes: 4 additions & 4 deletions completion/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon_completion"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus <marwes91@gmail.com>"]
edition = "2018"

Expand All @@ -17,12 +17,12 @@ itertools = "0.8"
walkdir = "2"
codespan = "0.3"

gluon_base = { path = "../base", version = "0.13.1" } # GLUON
gluon_base = { path = "../base", version = "0.14.0" } # GLUON

[dev-dependencies]
collect-mac = "0.1.0"
env_logger = "0.7"
quick-error = "1"

gluon_check = { path = "../check", version = "0.13.1" } # GLUON
gluon_parser = { path = "../parser", version = "0.13.1" } # GLUON
gluon_check = { path = "../check", version = "0.14.0" } # GLUON
gluon_parser = { path = "../parser", version = "0.14.0" } # GLUON
2 changes: 1 addition & 1 deletion completion/src/lib.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
//! Primitive auto completion and type quering on ASTs
#![doc(html_root_url = "https://docs.rs/gluon_completion/0.13.1")] // # GLUON
#![doc(html_root_url = "https://docs.rs/gluon_completion/0.14.0")] // # GLUON

extern crate codespan;
extern crate either;
Expand Down
6 changes: 3 additions & 3 deletions doc/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon_doc"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus Westerlind <marwes91@gmail.com>"]
edition = "2018"

Expand Down Expand Up @@ -32,8 +32,8 @@ serde = "1.0.0"
serde_derive = "1.0.0"
serde_json = "1.0.0"

gluon = { version = "0.13.1", path = ".." } # GLUON
completion = { package = "gluon_completion", version = "0.13.1", path = "../completion" } # GLUON
gluon = { version = "0.14.0", path = ".." } # GLUON
completion = { package = "gluon_completion", version = "0.14.0", path = "../completion" } # GLUON


[dev-dependencies]
Expand Down
6 changes: 3 additions & 3 deletions format/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon_format"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus <marwes91@gmail.com>"]
edition = "2018"

Expand All @@ -17,7 +17,7 @@ pretty = "0.10"
itertools = "0.8"
codespan = "0.3"

gluon_base = { path = "../base", version = "0.13.1" } # GLUON
gluon_base = { path = "../base", version = "0.14.0" } # GLUON

[dev-dependencies]
difference = "2"
Expand All @@ -27,7 +27,7 @@ pretty_assertions = "0.6"
tokio = { version = "0.2", features = ["macros", "rt-core"] }
walkdir = "2"

gluon_base = { path = "../base", version = "0.13.1" } # GLUON
gluon_base = { path = "../base", version = "0.14.0" } # GLUON
gluon = { path = "..", version = ">=0.9" }

tensile = { version = "0.6", features = ["tokio"] }
Expand Down
2 changes: 1 addition & 1 deletion format/src/lib.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
//! Code formatter.
#![doc(html_root_url = "https://docs.rs/gluon_formatter/0.13.1")] // # GLUON
#![doc(html_root_url = "https://docs.rs/gluon_formatter/0.14.0")] // # GLUON

extern crate codespan;
#[macro_use]
Expand Down
4 changes: 2 additions & 2 deletions parser/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gluon_parser"
version = "0.13.1" # GLUON
version = "0.14.0" # GLUON
authors = ["Markus <marwes91@gmail.com>"]
edition = "2018"

Expand All @@ -24,7 +24,7 @@ quick-error = "1.0.0"
lalrpop-util = "0.17.2"
log = "0.4"
pretty = "0.9"
gluon_base = { path = "../base", version = "0.13.1" } # GLUON
gluon_base = { path = "../base", version = "0.14.0" } # GLUON
ordered-float = "1"
codespan = "0.3"
codespan-reporting = "0.3"
Expand Down
Loading

0 comments on commit 8b91768

Please sign in to comment.