Skip to content

Commit 83c8ff4

Browse files
committed
Make sure Collectable is loaded for 'for'. Update node version to 8.3.0
1 parent 2908051 commit 83c8ff4

File tree

6 files changed

+26
-15
lines changed

6 files changed

+26
-15
lines changed

.babelrc

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
11
{
2-
"presets": ["env"]
2+
"presets": [
3+
[
4+
"env",
5+
{
6+
"targets": {
7+
"node": "current"
8+
}
9+
}
10+
]
11+
]
312
}

.tool-versions

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
erlang 20.0
22
elixir 1.5.0-otp-20
3-
nodejs 8.2.1
3+
nodejs 8.3.0

lib/elixir_script/passes/find_used_modules.ex

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,8 @@ defmodule ElixirScript.FindUsedModules do
165165
end
166166

167167
defp walk({:for, _, generators}, state) do
168+
walk(Collectable, state)
169+
168170
Enum.each(generators, fn
169171
{:<<>>, _, body} ->
170172
walk(body, state)

lib/elixir_script/passes/translate/forms/for.ex

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ defmodule ElixirScript.Translate.Forms.For do
22
@moduledoc false
33

44
alias ESTree.Tools.Builder, as: JS
5-
alias ElixirScript.Translate.Helpers
6-
alias ElixirScript.Translate.{Form, Clause}
5+
alias ElixirScript.Translate.{Form, Clause, Helpers, Identifier}
76
alias ElixirScript.Translate.Forms.Pattern
87

98
def compile({:for, _, generators}, state) do
@@ -24,9 +23,11 @@ defmodule ElixirScript.Translate.Forms.For do
2423
[JS.array_expression(args.patterns), fun, filter]
2524
)
2625

27-
collectable = JS.member_expression(
28-
JS.identifier("Elixir"),
29-
JS.identifier("Collectable")
26+
members = ["Elixir", "Collectable" , "__load"]
27+
28+
collectable = Helpers.call(
29+
Identifier.make_namespace_members(members),
30+
[JS.identifier("Elixir")]
3031
)
3132

3233
ast = Helpers.call(

package.json

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
"clean": "rm -rf priv/build",
1414
"test": "nyc ava src/javascript/tests",
1515
"build:test-app": "MIX_ENV=test mix elixirscript Main -o test/app/build/",
16-
"test-app": "yarn build:test-app && NODE_ENV=test ava 'test/app/spec/**/*.spec.js'"
16+
"test:test-app": "NODE_ENV=test ava 'test/app/spec/**/*.spec.js'",
17+
"test-app": "yarn build && yarn build:test-app && yarn test:test-app"
1718
},
1819
"repository": {
1920
"type": "git",
@@ -23,7 +24,7 @@
2324
"license": "MIT",
2425
"dependencies": {
2526
"erlang-types": "^1.0.1",
26-
"tailored": "^2.6.4"
27+
"tailored": "^2.7.1"
2728
},
2829
"devDependencies": {
2930
"ava": "^0.21.0",
@@ -41,9 +42,7 @@
4142
"sinon": "^2.4.1"
4243
},
4344
"ava": {
44-
"require": [
45-
"babel-register"
46-
],
45+
"require": ["babel-register"],
4746
"babel": {
4847
"babelrc": true
4948
}

0 commit comments

Comments
 (0)