From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id kEFTCKgs7l/+ZAAA0tVLHw (envelope-from ) for ; Thu, 31 Dec 2020 19:55:20 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id OCbuA6gs7l9TbQAAB5/wlQ (envelope-from ) for ; Thu, 31 Dec 2020 19:55:20 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id D11EC9403C9 for ; Thu, 31 Dec 2020 19:55:18 +0000 (UTC) Received: from localhost ([::1]:41750 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kv42X-0001DZ-Q5 for larch@yhetil.org; Thu, 31 Dec 2020 14:55:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:46954) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kv42J-0001BN-1A for guix-patches@gnu.org; Thu, 31 Dec 2020 14:55:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:58272) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kv42I-0003zD-PD for guix-patches@gnu.org; Thu, 31 Dec 2020 14:55:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kv42I-0006lb-Nm for guix-patches@gnu.org; Thu, 31 Dec 2020 14:55:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#45575] gnu: Update ocaml-merlin Resent-From: John Soo Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 31 Dec 2020 19:55:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 45575 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 45575@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.160944448925987 (code B ref -1); Thu, 31 Dec 2020 19:55:02 +0000 Received: (at submit) by debbugs.gnu.org; 31 Dec 2020 19:54:49 +0000 Received: from localhost ([127.0.0.1]:41585 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kv421-0006l2-KC for submit@debbugs.gnu.org; Thu, 31 Dec 2020 14:54:48 -0500 Received: from lists.gnu.org ([209.51.188.17]:34972) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kv41z-0006kt-70 for submit@debbugs.gnu.org; Thu, 31 Dec 2020 14:54:44 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:46874) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kv41y-0000oe-TK for guix-patches@gnu.org; Thu, 31 Dec 2020 14:54:42 -0500 Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]:41931) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kv41t-0003od-QB for guix-patches@gnu.org; Thu, 31 Dec 2020 14:54:42 -0500 Received: by mail-pl1-x631.google.com with SMTP id y8so10374806plp.8 for ; Thu, 31 Dec 2020 11:54:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asu-edu.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:mime-version; bh=bp6L8eWAVRspwJv0xepJJNYKM+ouaXP+ym79rY+gEfc=; b=XgmSXwmJSeh7wDvQXc0tsRcrVtMS+Mk0pRfW7lGnAr+KhuvYKcHqhmuWMKcfQ1+Y8e ERMJibOsMfqvRF9OTYDWZO7kdXSn4pExLprLzKK0dwTO5MWUt16o20o++x2/ArcVG2V7 HFo1ui+Tj/Pes5IF1+E+5W+QRY0u+cojOXrT7BCFqSgxP3yphtCfNxq8hwdq3rfoUlGb SLTLN12hfFgMW2/HPzw4hul+Qj4rnJuJ7rz5PPw2F1UpnGEO2bUKwB/hs7O0+RkKmDoA nAjrY3EAI9kXxeG+ypzDG3Zj9EpghN2r/YuoIbjHjz/3Oj0MYB6MAi/nPcrJDfU7Jel2 LNMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=bp6L8eWAVRspwJv0xepJJNYKM+ouaXP+ym79rY+gEfc=; b=JpbeYYsNh6U0S2L0f59Q4PVc4bP10p+BOf/4mHFcIdn3F5HmdWCL5bRDQiNmJxkFRQ AipyBBIm7s0iuf8ztFHSXbzE/9vP2d6utNXWjofI5meB12WDFUq49/xyTHjway/2Ne/2 Mw6JRh0uGifBqHFraDuIbDDE8uwCsLwqJgPbClOUQC02FUTgVL2m35ra/3/G63HbrMsY Aa96G+ttSGo+SCZC2IUYfqdGK3WsPCD8nkEcuBTswWWByLkkk3taP6r/ECXeB8abhigQ 56gCzekaRE5KjNQgMKvuEVlqpTvzCFl+XGuf1a8F6tYiUB4LkVhEOuevqGTzyhWY3rvw 7obw== X-Gm-Message-State: AOAM530Ejf84nRONS68JeoCjRXKW8yeSGuz2TJd9dae/1OSDnWK11RPz OBFK21/li3g5pGVCzJO1P8fQJm/kD01VKw== X-Google-Smtp-Source: ABdhPJwWcD2zDAGVYp7RwYQXQjWRUsykGyqq2Fr8Z3EILXIV8HU9kvbr1/aBB5myKB0iYYBX2JXvGg== X-Received: by 2002:a17:902:9a86:b029:dc:104:1902 with SMTP id w6-20020a1709029a86b02900dc01041902mr38985947plp.50.1609444475770; Thu, 31 Dec 2020 11:54:35 -0800 (PST) Received: from ecenter ([2600:1700:83b0:8bd0::7a8]) by smtp.gmail.com with ESMTPSA id z13sm11782103pjt.45.2020.12.31.11.54.34 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 31 Dec 2020 11:54:34 -0800 (PST) From: John Soo Date: Thu, 31 Dec 2020 11:54:33 -0800 Message-ID: <87eej54upy.fsf@asu.edu> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=2607:f8b0:4864:20::631; envelope-from=jsoo1@asu.edu; helo=mail-pl1-x631.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -1.23 Authentication-Results: aspmx1.migadu.com; dkim=fail (headers rsa verify failed) header.d=asu-edu.20150623.gappssmtp.com header.s=20150623 header.b=XgmSXwmJ; dmarc=fail reason="SPF not aligned (relaxed)" header.from=asu.edu (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: D11EC9403C9 X-Spam-Score: -1.23 X-Migadu-Scanner: scn1.migadu.com X-TUID: RpZED0LnQMMw --=-=-= Content-Type: text/plain Hi Guix, After working with ocaml a little, I felt the need to have a current merlin. I kept the 4.07 variants of packages but I don't understand why they exist. Thanks! John --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-gnu-Add-ocaml-dot-merlin-reader.patch >From 1ee786693277dc7ec6b5a02a3f438171736399f0 Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 09:25:08 -0800 Subject: [PATCH 1/9] gnu: Add ocaml-dot-merlin-reader. * gnu/packages/ocaml.scm (ocaml-dot-merlin-reader): New variable. --- gnu/packages/ocaml.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index c4900b6214..3c42505d6e 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -1753,6 +1753,34 @@ generation. It supports programs with single or multiple commands and respects most of the POSIX and GNU conventions.") (license license:bsd-3))) +(define-public ocaml-dot-merlin-reader + (package + (name "ocaml-dot-merlin-reader") + (version "3.4.2") + (source + (origin + (method url-fetch) + (uri "https://github.com/ocaml/merlin/releases/download/v3.4.2/merlin-v3.4.2.tbz") + (sha256 + (base32 + "109ai1ggnkrwbzsl1wdalikvs1zx940m6n65jllxj68in6bvidz1")))) + (build-system dune-build-system) + (inputs + `(("ocaml-biniou" ,ocaml-biniou) + ("ocaml-easy-format" ,ocaml-easy-format) + ("ocaml-yojson" ,ocaml-yojson) + ("ocaml-csexp" ,ocaml-csexp) + ("ocaml-result" ,ocaml-result))) + (arguments + `(#:package "dot-merlin-reader" + #:tests? #f ; No tests for dot-merlin-reader + )) + (home-page "https://github.com/ocaml/merlin") + (synopsis "Reads config files for merlin") + (description + "This package provices config file parsing for merlin.") + (license license:expat))) + (define-public ocaml-fmt (package (name "ocaml-fmt") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0002-gnu-Add-ocaml-version.patch >From 7dd63fafcdfb4da6d714aa1b24ca56aa6da74cd4 Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 11:15:17 -0800 Subject: [PATCH 2/9] gnu: Add ocaml-version. * gnu/packages/ocaml.scm (ocaml-version): New variable. --- gnu/packages/ocaml.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 3c42505d6e..601b52648c 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -5933,3 +5933,37 @@ provides support to program with time varying values: declarative events and signals. React doesn't define any primitive event or signal, it lets the client chooses the concrete timeline.") (license license:lgpl2.1+))) + +(define-public ocaml-version + (package + (name "ocaml-version") + (version "3.0.0") + (source + (origin + (method url-fetch) + (uri "https://github.com/ocurrent/ocaml-version/releases/download/v3.0.0/ocaml-version-v3.0.0.tbz") + (sha256 + (base32 + "15vk8sh50p3f2mbv8z7mqnx76cffri36f2krp25zkkwix8jg7ci4")))) + (build-system dune-build-system) + (arguments + `(#:test-target "")) + (properties `((upstream-name . "ocaml-version"))) + (home-page + "https://github.com/ocurrent/ocaml-version") + (synopsis + "Manipulate, parse and generate OCaml compiler version strings") + (description + "This library provides facilities to parse version numbers of the OCaml +compiler, and enumerates the various official OCaml releases and configuration +variants. + +OCaml version numbers are of the form major.minor.patch+extra, where the patch +and extra fields are optional. This library offers the following +functionality: + +- Functions to parse and serialise OCaml compiler version numbers. +- Enumeration of official OCaml compiler version releases. +- Test compiler versions for a particular feature (e.g. the @code{bytes} type) +- Opam @url{https://opam.ocaml.org} compiler switch enumeration.") + (license license:expat))) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0003-gnu-Add-ocaml-sexplib0.patch >From aa809e99776de22f1c959958d5089520e14a76a3 Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 11:36:57 -0800 Subject: [PATCH 3/9] gnu: Add ocaml-sexplib0. * gnu/packages/ocaml.scm (ocaml-sexplib0): New variable. * gnu/packages/ocaml.scm (ocaml4.07-sexplib0): Inherit from ocaml-sexplib0. --- gnu/packages/ocaml.scm | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 601b52648c..d86555906b 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -4119,10 +4119,10 @@ an arbitrary number of processes. Cache coherence protocols and mutual exclusion algorithms are typical examples of such systems.") (license license:asl2.0))) -(define-public ocaml4.07-sexplib0 +(define-public ocaml-sexplib0 (package - (name "ocaml4.07-sexplib0") - (version "0.11.0") + (name "ocaml-sexplib0") + (version "0.14.0") (home-page "https://github.com/janestreet/sexplib0") (source (origin @@ -4133,25 +4133,23 @@ exclusion algorithms are typical examples of such systems.") (file-name (git-file-name name version)) (sha256 (base32 - "07v3ggyss7xhfv14bjk1n87sr42iqwj4cgjiv2lcdfkqk49i2bmi")))) + "06sb3zqhb3dwqsmn15d769hfgqwqhxnm52iqim9l767gvlwpmibb")))) (build-system dune-build-system) (arguments - `(#:tests? #f ;no tests - #:ocaml ,ocaml-4.07 - #:findlib ,ocaml4.07-findlib - #:dune ,ocaml4.07-dune)) + `(#:tests? #f)) (synopsis "Library containing the definition of S-expressions and some base converters") (description "Part of Jane Street's Core library The Core suite of libraries is an industrial strength alternative to OCaml's standard library that was developed by Jane Street, the largest industrial user of OCaml.") -(license license:expat))) + (license license:expat))) -(define-public ocaml4.07-parsexp +(define-public ocaml4.07-sexplib0 (package - (name "ocaml4.07-parsexp") + (inherit ocaml-sexplib0) + (name "ocaml4.07-sexplib0") (version "0.11.0") - (home-page "https://github.com/janestreet/parsexp") + (home-page "https://github.com/janestreet/sexplib0") (source (origin (method git-fetch) @@ -4161,12 +4159,13 @@ that was developed by Jane Street, the largest industrial user of OCaml.") (file-name (git-file-name name version)) (sha256 (base32 - "1nyq23s5igd8cf3n4qxprjvhbmb6ighb3fy5mw7hxl0mdgsw5fvz")))) - (build-system dune-build-system) + "07v3ggyss7xhfv14bjk1n87sr42iqwj4cgjiv2lcdfkqk49i2bmi")))) (arguments - `(#:ocaml ,ocaml-4.07 + `(#:tests? #f ;no tests + #:ocaml ,ocaml-4.07 #:findlib ,ocaml4.07-findlib - #:dune ,ocaml4.07-dune)) + #:dune ,ocaml4.07-dune)))) + (inputs `(("ocaml-sexplib0" ,ocaml4.07-sexplib0))) (synopsis "S-expression parsing library") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0004-gnu-Add-ocaml-mdx.patch >From d9cac4f113ef8536d49b44668f2c2c7dac0fac17 Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 11:43:03 -0800 Subject: [PATCH 4/9] gnu: Add ocaml-mdx. * gnu/packages/ocaml.scm (ocaml-mdx): New variable. --- gnu/packages/ocaml.scm | 43 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index d86555906b..707880dd5d 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -3965,6 +3965,49 @@ Mercurial's @code{https://www.selenic.com/blog/?p=663, unified test format}. @code{craml} is released as a single binary (called @code{craml}).") (license license:isc))) +(define-public ocaml-mdx + (package + (name "ocaml-mdx") + (version "1.7.0") + (source + (origin + (method url-fetch) + (uri "https://github.com/realworldocaml/mdx/releases/download/1.7.0/mdx-1.7.0.tbz") + (sha256 + (base32 + "0vpc30sngl3vpychrfvjwyi93mk311x3f2azlkxasgcj69fq03i7")))) + (build-system dune-build-system) + (inputs + `(("ocaml-fmt" ,ocaml-fmt) + ("ocaml-astring" ,ocaml-astring) + ("ocaml-logs" ,ocaml-logs) + ("ocaml-cmdliner" ,ocaml-cmdliner) + ("ocaml-re" ,ocaml-re) + ("ocaml-result" ,ocaml-result) + ("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree) + ("ocaml-version" ,ocaml-version) + ("ocaml-odoc" ,ocaml-odoc))) + (native-inputs + `(("ocaml-cppo" ,ocaml-cppo) + ("ocaml-lwt" ,ocaml-lwt) + ("ocaml-alcotest" ,ocaml-alcotest))) + (home-page + "https://github.com/realworldocaml/mdx") + (synopsis + "Executable code blocks inside markdown files") + (description + "This package allows execution of code blocks inside markdown files. +There are (currently) two sub-commands, corresponding to two modes of +operations: pre-processing (@command{ocaml-mdx pp}) and +tests (@command{ocaml-mdx test}). + +The pre-processor mode allows to mix documentation and code, and to practice +\"literate programming\" using markdown and OCaml. + +The test mode allows to ensure that shell scripts and OCaml fragments in the +documentation always stays up-to-date.") + (license license:isc))) + (define-public ocaml4.07-merlin (package (name "ocaml4.07-merlin") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0005-gnu-Add-ocaml-parsexp.patch >From 0f27bcdf4c47b9e4928589ac1dc0b48225d19d05 Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 11:38:32 -0800 Subject: [PATCH 5/9] gnu: Add ocaml-parsexp. * gnu/packages/ocaml.scm (ocaml-parsexp): New variable. * gnu/packages/ocaml.scm (ocaml4.07-parsexp): Inherit from ocaml-parsexp. --- gnu/packages/ocaml.scm | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 707880dd5d..b708f9398e 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -4209,8 +4209,25 @@ that was developed by Jane Street, the largest industrial user of OCaml.") #:findlib ,ocaml4.07-findlib #:dune ,ocaml4.07-dune)))) +(define-public ocaml-parsexp + (package + (name "ocaml-parsexp") + (version "0.14.0") + (home-page "https://github.com/janestreet/parsexp") + (source + (origin + (method git-fetch) + (uri (git-reference + (url (string-append home-page ".git")) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0rvbrf8ggh2imsbhqi15jzyyqbi3m5hzvy2iy2r4skx6m102mzpd")))) + (build-system dune-build-system) (inputs - `(("ocaml-sexplib0" ,ocaml4.07-sexplib0))) + `(("ocaml-base" ,ocaml-base) + ("ocaml-sexplib0" ,ocaml-sexplib0))) (synopsis "S-expression parsing library") (description "This library provides generic parsers for parsing S-expressions from @@ -4239,11 +4256,12 @@ s-expressions from files or other external sources, you should use parsexp_io.") (license license:expat))) -(define-public ocaml4.07-sexplib +(define-public ocaml4.07-parsexp (package - (name "ocaml4.07-sexplib") + (inherit ocaml-parsexp) + (name "ocaml4.07-parsexp") (version "0.11.0") - (home-page "https://github.com/janestreet/sexplib") + (home-page "https://github.com/janestreet/parsexp") (source (origin (method git-fetch) @@ -4253,12 +4271,12 @@ parsexp_io.") (file-name (git-file-name name version)) (sha256 (base32 - "1qfl0m04rpcjvc4yw1hzh6r16jpwmap0sa9ax6zjji67dz4szpyb")))) - (build-system dune-build-system) + "1nyq23s5igd8cf3n4qxprjvhbmb6ighb3fy5mw7hxl0mdgsw5fvz")))) (arguments `(#:ocaml ,ocaml-4.07 #:findlib ,ocaml4.07-findlib - #:dune ,ocaml4.07-dune)) + #:dune ,ocaml4.07-dune)))) + (propagated-inputs `(("ocaml-num" ,(package-with-ocaml4.07 ocaml-num)) ("ocaml-parsexp" ,ocaml4.07-parsexp) -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0006-gnu-Add-ocaml-sexplib.patch >From 81f930085e185efa330f92f5cf88529880a72b10 Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 11:39:49 -0800 Subject: [PATCH 6/9] gnu: Add ocaml-sexplib. * gnu/packages/ocaml.scm (ocaml-sexplib): New variable. * gnu/packages/ocaml.scm (ocaml4.07-sexplib): Inherit from ocaml-sexplib. --- gnu/packages/ocaml.scm | 39 +++++++++++++++++++++++++++++++++------ 1 file changed, 33 insertions(+), 6 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index b708f9398e..4774a70d46 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -4277,10 +4277,27 @@ parsexp_io.") #:findlib ,ocaml4.07-findlib #:dune ,ocaml4.07-dune)))) +(define-public ocaml-sexplib + (package + (name "ocaml-sexplib") + (version "0.14.0") + (home-page "https://github.com/janestreet/sexplib") + (source + (origin + (method git-fetch) + (uri (git-reference + (url (string-append home-page ".git")) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03c3j1ihx4pjbb0x3arrcif3wvp3iva2ivnywhiak4mbbslgsnzr")))) + (build-system dune-build-system) (propagated-inputs - `(("ocaml-num" ,(package-with-ocaml4.07 ocaml-num)) - ("ocaml-parsexp" ,ocaml4.07-parsexp) - ("ocaml-sexplib0" ,ocaml4.07-sexplib0))) + `(("ocaml-base" ,ocaml-base) + ("ocaml-num" ,ocaml-num) + ("ocaml-parsexp" ,ocaml-parsexp) + ("ocaml-sexplib0" ,ocaml-sexplib0))) (synopsis "Library for serializing OCaml values to and from S-expressions") (description @@ -4288,10 +4305,20 @@ parsexp_io.") functionality for parsing and pretty-printing s-expressions.") (license license:expat))) -(define-public ocaml4.07-base +(define-public ocaml4.07-sexplib (package - (name "ocaml4.07-base") - (version "0.11.1") + (inherit ocaml-sexplib) + (name "ocaml4.07-sexplib") + (version "0.11.0") + (arguments + `(#:ocaml ,ocaml-4.07 + #:findlib ,ocaml4.07-findlib + #:dune ,ocaml4.07-dune)) + (propagated-inputs + `(("ocaml-num" ,(package-with-ocaml4.07 ocaml-num)) + ("ocaml-parsexp" ,ocaml4.07-parsexp) + ("ocaml-sexplib0" ,ocaml4.07-sexplib0))))) + (home-page "https://github.com/janestreet/base") (source (origin -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0007-gnu-Add-ocaml-base.patch >From 17357e14c1ce843d4ee51d99ec85884d1dbe2f5f Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 11:40:59 -0800 Subject: [PATCH 7/9] gnu: Add ocaml-base. * gnu/packages/ocaml.scm (ocaml-base): New variable. * gnu/packages/ocaml.scm (ocaml4.07-base): Inherit from ocaml-base. --- gnu/packages/ocaml.scm | 42 ++++++++++++++++++++++++++++++++++++------ 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 4774a70d46..e0882d8f26 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -4319,6 +4319,10 @@ functionality for parsing and pretty-printing s-expressions.") ("ocaml-parsexp" ,ocaml4.07-parsexp) ("ocaml-sexplib0" ,ocaml4.07-sexplib0))))) +(define-public ocaml-base + (package + (name "ocaml-base") + (version "0.13.2") (home-page "https://github.com/janestreet/base") (source (origin @@ -4329,20 +4333,17 @@ functionality for parsing and pretty-printing s-expressions.") (file-name (git-file-name name version)) (sha256 (base32 - "0j6xb4265jr41vw4fjzak6yr8s30qrnzapnc6rl1dxy8bjai0nir")))) + "0x6r37a8j9z9kvx9syg6qkm7zgmjg41m40hfshls98h61zlzp3gv")))) (build-system dune-build-system) (propagated-inputs - `(("ocaml-sexplib0" ,ocaml4.07-sexplib0))) + `(("ocaml-sexplib0" ,ocaml-sexplib0))) (arguments `(#:phases (modify-phases %standard-phases (replace 'build ;; make warnings non fatal (jbuilder behaviour) (lambda _ - (invoke "dune" "build" "@install" "--profile=release")))) - #:ocaml ,ocaml-4.07 - #:findlib ,ocaml4.07-findlib - #:dune ,ocaml4.07-dune)) + (invoke "dune" "build" "@install" "--profile=release")))))) (synopsis "Full standard library replacement for OCaml") (description @@ -4357,6 +4358,35 @@ provided by companion libraries such as @url{https://github.com/janestreet/stdio, ocaml-stdio}.") (license license:expat))) +(define-public ocaml4.07-base + (package + (inherit ocaml-base) + (name "ocaml4.07-base") + (version "0.11.1") + (home-page "https://github.com/janestreet/base") + (source + (origin + (method git-fetch) + (uri (git-reference + (url (string-append home-page ".git")) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0j6xb4265jr41vw4fjzak6yr8s30qrnzapnc6rl1dxy8bjai0nir")))) + (propagated-inputs + `(("ocaml-sexplib0" ,ocaml4.07-sexplib0))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'build + ;; make warnings non fatal (jbuilder behaviour) + (lambda _ + (invoke "dune" "build" "@install" "--profile=release")))) + #:ocaml ,ocaml-4.07 + #:findlib ,ocaml4.07-findlib + #:dune ,ocaml4.07-dune)))) + (define-public ocaml4.07-compiler-libs (package (name "ocaml4.07-compiler-libs") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0008-gnu-Add-ocaml-odoc.patch >From ba40db7ba6d91dc63ddeff68e24fae355a9e8769 Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 11:42:34 -0800 Subject: [PATCH 8/9] gnu: Add ocaml-odoc. * gnu/packages/ocaml.scm (ocaml-odoc): New variable. --- gnu/packages/ocaml.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index e0882d8f26..2975f866c9 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -2424,6 +2424,39 @@ without a complete in-memory representation of the data.") multitude of other network protocols (FTP/SMTP/RTSP/etc).") (license license:isc))) +(define-public ocaml-odoc + (package + (name "ocaml-odoc") + (version "1.5.2") + (source + (origin + (method url-fetch) + (uri "https://github.com/ocaml/odoc/releases/download/1.5.2/odoc-1.5.2.tbz") + (sha256 + (base32 + "0wa87h8q6izcc6rkzqn944vrb3hmc21lf0d0rmr8rhhbcvr66i6j")))) + (build-system dune-build-system) + (inputs + `(("ocaml-astring" ,ocaml-astring) + ("ocaml-cmdliner" ,ocaml-cmdliner) + ("ocaml-fpath" ,ocaml-fpath) + ("ocaml-result" ,ocaml-result) + ("ocaml-tyxml" ,ocaml-tyxml) + ("ocaml-alcotest" ,ocaml-alcotest) + ("ocaml-markup" ,ocaml-markup) + ("ocaml-sexplib" ,ocaml-sexplib))) + (native-inputs + `(("ocaml-cppo" ,ocaml-cppo) + ("ocaml-bisect-ppx" ,ocaml-bisect-ppx))) + ;; FIXME: Needs some extra inputs for tests to succeed + (arguments `(#:tests? #f)) + (home-page "http://github.com/ocaml/odoc") + (synopsis "OCaml documentation generator") + (description + "Odoc is a documentation generator for OCaml. It reads doc comments, +delimited with @code{(** ... *)}, and outputs HTML.") + (license license:isc))) + (define-public ocaml-base64 (package (name "ocaml-base64") -- 2.29.2 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0009-gnu-Add-ocaml-merlin.patch >From 4427d0313fc07a8a2ff342575c7fe1e9c2a3b912 Mon Sep 17 00:00:00 2001 From: John Soo Date: Thu, 31 Dec 2020 11:48:15 -0800 Subject: [PATCH 9/9] gnu: Add ocaml-merlin. * gnu/packages/ocaml.scm (ocaml-merlin): New variable. * gnu/packages/ocaml.scm (ocaml4.07-merlin): Inerhit from ocaml-merlin. --- gnu/packages/ocaml.scm | 47 +++++++++++++++++++++++++++++++++++------- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 2975f866c9..bb5d6c4e92 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -71,6 +71,7 @@ #:use-module (gnu packages time) #:use-module (gnu packages tls) #:use-module (gnu packages virtualization) + #:use-module (gnu packages web) #:use-module (gnu packages web-browsers) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) @@ -4041,8 +4042,45 @@ The test mode allows to ensure that shell scripts and OCaml fragments in the documentation always stays up-to-date.") (license license:isc))) +(define-public ocaml-merlin + (package + (name "ocaml-merlin") + (version "3.4.2") + (home-page "https://ocaml.github.io/merlin/") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ocaml/merlin") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0i2nwkdh6cfzmnsdsr8aw86vs8j1k5jkjzrs61b9384wnffdbbmj")))) + (build-system dune-build-system) + (inputs + `(("ocaml-biniou" ,ocaml-biniou) + ("ocaml-yojson" ,ocaml-yojson) + ("ocaml-easy-format" ,ocaml-easy-format))) + (native-inputs + `(("ocaml-findlib" ,ocaml-findlib) + ("ocaml-mdx" ,ocaml-mdx) + ("jq" ,jq))) + (propagated-inputs + `(("ocaml-dot-merlin-reader" ,ocaml-dot-merlin-reader))) + (arguments + `(#:package "merlin" + #:test-target "tests")) + (synopsis "Context sensitive completion for OCaml in Vim and Emacs") + (description "Merlin is an editor service that provides modern IDE +features for OCaml. Emacs and Vim support is provided out-of-the-box. +External contributors added support for Visual Studio Code, Sublime Text and +Atom.") + (license license:expat))) + (define-public ocaml4.07-merlin (package + (inherit ocaml-merlin) (name "ocaml4.07-merlin") (version "3.2.2") (home-page "https://ocaml.github.io/merlin/") @@ -4056,7 +4094,6 @@ documentation always stays up-to-date.") (sha256 (base32 "15ssgmwdxylbwhld9p1cq8x6kadxyhll5bfyf11dddj6cldna3hb")))) - (build-system dune-build-system) (inputs `(("ocaml-biniou" ,(package-with-ocaml4.07 ocaml-biniou)) ("ocaml-yojson" ,(package-with-ocaml4.07 ocaml-yojson)) @@ -4068,13 +4105,7 @@ documentation always stays up-to-date.") #:tests? #f ;; Errors in tests in version 3.2.2 #:ocaml ,ocaml-4.07 #:findlib ,ocaml4.07-findlib - #:dune ,ocaml4.07-dune)) - (synopsis "Context sensitive completion for OCaml in Vim and Emacs") - (description "Merlin is an editor service that provides modern IDE -features for OCaml. Emacs and Vim support is provided out-of-the-box. -External contributors added support for Visual Studio Code, Sublime Text and -Atom.") - (license license:expat))) + #:dune ,ocaml4.07-dune)))) (define-public ocaml4.07-gsl (package -- 2.29.2 --=-=-=--