Skip to content

Commit 7ad2034

Browse files
Update to PureScript v0.15.0 (#36)
1 parent 261ecbc commit 7ad2034

File tree

8 files changed

+44
-38
lines changed

8 files changed

+44
-38
lines changed

.eslintrc.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
2-
"env": { "browser": true, "commonjs": true },
2+
"env": { "browser": true },
33
"extends": "eslint:recommended",
4-
"parserOptions": { "ecmaVersion": 5 },
4+
"parserOptions": { "ecmaVersion": 6, "sourceType": "module" },
55
"rules": {
66
"block-scoped-var": "error",
77
"consistent-return": "error",

.github/workflows/ci.yml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ jobs:
1616
- name: Set up PureScript toolchain
1717
uses: purescript-contrib/setup-purescript@main
1818
with:
19+
purescript: "unstable"
1920
purs-tidy: "latest"
2021

2122
- name: Cache PureScript dependencies
@@ -49,8 +50,17 @@ jobs:
4950
- name: Build the project
5051
run: npm run build
5152

52-
- name: Run tests
53-
run: npm run test
53+
# - name: Run tests
54+
# run: npm run test
5455

5556
- name: Check formatting
5657
run: purs-tidy check src test
58+
59+
- name: Verify Bower & Pulp
60+
run: |
61+
npm install bower pulp@16.0.0-0
62+
npx bower install
63+
npx pulp build -- --censor-lib --strict
64+
if [ -d "test" ]; then
65+
npx pulp test
66+
fi

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 (#36 by @JordanMartinez)
89

910
New features:
1011

bower.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,14 @@
1616
"package.json"
1717
],
1818
"dependencies": {
19-
"purescript-datetime": "^5.0.0",
20-
"purescript-effect": "^3.0.0",
21-
"purescript-foreign": "^6.0.0",
22-
"purescript-integers": "^5.0.0"
19+
"purescript-datetime": "master",
20+
"purescript-effect": "master",
21+
"purescript-foreign": "master",
22+
"purescript-integers": "master"
2323
},
2424
"devDependencies": {
25-
"purescript-assert": "^5.0.0",
26-
"purescript-console": "^5.0.0",
27-
"purescript-numbers": "^8.0.0"
25+
"purescript-assert": "master",
26+
"purescript-console": "master",
27+
"purescript-numbers": "master"
2828
}
2929
}

packages.dhall

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
let upstream =
2-
https://github.com/purescript/package-sets/releases/download/psc-0.14.3-20210722/packages.dhall sha256:1ceb43aa59436bf5601bac45f6f3781c4e1f0e4c2b8458105b018e5ed8c30f8c
2+
https://raw.githubusercontent.com/purescript/package-sets/prepare-0.15/src/packages.dhall
33

44
in upstream

spago.dhall

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
, "numbers"
1414
, "partial"
1515
, "prelude"
16-
, "psci-support"
1716
, "transformers"
1817
]
1918
, packages = ./packages.dhall

src/Data/JSDate.js

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
// global exports
2-
"use strict";
3-
42
var createDate = function(y, m, d, h, mi, s, ms) {
53
var date = new Date(Date.UTC(y, m, d, h, mi, s, ms));
64
if (y >= 0 && y < 100) {
@@ -17,28 +15,28 @@ var createLocalDate = function(y, m, d, h, mi, s, ms) {
1715
return date;
1816
};
1917

20-
exports.now = function() {
18+
export function now() {
2119
return new Date();
22-
};
20+
}
2321

24-
exports.isValid = function(date) {
22+
export function isValid(date) {
2523
return !isNaN(date.getTime());
26-
};
24+
}
2725

28-
exports.toInstantImpl = function(just) {
26+
export function toInstantImpl(just) {
2927
return function(nothing) {
3028
return function(date) {
3129
var t = date.getTime();
3230
return isNaN(t) ? nothing : just(t);
3331
};
3432
};
35-
};
33+
}
3634

37-
exports.fromInstant = function(instant) {
35+
export function fromInstant(instant) {
3836
return new Date(instant);
39-
};
37+
}
4038

41-
exports.jsdate = function(parts) {
39+
export function jsdate(parts) {
4240
return createDate(
4341
parts.year,
4442
parts.month,
@@ -48,9 +46,9 @@ exports.jsdate = function(parts) {
4846
parts.second,
4947
parts.millisecond
5048
);
51-
};
49+
}
5250

53-
exports.jsdateLocal = function(parts) {
51+
export function jsdateLocal(parts) {
5452
return function() {
5553
return createLocalDate(
5654
parts.year,
@@ -62,24 +60,24 @@ exports.jsdateLocal = function(parts) {
6260
parts.millisecond
6361
);
6462
};
65-
};
63+
}
6664

67-
exports.dateMethod = function(method, date) {
65+
export function dateMethod(method, date) {
6866
return date[method]();
69-
};
67+
}
7068

71-
exports.dateMethodEff = function(method, date) {
69+
export function dateMethodEff(method, date) {
7270
return function() {
7371
return date[method]();
7472
};
75-
};
73+
}
7674

77-
exports.parse = function(dateString) {
75+
export function parse(dateString) {
7876
return function() {
7977
return new Date(dateString);
8078
};
81-
};
79+
}
8280

83-
exports.fromTime = function(time) {
81+
export function fromTime(time) {
8482
return new Date(time);
85-
};
83+
}

test/Test/Main.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1 @@
1-
"use strict";
2-
3-
exports.myDate = new Date();
1+
export const myDate = new Date();

0 commit comments

Comments
 (0)