From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by c5ff346549e7 (Postfix) with ESMTPS id B8AE05D5 for ; Thu, 18 Jun 2020 09:10:24 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.73,526,1583190000"; d="scan'208,217";a="455350214" Received: from prod-listesu18.inria.fr (HELO sympa.inria.fr) ([128.93.162.160]) by mail2-relais-roc.national.inria.fr with ESMTP; 18 Jun 2020 11:10:23 +0200 Received: by sympa.inria.fr (Postfix, from userid 20132) id 639E9E035D; Thu, 18 Jun 2020 11:10:23 +0200 (CEST) Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id ACA3BE0327 for ; Thu, 18 Jun 2020 11:10:19 +0200 (CEST) Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=louis@louisroche.net; spf=Pass smtp.mailfrom=louis@louisroche.net; spf=Pass smtp.helo=postmaster@out3-smtp.messagingengine.com IronPort-PHdr: =?us-ascii?q?9a23=3AKwNS5haq2JGVSdglH9MldIn/LSx+4OfEezUN459i?= =?us-ascii?q?sYplN5qZr8SzbnLW6fgltlLVR4KTs6sC17OL9fm/BSdZuN6oizMrSNR0TRgLiM?= =?us-ascii?q?EbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpTEdFQ/iOgVr?= =?us-ascii?q?O+/7BpDdj9it1+C15pbffxhEiCCybL9vLBi6txjdu8sZjIdtN6o91wbCr2dVde?= =?us-ascii?q?hR2W5mP0+YkQzm5se38p5j8iBQtOwk+sVdT6j0fLk2QKJBAjg+PG87+MPktR/Y?= =?us-ascii?q?TQuS/XQcSXkZkgBJAwfe8h73WIr6vzbguep83CmaOtD2TawxVD+/4apnVAPkhS?= =?us-ascii?q?EaPDM/7WrZiNF/jLhDrRymqRNwzI3ab4ObNPRwfq3TY84USnZaU8lLSyBMGJmx?= =?us-ascii?q?YpEVAucDO+tTsonzp0EJrRu7HQSiAuTvyiJJhn/txaI0z+MhHh3G3As6AtkDt3?= =?us-ascii?q?DUrNLoNKcTSuC4163IzTLeb/NXwjf98o/IfQwhof6SR75wd9TeyVU2Gg7Dk16f?= =?us-ascii?q?ppDrMSmP2eQRr2iU8fBgVeS3hmMpqQx/rSajy8Myh4TXhY8YxV/J+yp9zYsrJd?= =?us-ascii?q?O1TEF2b9GkHZZNsyyXKpd7T8ItTWxpuCs21rMLtJ6lcSQU1JgqwQPUZfKAc4iN?= =?us-ascii?q?+B3jVeCRLC93hHJkZLK/hwuy/lO6xuLgUcm01U5Gri1ZndbWs3AN0wbf6s+dSv?= =?us-ascii?q?ty+EqqxDWB1xjL5+xFIE04j7fXJ4M8zrIqmZcfq1rPEy3wlU7rkqKWclgk+vO0?= =?us-ascii?q?6+v5eLXou56cNo5qhQzmLqgjnNG0D/4iPQgURWeb/Pyx1L398k39R7VHlvo2kr?= =?us-ascii?q?TFsJ3UPMgbvau5AxNN0oo57hawESym0M8CknkILVJFfh2HgJbvO1HBIfD4C+mw?= =?us-ascii?q?j06wnzdswvDKJrzhApPTIXjfiLrsfLdw51RBxAYu0NxT/Z1ZBqsfLP/xQkPxsc?= =?us-ascii?q?bXDh49Mwy62ebnD9B925saWWKIH6+ZMbjSvESM5uIoPumMZZQVuCz6K/c55/7h?= =?us-ascii?q?k2U1mVkDcqm1xZcXcmy3Hux6I0WFZnrhmssOHn0Pvgo6VeDqjFyCUSVPZ3upRK?= =?us-ascii?q?I95jQ7CJq8AovZR4CthqaB3CahEZFMaGBGEAPELXC9fIyBX7IIaTmOCs5niD0N?= =?us-ascii?q?E7a7GKE70hT7kAjnyqFQFO3f+qxQ4Zbkydluz+nUiBAp7zt/D8nb1WyRGTIn1l?= =?us-ascii?q?gUTiM7ifgs6Xd2zU2OhPAh3q5oUOdL7vYMaT8UcJ7Ry+shUoL1Rx6aO8yMVE7g?= =?us-ascii?q?R9i9Gjg+T9Q+ztkBYkBwXd6li0Kahnb4M/ouj7WOQacM3OfExXGoeZR5zGvHz7?= =?us-ascii?q?MmhFkrBM1CKT/+3/8tx03oH4fM1n6hueOvfKUY0jTK8T7dn26JoUBDSgl7UaiD?= =?us-ascii?q?W30DNBLb?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CLBAB1LutehxsEb0JmglWDF1QBATEsh?= =?us-ascii?q?CSJAYdhJZt8CwEDAQwjDAQBAYREAoIlAh0GAQQ1BQ0CEAEBBQEBAQIBAwMEARM?= =?us-ascii?q?BAQEIDQkIKYU1BicMgjsigxYBAgMjHQEBOA8LGCoCAiwrGRuDCwE5gkMPtxiBM?= =?us-ascii?q?oMBAQEFgTIBFg9lhBR7AwaBOIInhU2Eaxo/gUGBEScMA4IsLj6CXAKBR0WCZ4J?= =?us-ascii?q?gjnwLDotMiSSPRoECgmSIQI4EglEFCh2HfJZymzOUUYFrgXczIiYKOy6CO1AXA?= =?us-ascii?q?g2KCIQwg1eEWTuFTzQBAjA3AgYBBwEBAwmQfwEB?= X-IPAS-Result: =?us-ascii?q?A0CLBAB1LutehxsEb0JmglWDF1QBATEshCSJAYdhJZt8CwE?= =?us-ascii?q?DAQwjDAQBAYREAoIlAh0GAQQ1BQ0CEAEBBQEBAQIBAwMEARMBAQEIDQkIKYU1B?= =?us-ascii?q?icMgjsigxYBAgMjHQEBOA8LGCoCAiwrGRuDCwE5gkMPtxiBMoMBAQEFgTIBFg9?= =?us-ascii?q?lhBR7AwaBOIInhU2Eaxo/gUGBEScMA4IsLj6CXAKBR0WCZ4JgjnwLDotMiSSPR?= =?us-ascii?q?oECgmSIQI4EglEFCh2HfJZymzOUUYFrgXczIiYKOy6CO1AXAg2KCIQwg1eEWTu?= =?us-ascii?q?FTzQBAjA3AgYBBwEBAwmQfwEB?= X-IronPort-AV: E=Sophos;i="5.73,526,1583190000"; d="scan'208,217";a="455350178" X-MGA-submission: =?us-ascii?q?MDGIbqbxBVhVyZ8PaFx30m+My/sp7V7ExMY57J?= =?us-ascii?q?zufoa5+d19FDK20OxAExkakIut7t/WkdSAJpsb3V3YmqtSadMV0BqVOX?= =?us-ascii?q?QseNHWUwbbW0b+zO7F/T0PIB02z8c5ot1NxRusXZx9h3zH+PQaXSyHCr?= =?us-ascii?q?JEpGBi8+eqzdOnNJXApMSN4Q=3D=3D?= Received: from out3-smtp.messagingengine.com ([66.111.4.27]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Jun 2020 11:10:18 +0200 Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id 59E2D5C0105 for ; Thu, 18 Jun 2020 05:10:17 -0400 (EDT) Received: from imap2 ([10.202.2.52]) by compute2.internal (MEProxy); Thu, 18 Jun 2020 05:10:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=louisroche.net; h=mime-version:message-id:in-reply-to:references:date:from:to :subject:content-type; s=fm1; bh=35MClHYn7jwD0FYeQ3+rajyzQck6TQT FMzpW5szdSSo=; b=GWFEwcNMXAeJolF76VptIXGv27xPXRunRwkeMWPpnm6Y2H7 c8+v6lru5KNYJD9lxpM472kBG7yHTw6BPActpjKty4ct4N6iSryDpZ3h95Zf5Jfw w8nPyV9xwf3ZxSw4Uf/xu9AbdGn/RbyBpIY8eq8iZ6yrD1DmFxPGKRRjpuJRTdZN /2XN84isZTOV6f9QRwUH/s6H55fFQ4c0ZodMOXTNE25bnzZR1DyX8ew7qQD0wXhs jvyoDTl97FwfJDPvpwznLTMrHOEpjKpeBruyDotvNXQ3sPAEZ8phvQ8SDud6jnww rU7pLJCL5D5Xlhv3a55A5NdEknIDfk+I9Bspgiw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=35MClH Yn7jwD0FYeQ3+rajyzQck6TQTFMzpW5szdSSo=; b=lvif8B9TOsFTkcyshftcuj rShiovyC24gKhKfmjdgK/9neQ6x1ZsGieqLuYd6ZBZ5WQXpVobOsLXmwoS/Qu4yS jsZsuuwhEbmd8Atli84zvrUntpG7al+1n4EAmMMfdAoqCRu4mtysD1PaPfjRFfok kplnntc3SvUylTx5XhSa8q9YnU79wwEGxHJUDkZkYsuQqqsSbZafoxHKlzKGnge7 rPICUEXKSBEBL0Hw6MeUmaYC+30PVDIxvJa7ENFmMJSTkK+tGPtiZlPKpUNhauOF myt5FqOkAa7mq1qnLN1XpmAJwcxxPIC0zr5D62sozPA98QoESrFwJqahir8DG6Qw == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedrudejgedguddvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefofgggkfgjfhffhffvufgtsegrtd erreerreejnecuhfhrohhmpefnohhuihhspgftohgthhoruceolhhouhhisheslhhouhhi shhrohgthhgvrdhnvghtqeenucggtffrrghtthgvrhhnpeefjefgvdelveevkeeggefgle evhfelgefgheeuleeuteeigfeihedtfeehvedvtdenucffohhmrghinhepghhithhhuhgs rdgtohhmpdhotggrmhhlrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrg hmpehmrghilhhfrhhomheplhhouhhisheslhhouhhishhrohgthhgvrdhnvght X-ME-Proxy: Received: by mailuser.nyi.internal (Postfix, from userid 501) id EC1D6E00B0; Thu, 18 Jun 2020 05:10:16 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.3.0-dev0-536-ga595028-fm-20200618.001-ga5950281 Mime-Version: 1.0 Message-Id: <5b0a9f3f-6729-4e19-9f38-01d7d205c8d6@www.fastmail.com> In-Reply-To: References: <29ef1edf-22e6-bcc3-bd98-dceccecf3420@inria.fr> <800d1d00-1fb8-1485-3022-c581753b3fba@inria.fr> Date: Thu, 18 Jun 2020 17:09:56 +0800 From: =?UTF-8?Q?Louis_Roch=C3=A9?= To: caml-list@inria.fr Content-Type: multipart/alternative; boundary=1b818c26660b4fe49be7143ea19b994a Subject: Re: [Caml-list] 300$ Bounty for the feature compilation cache in opam Reply-To: =?UTF-8?Q?Louis_Roch=C3=A9?= X-Loop: caml-list@inria.fr X-Sequence: 18174 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: --1b818c26660b4fe49be7143ea19b994a Content-Type: text/plain;charset=utf-8 Content-Transfer-Encoding: quoted-printable I was happy to give 300USD of my personal money to push someone to work = on this task. But I can't afford to pay a company to work on that task. There is a script in the opam repo providing binary cache already[1]. Th= e problem is that it doesn't handle relocation well. Because of paths co= ntained in the cached content. For example if I install ocaml in a switc= h A, then in switch B, then delete the switch A, suddenly the switch B w= on't work anymore. To me the ideal solution would be to extract the code of esy that is doi= ng path replacements and use it in an opam hook. It would also require a= ll switches to be installed in a path of a similar length, but that's a = trivial task. 1. https://github.com/ocaml/opam/blob/4756ca1/shell/opam-bin-cache.sh On Thu, Jun 18, 2020, at 17:00, Fabrice Le Fessant wrote: > opam is maintained by OCamlPro, why not contact them and get a quote ?= It won't be 300$, but everybody will enjoy the feature in the next vers= ion. >=20 > As a side note, a long time ago, I had an implementation of a binary c= ache for OPAM. The modifications in OPAM were minimal: opam would > just call a hook to build the package and install it, providing a chec= ksum of dependencies and sources. The checksum would be used by an exter= nal tool (`ocp-bin`) to query the local binary cache (or a remote server= ) and either re-install the package or build it and save it in the cache= . Since it was written in 2013, not sure if it would still work easily w= ith current opam. Its code was used later to create opam-builder. > -- > Fabrice LE FESSANT > CEO Origin-Labs SAS & Dune Network >=20 > Le jeu. 18 juin 2020 =C3=A0 03:53, Francois Berenger a =C3=A9crit : >> Cf.=20 >> https://discuss.ocaml.org/t/bounty-for-compilation-cache-in-opam/2482= >> for details. > --=20 > Fabrice LE FESSANT > Chercheur en Informatique > INRIA Paris Rocquencourt -- OCamlPro > Programming Languages and Distributed Systems --1b818c26660b4fe49be7143ea19b994a Content-Type: text/html;charset=utf-8 Content-Transfer-Encoding: quoted-printable
I was happy to = give 300USD of my personal money to push someone to work on this task. B= ut I can't afford to pay a company to work on that task.
<= br>
There is a script in the opam repo providing binary cache = already[1]. The problem is that it doesn't handle relocation well. Becau= se of paths contained in the cached content. For example if I install oc= aml in a switch A, then in switch B, then delete the switch A, suddenly = the switch B won't work anymore.

To me the = ideal solution would be to extract the code of esy that is doing path re= placements and use it in an opam hook. It would also require all switche= s to be installed in a path of a similar length, but that's a trivial ta= sk.


O= n Thu, Jun 18, 2020, at 17:00, Fabrice Le Fessant wrote:
opam is maintained by OCamlPro, why n= ot contact them and get a quote ? It won't be 300$, but everybody will enjoy= the feature in the next version.

As a side note, a long= time ago, I had an implementation of a binary cache for OPAM. The modificati= ons in OPAM were minimal: opam would
just call a hook to build the = package and install it, providing a checksum of dependencies and sources. Th= e checksum would be used by an external tool (`ocp-bin`) to query the local = binary cache (or a remote server) and either re-install the package or build= it and save it in the cache. Since it was written in 2013, not sure if it w= ould still work easily with current opam. Its code was used later to create&= nbsp;opam= -builder.
--
Fabrice LE FESSANT
CEO Origin-Labs SAS &= Dune Network

Le jeu. 18 j= uin 2020 =C3=A0 03:53, Francois Berenger <mlists@ligand.eu> a =C3=A9crit :
Cf. =
--
Fabrice LE FESSANT
Chercheur en Informatique
INRIA Paris Rocquen= court -- OCamlPro
Programming Languages and Distributed Sy= stems

--1b818c26660b4fe49be7143ea19b994a--