From owner-svn-ports-head@freebsd.org Mon Feb 5 19:17:13 2018 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 18CD2EE8615 for ; Mon, 5 Feb 2018 19:17:13 +0000 (UTC) (envelope-from jrm@ftfl.ca) Received: from mail-qt0-f174.google.com (mail-qt0-f174.google.com [209.85.216.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2EBAD84C1C for ; Mon, 5 Feb 2018 19:17:12 +0000 (UTC) (envelope-from jrm@ftfl.ca) Received: by mail-qt0-f174.google.com with SMTP id l20so40985960qtj.11 for ; Mon, 05 Feb 2018 11:17:12 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=bAg/XMKFjZQO0487J7kndW/Kx75mjbxJ/mA3mLnOwuE=; b=GTvug7uzk/IrFoMhQ34xF78y6SGRK+v/0vlWymBqhZ4gPFGpxx2dsp7JbK9AUo/2w+ PQKTxhc8yfIhpoMFna6tLj9JE/1aT/Becbm3HHe2tCHED3ZqABajPLGBVV6cZ9m3wFsk vTHuxeSes6JaP/xTLx+G86rNVGTEJ9VjyBPwHdEFSPPGtwZF8YwHiL2iU7KEMixxln5u o/7a5zicMTVum8KkFnShdN47nNkWESMaqC/1R9Y4lHykgD649y6ua1rentsxQRasj2dh YWQddMLlmziRUUl73s/CpXIP98hXzFQilMirZ2p8jiL9V4bTzMeq5eMA1A05n9Bx2Vpe T+QQ== X-Gm-Message-State: APf1xPAGKpjPX2IZKLDPZLbhPhAPvcODQfW18+L7TR9FddHyXiNNXUY0 Tb/LlWamLrFlzBnz/ii/66/q2g== X-Google-Smtp-Source: AH8x227FstfPgvOrOu1cCa5HyTLvWlo4OELcMpOaa7J5XoeqEMrmaTfVrZTB11RLRKFXL2x671eFXw== X-Received: by 10.200.67.30 with SMTP id z30mr10012485qtm.197.1517858225356; Mon, 05 Feb 2018 11:17:05 -0800 (PST) Received: from phe.ftfl.ca.ftfl.ca (hlfxns017vw-47-55-140-73.dhcp-dynamic.fibreop.ns.bellaliant.net. [47.55.140.73]) by smtp.gmail.com with ESMTPSA id x207sm6159040qka.91.2018.02.05.11.17.04 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 05 Feb 2018 11:17:04 -0800 (PST) From: Joseph Mingrone To: Sunpoet Po-Chuan Hsieh Cc: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org, ruby@freebsd.org Subject: Re: svn commit: r460901 - head/devel/rubygem-cocaine References: <201802041013.w14ADpZR024976@repo.freebsd.org> <86inbcx4m7.fsf@phe.ftfl.ca> Date: Mon, 05 Feb 2018 15:17:03 -0400 In-Reply-To: (Sunpoet Po-Chuan Hsieh's message of "Tue, 6 Feb 2018 01:59:58 +0800") Message-ID: <86wozrqma8.fsf@phe.ftfl.ca> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (berkeley-unix) MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Feb 2018 19:17:13 -0000 --=-=-= Content-Type: text/plain Sunpoet Po-Chuan Hsieh writes: > On Sun, Feb 4, 2018 at 9:32 PM, Joseph Mingrone wrote: >> Sunpoet Po-Chuan Hsieh writes: >> > Author: sunpoet >> > Date: Sun Feb 4 10:13:51 2018 >> > New Revision: 460901 >> > URL: https://svnweb.freebsd.org/changeset/ports/460901 >> > Log: >> > Update to 0.6.0 >> > Changes: https://github.com/thoughtbot/cocaine/blob/master/NEWS.md >> > Modified: >> > head/devel/rubygem-cocaine/Makefile >> > head/devel/rubygem-cocaine/distinfo >> > Modified: head/devel/rubygem-cocaine/Makefile >> > ============================================================ >> ================== >> > --- head/devel/rubygem-cocaine/Makefile Sun Feb 4 10:13:46 2018 >> (r460900) >> > +++ head/devel/rubygem-cocaine/Makefile Sun Feb 4 10:13:51 2018 >> (r460901) >> > @@ -2,7 +2,7 @@ >> > # $FreeBSD$ >> > PORTNAME= cocaine >> > -PORTVERSION= 0.5.8 >> > +PORTVERSION= 0.6.0 >> > CATEGORIES= devel rubygems >> > MASTER_SITES= RG >> > @@ -12,7 +12,7 @@ COMMENT= Small library for doing (command) lines >> > LICENSE= MIT >> > LICENSE_FILE= ${WRKSRC}/LICENSE >> > -RUN_DEPENDS= rubygem-climate_control>=0.0.3:devel/rubygem-climate_ >> control >> > +RUN_DEPENDS= rubygem-terrapin>=${PORTVERSION}:devel/rubygem-terrapin >> > NO_ARCH= yes >> > USE_RUBY= yes >> > Modified: head/devel/rubygem-cocaine/distinfo >> > ============================================================ >> ================== >> > --- head/devel/rubygem-cocaine/distinfo Sun Feb 4 10:13:46 2018 >> (r460900) >> > +++ head/devel/rubygem-cocaine/distinfo Sun Feb 4 10:13:51 2018 >> (r460901) >> > @@ -1,2 +1,3 @@ >> > -SHA256 (rubygem/cocaine-0.5.8.gem) = ed44cebd5eae70ccdaa2ca926cfe50 >> 71c31f8a07d25b63779beb6a7a5a2f7306 >> > -SIZE (rubygem/cocaine-0.5.8.gem) = 17408 >> > +TIMESTAMP = 1517673342 >> > +SHA256 (rubygem/cocaine-0.6.0.gem) = a2fba54f9d20f081b7f1e783baaf00 >> 26ca4794dd852a7efe37dcc38ef8c7d0ca >> > +SIZE (rubygem/cocaine-0.6.0.gem) = 12800 >> Again, this breaks downstream ports, including net-im/mastodon. >> All of the latest versions of devel/rubygem-paperclip [1], >> devel/rubygem-paperclip-rails5, devel/rubygem-paperclip-rails50, and >> multimedia/rubygem-av [2] require a version of this gem _less_ than 0.6 >> devel/rubygem-paperclip-rails5 and multimedia/rubygem-av (the two ports >> that are required by other ports) have been patched [3] to use the newer >> cocaine gem. Let's now hope they work, despite forcing a newer >> dependency than what upstream specifically requests. >> [1] https://rubygems.org/gems/paperclip/versions/5.2.1 >> [2] https://rubygems.org/gems/av/versions/0.9.0 >> [3] r460926 and r460927 > I always check dependent ports. I'm sorry this one is missed. Ah, it was not intentional. In that case, no worries. It happens. Your miss _rate_ is quite low. ;-) > And the gemspec fix is enough because 0.6.0 won't break the > functionality. Probably, but how do we know this? I have no Ruby/Rails coding experience, but my understanding of the gemspec is that it is a unambiguous description of the dependent gem versions that the developer suggests will work. We could inspect the code, run tests and hope for the best, but I feel a policy along these lines would result in the least breakage: 1. Only update a gem port when all other ports that depend upon it have a gemspec that conforms to the new version. 2. _If_ the updated gem is required, then either copy gem ports, so that we have all required versions in the tree, or patch the gemspec. Copying gem ports can get messy when the port has many (reverse) dependencies. Patching the gemspec can cause unintended breakage as described above. In practice, I think we generally follow this policy, but stating it is helpful for a relative newcomer to ruby ports like me. Do you agree? Have I missed any other issues? Joseph --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEEVbCTpybDiFVxIrrVNqQMg7DW754FAlp4ra9fFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDU1 QjA5M0E3MjZDMzg4NTU3MTIyQkFENTM2QTQwQzgzQjBENkVGOUUACgkQNqQMg7DW 755DJw//VdJynoTZCUO5Is5RbtVaF5jVMtH0Y5o3Pu/rl8ho94jzp0k/8GBJdxzg ESYHVXyWi4QTvUugCj4ga/Z8/yyJzMeo/W4MFLY3pMa8Pzg1pGKvz9i89AjfDqHC 8sFj4WmAW1htkXlXQcilQoGm7JBDzNQ/gTn1iLJaX+sZKR4RUf+cok0Kta7enZL4 nWh4SJlFB7DBvXSyMmwHua97NX8FMRNom5O6Hzi30Q8T3iN3ngey2RFH7Rdeg06N HH4ss3ZixYi/QOKGDNd8FoeSWfbUS04YzHJhatm37LJm8OXmHHA6m8bRv5xQU910 BwoH9d4bUq3NXQDJgzFIiavnVC68vXvR8LKfx6Xqs4/i/mzGSUD/sD4Y6X6X17h0 xtcF1WsulGCcQOKHq1aCZASk1f2+P/ILHo1F/GDkVjgmAxcp79vXu4kp4JvFxCkg a8GSeqXkcanv+1SoVFfYp92Dvv93dVMMaZ5TVM92GxMk1Kgu00aFJ7Qv7UrgQ/Kr aQ9vR7g/tB6E3xKc2XPnkCR1CVWcd9FcMCvaHaekzB3oWLcLwpEaDXOsHUmiTIcr SOAiYGdsRGkgLbM2PH72M6eOx9TbDVPFhY3ZLryAAteu+ZtUNRha3Mz+Gn0Q5YbJ ax0gnZGHi+VaLihY4jGK0ts7BdQq1VcEvMVbsAOBfJdGAA3ospo= =DKgC -----END PGP SIGNATURE----- --=-=-=--