-
Notifications
You must be signed in to change notification settings - Fork 53
/
dune-project
223 lines (203 loc) · 6.52 KB
/
dune-project
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
(lang dune 2.8)
(using menhir 2.0)
(implicit_transitive_deps false)
(cram enable)
(name atd)
(license MIT)
(maintainers
"Louis Roché <louis@louisroche.net>"
"Martin Jambon <martin@mjambon.com>"
"Rudi Grinberg <me@rgrinberg.com>"
)
(authors
; All authors according to git log, sorted by decreasing number of commits.
; Re-generate with:
; git shortlog -s -e -n --all | cut -f2 | sed -e 's/^\(.*\)$/ "\1"/'
"Martin Jambon <martin@mjambon.com>"
"Rudi Grinberg <rudi.grinberg@gmail.com>"
"Martin Jambon <martin@r2c.dev>"
"Martin Jambon <github@mjambon.com>"
"Ivan Jager <aij+git@mrph.org>"
"oleksiy <oleksiy.golovko@ahrefs.com>"
"David Sheets <sheets@alum.mit.edu>"
"Rudi Grinberg <me@rgrinberg.com>"
"Martin Jambon <martin@esper.com>"
"Jeff Meister <nanaki@gmail.com>"
"Caio Wakamatsu <caio.wakamatsu@ahrefs.com>"
"Carmelo Piccione <carmelo.piccione@gmail.com>"
"Daniel Weil <danweil68@gmail.com>"
"Egor Chemokhonenko <egor.chemohonenko@ahrefs.com>"
"Gabriel Scherer <gabriel.scherer@gmail.com>"
"Raman Varabets <roman.vorobets@gmail.com>"
"tzm <frank@boldsolutions.de>"
"Mathieu Baudet <mathieubaudet@fb.com>"
"Oleksiy Golovko <alexei.golovko@gmail.com>"
"Rauan Mayemir <rauan@mayemir.io>"
"Carmelo Piccione <cep1@solvuu.com>"
"John Billings <john@monkeynut.org>"
"Louis Roché <louis@louisroche.net>"
"Brendan Long <self@brendanlong.com>"
"Chris Yocum <cyocum@gmail.com>"
"Louis Roché (Ahrefs) <louis.roche@ahrefs.com>"
"Louis Roché <louis.roche@ahrefs.com>"
"Pavel Antoshkin <pavel.antoshkin@ahrefs.com>"
"Pierre Boutillier <pierre.boutillier@laposte.net>"
"Shon Feder <shon.feder@key.me>"
"Anurag Soni <anuragsoni.13@gmail.com>"
"Arjun Ravi Narayan <arjunravinarayan@gmail.com>"
"Asya-kawai <kawai-toshiki@aintek.xyz>"
"Christophe Troestler <christophe.Troestler@umons.ac.be>"
"Damien Doligez <ddoligez@janestreet.com>"
"Daniel M <dan.mntg@gmail.com>"
"Ding Xiang Fei <dingxiangfei2009@protonmail.ch>"
"François Pottier <francois.pottier@inria.fr>"
"Javier Chavarri <javier.chavarri@gmail.com>"
"Kate <kit.ty.kate@disroot.org>"
"Louis <louis.roche@ahrefs.com>"
"Louis Roché <louis@cryptosense.com>"
"Raman Varabets <raman+git@ahrefs.com>"
"Stephane Legrand <slegrand45@gmail.com>"
"Vincent Bernardoff <vb@luminar.eu.org>"
"haoyang <haoyang@esper.co>"
"pmundkur <prashanth.mundkur@gmail.com>"
"ygrek <ygrek@autistici.org>"
)
(source (github ahrefs/atd))
(generate_opam_files true)
(package
(name atd)
(depends
(ocaml (>= 4.08))
; 20211230 has a bug when parsing variants with a payload https://github.com/ahrefs/atd/pull/272
; preserve the ability to compile with older versions because recent ones create slow builds
; https://github.com/returntocorp/pfff/issues/512
(menhir (and (>= 20180523) (<> 20211230)))
easy-format
(alcotest :with-test)
(odoc :with-doc)
(re (>= 1.9.0))
(yojson (>= 1.6.0))
(cmdliner (>= 1.1.0))
)
(synopsis "Parser for the ATD data format description language")
(description "\
ATD is the OCaml library providing a parser for the ATD language and various
utilities. ATD stands for Adjustable Type Definitions in reference to its main
property of supporting annotations that allow a good fit with a variety of data
formats. This package also provides the 'atdcat' and 'atddiff' command-line
utilities."))
(package
(name atdgen)
(depends
(ocaml (>= 4.08))
(alcotest :with-test)
(atd (>= 2.14.0))
(atdgen-runtime (>= 2.1.0))
(atdgen-codec-runtime :with-test)
(biniou (>= 1.0.6))
(yojson (>= 2.0.1))
(odoc :with-doc)
re
)
(synopsis "Generates efficient JSON serializers, deserializers and validators")
(description "\
Atdgen is a command-line program that takes as input type definitions in the ATD
syntax and produces OCaml code suitable for data serialization and
deserialization.
Two data formats are currently supported, these are biniou and JSON.
Atdgen-biniou and Atdgen-json will refer to Atdgen used in one context or the
other.
Atdgen was designed with efficiency and durability in mind. Software authors are
encouraged to use Atdgen directly and to write tools that may reuse part of
Atdgen’s source code."))
(package
(name atdgen-runtime)
(synopsis "Runtime library for code generated by atdgen")
(description "\
This package should be used only in conjunction with the atdgen code
generator")
(depends
(ocaml (>= 4.08))
(yojson (>= 2.0.2))
(biniou (>= 1.0.6))
(odoc :with-doc)))
(package
(name atdj)
(synopsis "Java code generation for ATD")
(description "\
Atdj is a program that generates a Java interface from type definitions. In
particular, given a set of ATD type definitions, this tool generates a set of
Java classes representing those types with built-in JSON serializers and
deserializers
The primary benefits of using the generated interface, over manually
manipulating JSON strings from within Java, are safety and ease of use.
Specifically, the generated interface offers the following features:
- JSON strings are automatically checked for correctness with respect to the ATD
specification.
- Details such as optional fields and their associated default values are
automatically handled")
(depends
(ocaml (>= 4.08))
(atd (>= 2.7.0))
re
(odoc :with-doc)))
(package
(name atds)
(synopsis "ATD Code generator for Scala")
(description "ATD Code generator for Scala")
(depends
(ocaml (>= 4.08))
(atd (>= 2.7.0))
(odoc :with-doc)))
(package
(name atdpy)
(synopsis "Python/mypy code generation for ATD APIs")
(description "Python/mypy code generation for ATD APIs")
(depends
(ocaml (>= 4.08))
(atd (>= 2.11.0))
(cmdliner (>= 1.1.0))
re
(alcotest :with-test)
(conf-python-3 :with-test)
(odoc :with-doc)))
(package
(name atdgen-codec-runtime)
(synopsis "Runtime for atdgen generated Melange converters")
(description "\
This library contains the types that are used by atdgen's
Melange backend")
(depends
(ocaml (>= 4.08))
(odoc :with-doc)))
(package
(name atdts)
(synopsis "TypeScript code generation for ATD APIs")
(description "TypeScript code generation for ATD APIs")
(depends
(ocaml (>= 4.08))
(atd (>= 2.13.0))
(cmdliner (>= 1.1.0))
re
(alcotest :with-test)
(odoc :with-doc)))
(package
(name atdd)
(synopsis "DLang code generation for ATD APIs")
(description "DLang code generation for ATD APIs")
(depends
(ocaml (>= 4.08))
(atd (>= 2.11.0))
(cmdliner (>= 1.1.0))
re
(odoc :with-doc)))
(package
(name atdcpp)
(synopsis "C++ code generation for ATD APIs")
(description "C++ code generation for ATD APIs")
(depends
(ocaml (>= 4.08))
(atd (>= 2.11.0))
(cmdliner (>= 1.1.0))
re
(odoc :with-doc)))