Skip to content

Commit

Permalink
Add elmi-to-json 1.3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
rlefevre committed Nov 29, 2019
1 parent 19c45c2 commit a797c44
Show file tree
Hide file tree
Showing 5 changed files with 2,573 additions and 2 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
elm
elm-format
elm-json
elmi-to-json
57 changes: 55 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,50 @@ The last release includes:
* [**elm**](https://github.com/elm/compiler) 0.19.1
* [**elm-format**](https://github.com/avh4/elm-format) 0.8.2
* [**elm-json**](https://github.com/zwilias/elm-json) 0.2.3
* [**elmi-to-json**](https://github.com/stoeffel/elmi-to-json) 1.3.0

See [Releases](https://github.com/dmy/elm-raspberry-pi/releases/) to install specific older versions.

Built and tested on Raspberry Pi 4 Model B with Raspbian GNU/Linux 10 (32 bits).

*Please report any success or failure on others ARM platforms.*

## Node.js

For tools like elm-test, you will need a more recent version of Node.js.
The following command will currently install Node.js v11:
```
sudo apt-get update
curl -sL https://deb.nodesource.com/setup_11.x | sudo bash -
sudo apt-get install -y nodejs
```
Is is advised to configure npm to store packages in a user directory.
Add to `~/.bashrc`:
```
NPM_PACKAGES="$HOME/.npm-packages"
PATH="$NPM_PACKAGES/bin:$PATH"
# Unset manpath so we can inherit from /etc/manpath via the `manpath` command
unset MANPATH # delete if you already modified MANPATH elsewhere in your configuration
MANPATH="$NPM_PACKAGES/share/man:$(manpath)"
```
and run
```
npm config set prefix ~/.npm-packages
```
Then logout/login.

## elm-test
You can install `elm-test` globally:
```
npm install -g elm-test
```
But it won't run without an `elmi-to-json` binary suitable for the platform,
which is not available upstream, so you have to copy manually the one provided by this release
to the expected location:
```
cp /usr/local/bin/elmi-to-json $(npm config get prefix)/lib/node_modules/elm-test/node_modules/elmi-to-json/bin/elmi-to-json
```

## Known issues
* Because [SMP is disabled by mistake in ghc on ARMv7](https://gitlab.haskell.org/ghc/ghc/issues/13007), the compiler will use a single core.

Expand All @@ -26,9 +63,9 @@ If you are not sure or if the bug is specific to ARM, report it [here](https://g
## Building from source
On Raspbian GNU/Linux 10:

### elm & elm-format
### elm / elm-format / elmi-to-json
- `sudo apt-get install ghc cabal-install`
- Clone the official `elm` or `elm-format` repository
- Clone the official repository
- Checkout the version tag
- Apply the patches included in this repository using `git am`
- `cabal new-update`
Expand All @@ -41,3 +78,19 @@ On Raspbian GNU/Linux 10:
- `cd elm-json`
- Checkout the version tag
- `cargo build --release`

## Tests
All `elm/core` tests pass successfully:
```
elm-test 0.19.1
---------------
Running 1268 tests. To reproduce these results, run: elm-test --fuzz 100 --seed 306473447917537 /home/pi/dev/core/tests/tests/Main.elm
TEST RUN PASSED
Duration: 139092 ms
Passed: 1268
Failed: 0
```
Binary file modified elm.tar.gz
Binary file not shown.
Binary file added elmi-to-json-1.3.0.tar.gz
Binary file not shown.
Loading

0 comments on commit a797c44

Please sign in to comment.