accordeiro / reason

Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems

Home Page:http://reasonml.github.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Reason: simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems

Build Status CircleCI

Getting Started

Community

Contributing

Documentations

The doc repo lives at https://github.com/reasonml/reasonml.github.io

Codebase

See a list of easy tasks here

See the src folder and the corresponding README.

# On OSX, install opam via Homebrew:
brew update
brew install opam
# On Linux, see here (you will need opam >= 1.2.2): http://opam.ocaml.org/doc/Install.html

opam init
# Add this to your ~/.bashrc (or ~/.zshrc), then do `source ~/.bashrc`
#   eval $(opam config env)

opam update
opam switch 4.04.2
eval $(opam config env)
git clone https://github.com/facebook/reason.git
cd reason
opam pin add -y reason .

Note: during the last opam pin step, make sure your local repo is clean. In particular, remove artifacts and node_modules. Otherwise the pinning might go stale or stall due to the big node_modules.

Build

make build. If this fails on your machine but master passes, it means your setup wasn't right. Could you check if you followed the above installation steps? In particular, make sure you did eval $(opam config env) and sourced your shell environment (if you don't know how, just open a new shell tab and it'll be sourced usually).

Test

make test (make sure to follow the repo pinning instructions above!). The tests will output the difference between the expected syntax formatting and the actual one, if any.

Cutting a release

  • Make sure local changes are properly committed
  • Update remote:
git fetch;
git reset --hard origin/master
  • Prerelease:
env version=x.y.z make pre_release
  • Check everything is ok locally
  • Release!
env version=x.y.z make release

License

See Reason license in LICENSE.txt.

Works that are forked from other projects are under their original licenses.

Credit

The general structure of refmt repo was copied from @whitequark's m17n project, including parts of the README that instruct how to use this with the OPAM toolchain. Thank you OCaml!

About

Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems

http://reasonml.github.io

License:Other


Languages

Language:OCaml 97.2%Language:Shell 2.2%Language:Makefile 0.3%Language:Roff 0.2%Language:Standard ML 0.1%Language:C++ 0.0%