Skip to content

Commit d518aab

Browse files
Update to PureScript v0.15.0 (#8)
* Migrated FFI to ES modules via 'lebab' * Replaced 'export var' with 'export const' * Removed '"use strict";' in FFI files * Update to CI to use 'unstable' purescript * Update Bower dependencies to master or main * Update pulp to 16.0.0-0 * Update psa to 0.8.2 * Update Bower dependencies to master or main * Update Bower dependencies to master or main * Update eslint config to es6 * Fix FFI export * Update CI to use node 14 * Added changelog entry
1 parent b5e3e57 commit d518aab

File tree

11 files changed

+63
-71
lines changed

11 files changed

+63
-71
lines changed

.eslintrc.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"parserOptions": {
3-
"ecmaVersion": 5
3+
"ecmaVersion": 6,
4+
"sourceType": "module"
45
},
56
"extends": "eslint:recommended",
67
"env": {
7-
"commonjs": true,
88
"browser": true
99
},
1010
"rules": {

.github/workflows/ci.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,12 @@ jobs:
1313
- uses: actions/checkout@v2
1414

1515
- uses: purescript-contrib/setup-purescript@main
16+
with:
17+
purescript: "unstable"
1618

17-
- uses: actions/setup-node@v1
19+
- uses: actions/setup-node@v2
1820
with:
19-
node-version: "10"
21+
node-version: "14"
2022

2123
- name: Install dependencies
2224
run: |

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Notable changes to this project are documented in this file. The format is based
55
## [Unreleased]
66

77
Breaking changes:
8+
- Migrate FFI to ES modules (#8 by @JordanMartinez)
89

910
New features:
1011

bower.json

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@
1515
"package.json"
1616
],
1717
"dependencies": {
18-
"purescript-effect": "^3.0.0",
19-
"purescript-foreign-object": "^3.0.0",
20-
"purescript-http-methods": "^5.0.0",
21-
"purescript-prelude": "^5.0.0",
22-
"purescript-record": "^3.0.0",
23-
"purescript-typelevel-prelude": "^6.0.0",
24-
"purescript-web-file": "^3.0.0",
25-
"purescript-web-promise": "https://github.com/purescript-web/purescript-web-promise.git#2.0.0",
26-
"purescript-web-streams": "https://github.com/purescript-web/purescript-web-streams.git#2.0.0"
18+
"purescript-effect": "master",
19+
"purescript-foreign-object": "master",
20+
"purescript-http-methods": "main",
21+
"purescript-prelude": "master",
22+
"purescript-record": "master",
23+
"purescript-typelevel-prelude": "master",
24+
"purescript-web-file": "master",
25+
"purescript-web-promise": "https://github.com/purescript-web/purescript-web-promise.git#master",
26+
"purescript-web-streams": "https://github.com/purescript-web/purescript-web-streams.git#master"
2727
}
2828
}

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
},
77
"devDependencies": {
88
"eslint": "^7.15.0",
9-
"pulp": "^15.0.0",
10-
"purescript-psa": "^0.8.0",
9+
"pulp": "16.0.0-0",
10+
"purescript-psa": "^0.8.2",
1111
"rimraf": "^3.0.2"
1212
}
1313
}

src/Web/Fetch.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
"use strict";
2-
3-
exports._fetch = function(a, b) {
1+
export function _fetch(a, b) {
42
return fetch(a, b);
5-
};
3+
}

src/Web/Fetch/AbortController.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
1-
"use strict";
2-
3-
exports.new = function() {
1+
const newImpl = function () {
42
return new AbortController();
53
};
4+
export { newImpl as new };
65

7-
exports.abort = function(controller) {
6+
export function abort(controller) {
87
return function() {
98
return controller.abort();
109
};
11-
};
10+
}
1211

13-
exports.signal = function(controller) {
12+
export function signal(controller) {
1413
return controller.signal;
15-
};
14+
}

src/Web/Fetch/Headers.js

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,21 @@
1-
"use strict";
2-
3-
exports.unsafeNew = function() {
1+
export function unsafeNew() {
42
return new Headers();
5-
};
3+
}
64

7-
exports.unsafeAppend = function(key, value, headers) {
5+
export function unsafeAppend(key, value, headers) {
86
return headers.append(key, value);
9-
};
7+
}
108

11-
exports.unsafeFromRecord = function(r) {
9+
export function unsafeFromRecord(r) {
1210
return new Headers(r);
13-
};
11+
}
1412

15-
exports._toArray = function(tuple, headers) {
13+
export function _toArray(tuple, headers) {
1614
return Array.from(headers.entries(), function (pair) {
1715
return tuple(pair[0])(pair[1]);
1816
});
19-
};
17+
}
2018

21-
exports.fromObject = function(obj) {
19+
export function fromObject(obj) {
2220
return new Headers(obj);
23-
};
21+
}

src/Web/Fetch/Request.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
"use strict";
2-
3-
exports._unsafeNew = function(url, options) {
1+
export function _unsafeNew(url, options) {
42
try {
53
return new Request(url, options);
64
} catch (e) {
75
console.error(e);
86
throw e;
97
}
10-
};
8+
}

src/Web/Fetch/RequestBody.js

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
"use strict";
2-
3-
exports.fromArrayBuffer = function(a) { return a };
4-
exports.fromArrayView = function(a) { return a };
5-
exports.fromString = function(a) { return a };
6-
exports.fromReadableStream = function(a) { return a };
7-
exports.empty = null;
1+
export function fromArrayBuffer(a) { return a }
2+
export function fromArrayView(a) { return a }
3+
export function fromString(a) { return a }
4+
export function fromReadableStream(a) { return a }
5+
export const empty = null;

src/Web/Fetch/Response.js

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,47 @@
1-
"use strict";
2-
3-
exports.headers = function (resp) {
1+
export function headers(resp) {
42
return resp.headers;
5-
};
3+
}
64

7-
exports.ok = function (resp) {
5+
export function ok(resp) {
86
return resp.ok;
9-
};
7+
}
108

11-
exports.redirected = function (resp) {
9+
export function redirected(resp) {
1210
return resp.redirected;
13-
};
11+
}
1412

15-
exports.status = function (resp) {
13+
export function status(resp) {
1614
return resp.status;
17-
};
15+
}
1816

19-
exports.statusText = function (resp) {
17+
export function statusText(resp) {
2018
return resp.statusText;
21-
};
19+
}
2220

23-
exports.url = function (resp) {
21+
export function url(resp) {
2422
return resp.url;
25-
};
23+
}
2624

27-
exports.body = function (resp) {
25+
export function body(resp) {
2826
return function() {
2927
return resp.body;
3028
};
31-
};
29+
}
3230

33-
exports.arrayBuffer = function (resp) {
31+
export function arrayBuffer(resp) {
3432
return function() {
3533
return resp.arrayBuffer();
3634
};
37-
};
35+
}
3836

39-
exports.blob = function (resp) {
37+
export function blob(resp) {
4038
return function() {
4139
return resp.blob();
4240
};
43-
};
41+
}
4442

45-
exports.text = function (resp) {
43+
export function text(resp) {
4644
return function() {
4745
return resp.text();
4846
};
49-
};
47+
}

0 commit comments

Comments
 (0)