From unknown Mon Jun 16 23:45:56 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#26166 <26166@debbugs.gnu.org> To: bug#26166 <26166@debbugs.gnu.org> Subject: Status: [PATCH] gnu: cargo: Simplify unpacking. Reply-To: bug#26166 <26166@debbugs.gnu.org> Date: Tue, 17 Jun 2025 06:45:56 +0000 retitle 26166 [PATCH] gnu: cargo: Simplify unpacking. reassign 26166 guix-patches submitter 26166 Danny Milosavljevic severity 26166 normal tag 26166 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Sat Mar 18 20:29:06 2017 Received: (at submit) by debbugs.gnu.org; 19 Mar 2017 00:29:07 +0000 Received: from localhost ([127.0.0.1]:34415 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cpOiY-0006cJ-Nf for submit@debbugs.gnu.org; Sat, 18 Mar 2017 20:29:06 -0400 Received: from eggs.gnu.org ([208.118.235.92]:37391) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cpOiX-0006bo-Ly for submit@debbugs.gnu.org; Sat, 18 Mar 2017 20:29:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cpOiR-0003nV-6Q for submit@debbugs.gnu.org; Sat, 18 Mar 2017 20:29:00 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:59783) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cpOiR-0003nJ-2l for submit@debbugs.gnu.org; Sat, 18 Mar 2017 20:28:59 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56595) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cpOiP-0007fy-F5 for guix-patches@gnu.org; Sat, 18 Mar 2017 20:28:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cpOiM-0003ms-7j for guix-patches@gnu.org; Sat, 18 Mar 2017 20:28:57 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:54170) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cpOiL-0003mK-TS for guix-patches@gnu.org; Sat, 18 Mar 2017 20:28:54 -0400 Received: from dayas.3.home (178.113.146.244.wireless.dyn.drei.com [178.113.146.244]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 926A91CA0C86; Sun, 19 Mar 2017 01:28:49 +0100 (CET) From: Danny Milosavljevic To: guix-patches@gnu.org Subject: [PATCH] gnu: cargo: Simplify unpacking. Date: Sun, 19 Mar 2017 01:28:44 +0100 Message-Id: <20170319002844.19407-1-dannym@scratchpost.org> X-Mailer: git-send-email 2.12.0 Tags: patch X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) * gnu/packages/rust.scm (cargo): Simplify unpacking. --- gnu/packages/rust.scm | 60 +++++++++++++++++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 21 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 2dedef837..9a6f25c82 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -285,6 +285,8 @@ safety and thread safety guarantees.") ;; Dual licensed. (license (list license:asl2.0 license:expat)))) +;; This tries very hard not to get into a cyclic dependency like this: +;; cargo <- cargo-build-system <- cargo. (define-public cargo (package (name "cargo") @@ -788,6 +790,11 @@ safety and thread safety guarantees.") (arguments `(#:cargo ,cargo-bootstrap #:tests? #f ; FIXME + #:modules + ((ice-9 match) + (srfi srfi-1) ; 'every + (guix build utils) + (guix build cargo-build-system)) #:phases (modify-phases %standard-phases ;; Avoid cargo complaining about missmatched checksums. @@ -796,30 +803,40 @@ safety and thread safety guarantees.") (delete 'patch-usr-bin-file) (add-after 'unpack 'unpack-submodule-sources (lambda* (#:key inputs #:allow-other-keys) - (let ((unpack (lambda (source target) - (mkdir-p target) - (with-directory-excursion target - (zero? (system* "tar" "xf" - source - "--strip-components=1")))))) + (let* ((unpack + (lambda (source target) + (mkdir-p target) + (with-directory-excursion target + (zero? (system* "tar" "xf" + source + "--strip-components=1"))))) + (touch + (lambda (file-name) + (call-with-output-file file-name (const #t)))) + (install-rust-library + (lambda (entry) + (match entry + ((name . src) + (if (string-prefix? "rust-" name) + (let* ((rust-length (string-length "rust-")) + (rust-name (string-drop name + rust-length)) + (rsrc (string-append "vendor/" + rust-name)) + (unpack-status (unpack src rsrc))) + (touch (string-append rsrc "/.cargo-ok")) + (generate-checksums rsrc src) + unpack-status))) + (_ #t))))) (mkdir "vendor") - (for-each (lambda (p) - (let ((name (car p))) - (if (string-prefix? "rust-" name) - (let ((rsrc (string-append "vendor/" - (string-drop name - (string-length "rust-"))))) - (unpack (assoc-ref inputs name) rsrc) - (system* "touch" (string-append rsrc "/.cargo-ok")) - (generate-checksums rsrc (assoc-ref inputs name)))))) inputs)))) - ;; Set CARGO_HOME to use the vendored dependencies. - (add-after 'unpack 'set-cargo-home + (every install-rust-library inputs)))) + (add-after 'unpack 'set-environment-up (lambda* (#:key inputs #:allow-other-keys) (let* ((gcc (assoc-ref inputs "gcc")) (cc (string-append gcc "/bin/gcc"))) - (mkdir "cargohome") - (setenv "CARGO_HOME" (string-append (getcwd) "/cargohome")) - (call-with-output-file "cargohome/config" + (mkdir ".cargo") + ;(setenv "CARGO_HOME" (string-append (getcwd) "/cargohome")) + (call-with-output-file ".cargo/config" (lambda (p) (format p " [source.crates-io] @@ -831,7 +848,8 @@ directory = 'vendor' "))) (setenv "CMAKE_C_COMPILER" cc) (setenv "CC" cc)) - #t))))) + #t)) + (delete 'configure)))) (home-page "https://github.com/rust-lang/cargo") (synopsis "Build tool and package manager for Rust") (description "Cargo is a tool that allows Rust projects to declare their From debbugs-submit-bounces@debbugs.gnu.org Fri Apr 07 16:58:49 2017 Received: (at 26166) by debbugs.gnu.org; 7 Apr 2017 20:58:49 +0000 Received: from localhost ([127.0.0.1]:36825 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cway1-0002qu-8x for submit@debbugs.gnu.org; Fri, 07 Apr 2017 16:58:49 -0400 Received: from eggs.gnu.org ([208.118.235.92]:60400) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cway0-0002qd-2O for 26166@debbugs.gnu.org; Fri, 07 Apr 2017 16:58:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cwaxp-0004Lt-PQ for 26166@debbugs.gnu.org; Fri, 07 Apr 2017 16:58:42 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:57740) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cwaxp-0004Lp-Lw; Fri, 07 Apr 2017 16:58:37 -0400 Received: from reverse-83.fdn.fr ([80.67.176.83]:40916 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1cwaxo-0008Cb-Tv; Fri, 07 Apr 2017 16:58:37 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: bug#26166: [PATCH] gnu: cargo: Simplify unpacking. References: <20170319002844.19407-1-dannym@scratchpost.org> Date: Fri, 07 Apr 2017 22:58:32 +0200 In-Reply-To: <20170319002844.19407-1-dannym@scratchpost.org> (Danny Milosavljevic's message of "Sun, 19 Mar 2017 01:28:44 +0100") Message-ID: <87pogosznr.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 26166 Cc: 26166@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) Hi Danny, Danny Milosavljevic skribis: > * gnu/packages/rust.scm (cargo): Simplify unpacking. One minor issue: Please describe the changes in terms of code: add #:modules, modify =E2=80=98unpack-submodule-sources=E2=80=99 phase such tha= t this and that, etc. > gnu/packages/rust.scm | 60 +++++++++++++++++++++++++++++++++------------= ------ > 1 file changed, 39 insertions(+), 21 deletions(-) It=E2=80=99s not immediately obvious that it=E2=80=99s a simplification. ;= -) > (delete 'patch-usr-bin-file) > (add-after 'unpack 'unpack-submodule-sources > (lambda* (#:key inputs #:allow-other-keys) > - (let ((unpack (lambda (source target) > - (mkdir-p target) > - (with-directory-excursion target > - (zero? (system* "tar" "xf" > - source > - "--strip-components=3D1")= ))))) > + (let* ((unpack > + (lambda (source target) > + (mkdir-p target) > + (with-directory-excursion target > + (zero? (system* "tar" "xf" > + source > + "--strip-components=3D1"))))) > + (touch > + (lambda (file-name) > + (call-with-output-file file-name (const #t)))) > + (install-rust-library > + (lambda (entry) > + (match entry > + ((name . src) > + (if (string-prefix? "rust-" name) > + (let* ((rust-length (string-length "rust-")) > + (rust-name (string-drop name > + rust-length)) > + (rsrc (string-append "vendor/" > + rust-name)) > + (unpack-status (unpack src rsrc))) > + (touch (string-append rsrc "/.cargo-ok")) > + (generate-checksums rsrc src) > + unpack-status))) For clarity it may help to replace the =E2=80=98let=E2=80=99 with =E2=80=9C= internal defines=E2=80=9D, like this: (lambda* =E2=80=A6 (define (unpack source target) =E2=80=A6) (define (touch file) =E2=80=A6) (define (install-rust-library entry) =E2=80=A6) body =E2=80=A6) > + (mkdir ".cargo") > + ;(setenv "CARGO_HOME" (string-append (getcwd) "/cargohome= ")) ^ Leftover? I don=E2=80=99t fully understand this file, but if it sounds good to you, we should apply it. OK to send an updated patch? Thank you! Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Thu Apr 13 15:48:58 2017 Received: (at 26166) by debbugs.gnu.org; 13 Apr 2017 19:48:58 +0000 Received: from localhost ([127.0.0.1]:46081 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cykjh-000603-2e for submit@debbugs.gnu.org; Thu, 13 Apr 2017 15:48:57 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:36036) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cykjf-0005zv-7h for 26166@debbugs.gnu.org; Thu, 13 Apr 2017 15:48:55 -0400 Received: from dayas.3.home (178.113.182.254.wireless.dyn.drei.com [178.113.182.254]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 15B121CA0199; Thu, 13 Apr 2017 21:48:51 +0200 (CEST) From: Danny Milosavljevic To: 26166@debbugs.gnu.org Subject: [PATCH v2] gnu: cargo: Simplify unpacking. Date: Fri, 14 Apr 2017 00:04:02 +0200 Message-Id: <20170413220402.8076-1-dannym@scratchpost.org> X-Mailer: git-send-email 2.12.1 In-Reply-To: <87pogosznr.fsf@gnu.org> References: <87pogosznr.fsf@gnu.org> Tags: patch X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 26166 Cc: Danny Milosavljevic X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) * gnu/packages/rust.scm (cargo): Simplify unpacking. [arguments]<:modules>: Add (srfi srfi-1). [arguments]<:phases>: Adapt 'unpack-submodule-sources' phase to more clearly seperate the tasks it does. Add helper procedures 'unpack', 'touch', 'install-rust-library'. [arguments]<:phases>: Rename 'set-cargo-home' to 'set-environment-up' and make it use official cargo directories. [arguments]<:phases>: Remove 'configure' phase. --- gnu/packages/rust.scm | 56 ++++++++++++++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 21 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index a9710ba4d..1217ec71f 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -301,6 +301,8 @@ safety and thread safety guarantees.") ;; Dual licensed. (license (list license:asl2.0 license:expat)))) +;; This tries very hard not to get into a cyclic dependency like this: +;; cargo <- cargo-build-system <- cargo. (define-public cargo (package (name "cargo") @@ -825,6 +827,11 @@ safety and thread safety guarantees.") (arguments `(#:cargo ,cargo-bootstrap #:tests? #f ; FIXME + #:modules + ((ice-9 match) + (srfi srfi-1) ; 'every + (guix build utils) + (guix build cargo-build-system)) #:phases (modify-phases %standard-phases ;; Avoid cargo complaining about missmatched checksums. @@ -833,30 +840,36 @@ safety and thread safety guarantees.") (delete 'patch-usr-bin-file) (add-after 'unpack 'unpack-submodule-sources (lambda* (#:key inputs #:allow-other-keys) - (let ((unpack (lambda (source target) - (mkdir-p target) - (with-directory-excursion target - (zero? (system* "tar" "xf" - source - "--strip-components=1")))))) + (define (unpack source target) + (mkdir-p target) + (with-directory-excursion target + (zero? (system* "tar" "xf" + source + "--strip-components=1")))) + (define (touch file-name) + (call-with-output-file file-name (const #t))) + (define (install-rust-library entry) + (match entry + ((name . src) + (if (string-prefix? "rust-" name) + (let* ((rust-length (string-length "rust-")) + (rust-name (string-drop name + rust-length)) + (rsrc (string-append "vendor/" + rust-name)) + (unpack-status (unpack src rsrc))) + (touch (string-append rsrc "/.cargo-ok")) + (generate-checksums rsrc src) + unpack-status))) + (_ #t))) (mkdir "vendor") - (for-each (lambda (p) - (let ((name (car p))) - (if (string-prefix? "rust-" name) - (let ((rsrc (string-append "vendor/" - (string-drop name - (string-length "rust-"))))) - (unpack (assoc-ref inputs name) rsrc) - (system* "touch" (string-append rsrc "/.cargo-ok")) - (generate-checksums rsrc (assoc-ref inputs name)))))) inputs)))) - ;; Set CARGO_HOME to use the vendored dependencies. - (add-after 'unpack 'set-cargo-home + (every install-rust-library inputs))) + (add-after 'unpack 'set-environment-up (lambda* (#:key inputs #:allow-other-keys) (let* ((gcc (assoc-ref inputs "gcc")) (cc (string-append gcc "/bin/gcc"))) - (mkdir "cargohome") - (setenv "CARGO_HOME" (string-append (getcwd) "/cargohome")) - (call-with-output-file "cargohome/config" + (mkdir ".cargo") + (call-with-output-file ".cargo/config" (lambda (p) (format p " [source.crates-io] @@ -868,7 +881,8 @@ directory = 'vendor' "))) (setenv "CMAKE_C_COMPILER" cc) (setenv "CC" cc)) - #t))))) + #t)) + (delete 'configure)))) (home-page "https://github.com/rust-lang/cargo") (synopsis "Build tool and package manager for Rust") (description "Cargo is a tool that allows Rust projects to declare their From debbugs-submit-bounces@debbugs.gnu.org Thu Apr 13 16:05:39 2017 Received: (at 26166) by debbugs.gnu.org; 13 Apr 2017 20:05:39 +0000 Received: from localhost ([127.0.0.1]:46097 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cykzr-0006Pp-BC for submit@debbugs.gnu.org; Thu, 13 Apr 2017 16:05:39 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:38884) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cykzq-0006Pf-7h for 26166@debbugs.gnu.org; Thu, 13 Apr 2017 16:05:38 -0400 Received: from localhost (178.113.182.254.wireless.dyn.drei.com [178.113.182.254]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 48ACA1CA0199; Thu, 13 Apr 2017 22:05:37 +0200 (CEST) Date: Fri, 14 Apr 2017 00:20:52 +0200 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: bug#26166: [PATCH] gnu: cargo: Simplify unpacking. Message-ID: <20170414002052.612ed7ae@scratchpost.org> In-Reply-To: <87pogosznr.fsf@gnu.org> References: <20170319002844.19407-1-dannym@scratchpost.org> <87pogosznr.fsf@gnu.org> X-Mailer: Claws Mail 3.14.1 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 26166 Cc: 26166@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Hi Ludo, On Fri, 07 Apr 2017 22:58:32 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > It=E2=80=99s not immediately obvious that it=E2=80=99s a simplification. = ;-) Yeah well. Simple doesn't mean shorter. I think it's clearer to understan= d what it's doing when there a procedures that have names suggesting what i= t's for. :) > For clarity it may help to replace the =E2=80=98let=E2=80=99 with =E2=80= =9Cinternal defines=E2=80=9D, Done. > I don=E2=80=99t fully understand this file, but if it sounds good to you,= we > should apply it. Yeah, Rust stuff is definitely not straightforward. What this does is it sets up dependencies that are required to build cargo = - just like cargo-vendor (an extension of cargo) would have set them up. This avoids another bootstrapping problem (we would have to have cargo-vend= or binaries). But cargo-vendor is an entirely avoidable dependency because= the format of their package metadata is stable (and very minimal). The format of the metadata is stable because cargo-vendor is the official w= ay to bundle libraries with your custom project - we just bundle them on-th= e-fly to avoid bundling them in the cargo distribution file (like David's v= ersion did before) and previously having to distribute our own custom versi= on of cargo. cargo-vendor is a way that any developer on the world can use to bundle stu= ff for his Rust project *and check it into his git repository*. That means= that metadata is on git repos Mozilla doesn't control - which means the fo= rmat has to be stable (or at least backward-compatible). Now we replace cargo-vendor entirely. Both cargo-build-system and this car= go package do cargo-vendors job in Guile (that's what install-rust-library = does; now I wonder whether I should call it 'bundle-rust-library' instead. = WDYT?). From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 19 05:54:38 2017 Received: (at 26166) by debbugs.gnu.org; 19 Apr 2017 09:54:38 +0000 Received: from localhost ([127.0.0.1]:55568 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d0mJq-0007iU-6d for submit@debbugs.gnu.org; Wed, 19 Apr 2017 05:54:38 -0400 Received: from eggs.gnu.org ([208.118.235.92]:36647) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d0mJo-0007iH-Gs for 26166@debbugs.gnu.org; Wed, 19 Apr 2017 05:54:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d0mJg-0002c7-CT for 26166@debbugs.gnu.org; Wed, 19 Apr 2017 05:54:31 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:43000) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d0mJg-0002c3-8l; Wed, 19 Apr 2017 05:54:28 -0400 Received: from reverse-83.fdn.fr ([80.67.176.83]:37596 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1d0mJf-0007DW-KP; Wed, 19 Apr 2017 05:54:28 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Danny Milosavljevic Subject: Re: bug#26166: [PATCH] gnu: cargo: Simplify unpacking. References: <20170319002844.19407-1-dannym@scratchpost.org> <87pogosznr.fsf@gnu.org> <20170414002052.612ed7ae@scratchpost.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 30 Germinal an 225 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Wed, 19 Apr 2017 11:54:25 +0200 In-Reply-To: <20170414002052.612ed7ae@scratchpost.org> (Danny Milosavljevic's message of "Fri, 14 Apr 2017 00:20:52 +0200") Message-ID: <87mvbcracu.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 26166 Cc: 26166@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) Hi Danny, Danny Milosavljevic skribis: > On Fri, 07 Apr 2017 22:58:32 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) > wrote: > >> It=E2=80=99s not immediately obvious that it=E2=80=99s a simplification.= ;-) > > Yeah well. Simple doesn't mean shorter. I think it's clearer to > understand what it's doing when there a procedures that have names > suggesting what it's for. :) Right. >> I don=E2=80=99t fully understand this file, but if it sounds good to you= , we >> should apply it. > > Yeah, Rust stuff is definitely not straightforward. > > What this does is it sets up dependencies that are required to build > cargo - just like cargo-vendor (an extension of cargo) would have set > them up. > > This avoids another bootstrapping problem (we would have to have > cargo-vendor binaries). But cargo-vendor is an entirely avoidable > dependency because the format of their package metadata is stable (and > very minimal). > > The format of the metadata is stable because cargo-vendor is the > official way to bundle libraries with your custom project - we just > bundle them on-the-fly to avoid bundling them in the cargo > distribution file (like David's version did before) and previously > having to distribute our own custom version of cargo. > > cargo-vendor is a way that any developer on the world can use to > bundle stuff for his Rust project *and check it into his git > repository*. That means that metadata is on git repos Mozilla doesn't > control - which means the format has to be stable (or at least > backward-compatible). OK, thanks for the explanation. If you can think of pointers we can add in comments to make it easier for future hackers to find out about this, feel free to add them. In the meantime, we shouldn=E2=80=99t block this patch any longer, so go ah= ead! > Now we replace cargo-vendor entirely. Both cargo-build-system and > this cargo package do cargo-vendors job in Guile (that's what > install-rust-library does; now I wonder whether I should call it > 'bundle-rust-library' instead. WDYT?). Dunno, =E2=80=98install-rust-library=E2=80=99 sounds good to me. Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sun May 07 15:21:11 2017 Received: (at control) by debbugs.gnu.org; 7 May 2017 19:21:11 +0000 Received: from localhost ([127.0.0.1]:60752 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d7Rjz-0000tK-1b for submit@debbugs.gnu.org; Sun, 07 May 2017 15:21:11 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:50480) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d7Rjx-0000tD-RY for control@debbugs.gnu.org; Sun, 07 May 2017 15:21:10 -0400 Received: from localhost (77.118.221.44.wireless.dyn.drei.com [77.118.221.44]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 7AA061CA0438 for ; Sun, 7 May 2017 21:21:08 +0200 (CEST) Date: Sun, 7 May 2017 21:21:06 +0200 From: Danny Milosavljevic To: control@debbugs.gnu.org Message-ID: <20170507212106.7b1c20b4@scratchpost.org> X-Mailer: Claws Mail 3.14.1 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: close 26166 close 26541 close 26614 close 26751 close 26692 close 26731 close 26743 close 26744 [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [85.13.128.8 listed in list.dnswl.org] 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: close 26166 close 26541 close 26614 close 26751 close 26692 close 26731 close 26743 close 26744 [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [85.13.128.8 listed in list.dnswl.org] 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject close 26166 close 26541 close 26614 close 26751 close 26692 close 26731 close 26743 close 26744 From unknown Mon Jun 16 23:45:56 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Mon, 05 Jun 2017 11:24:06 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator