From patchwork Mon Mar 2 17:24:49 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Tournier X-Patchwork-Id: 20493 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id CAE5427BBE4; Mon, 2 Mar 2020 17:26:19 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI,T_DKIM_INVALID, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 3C0E117B9D for ; Mon, 2 Mar 2020 17:26:19 +0000 (GMT) Received: from localhost ([::1]:35868 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j8ope-0003TM-JO for patchwork@mira.cbaines.net; Mon, 02 Mar 2020 12:26:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:33490) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j8opP-0003RA-Gt for guix-patches@gnu.org; Mon, 02 Mar 2020 12:26:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j8opO-0003lg-3D for guix-patches@gnu.org; Mon, 02 Mar 2020 12:26:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:60566) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j8opN-0003lc-Vv for guix-patches@gnu.org; Mon, 02 Mar 2020 12:26:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j8opN-0002yh-Rw for guix-patches@gnu.org; Mon, 02 Mar 2020 12:26:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#39547] [PATCH v3] sources.json: array instead of list References: <20200210170418.32076-1-zimon.toutoune@gmail.com> In-Reply-To: <20200210170418.32076-1-zimon.toutoune@gmail.com> Resent-From: zimoun Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 02 Mar 2020 17:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 39547 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 39547@debbugs.gnu.org, Ludovic =?utf-8?q?Court=C3=A8s?= Received: via spool by 39547-submit@debbugs.gnu.org id=B39547.158316990911386 (code B ref 39547); Mon, 02 Mar 2020 17:26:01 +0000 Received: (at 39547) by debbugs.gnu.org; 2 Mar 2020 17:25:09 +0000 Received: from localhost ([127.0.0.1]:38306 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j8ooX-0002xX-6T for submit@debbugs.gnu.org; Mon, 02 Mar 2020 12:25:09 -0500 Received: from mail-qv1-f53.google.com ([209.85.219.53]:41296) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j8ooU-0002x6-Uh for 39547@debbugs.gnu.org; Mon, 02 Mar 2020 12:25:07 -0500 Received: by mail-qv1-f53.google.com with SMTP id s15so235840qvn.8 for <39547@debbugs.gnu.org>; Mon, 02 Mar 2020 09:25:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=vjotUINPGXhnGECTRjk7Hf8+cB4fw/hWZ3EI88LZjBI=; b=gzR9pyc15BSFXDEeG29gk8PAvPhjv8zTXDmeKVDhEc4yHVe4Yb4pxV/qGa1jACOm9+ HeCadT2qBd8o+YpJgB7OiES74aX38ir0eOzCIn0F0euz8ooKmtgx7+sc0WauJo8P3RRm q945NzO39crJ8tXjtOvpgt2FzOr+w8VTKiHejqB5HpJu3AR+uC/s5K7AKSWZKu7yzG/j 01KhPnjRlxPv31m9GiJrAHv5tJxqjGMjzwcaxvd3TJc38kL46h6B2vwWp/pVBZHMrzbz rVvxc/NDzKoDews+cFQz+tzXvpF2HatsqlgX4Tdi7abdvcIxiz9G3ZpXNIcEjfyiQW1D WJ7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=vjotUINPGXhnGECTRjk7Hf8+cB4fw/hWZ3EI88LZjBI=; b=RmCZkGV7rFe67I4UTqjAytB1+DSsiDkoJKNQwUjQBxSoPc2ArX6UQhP4Ck1I88hAVd RaBkNUeQg/Uo/cIq9ZcUkj7GAfpz5YBDzaauio4cF5NnGSk7kPmb/IKiB856I+oSpeQU xa88Uz/YXXbiX7JPXRBVgCs2e2OtqLG9OamyNYci5HDa9MvjqFQVZedpf8a9x6jZzU0I Cd3WwozG384Chbq0q6eS3oOQ4/VSIoN3+a+P0bWJCeJg5sDNAJkdWFOvywbFOvbaTDFf Q+1i+KTdqUSGdSJxdQ99kVR6izGRFyR0Tt03iIH387cWTskVj/nmLk6htevV3mHaDsUM DW/w== X-Gm-Message-State: ANhLgQ3klSYbnduutjURhdKuf8zCOPdZQ1JBjtNfyXHnXzz5xadc1/Gu 63x3Vb9j6X//DFSOTRIgnJfoyliIhFL4oeo/G9iREQ== X-Google-Smtp-Source: ADFU+vuOej6fAMAXYXTrPv3H5xG92d00dds9Zvg0G2fcjn8haBUPuiWc5WPKoqZiJqLSeLjbUk+y7O3wm9v5ymEj1js= X-Received: by 2002:ad4:4674:: with SMTP id z20mr475482qvv.6.1583169901205; Mon, 02 Mar 2020 09:25:01 -0800 (PST) MIME-Version: 1.0 From: zimoun Date: Mon, 2 Mar 2020 18:24:49 +0100 Message-ID: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Hi Ludo, Attached, the tiny modification to output the list (array) of URLs instead of the first one. The version number is still '1' because I do not know yet if lewo would bump it. Note also that "transformer" is not useful any more because 'packages-json-builder' and 'sources-json-builder' returns both vectors now. Cheers, simon From 73557bc00760b4404bfe17ecb3aca983c6dcc11e Mon Sep 17 00:00:00 2001 From: zimoun Date: Tue, 18 Feb 2020 13:25:14 +0100 Subject: [PATCH v3 2/2] website: Provide JSON sources list used by Software Heritage. Format discussed here . * website/apps/packages/builder.scm (origin->json): Add list modifier. * website/apps/packages/builder.scm (sources-json-builder): New procedure. --- website/apps/packages/builder.scm | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/website/apps/packages/builder.scm b/website/apps/packages/builder.scm index d3a777e..3fc1285 100644 --- a/website/apps/packages/builder.scm +++ b/website/apps/packages/builder.scm @@ -74,6 +74,7 @@ (flatten (list (index-builder) + (sources-json-builder) (packages-json-builder) (packages-builder) (package-list-builder)))) @@ -88,7 +89,7 @@ ;; Maximum number of packages shown on /packages. 30) -(define (origin->json origin) +(define* (origin->json origin #:optional (transformer list->vector)) (define method (origin-method origin)) @@ -105,7 +106,7 @@ ((eq? svn-fetch method) 'svn) (else #nil))) ,@(cond ((eq? url-fetch method) - `(("url" . ,(list->vector + `(("url" . ,(transformer (resolve (match uri ((? string? url) (list url)) @@ -155,6 +156,21 @@ (list->vector (map package->json (all-packages))) scm->json)) +(define (sources-json-builder) + "Return a JSON page listing all the sources. + +See ." + (define (package->json package) + `(,@(if (origin? (package-source package)) + (origin->json (package-source package)) + `(("type" . "no-origin") + ("name" . ,(package-name package)))))) + + (make-page "sources.json" + `(("sources" . ,(list->vector (map package->json (all-packages)))) + ("version" . "1")) + scm->json)) + (define (index-builder) "Return a Haunt page listing some random packages." (define (sample n from) -- 2.25.0