{"count":51976,"next":"https://ports.macports.org/api/v1/ports/?format=json&ordering=-name&page=892","previous":"https://ports.macports.org/api/v1/ports/?format=json&ordering=-name&page=890","results":[{"name":"ocaml-process","portdir":"ocaml/ocaml-process","version":"0.2.1","license":"ISC","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/dsheets/ocaml-process","description":"Easy process control library for OCaml","long_description":"A process control library for OCaml that makes it easy to use external commands like functions.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-ocamlbuild","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib"]}],"depends_on":[{"type":"build","ports":["everparse"]},{"type":"lib","ports":["fstar","karamel"]}]},{"name":"ocaml-ppx_variants_conv","portdir":"ocaml/ocaml-ppx_variants_conv","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_variants_conv","description":"Generation of accessor and iteration functions for OCaml variant types","long_description":"Generation of accessor and iteration functions for OCaml variant types","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-variantslib","ocaml-ppxlib","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-bin_prot","ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_typerep_conv","portdir":"ocaml/ocaml-ppx_typerep_conv","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_typerep_conv","description":"Automatic generation of runtime types from type definitions","long_description":"Automatic generation of runtime types from type definitions","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-typerep","ocaml-ppxlib","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_tydi","portdir":"ocaml/ocaml-ppx_tydi","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_tydi","description":"Let expressions, inferring pattern type from expression","long_description":"Let expressions, inferring pattern type from expression","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_tools_versioned","portdir":"ocaml/ocaml-ppx_tools_versioned","version":"5.2.3","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/ocaml-ppx/ppx_tools_versioned","description":"A variant of ppx_tools based on ocaml-migrate-parsetree.","long_description":"A variant of ppx_tools based on ocaml-migrate-parsetree, providing tools for authors of OCaml syntactic tools.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib","ocaml-migrate-parsetree"]}],"depends_on":[]},{"name":"ocaml-ppx_tools","portdir":"ocaml/ocaml-ppx_tools","version":"6.6","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/ocaml-ppx/ppx_tools","description":"Tools for authors of OCaml syntactic tools","long_description":"Tools for authors of OCaml syntactic tools, including OCaml PPX rewriters.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-cppo","ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib"]}],"depends_on":[]},{"name":"ocaml-ppx_string","portdir":"ocaml/ocaml-ppx_string","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_string","description":"Extension providing a syntax for string interpolation","long_description":"Extension providing a syntax for string interpolation","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-ppx_base","ocaml-ppxlib","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_stable_witness","portdir":"ocaml/ocaml-ppx_stable_witness","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_stable_witness","description":"ppx extension for deriving a witness that a type is intended to be stable","long_description":"ppx extension for deriving a witness that a type is intended to be stable","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-bin_prot","ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_stable","portdir":"ocaml/ocaml-ppx_stable","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_stable","description":"Stable types conversions generator","long_description":"ppx extension for easier implementation of conversion functions between almost identical types","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_sexp_value","portdir":"ocaml/ocaml-ppx_sexp_value","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_sexp_value","description":"ppx rewriter that simplifies building s-expressions from OCaml values","long_description":"ppx rewriter that simplifies building s-expressions from OCaml values","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml-ppxlib","ocaml","ocaml-ppx_sexp_conv","ocaml-ppx_here","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-base_quickcheck","ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_sexp_message","portdir":"ocaml/ocaml-ppx_sexp_message","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_sexp_message","description":"ppx rewriter for easy construction of s-expressions","long_description":"ppx rewriter for easy construction of s-expressions","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml-ppxlib","ocaml","ocaml-ppx_sexp_conv","ocaml-ppx_here","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-base_quickcheck","ocaml-core","ocaml-ppx_jane","ocaml-ppx_log","ocaml-splittable_random"]}]},{"name":"ocaml-ppx_sexp_conv","portdir":"ocaml/ocaml-ppx_sexp_conv","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_sexp_conv","description":"ppx syntax extension that generates code for converting OCaml types to and from s-expressions","long_description":"ppx syntax extension that generates code for converting OCaml types to and from s-expressions","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-ppxlib","ocaml-sexplib0","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-bin_prot","ocaml-core","ocaml-ppx_assert","ocaml-ppx_base","ocaml-ppx_custom_printf","ocaml-ppx_hash","ocaml-ppx_log","ocaml-ppx_sexp_message","ocaml-ppx_sexp_value"]}]},{"name":"ocaml-ppx_pipebang","portdir":"ocaml/ocaml-ppx_pipebang","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_pipebang","description":"ppx rewriter that inlines reverse application operators |> and |!","long_description":"ppx rewriter that inlines reverse application operators |> and |!","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_optional","portdir":"ocaml/ocaml-ppx_optional","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_optional","description":"ppx rewriter that rewrites simple match statements with an if-then-else expression","long_description":"ppx rewriter that rewrites simple match statements with an if-then-else expression","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_optcomp","portdir":"ocaml/ocaml-ppx_optcomp","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_optcomp","description":"Optional compilation for OCaml","long_description":"Optional compilation for OCaml","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-ppxlib","ocaml-stdio","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-bin_prot","ocaml-core","ocaml-core_kernel","ocaml-core_unix","ocaml-time_now"]}]},{"name":"ocaml-ppx_module_timer","portdir":"ocaml/ocaml-ppx_module_timer","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_module_timer","description":"Extension to record module start-up times","long_description":"Extension to record module start-up times","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml-stdio","ocaml","ocaml-ppx_base","ocaml-time_now","ocaml-ppxlib","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_log","portdir":"ocaml/ocaml-ppx_log","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_log","description":"ppx rewriter that defines extension nodes for logging","long_description":"ppx rewriter that defines extension nodes for logging","active":true,"categories":["ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml-ppxlib","ocaml-ppx_here","ocaml","ocaml-ppx_sexp_message","ocaml-sexplib","ocaml-ppx_sexp_conv","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-async","ocaml-ppx_jane"]}]},{"name":"ocaml-ppxlib","portdir":"ocaml/ocaml-ppxlib","version":"0.35.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/ocaml-ppx/ppxlib","description":"Standard library for ppx rewriters","long_description":"Ppxlib is the standard library for ppx rewriters and other programs that manipulate the in-memory reprensation of the OCaml parsetree.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-ppx_derivers","ocaml-sexplib0","ocaml","ocaml-stdlib-shims","ocaml-compiler-libs","ocaml-findlib"]}],"depends_on":[{"type":"lib","ports":["fstar","ocaml-bisect_ppx","ocaml-js_of_ocaml","ocaml-js_of_ocaml-compiler","ocaml-ppx_blob","ocaml-base_quickcheck","ocaml-lwt_ppx","ocaml-ppx_assert","ocaml-ppx_base","ocaml-ppx_bench","ocaml-ppx_bin_prot","ocaml-ppx_cold","ocaml-ppx_compare","ocaml-ppx_custom_printf","ocaml-ppx_deriving","ocaml-ppx_deriving_yojson","ocaml-ppx_disable_unused_warnings","ocaml-ppx_enumerate","ocaml-ppx_expect","ocaml-ppx_fields_conv","ocaml-ppx_fixed_literal","ocaml-ppx_globalize","ocaml-ppx_hash","ocaml-ppx_here","ocaml-ppx_ignore_instrumentation","ocaml-ppx_import","ocaml-ppx_inline_test","ocaml-ppx_jane","ocaml-ppx_let","ocaml-ppx_log","ocaml-ppx_module_timer","ocaml-ppx_optcomp","ocaml-ppx_optional","ocaml-ppx_pipebang","ocaml-ppx_sexp_conv","ocaml-ppx_sexp_message","ocaml-ppx_sexp_value","ocaml-ppx_stable","ocaml-ppx_stable_witness","ocaml-ppx_string","ocaml-ppx_tydi","ocaml-ppx_typerep_conv","ocaml-ppx_variants_conv","ocaml-sedlex","ocaml-visitors"]}]},{"name":"ocaml-ppx_let","portdir":"ocaml/ocaml-ppx_let","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_let","description":"ppx rewriter for monadic and applicative let bindings, match expressions and if expressions","long_description":"ppx rewriter for monadic and applicative let bindings, match expressions and if expressions","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-ppx_here","ocaml-ppxlib","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-base_quickcheck","ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_jane","portdir":"ocaml/ocaml-ppx_jane","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_jane","description":"ppx_driver including all standard ppx rewriters","long_description":"ppx_driver including all standard ppx rewriters","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-ppxlib","ocaml-ppx_assert","ocaml-ppx_custom_printf","ocaml-ppx_fixed_literal","ocaml-ppx_here","ocaml-ppx_ignore_instrumentation","ocaml-ppx_let","ocaml-ppx_optional","ocaml-ppx_pipebang","ocaml-ppx_sexp_message","ocaml-ppx_sexp_value","ocaml-ppx_stable","ocaml-ppx_stable_witness","ocaml","ocaml-ppx_bench","ocaml-ppx_bin_prot","ocaml-ppx_disable_unused_warnings","ocaml-ppx_fields_conv","ocaml-ppx_inline_test","ocaml-ppx_log","ocaml-ppx_module_timer","ocaml-ppx_string","ocaml-ppx_typerep_conv","ocaml-ppx_variants_conv","ocaml-base_quickcheck","ocaml-ppx_expect","ocaml-ppx_tydi","ocaml-ppx_base","ocaml-findlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-async","ocaml-shell","ocaml-textutils","ocaml-textutils_kernel","ocaml-async_kernel","ocaml-async_rpc_kernel","ocaml-async_unix","ocaml-base_bigstring","ocaml-core","ocaml-core_extended","ocaml-core_kernel","ocaml-core_unix","ocaml-expect_test_helpers_core","ocaml-expect_test_helpers_kernel","ocaml-int_repr","ocaml-patdiff","ocaml-patience_diff","ocaml-protocol_version_header","ocaml-record_builder","ocaml-timezone"]}]},{"name":"ocaml-ppx_inline_test","portdir":"ocaml/ocaml-ppx_inline_test","version":"0.16.1","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_inline_test","description":"Syntax extension for writing in-line tests in OCaml code","long_description":"Syntax extension for writing in-line tests in OCaml code","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-time_now","ocaml-ppxlib","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-core","ocaml-ppx_bench","ocaml-ppx_expect","ocaml-ppx_jane","ocaml-splittable_random"]},{"type":"test","ports":["ocaml-sqlite3"]}]},{"name":"ocaml-ppx_import","portdir":"ocaml/ocaml-ppx_import","version":"1.12.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/ocaml-ppx/ppx_import","description":"A syntax extension for importing declarations from interface files","long_description":"A syntax extension for importing declarations from interface files","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"pguyot","github":"pguyot","ports_count":176}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["geneweb"]}]},{"name":"ocaml-ppx_ignore_instrumentation","portdir":"ocaml/ocaml-ppx_ignore_instrumentation","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_ignore_instrumentation","description":"Ignore Jane Street specific instrumentation extensions","long_description":"Ignore Jane Street specific instrumentation extensions","active":true,"categories":["ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_here","portdir":"ocaml/ocaml-ppx_here","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_here","description":"ppx rewriter that defines an extension node whose value is its source position","long_description":"ppx rewriter that defines an extension node whose value is its source position","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_assert","ocaml-ppx_bin_prot","ocaml-ppx_expect","ocaml-ppx_jane","ocaml-ppx_let","ocaml-ppx_log","ocaml-ppx_sexp_message","ocaml-ppx_sexp_value"]}]},{"name":"ocaml-ppx_hash","portdir":"ocaml/ocaml-ppx_hash","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_hash","description":"ppx writer that generates hash functions from type expressions and definitions","long_description":"ppx writer that generates hash functions from type expressions and definitions","active":true,"categories":["ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml-ppxlib","ocaml","ocaml-ppx_sexp_conv","ocaml-ppx_compare","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-core","ocaml-ppx_base"]}]},{"name":"ocaml-ppx_globalize","portdir":"ocaml/ocaml-ppx_globalize","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_globalize","description":"ppx rewriter that generates functions to copy local values to the global heap","long_description":"ppx rewriter that generates functions to copy local values to the global heap","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_base"]}]},{"name":"ocaml-ppx_fixed_literal","portdir":"ocaml/ocaml-ppx_fixed_literal","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_fixed_literal","description":"Simpler notation for fixed point literals","long_description":"Simpler notation for fixed point literals","active":true,"categories":["ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppxfind","portdir":"ocaml/ocaml-ppxfind","version":"1.3","license":"BSD","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/diml/ppxfind","description":"Apply OCaml PPX rewriters from the command line","long_description":"A command line tool that supports applying PPX rewriters.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib","ocaml-migrate-parsetree"]}],"depends_on":[]},{"name":"ocaml-ppx_fields_conv","portdir":"ocaml/ocaml-ppx_fields_conv","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_fields_conv","description":"Generation of accessor and iteration functions for OCaml records","long_description":"Generation of accessor and iteration functions for OCaml records","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-fieldslib","ocaml-ppxlib","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-base_quickcheck","ocaml-bin_prot","ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_expect","portdir":"ocaml/ocaml-ppx_expect","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_expect","description":"Expect-test is a framework for writing tests in OCaml, similar to Cram","long_description":"Expect-test is a framework for writing tests in OCaml, similar to Cram","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml-stdio","ocaml-ppxlib","ocaml","ocaml-ppx_here","ocaml-ppx_inline_test","ocaml-re","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]},{"type":"test","ports":["ocaml-spawn"]}]},{"name":"ocaml-ppx_enumerate","portdir":"ocaml/ocaml-ppx_enumerate","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_enumerate","description":"Generate a list containing all values of a finite type","long_description":"Generate a list containing all values of a finite type","active":true,"categories":["ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_base"]}]},{"name":"ocaml-ppx_disable_unused_warnings","portdir":"ocaml/ocaml-ppx_disable_unused_warnings","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_disable_unused_warnings","description":"Extension that disables many OCaml compiler warnings","long_description":"Extension that disables many OCaml compiler warnings","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_deriving_yojson","portdir":"ocaml/ocaml-ppx_deriving_yojson","version":"3.7.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/whitequark/ppx_deriving_yojson","description":"OCaml ppx_deriving plugin for Yojson","long_description":"An OCaml ppx_deriving plugin that generates JSON serializers and deserializers using the Yjoson library.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-ppx_deriving","ocaml-result","ocaml","ocaml-ppxlib","ocaml-yojson","ocaml-findlib"]}],"depends_on":[{"type":"build","ports":["everparse"]},{"type":"lib","ports":["fstar","karamel"]}]},{"name":"ocaml-ppx_deriving","portdir":"ocaml/ocaml-ppx_deriving","version":"6.0.2","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/ocaml-ppx/ppx_deriving","description":"Type-driven code generation for OCaml","long_description":"Common infrastructure for generating OCaml code based on type definitions, and a set of useful plugins for common tasks.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-cppo","ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-ppxlib","ocaml-findlib","ocaml-ppx_derivers"]}],"depends_on":[{"type":"build","ports":["ocaml-jingoo"]},{"type":"lib","ports":["fstar","karamel","geneweb","ocaml-ppx_deriving_yojson","ocaml-visitors","stanc3"]}]},{"name":"ocaml-ppx_derivers","portdir":"ocaml/ocaml-ppx_derivers","version":"1.2.1","license":"BSD","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/ocaml-ppx/ppx_derivers","description":"Allow OCaml ppx_deriving and ppx_type_conv to interoperate","long_description":"Allow OCaml ppx_deriving and ppx_type_conv to interoperate when linked as part of the same ocaml-migrate-parsetree driver.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-migrate-parsetree","ocaml-ppx_deriving","ocaml-ppxlib"]}]},{"name":"ocaml-ppx_custom_printf","portdir":"ocaml/ocaml-ppx_custom_printf","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_custom_printf","description":"Extensions to printf-style format-strings for user-defined string conversion","long_description":"Extensions to printf-style format-strings for user-defined string conversion","active":true,"categories":["ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-ppx_sexp_conv","ocaml-ppxlib","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-bin_prot","ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_compare","portdir":"ocaml/ocaml-ppx_compare","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_compare","description":"Generation of fast comparison and equality functions from type expressions and definitions","long_description":"Generation of fast comparison and equality functions from type expressions and definitions","active":true,"categories":["ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-bin_prot","ocaml-ppx_assert","ocaml-ppx_base","ocaml-ppx_hash"]}]},{"name":"ocaml-ppx_cold","portdir":"ocaml/ocaml-ppx_cold","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_cold","description":"Expands cold attribute","long_description":"Expands cold attribute","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-base","ocaml-findlib","ocaml-ppxlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_assert","ocaml-ppx_base"]}]},{"name":"ocaml-ppx_blob","portdir":"ocaml/ocaml-ppx_blob","version":"0.9.0","license":"Unlicense","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/johnwhitington/ppx_blob","description":"Include a file as a string at compile time","long_description":"ppx_blob allows you to include a binary blob from a file as  a string. Writing [%blob \"filename\"] will replace the string  with the contents of the file at compile time. This allows  the inclusion of arbitary, possibly compressed, data,  without the need to respect OCaml's lexical conventions.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"pguyot","github":"pguyot","ports_count":176}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib","ocaml-ppxlib","ocaml-alcotest"]}],"depends_on":[{"type":"lib","ports":["geneweb"]}]},{"name":"ocaml-ppx_bin_prot","portdir":"ocaml/ocaml-ppx_bin_prot","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_bin_prot","description":"Generation of binary serialization and deserialization functions from type definitions","long_description":"Generation of binary serialization and deserialization functions from type definitions","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml-ppxlib","ocaml","ocaml-bin_prot","ocaml-ppx_here","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane"]}]},{"name":"ocaml-ppx_bench","portdir":"ocaml/ocaml-ppx_bench","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_bench","description":"Syntax extension for writing in-line benchmarks in OCaml code","long_description":"Syntax extension for writing in-line benchmarks in OCaml code","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib","ocaml-ppxlib","ocaml-ppx_inline_test"]}],"depends_on":[{"type":"lib","ports":["ocaml-ppx_jane","ocaml-splittable_random"]}]},{"name":"ocaml-ppx_base","portdir":"ocaml/ocaml-ppx_base","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_base","description":"Base set of ppx rewriters","long_description":"Base set of ppx rewriters","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-ppxlib","ocaml-ppx_cold","ocaml-ppx_compare","ocaml","ocaml-ppx_sexp_conv","ocaml-ppx_enumerate","ocaml-ppx_globalize","ocaml-ppx_hash","ocaml-findlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-base_quickcheck","ocaml-core","ocaml-ppx_jane","ocaml-ppx_module_timer","ocaml-ppx_string","ocaml-sexp_pretty","ocaml-time_now"]}]},{"name":"ocaml-ppx_assert","portdir":"ocaml/ocaml-ppx_assert","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/ppx_assert","description":"Extension nodes to compare value and raise useful errors if they differ","long_description":"Extension nodes to compare value and raise useful errors if they differ","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml-ppxlib","ocaml-ppx_cold","ocaml","ocaml-ppx_here","ocaml-ppx_sexp_conv","ocaml-ppx_compare","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-core","ocaml-jst-config","ocaml-ppx_jane","ocaml-splittable_random"]}]},{"name":"ocaml-pprint","portdir":"ocaml/ocaml-pprint","version":"20230830","license":"LGPL-2","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/fpottier/pprint","description":"Pretty-printing library for OCaml","long_description":"A pretty-printing combinator library and rendering engine for OCaml.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"landonf","github":"landonf","ports_count":84}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib"]}],"depends_on":[{"type":"lib","ports":["fstar","karamel"]}]},{"name":"ocaml-pp_loc","portdir":"ocaml/ocaml-pp_loc","version":"2.1.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/Armael/pp_loc","description":"Quote and highlight input fragments at a given source location","long_description":"Decent error reporting (for example, in a parser, a compiler, ...) typically involves collecting locations, in order to indicate to the user the position of an error in the source file. This library provides functions to format such locations.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"pguyot","github":"pguyot","ports_count":176}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib"]}],"depends_on":[{"type":"lib","ports":["geneweb"]}]},{"name":"ocaml-pcre2","portdir":"ocaml/ocaml-pcre2","version":"8.0.4","license":"LGPL-2.1","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/camlp5/pcre2-ocaml","description":"Bindings to the Perl Compatibility Regular Expressions library (version 2)","long_description":"pcre2-ocaml offers library functions for string pattern matching and substitution, similar to the functionality offered by the Perl language.","active":true,"categories":["devel","ocaml"],"maintainers":[{"name":"pguyot","github":"pguyot","ports_count":176}],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","ocaml-dune-configurator","clang-18"]},{"type":"lib","ports":["pcre2","ocaml","ocaml-findlib"]}],"depends_on":[]},{"name":"ocaml-pcre","portdir":"ocaml/ocaml-pcre","version":"7.5.0","license":"LGPL-2.1","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://mmottl.github.io/pcre-ocaml/","description":"Perl compatibility regular expressions for OCaml","long_description":"This OCaml-library interfaces the PCRE (Perl-compatibility regular expressions) library which is written in C. it can be used for matching regular expressions which are written in PERL-style. Searching for, replacing or splitting text should become much easier with this library.","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","ocaml-dune-configurator","clang-18"]},{"type":"lib","ports":["pcre","ocaml","ocaml-findlib"]}],"depends_on":[{"type":"lib","ports":["ocaml-ocamlnet","ocaml-patdiff","stog"]}]},{"name":"ocaml-patience_diff","portdir":"ocaml/ocaml-patience_diff","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/patience_diff","description":"Tool and library implementing patience diff","long_description":"Diff library using Bram Cohenʼs patience diff algorithm.","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-findlib","ocaml","ocaml-ppx_jane","ocaml-core","ocaml-base"]}],"depends_on":[{"type":"lib","ports":["ocaml-patdiff"]}]},{"name":"ocaml-patdiff","portdir":"ocaml/ocaml-patdiff","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/patdiff","description":"Colored patience diffs with word-level refinement","long_description":"Patdiff is an OCaml implementation of Bram Cohenʼs patience diff algorithm, with a few extra conveniences for comparing code and config files.","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml-pcre","ocaml-re","ocaml-core","ocaml-core_kernel","ocaml","ocaml-expect_test_helpers_core","ocaml-patience_diff","ocaml-ppx_jane","ocaml-core_unix","ocaml-findlib"]}],"depends_on":[{"type":"test","ports":["stanc3"]}]},{"name":"ocaml-parsexp","portdir":"ocaml/ocaml-parsexp","version":"0.16.0","license":"MIT","platforms":"darwin","epoch":0,"replaced_by":null,"homepage":"https://github.com/janestreet/parsexp","description":"S-expression parser","long_description":"S-expression parser","active":true,"categories":["devel","ocaml"],"maintainers":[],"variants":[],"dependencies":[{"type":"build","ports":["ocaml-dune","clang-18"]},{"type":"lib","ports":["ocaml","ocaml-findlib","ocaml-sexplib0"]}],"depends_on":[{"type":"lib","ports":["ocaml-sexplib"]}]}]}