Package Details: fstar

Git Clone URL: (read-only)
Package Base: fstar
Description: A Higher-Order Effectful Language Designed for Program Verification
Upstream URL:
Keywords: F* ML verification
Licenses: Apache
Conflicts: fstar-bin, fstar-git
Provides: fstar
Submitter: soimort
Maintainer: soimort
Last Packager: soimort
Votes: 3
Popularity: 0.000001
First Submitted: 2016-03-13 03:04
Last Updated: 2018-05-18 22:35

Dependencies (14)

Required by (1)

Sources (1)

Latest Comments

1 2 Next › Last »

catalin.hritcu commented on 2019-10-13 12:07

Since otherwise no, there is no plan for another release until the 1.0 release in spring.

catalin.hritcu commented on 2019-10-13 11:57

We messed up the naming on this one. It's not less stable than any of our other F* releases. Can we pack it despite the alpha name?

soimort commented on 2019-10-13 11:27

Arch package guidelines [1] do not encourage the use of non-stable releases (e.g., alpha) in general, so I can't make a package for v0.9.7.0-alpha1 at the moment.

@catalin.hritcu Any chance to get a new stable release (v0.9.7.0) at upstream?


soimort commented on 2017-10-29 17:01

I noticed that one of the dependencies, ocaml-batteries, requires:

From my knowledge, (on Arch) the package `ocamlbuild` was split from ocaml since 4.03.0, so any PKGBUILD that requires it won't work for a rusty Arch system (since the dependency `ocamlbuild` simply doesn't exist prior to ocaml 4.03). I think forcing ocaml>=4.03 is probably a good way to ensure that the ocamlbuild package exists on users' Arch mirror so as to save them from potential troubles.

catalin.hritcu commented on 2017-10-29 13:00

@soimort One more comment is related to the minimum OCaml version that could be 4.02.3. That's what most F* developers use (don't ask, windows related issues).

catalin.hritcu commented on 2017-10-24 20:40

@soimort Thank you for the fixes. ulex seems to be only used for Steps 1 and 2 (generating a lexer) so if you now do only Step 3 it's not needed. In fact, some of the other dependencies are not needed either if you only do Step 3, like ocaml-menhir. The dependencies for only Step 3 and runtime are listed earlier in
$ opam install ocamlfind batteries stdint zarith

soimort commented on 2017-10-24 18:58

@catalin.hritcu Thank you for your comments.

0. I have added the missing dependencies (except ulex since v0.9.5.0 seems to compile without it, could that be problematic?)
1. Now PKGBUILD will use the OCaml snapshot directly.
2. As suggested, I've turned the runtime dependency into z3-git (instead of z3).

Just as a side note, currently the `fstar-git` package doesn't build with Arch's OCaml 4.05 due to this:

which needs to get patched in the upstream anyways.

catalin.hritcu commented on 2017-10-23 05:55

@soimort After installing `ocaml-menhir` the next missing dependency is `stdint`, and there doesn't seem to be any Arch package for this?
+ ocamlfind ocamldep -package stdint -package batteries -package zarith -modules ulib/ml/ > ulib/ml/
ocamlfind: Package `stdint' not found

For a complete list of dependencies please check out
More precisely this is the list currently:
$ opam install ocamlbuild ocamlfind batteries stdint zarith yojson fileutils pprint menhir ulex
So I expect next missing package problems I get to be fileutils and ulex

catalin.hritcu commented on 2017-10-22 21:31

@soimort Thanks a lot for the package. We generally encourage people to use OPAM, but it's always good to have other alternatives. A couple of comments about the package:
0. The build failed for me after a lot of time spent installing dependencies and compiling F* (Steps 1 and 2 for now). The culprit seems to be a missing dependency on `ocaml-menhir`. Without this `src/ocaml-output/Makefile` fails with `Correct version of menhir not found (needs a version newer than 20161115)`
1. You are doing a full bootstrapping round via F#, but that's not strictly necessary, since you could build directly from the OCaml snapshot in `src/ocaml-ocaml-output` (only Step 3). This would be faster and would remove the `fsharp` dependency.
2. You could consider to turn the Z3 dependency into just `z3-git`, since the last official Z3 release 4.5.0 is 1 year old and has many known problems and for some examples we need more recent Z3 versions. (The versions we use are usually here: On the other hand, `z3-git` increases the build time.

soimort commented on 2017-02-22 03:16

I've added the package ocaml-pprint to AUR. Hope this helps.