diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2d28510..50d9084 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,6 +16,7 @@ jobs: - name: Set up a PureScript toolchain uses: purescript-contrib/setup-purescript@main with: + purescript: "unstable" purs-tidy: "latest" - name: Cache PureScript dependencies @@ -38,8 +39,17 @@ jobs: - name: Build tests run: spago -x test.dhall build --no-install --purs-args '--censor-lib --strict' - - name: Run tests - run: spago -x test.dhall test --no-install +# - name: Run tests +# run: spago -x test.dhall test --no-install - name: Check formatting run: purs-tidy check src test + + - name: Verify Bower & Pulp + run: | + npm install bower pulp@16.0.0-0 + npx bower install + npx pulp build -- --censor-lib --strict + if [ -d "test" ]; then + npx pulp test + fi diff --git a/CHANGELOG.md b/CHANGELOG.md index 948e65c..0dd5a23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,9 @@ Notable changes to this project are documented in this file. The format is based ## [Unreleased] +Breaking changes: +- Migrate FFI to ES modules (#8 by @JordanMartinez) + ## v1.0.0 2021-06-23 Thank you Athan Clark for donating this package to __purescript-contrib__. diff --git a/bower.json b/bower.json index 0536de8..85259c4 100644 --- a/bower.json +++ b/bower.json @@ -1,22 +1,25 @@ { - "name": "purescript-float32", - "license": [ - "BSD-3-Clause" - ], - "repository": { - "type": "git", - "url": "https://github.com/purescript-contrib/purescript-float32.git" - }, - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "output" - ], - "dependencies": { - "purescript-gen": "^v3.0.0", - "purescript-maybe": "^v5.0.0", - "purescript-prelude": "^v5.0.0", - "purescript-psci-support": "^v5.0.0" - } + "name": "purescript-float32", + "license": [ + "BSD-3-Clause" + ], + "repository": { + "type": "git", + "url": "https://github.com/purescript-contrib/purescript-float32.git" + }, + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "output" + ], + "dependencies": { + "purescript-gen": "master", + "purescript-maybe": "master", + "purescript-prelude": "master" + }, + "devDependencies": { + "purescript-psci-support": "master", + "purescript-quickcheck-laws": "main" + } } diff --git a/packages.dhall b/packages.dhall index 2a73f20..582d6d3 100644 --- a/packages.dhall +++ b/packages.dhall @@ -1,126 +1,4 @@ -{- -Welcome to your new Dhall package-set! - -Below are instructions for how to edit this file for most use -cases, so that you don't need to know Dhall to use it. - -## Warning: Don't Move This Top-Level Comment! - -Due to how `dhall format` currently works, this comment's -instructions cannot appear near corresponding sections below -because `dhall format` will delete the comment. However, -it will not delete a top-level comment like this one. - -## Use Cases - -Most will want to do one or both of these options: -1. Override/Patch a package's dependency -2. Add a package not already in the default package set - -This file will continue to work whether you use one or both options. -Instructions for each option are explained below. - -### Overriding/Patching a package - -Purpose: -- Change a package's dependency to a newer/older release than the - default package set's release -- Use your own modified version of some dependency that may - include new API, changed API, removed API by - using your custom git repo of the library rather than - the package set's repo - -Syntax: -Replace the overrides' "{=}" (an empty record) with the following idea -The "//" or "⫽" means "merge these two records and - when they have the same value, use the one on the right:" -------------------------------- -let overrides = - { packageName = - upstream.packageName // { updateEntity1 = "new value", updateEntity2 = "new value" } - , packageName = - upstream.packageName // { version = "v4.0.0" } - , packageName = - upstream.packageName // { repo = "https://www.example.com/path/to/new/repo.git" } - } -------------------------------- - -Example: -------------------------------- -let overrides = - { halogen = - upstream.halogen // { version = "master" } - , halogen-vdom = - upstream.halogen-vdom // { version = "v4.0.0" } - } -------------------------------- - -### Additions - -Purpose: -- Add packages that aren't already included in the default package set - -Syntax: -Replace the additions' "{=}" (an empty record) with the following idea: -------------------------------- -let additions = - { package-name = - { dependencies = - [ "dependency1" - , "dependency2" - ] - , repo = - "https://example.com/path/to/git/repo.git" - , version = - "tag ('v4.0.0') or branch ('master')" - } - , package-name = - { dependencies = - [ "dependency1" - , "dependency2" - ] - , repo = - "https://example.com/path/to/git/repo.git" - , version = - "tag ('v4.0.0') or branch ('master')" - } - , etc. - } -------------------------------- - -Example: -------------------------------- -let additions = - { benchotron = - { dependencies = - [ "arrays" - , "exists" - , "profunctor" - , "strings" - , "quickcheck" - , "lcg" - , "transformers" - , "foldable-traversable" - , "exceptions" - , "node-fs" - , "node-buffer" - , "node-readline" - , "datetime" - , "now" - ] - , repo = - "https://github.com/hdgarrood/purescript-benchotron.git" - , version = - "v7.0.0" - } - } -------------------------------- --} let upstream = - https://github.com/purescript/package-sets/releases/download/psc-0.14.3-20210722/packages.dhall sha256:1ceb43aa59436bf5601bac45f6f3781c4e1f0e4c2b8458105b018e5ed8c30f8c - -let overrides = {=} - -let additions = {=} + https://raw.githubusercontent.com/purescript/package-sets/prepare-0.15/src/packages.dhall -in upstream // overrides // additions +in upstream diff --git a/spago.dhall b/spago.dhall index 673f9a7..62bafc8 100644 --- a/spago.dhall +++ b/spago.dhall @@ -4,7 +4,6 @@ [ "gen" , "maybe" , "prelude" - , "psci-support" ] , packages = ./packages.dhall , sources = [ "src/**/*.purs" ] diff --git a/src/Data/Float32.js b/src/Data/Float32.js index 4017f2b..d8ef0da 100644 --- a/src/Data/Float32.js +++ b/src/Data/Float32.js @@ -1,9 +1,7 @@ -"use strict"; +export const float32Top = 3.40282e38; +export const float32Bottom = -3.40282e38; - -exports.float32Top = 3.40282e38; -exports.float32Bottom = -3.40282e38; -exports.fromNumberImpl = function fromNumberImpl (x) { +export function fromNumberImpl(x) { if (typeof Math.fround !== 'undefined') { return Math.fround(x); } else { @@ -17,5 +15,5 @@ exports.fromNumberImpl = function fromNumberImpl (x) { return r[0]; } } -}; +}