From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from re-prd-fep-045.btinternet.com (mailomta26-re.btinternet.com [213.120.69.119]) by sourceware.org (Postfix) with ESMTPS id C23793858D20 for ; Fri, 21 Apr 2023 20:06:44 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C23793858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=dronecode.org.uk Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=dronecode.org.uk Received: from re-prd-rgout-004.btmx-prd.synchronoss.net ([10.2.54.7]) by re-prd-fep-045.btinternet.com with ESMTP id <20230421200643.GYSX10658.re-prd-fep-045.btinternet.com@re-prd-rgout-004.btmx-prd.synchronoss.net>; Fri, 21 Apr 2023 21:06:43 +0100 Authentication-Results: btinternet.com; auth=pass (PLAIN) smtp.auth=jonturney@btinternet.com; bimi=skipped X-SNCR-Rigid: 63FE9A2B05EDF59A X-Originating-IP: [81.129.146.164] X-OWM-Source-IP: 81.129.146.164 (GB) X-OWM-Env-Sender: jonturney@btinternet.com X-VadeSecure-score: verdict=clean score=0/300, class=clean X-RazorGate-Vade: gggruggvucftvghtrhhoucdtuddrgedvhedrfedtgedgudeggecutefuodetggdotefrodftvfcurfhrohhfihhlvgemuceutffkvffkuffjvffgnffgvefqofdpqfgfvfenuceurghilhhouhhtmecufedtudenucenucfjughrpefkffggfgfuvfhfhfgjtgfgsehtkeertddtfeejnecuhfhrohhmpeflohhnucfvuhhrnhgvhicuoehjohhnrdhtuhhrnhgvhiesughrohhnvggtohguvgdrohhrghdruhhkqeenucggtffrrghtthgvrhhnpeegtdeltdejlefgveeukeefheevgeetgeeugfdthedtleefheffveelvdetffeuheenucffohhmrghinhepghhithhhuhgsrdgtohhmpdgthihgfihinhdrtghomhenucfkphepkedurdduvdelrddugeeirdduieegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehhvghloheplgduledvrdduieekrddurddutdeingdpihhnvghtpeekuddruddvledrudegiedrudeigedpmhgrihhlfhhrohhmpehjohhnrdhtuhhrnhgvhiesughrohhnvggtohguvgdrohhrghdruhhkpdhnsggprhgtphhtthhopedvpdhrtghpthhtohepsghoohhlvggrnhhlrggsvghlsehgmhgrihhlrdgtohhmpdhrtghpthhtoheptgihghifihhnqdgrphhpshestgihghifihhnrdgtohhmpdhrvghvkffrpehhohhsthekuddquddvledqudegiedqudeigedrrhgrnhhgvgekuddquddvledrsghttggvnhhtrhgrlhhplhhushdrtghomhdprghuthhhpghushgvrhepjhhonhhtuhhr nhgvhiessghtihhnthgvrhhnvghtrdgtohhmpdhgvghokffrpefiuedpoffvtefjohhstheprhgvqdhprhguqdhrghhouhhtqddttdeg X-RazorGate-Vade-Verdict: clean 0 X-RazorGate-Vade-Classification: clean Received: from [192.168.1.106] (81.129.146.164) by re-prd-rgout-004.btmx-prd.synchronoss.net (5.8.814) (authenticated as jonturney@btinternet.com) id 63FE9A2B05EDF59A; Fri, 21 Apr 2023 21:06:43 +0100 Message-ID: Date: Fri, 21 Apr 2023 21:06:42 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [ITA] ruby 3.2.2 Content-Language: en-GB To: Daisuke Fujimura , "cygwin-apps@cygwin.com" References: <55c06590-b192-9c43-c20f-a1967abf920c@gmail.com> <8a06d928-4788-2290-581b-f22f881af7b2@dronecode.org.uk> From: Jon Turney In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.0 required=5.0 tests=BAYES_00,JMQ_SPF_NEUTRAL,KAM_DMARC_STATUS,KAM_NUMSUBJECT,NICE_REPLY_A,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 21/04/2023 20:36, Daisuke Fujimura via Cygwin-apps wrote: > Thank you for your review. > > Based on your review, I understand that the following steps are necessary. > > Could you please let me know if it is correct? > > 1. Release `ruby-2.6.4-2`. > - Add `ruby_PROVIDES="ruby_${${VERSION%.*}//./}"` to ruby.cygport. > - The value of this variable will be `ruby_26`. > - `provides: ruby_26` is added to `ruby-2.6.4-2.hint`. This isn't needed. I've retroactively modified the existing 2.6.4-1 and 2.6.3-1 packages to have this provide. > 2. Modify cygport and release it. > - Add code to detect dependencies on `ruby_xy`. > - It is similar to the process for `perl5_xy0`. > - https://github.com/cygwin/cygport/blob/0.36.2/lib/pkg_info.cygpart#L442 > - https://github.com/cygwin/cygport/blob/0.36.2/lib/pkg_info.cygpart#L639 Yes. I'm not asking you to do this work though, unless you really feel like it :) > 3. Rebuild `ruby-*` subpackages. Again, this isn't needed as I can retroactively modify existing packages. > - The new cygport adds `depends: ruby_26` to the hint. I've retroactively added this to the packages listed below, which install into /usr/lib/ruby/vendor_ruby/2.6/ a .so linked to cygruby260.dll: > - (Question) Does a gem that has no dependencies on `cygruby*.dll` > need to rebuild? I don't really know enough about ruby to answer that question, but I don't think so. > 4. Release `ruby-3.2.2-1`. > - The value of `provides` becomes `ruby_32`. > - Packages that depend on `ruby_26` will no longer be installable. > 5. Rebuild `ruby-*` subpackages. > - The rebuild adds `depends: ruby_32` to the hint. Yes. The idea is that this will ensures that packages which are installed together will work together, going forwards. > On Fri, Apr 21, 2023 at 1:13 AM Jon Turney wrote: >> On 20/04/2023 11:50, Jon Turney via Cygwin-apps wrote: >>> On 20/04/2023 04:28, Marco Atzeri via Cygwin-apps wrote: >>>> On 20.04.2023 00:42, Daisuke Fujimura via Cygwin-apps wrote: >>>>> Hello, >>>>> >>>>> ==== >>>>> >>>>> Cygportfile: >>>>> - >>>>> https://cygwin.com/git-cygwin-packages/?p=git/cygwin-packages/playground.git;a=shortlog;h=refs/heads/ruby >>>>> >> >> Looks fine. Thanks very much for updating this! >> >>>>> Packages, logs: >>>>> - https://github.com/cygwin/scallywag/actions/runs/4743191979 >>>> >>>> >>>> all yours >>>> >>>> Are you planning to adopt also the ruby-* sub-packages ? >>>> >>>> Regards >>>> Marco >>> >>> I have a concern about how this changes a soversioned dll inside the >>> package (from cygruby260.dll to cygruby320.dll) >>> >>> I don't know if there's anything linked against this DLL (perhaps ruby >>> bindings provided by other packages) which will get broken? >>> >>> Please hold off on uploading this until I have a chance to look into >>> that issue a bit more. >> It seems we have a handful of ruby binding packages, which install a .so >> file into /usr/lib/ruby/vendor_ruby/2.6/ which is linked against >> cygruby260.dll: >> >> ruby-gv >> ruby-marisa >> ruby-openbabel >> ruby-openwsman >> ruby-solv >> ruby-xapian >> ruby-zinnia >> subversion-ruby ruby-caca also belongs on this list, but the ruby binding hasn't been rebuilt since ruby 2.3.0 Additionally, there are some packages which install a .so into /usr/lib/gems/ruby/2.6/, which probably need similar treatment? >> (There might also be some other packages which link with that dll to >> embed the ruby interpreter or something, but those are harder for me to >> identify quickly...) >> >> I think this can be handled in the same way as perl, i.e. add something >> like "ruby_PROVIDES=ruby_${${VERSION%.*}//./}" to ruby.cygport, and add >> a mechanism to cygport to make the binding packages have an additional >> dependency on that provide. >> >> I'll look into retroactively adding this to the existing ruby 2.6.x >> packages, to prevent non-working combinations of packages getting installed.