From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id GO+HAtIqu17kUgAA0tVLHw (envelope-from ) for ; Tue, 12 May 2020 23:01:38 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id OLu/H+Aqu16iCQAAbx9fmQ (envelope-from ) for ; Tue, 12 May 2020 23:01:52 +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 E4E2B9400EF for ; Tue, 12 May 2020 23:01:49 +0000 (UTC) Received: from localhost ([::1]:52630 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jYduI-0002iC-P8 for larch@yhetil.org; Tue, 12 May 2020 19:01:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50544) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jYdtR-0002gX-Ek for guix-devel@gnu.org; Tue, 12 May 2020 19:00:57 -0400 Received: from mail.thebird.nl ([94.142.245.5]:41442) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jYdtQ-0007up-8e for guix-devel@gnu.org; Tue, 12 May 2020 19:00:57 -0400 Received: by mail.thebird.nl (Postfix, from userid 1000) id 7C4A41A87; Wed, 13 May 2020 01:00:52 +0200 (CEST) Date: Tue, 12 May 2020 18:00:52 -0500 From: Pjotr Prins To: Jack Hill Subject: Re: Bundler 2 Message-ID: <20200512230052.sdcojmqnrkuzymov@thebird.nl> References: <87r1vppafb.fsf@inv.alid.pw> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20170113 (1.7.2) Received-SPF: pass client-ip=94.142.245.5; envelope-from=pjotr2020@thebird.nl; helo=mail.thebird.nl X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/12 19:00:52 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] 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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Guix-devel Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 X-Spam-Score: -1.01 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Scan-Result: default: False [-1.01 / 13.00]; GENERIC_REPUTATION(0.00)[-0.53964312257293]; DWL_DNSWL_BLOCKED(0.00)[209.51.188.17:from]; R_SPF_ALLOW(-0.20)[+ip4:209.51.188.0/24:c]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.06), country: US(-0.00), ip: 209.51.188.17(-0.54)]; TO_DN_ALL(0.00)[]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; RCPT_COUNT_TWO(0.00)[2]; MAILLIST(-0.20)[mailman]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_TLS_LAST(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:22989, ipnet:209.51.188.0/24, country:US]; MID_RHS_MATCH_FROM(0.00)[]; TAGGED_FROM(0.00)[larch=yhetil.org]; ARC_NA(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; FROM_NEQ_ENVFROM(0.00)[pjotr.public12@thebird.nl,guix-devel-bounces@gnu.org]; FROM_HAS_DN(0.00)[]; URIBL_BLOCKED(0.00)[bundler.io:url,gitlab.com:url]; MIME_GOOD(-0.10)[text/plain]; MIME_TRACE(0.00)[0:+]; DMARC_NA(0.00)[thebird.nl]; HAS_LIST_UNSUB(-0.01)[]; DNSWL_BLOCKED(0.00)[209.51.188.17:from]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.51.188.17:from]; FORGED_SENDER_MAILLIST(0.00)[] X-TUID: +bSWv1QPoyGU On Tue, May 12, 2020 at 05:48:12PM -0400, Jack Hill wrote: > On Tue, 12 May 2020, Josh Holland wrote: > > > Indeed I see that gnu/packages/ruby.scm only packages Bundler v1.17.3, > > though Bundler 2 was released in January 2019 [0]. I'm not hugely > > familiar with the Ruby ecosystem, but reading the release announcement > > suggests that they expect users/developers to have both Bundler 1 and > > Bundler 2 available. If I hadn't seen this, I'd have gone ahead and > > submitted a patch simply upgrading the Bundler package definition, but > > I'm not sure if that will then immediately break every package depending > > on it that expects Bundler 1. > > > > Is this a valid concern? Should Guix provide packages for both Bundler > > 1 and Bundler 2, or would just Bundler 2 be sufficient? I'll still > > write a definition for the new version, but I'll hold off submitting a > > patch until I've had some feedback. > > > > [0]: https://bundler.io/blog/2019/01/03/announcing-bundler-2.html > > Josh, > > Thanks for raising this question. > > I'm not a Rubist, but we do wrangle some Ruby code at work (unfortunately, > not yet with Guix). Our experience has been that everyone interacting with > the code should use the same Bundler version, so I think that as long as > Bundler v1 is supportable, we should provide both in Guix. > > What do others think? Bundler is a packaging tool that typically works at the source tree level. Its approach is to pull all dependencies in. With Guix we don't have much use for it. Better to package gems in Guix and benefit from a true reproducible and dependable deployment system that *includes* underlying dependencies, such as libxml and all that. Sometimes it is useful to try gems. I did write up in the past how I mix Guix packages with Ruby gems. Using bundler is just another layer. See https://gitlab.com/pjotrp/guix-notes/-/blob/master/RUBY.org#gnu-guix-ruby-with-bundler Not much love for bundler therefore ;) Pj.