summaryrefslogtreecommitdiff
path: root/dune-project
blob: d7f019b31bb55864e74d6036d4cf98ff31fffabf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
(lang dune 1.10)
(name biniou)

(generate_opam_files true)
(license "BSD-3-Clause")
(maintainers "martin@mjambon.com")
(authors "Martin Jambon")
(implicit_transitive_deps false)
(source (github mjambon/biniou))
(documentation "https://mjambon.github.io/biniou/")

(package
 (name biniou)
 (synopsis
   "Binary data format designed for speed, safety, ease of use and backward compatibility as protocols evolve")
 (description "
Biniou (pronounced \"be new\") is a binary data format designed for speed, safety,
ease of use and backward compatibility as protocols evolve. Biniou is vastly
equivalent to JSON in terms of functionality but allows implementations several
times faster (4 times faster than yojson), with 25-35% space savings.

Biniou data can be decoded into human-readable form without knowledge of type
definitions except for field and variant names which are represented by 31-bit
hashes. A program named bdump is provided for routine visualization of biniou
data files.

The program atdgen is used to derive OCaml-Biniou serializers and deserializers
from type definitions.

Biniou format specification: mjambon.github.io/atdgen-doc/biniou-format.txt")
 (depends
  easy-format
  camlp-streams
  (dune (>= 1.10))
  (ocaml (>= "4.02.3"))))