ocamlPackages.jsont: init at 0.1.1

This commit is contained in:
·𐑑𐑴𐑕𐑑𐑩𐑤 2025-07-06 23:57:14 +07:00 committed by Vincent Laporte
parent 43c98b9e4b
commit 90d1463182
2 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,54 @@
{
lib,
fetchzip,
buildTopkgPackage,
brr,
bytesrw,
cmdliner,
}:
buildTopkgPackage rec {
pname = "jsont";
version = "0.1.1";
minimalOCamlVersion = "4.14.0";
src = fetchzip {
url = "https://erratique.ch/software/jsont/releases/jsont-${version}.tbz";
hash = "sha256-bLbTfRVz/Jzuy2LnQeTEHQGojfA34M+Xj7LODpBAVK4=";
};
# docs say these dependendencies are optional, but buildTopkgPackage doesnt
# handle missing dependencies
buildInputs = [
cmdliner
];
propagatedBuildInputs = [
brr
bytesrw
];
meta = {
description = "declarative JSON data manipulation";
longDescription = ''
Jsont is an OCaml library for declarative JSON data manipulation. it
provides:
Combinators for describing JSON data using the OCaml values of your
choice. The descriptions can be used by generic functions to decode,
encode, query and update JSON data without having to construct a
generic JSON representation
A JSON codec with optional text location tracking and best-effort
layout preservation. The codec is compatible with effect-based
concurrency.
The descriptions are independent from the codec and can be used by
third-party processors or codecs.
'';
homepage = "https://erratique.ch/software/jsont";
license = lib.licenses.isc;
maintainers = with lib.maintainers; [ toastal ];
};
}

View File

@ -952,6 +952,8 @@ let
jsonm = callPackage ../development/ocaml-modules/jsonm { }; jsonm = callPackage ../development/ocaml-modules/jsonm { };
jsont = callPackage ../development/ocaml-modules/jsont { };
jsonrpc = callPackage ../development/ocaml-modules/ocaml-lsp/jsonrpc.nix { }; jsonrpc = callPackage ../development/ocaml-modules/ocaml-lsp/jsonrpc.nix { };
junit = callPackage ../development/ocaml-modules/junit { }; junit = callPackage ../development/ocaml-modules/junit { };