-
Notifications
You must be signed in to change notification settings - Fork 52
/
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é <[email protected]>"
"Martin Jambon <[email protected]>"
"Rudi Grinberg <[email protected]>"
)
(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 <[email protected]>"
"Rudi Grinberg <[email protected]>"
"Martin Jambon <[email protected]>"
"Martin Jambon <[email protected]>"
"Ivan Jager <[email protected]>"
"oleksiy <[email protected]>"
"David Sheets <[email protected]>"
"Rudi Grinberg <[email protected]>"
"Martin Jambon <[email protected]>"
"Jeff Meister <[email protected]>"
"Caio Wakamatsu <[email protected]>"
"Carmelo Piccione <[email protected]>"
"Daniel Weil <[email protected]>"
"Egor Chemokhonenko <[email protected]>"
"Gabriel Scherer <[email protected]>"
"Raman Varabets <[email protected]>"
"tzm <[email protected]>"
"Mathieu Baudet <[email protected]>"
"Oleksiy Golovko <[email protected]>"
"Rauan Mayemir <[email protected]>"
"Carmelo Piccione <[email protected]>"
"John Billings <[email protected]>"
"Louis Roché <[email protected]>"
"Brendan Long <[email protected]>"
"Chris Yocum <[email protected]>"
"Louis Roché (Ahrefs) <[email protected]>"
"Louis Roché <[email protected]>"
"Pavel Antoshkin <[email protected]>"
"Pierre Boutillier <[email protected]>"
"Shon Feder <[email protected]>"
"Anurag Soni <[email protected]>"
"Arjun Ravi Narayan <[email protected]>"
"Asya-kawai <[email protected]>"
"Christophe Troestler <[email protected]>"
"Damien Doligez <[email protected]>"
"Daniel M <[email protected]>"
"Ding Xiang Fei <[email protected]>"
"François Pottier <[email protected]>"
"Javier Chavarri <[email protected]>"
"Kate <[email protected]>"
"Louis <[email protected]>"
"Louis Roché <[email protected]>"
"Raman Varabets <[email protected]>"
"Stephane Legrand <[email protected]>"
"Vincent Bernardoff <[email protected]>"
"haoyang <[email protected]>"
"pmundkur <[email protected]>"
"ygrek <[email protected]>"
)
(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)))