-
-
Notifications
You must be signed in to change notification settings - Fork 196
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bugfix: Fix Environment.executingDirectory in Linux symlink case (#522)
* Refactor tests to be in separate package * Update build steps * Get test green on Windows * Get test failing to reproduce issue * Fix test * Formatting * Fix build steps
- Loading branch information
Showing
75 changed files
with
4,365 additions
and
39 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
opam-version: "1.2" | ||
version: "dev" | ||
maintainer: "bryphe@outlook.com" | ||
author: ["Bryan Phelps"] | ||
build: [ | ||
|
||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
opam-version: "2.0" | ||
maintainer: "Frédéric Bour <frederic.bour@lakaban.net>" | ||
authors: ["ARB"] | ||
homepage: "https://www.khronos.org/opengles" | ||
license: "Free of charge, royalty or licensing" | ||
bug-reports: "https://github.com/ocaml/opam-repository/issues" | ||
build: ["pkg-config" "glesv2"] {os != "macos"} | ||
depends: ["conf-pkg-config" {build}] | ||
depexts: [ | ||
["libgles2-mesa-dev"] {os-family = "debian"} | ||
["mesa"] {os-distribution = "arch"} | ||
["mesa-dev"] {os-distribution = "alpine"} | ||
["mesa-libGLES-devel"] {os-distribution = "centos"} | ||
] | ||
synopsis: "Virtual package relying on a OpenGL ES 2 system installation" | ||
flags: conf |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
opam-version: "2.0" | ||
maintainer: "unixjunkie@sdf.org" | ||
authors: ["Francois Berenger"] | ||
homepage: "http://www.freedesktop.org/wiki/Software/pkg-config/" | ||
bug-reports: "https://github.com/ocaml/opam-repository/issues" | ||
license: "GPL" | ||
build: [ | ||
["pkg-config" "--help"] | ||
] | ||
install: [ | ||
["ln" "-s" "/usr/local/bin/pkgconf" "%{bin}%/pkg-config"] {os = "openbsd"} | ||
] | ||
remove: [ | ||
["rm" "-f" "%{bin}%/pkg-config"] {os = "openbsd"} | ||
] | ||
post-messages: [ | ||
"conf-pkg-config: A symlink to /usr/local/bin/pkgconf has been installed in the OPAM bin directory (%{bin}%) on your PATH as 'pkg-config'. This is necessary for correct operation." {os = "openbsd"} | ||
] | ||
depexts: [ | ||
["pkg-config"] {os-family = "debian"} | ||
["pkg-config"] {os-distribution = "arch"} | ||
["pkgconfig"] {os-distribution = "fedora"} | ||
["pkgconfig"] {os-distribution = "centos"} | ||
["pkgconfig"] {os-distribution = "mageia"} | ||
["pkgconfig"] {os-distribution = "rhel"} | ||
["pkgconfig"] {os-distribution = "ol"} | ||
["pkgconfig"] {os-distribution = "alpine"} | ||
["devel/pkgconf"] {os = "freebsd"} | ||
["devel/pkgconf"] {os = "openbsd"} | ||
["pkg-config"] {os = "macos" & os-distribution = "homebrew"} | ||
["pkgconf"] {os = "freebsd"} | ||
["pkg-config"] {os-distribution = "cygwinports"} | ||
] | ||
synopsis: "Virtual package relying on pkg-config installation" | ||
description: """ | ||
This package can only install if the pkg-config package is installed | ||
on the system.""" | ||
flags: conf |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
opam-version: "2.0" | ||
maintainer: "Frederic Bour <frederic.bour@lakaban.net>" | ||
authors: "Frederic Bour <frederic.bour@lakaban.net>" | ||
homepage: "https://github.com/let-def/grenier" | ||
bug-reports: "https://github.com/let-def/grenier" | ||
license: "ISC" | ||
dev-repo: "git+https://github.com/let-def/grenier.git" | ||
doc: "https://let-def.github.io/grenier/doc" | ||
build: [ | ||
["jbuilder" "subst" "-p" name] {pinned} | ||
["jbuilder" "build" "-p" name "-j" jobs] | ||
] | ||
depends: [ | ||
"ocaml" {>= "4.02"} | ||
"jbuilder" {build} | ||
] | ||
synopsis: "A collection of various algorithms in OCaml." | ||
description: """ | ||
Licensed under ISC license. | ||
|
||
## baltree : Generic balanced-tree | ||
|
||
A binary tree with smart constructors that ensure the resulting tree is | ||
balanced. | ||
|
||
This data structure can be used as a primitive on top of which one can easily | ||
build balanced data structures, including but not limited to binary search | ||
trees. | ||
|
||
For instance, implementing stdlib-like Set/Map is trivial and suffers only a ~5 | ||
% overhead (and one gains a O(1) length/cardinal operation). | ||
|
||
## trope : Track objects accross rope-like operations | ||
|
||
This data structure allows efficient implementation of text markers for text editors (see | ||
[Emacs Markers](http://www.gnu.org/software/emacs/manual/html_node/elisp/Markers.html)). | ||
|
||
More generally it allows to track the movement of objects on a line where | ||
chunks are added and removed, with queries O(log n) amortized time. | ||
|
||
Finally, it is persistent so you easily compare markers movement between | ||
different revisions. | ||
|
||
## orderme : Order-maintenance problem | ||
|
||
See [Order-maintenance problem](https://en.wikipedia.org/wiki/Order-maintenance_problem) | ||
for a detailed description of what this intent to solve. | ||
|
||
Main algorithm follows the amortized solution from "Two Simplified | ||
Algorithms for Maintaining Order in a List", Michael A. Bender, Richard Cole, | ||
Erik D. Demaine, Martín Farach-Colton, and Jack Zito.. | ||
|
||
A managed implementation provide finer integration with OCaml GC to collect | ||
items that are no longer reachable via the public API. | ||
|
||
## binpacking : Maxrects rectangle packing implementation | ||
|
||
An implementation of Maxrects packing algorithm in 2D. This algorithm try to | ||
pack a maximum number of 2d boxes inside a 2d rectangle. | ||
|
||
See [Even More Rectangle Bin Packing](http://clb.demon.fi/projects/even-more-rectangle-bin-packing) | ||
|
||
Useful for generating spritesheets, texture atlases, etc. | ||
|
||
## doubledouble : Floating points with around 107-bits precision | ||
|
||
An implementation of [double-double arithmetic](https://en.wikipedia.org/wiki/Quadruple-precision_floating-point_format#Double-double_arithmetic). | ||
|
||
Code is translated from [DD](http://tsusiatsoftware.net/dd/main.html) by Martin Davis. | ||
See [tsusiatsoftware](http://tsusiatsoftware.net) for more information. | ||
|
||
## hll : HyperLogLog | ||
|
||
An implementation of the HyperLogLog probabilistic cardinality estimator. | ||
See [HyperLogLog](https://en.wikipedia.org/wiki/HyperLogLog). | ||
|
||
## jmphash : Jump consistent hashing | ||
|
||
An implementation of | ||
["A Fast, Minimal Memory, Consistent Hash Algorithm"](http://arxiv.org/abs/1406.2294) | ||
from John Lamping and Eric Veach. | ||
|
||
## physh : Physical hashtable | ||
|
||
Hashtables indexing OCaml values by their physical indentities. A | ||
proof-of-concept, playing with the GC in tricky ways. | ||
|
||
Its main purpose is to efficiently observe sharing, detect cycles, etc, in | ||
arbitrary OCaml values without having to stop and stay out of the OCaml | ||
runtime. | ||
|
||
Can be used to experiment and learn about the GC but do expect bugs and don't | ||
expect any kind of compatibility with future OCaml versions. | ||
(Would be nice to have proper upstream support for such feature though!) | ||
|
||
## valmari : Valmari's DFA minimization algorithm | ||
|
||
An implementation of the algorithm desribed in [Fast brief practical DFA | ||
minimization](https://dl.acm.org/citation.cfm?id=2109576) by Valmari et al. | ||
|
||
The tests and some fixes come from | ||
[WalkerCodeRanger/dfaMinimizationComparison](https://github.com/WalkerCodeRanger/dfaMinimizationComparison), thanks! | ||
|
||
## pcg : PCG random generator | ||
|
||
Playing with [PCG generators](http://www.pcg-random.org/) in OCaml. | ||
Not even alpha, consider this doesn't exist.""" | ||
url { | ||
src: | ||
"https://github.com/let-def/grenier/releases/download/v0.7/grenier-0.7.tbz" | ||
checksum: "md5=fea64f9534b5a99df7d53665692af0be" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
opam-version: "2.0" | ||
maintainer: "francois.pottier@inria.fr" | ||
authors: [ | ||
"François Pottier <francois.pottier@inria.fr>" | ||
"Yann Régis-Gianas <yrg@pps.univ-paris-diderot.fr>" | ||
] | ||
homepage: "http://gitlab.inria.fr/fpottier/menhir" | ||
dev-repo: "git+https://gitlab.inria.fr/fpottier/menhir.git" | ||
bug-reports: "menhir@inria.fr" | ||
build: [ | ||
[make "-f" "Makefile" "PREFIX=%{prefix}%" "USE_OCAMLFIND=true" "docdir=%{doc}%/menhir" "libdir=%{lib}%/menhir" "mandir=%{man}%/man1"] | ||
] | ||
install: [ | ||
[make "-f" "Makefile" "install" "PREFIX=%{prefix}%" "docdir=%{doc}%/menhir" "libdir=%{lib}%/menhir" "mandir=%{man}%/man1"] | ||
] | ||
depends: [ | ||
"ocaml" {>= "4.02"} | ||
"ocamlfind" {build} | ||
"ocamlbuild" {build} | ||
] | ||
synopsis: "An LR(1) parser generator" | ||
url { | ||
src: | ||
"https://gitlab.inria.fr/fpottier/menhir/repository/20190626/archive.tar.gz" | ||
checksum: [ | ||
"md5=783961f8d124449a1a335cc8e50f013f" | ||
"sha512=bacc5161682130d894a6476fb79363aa73e5582543265a0c23c9a1f9d974007c04853dc8f6faa2b8bd2e82b2323b8604dcc4cb74308af667698079b394dfd492" | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
opam-version: "2.0" | ||
maintainer: "Frederic Bour <frederic.bour@lakaban.net>" | ||
authors: "Frederic Bour <frederic.bour@lakaban.net>" | ||
homepage: "https://github.com/let-def/merlin-extend" | ||
bug-reports: "https://github.com/let-def/merlin-extend" | ||
license: "MIT" | ||
dev-repo: "git+https://github.com/let-def/merlin-extend.git" | ||
build: [ | ||
["dune" "subst"] {pinned} | ||
["dune" "build" "-p" name "-j" jobs] | ||
] | ||
depends: [ | ||
"dune" {build} | ||
"cppo" {build} | ||
"ocaml" {>= "4.02.3"} | ||
] | ||
synopsis: "A protocol to provide custom frontend to Merlin" | ||
description: """ | ||
This protocol allows to replace the OCaml frontend of Merlin. | ||
It extends what used to be done with the `-pp' flag to handle a few more cases.""" | ||
doc: "https://let-def.github.io/merlin-extend" | ||
url { | ||
src: "https://github.com/let-def/merlin-extend/archive/v0.4.tar.gz" | ||
checksum: [ | ||
"md5=0663a58f2c45fad71615fbf0f6dd2e51" | ||
"sha512=9c0f966f57756c06622fdb8ae1e0721bc098b8a9102fb87c22ad62cb52ece77e7447da2f200993f313273ea0b7c40cd889244407813167bd0d572293f02e0968" | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
opam-version: "2.0" | ||
maintainer: "Frederic Bour <frederic.bour@lakaban.net>" | ||
authors: "Frederic Bour <frederic.bour@lakaban.net>" | ||
homepage: "https://github.com/let-def/stb_image" | ||
bug-reports: "https://github.com/let-def/stb_image" | ||
license: "CC0" | ||
dev-repo: "git+https://github.com/let-def/stb_image.git" | ||
build: [ | ||
[make] | ||
] | ||
install: [make "install"] | ||
depends: [ | ||
"ocaml" {!= "4.01.0"} | ||
"ocamlfind" {build} | ||
"result" | ||
] | ||
synopsis: "OCaml bindings to stb_image, a public domain image loader" | ||
description: """ | ||
Stb_image is an OCaml binding to stb_image from Sean Barrett, [Nothings](http://nothings.org/): | ||
|
||
stb_image.h: public domain C image loading library | ||
|
||
The OCaml binding is released under CC-0 license. It has no dependency beside working OCaml and C compilers (stb_image is self-contained).""" | ||
url { | ||
src: "https://github.com/let-def/stb_image/archive/v0.5.tar.gz" | ||
checksum: [ | ||
"md5=b4382fe112cadd240972f07547138a2d" | ||
"sha512=4d051e0c33d95527c01eab33d6fe07dce4c5f2d7f7e0b136fbfac1a8c092a645efc1d867fbd34403dd1c4797b73647caebf07ecb95f94d317dc8a15e23ddddb5" | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
opam-version: "2.0" | ||
maintainer: "Frederic Bour <frederic.bour@lakaban.net>" | ||
authors: "Frederic Bour <frederic.bour@lakaban.net>" | ||
homepage: "https://github.com/let-def/stb_truetype" | ||
bug-reports: "https://github.com/let-def/stb_truetype" | ||
license: "CC0" | ||
dev-repo: "git+https://github.com/let-def/stb_truetype.git" | ||
build: [make] | ||
install: [make "install"] | ||
remove: ["ocamlfind" "remove" "stb_truetype"] | ||
depends: [ | ||
"ocaml" {>= "4.02"} | ||
"ocamlfind" {build} | ||
] | ||
synopsis: "OCaml bindings to stb_truetype, a public domain font rasterizer" | ||
description: """ | ||
Stb_truetype is an OCaml binding to stb_truetype from Sean Barrett, [Nothings](http://nothings.org/): | ||
|
||
stb_truetype.h: public domain C truetype rasterization library | ||
|
||
The OCaml binding is released under CC-0 license. It has no dependency beside | ||
working OCaml and C compilers (stb_truetype is self-contained).""" | ||
flags: light-uninstall | ||
url { | ||
src: "https://github.com/let-def/stb_truetype/archive/v0.6.tar.gz" | ||
checksum: "md5=60010c06922babb1eca899862a46f90b" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
diff --git a/lib/dune b/lib/dune | ||
index 27194ae..06db428 100644 | ||
--- a/lib/dune | ||
+++ b/lib/dune | ||
@@ -11,8 +11,8 @@ let at_least_4_03 = | ||
| Some j -> String.sub s i (j - i) :: split s (j + 1) | ||
| None -> [String.sub s i (String.length s - i)] | ||
in | ||
- let v = List.map int_of_string (split version 0) in | ||
- v >= [4; 3] | ||
+ let v = split version 0 in | ||
+ v >= ["4"; "3"] | ||
|
||
let () = | ||
Jbuild_plugin.V1.send @@ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
opam-version: "2.0" | ||
synopsis: "Realtime Vector Graphics with OpenGL" | ||
description: | ||
"Lightweight, fast and declarative vector graphics rasterization using OpenGL." | ||
maintainer: "Frédéric Bour <frederic.bour@lakaban.net>" | ||
authors: "Frédéric Bour <frederic.bour@lakaban.net>" | ||
license: "BSD3" | ||
homepage: "https://github.com/let-def/wall" | ||
bug-reports: "https://github.com/let-def/wall" | ||
patches: ["fix-ocaml-beta.patch"] | ||
depends: [ | ||
"ocaml" | ||
"jbuilder" {build} | ||
"gg" | ||
"result" | ||
"stb_image" | ||
"grenier" | ||
"stb_truetype" {>= "0.5"} | ||
"conf-gles2" | ||
] | ||
build: [ | ||
["dune" "subst"] {pinned} | ||
["dune" "build" "-p" name "-j" jobs] | ||
] | ||
dev-repo: "git+https://github.com/let-def/wall.git" | ||
url { | ||
src: "https://github.com/let-def/wall/archive/v0.3.tar.gz" | ||
checksum: [ | ||
"md5=3cd4387ee6c67ad8194a8fb29dc3b63b" | ||
"sha512=0ebc0d7d9d8830bd14463cb6bf7e50c08100b6cc7dd1b295687da7182c5b1c406a502a5f419149e37b1ebc1674fe1c986683579368e971cc8905096ddaeda1d8" | ||
] | ||
} |
Oops, something went wrong.