From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 903804406C; Sun, 19 May 2024 18:36:53 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7FA114029C; Sun, 19 May 2024 18:36:51 +0200 (CEST) Received: from mail-yw1-f181.google.com (mail-yw1-f181.google.com [209.85.128.181]) by mails.dpdk.org (Postfix) with ESMTP id 66E594028B for ; Sun, 19 May 2024 18:36:49 +0200 (CEST) Received: by mail-yw1-f181.google.com with SMTP id 00721157ae682-62027fcf9b1so11913037b3.0 for ; Sun, 19 May 2024 09:36:49 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716136608; x=1716741408; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nve/EVZyCssLe+5o6SoSbNcEVQ0RoDPiCuuQyBr45Nw=; b=skaS1UpKmKAZd/zgiuG5MafitTLTSmjvgZn2eJ29TLxIpB1syg/s39YcZkcmQBvnqe klMD2lWg9IAfym9ucoBsYllzi/jPD+xkZs2aFHrQRA93hR6+vDx3Zreho4sdEvWf/B8A 7nPo0pQC3/mc8c8cwl2UgcxoxeDzCpY6nVgCXASxcnNZk8mxKf7aL2nhAHrj3mZkqoUq WljrSl91Sxt1rDncSiA3mIgypkA7Vx4FIjJbLqEPTMDMmXryy4nsgH4Sr2IAeCJqUbgF Cfx7m6WsZ6ZESAoYZmjJL/NWbWtJfvsjFJy6mI+wZpg7vOnhn/dfG+8UqEysHXsIfVhQ 93gQ== X-Forwarded-Encrypted: i=1; AJvYcCU3gVypwd18mOPXNwN3exOQxixieHYigTLyWdTPWlwdvlt84RzQQ6MU8fUAdY+FVJU9RvdFesT3xOMgHhQ= X-Gm-Message-State: AOJu0YxfMaGYKpcATXwFaLIpkondhedzo5om06fgAs3pAwmXsH1K/Uxl dKV4dId8JGFBd1IJhhCdYwdv0hp2dq9YnlMnP+LFCwJMJ+vP/ukV0cLAFVMS X-Google-Smtp-Source: AGHT+IEI1E+41h2YDOXDq+BJGcaxc8ss3m0tqjHJq/MHwvYlFansGhoMyv+UpNjfZ9RbV7j764Nbog== X-Received: by 2002:a05:690c:6084:b0:61a:db4d:cc1f with SMTP id 00721157ae682-627971c33dbmr21306127b3.7.1716136608404; Sun, 19 May 2024 09:36:48 -0700 (PDT) Received: from mail-yb1-f181.google.com (mail-yb1-f181.google.com. [209.85.219.181]) by smtp.gmail.com with ESMTPSA id 00721157ae682-6209e345d36sm46647777b3.88.2024.05.19.09.36.48 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 19 May 2024 09:36:48 -0700 (PDT) Received: by mail-yb1-f181.google.com with SMTP id 3f1490d57ef6-dc6cbe1ac75so1239235276.1 for ; Sun, 19 May 2024 09:36:48 -0700 (PDT) X-Forwarded-Encrypted: i=1; AJvYcCXVoVtu2i3vcXG6AS7rjY4toiTx6WJjqnlrBQTY6KLBfsY7JfKRGo6iSNwOHlP+/ZKTd2Yyu18PBBElrQk= X-Received: by 2002:a5b:cca:0:b0:dcf:eb30:c580 with SMTP id 3f1490d57ef6-df4905ad1ecmr2977401276.3.1716136608046; Sun, 19 May 2024 09:36:48 -0700 (PDT) MIME-Version: 1.0 References: <20230629125838.1995751-1-christian.ehrhardt@canonical.com> <24173311.ouqheUzb2q@thomas> In-Reply-To: <24173311.ouqheUzb2q@thomas> From: Luca Boccassi Date: Sun, 19 May 2024 17:36:36 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] doc: ensure sphinx output is reproducible To: Thomas Monjalon Cc: Christian Ehrhardt , Bruce Richardson , dev@dpdk.org, david.marchand@redhat.com, "Mcnamara, John" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On Sun, 19 May 2024 at 15:01, Thomas Monjalon wrote: > > 17/05/2024 13:29, Luca Boccassi: > > On Mon, 27 Nov 2023 at 17:04, Bruce Richardson > > wrote: > > > > > > On Mon, Nov 27, 2023 at 05:45:52PM +0100, Thomas Monjalon wrote: > > > > 06/07/2023 14:49, Christian Ehrhardt: > > > > > On Mon, Jul 3, 2023 at 5:29=E2=80=AFPM Thomas Monjalon wrote: > > > > > > > > > > > > 29/06/2023 14:58, christian.ehrhardt@canonical.com: > > > > > > > From: Christian Ehrhardt > > > > > > > > > > > > > > By adding -j we build in parallel, to make building on multip= rocessor > > > > > > > machines more effective. While that works it does also break > > > > > > > reproducible builds as the order of the sphinx generated sear= chindex.js > > > > > > > is depending on execution speed of the individual processes. > > > > > > [...] > > > > > > > -if Version(ver) >=3D Version('1.7'): > > > > > > > - sphinx_cmd +=3D ['-j', 'auto'] > > > > > > > > > > > > What is the impact on build speed on an average machine? > > > > > > > > > > Hi, > > > > > I haven't tested this in isolation as it was just a mandatory cha= nge > > > > > on the Debian/Ubuntu side. > > > > > And the time for exactly and only the doc build is hidden inside = the > > > > > concurrency of meson. > > > > > But I can compare a full build [1] and a full build with the chan= ge [2]. > > > > > > > > > > That is an average build machine and it is 35 seconds slower with= the > > > > > change to no more do doc builds in parallel. > > > > > > > > I would prefer adding an option for reproducible build > > > > (which is not a common requirement). > > > > > > > Taking a slightly different tack, is it possible to sort the searchin= dex.js > > > file post-build, so that even reproducible builds get the benefits of > > > parallelism? > > > > Given the recent attacks with malicious sources being injected in open > > source projects, reproducible builds are more important than ever and > > should just be the default. > > Yes it should be the default when packaging. > Why should it be the default for normal builds? Build reproducibility is everyone's responsibility, not just Linux distributions. There should be no difference between a "normal build" and a "packaging build". As far as I know, it is still fully supported for DPDK consumers to take the git repository, build it and ship it themselves - those cases also need their builds to be reproducible. Nowadays reproducibility is no longer a "nice-to-have", it's table stakes, as especially after the cybersecurity executive order of the US govt from some time ago, procurement rules are getting stricter. See the "Reproducible Builds" paragraph under the "2.4 Harden the Build Environment" section in this CISA document on supply chain security recommendations: https://www.cisa.gov/sites/default/files/publications/ESF_SECURING_THE_SOFT= WARE_SUPPLY_CHAIN_DEVELOPERS.PDF