From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 2A4BD138334 for ; Thu, 20 Jun 2019 19:02:25 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 44726E095F; Thu, 20 Jun 2019 19:02:24 +0000 (UTC) Received: from smtp.laposte.net (smtpoutz2.laposte.net [194.117.213.8]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 259E6E095F for ; Thu, 20 Jun 2019 19:02:24 +0000 (UTC) Received: from smtp.laposte.net (localhost [127.0.0.1]) by lpn-prd-vrout005 (Postfix) with ESMTP id A2996A65106 for ; Thu, 20 Jun 2019 21:02:22 +0200 (CEST) Received: from smtp.laposte.net (localhost [127.0.0.1]) by lpn-prd-vrout005 (Postfix) with ESMTP id 854E3A651F2 for ; Thu, 20 Jun 2019 21:02:22 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=laposte.net; s=mail0; t=1561057342; bh=Kpg9DzMT+z81MaDv1z2ft1ywW6fhUkVs1ixH5NlVMQE=; h=Date:From:To:In-Reply-To:References:Subject; b=ClGJTkqnck7Z54/Wpl/pc8UUMAq0aqTE8m1Kj5YuFd26Go63/kmu+0B155g6IkjOG 99Gasm8i2fsbZbg2inr38O0kq38e1DE+d4YocKkmtWBpZarVLSvWEO0p0RjbkuqJKo VlSXP0MmjuqE/HLYM4MSrr4yEqcDAWsKQrwNl6npiytzVMm8S9d1Yodrxp9y88Ie63 NJc+5aNCKlcrr2h9Kq2Xq6Nm2rluh8C7d1FgdkSulDhh5f8gZxz3sK5YWpmN3ujZLY xt40iB7HY73ydrAef2Z6QYiBK+7/BN+rtEovCkb7zFBDRxerDXNkrDkmWKHTi+qROC QlVCYUYZb5WTg== Received: from lpn-prd-mstr209.laposte (lpn-prd-mstr209.prosodie [10.128.59.209]) by lpn-prd-vrout005 (Postfix) with ESMTP id 65E15A65177 for ; Thu, 20 Jun 2019 21:02:22 +0200 (CEST) Date: Thu, 20 Jun 2019 21:02:22 +0200 (CEST) From: michael.lienhardt@laposte.net To: gentoo-portage-dev@lists.gentoo.org Message-ID: <498256208.5658971.1561057342085.JavaMail.zimbra@laposte.net> In-Reply-To: <0f376a7a-8ec1-1374-df2a-bc6a591eaa04@laposte.net> References: <0f376a7a-8ec1-1374-df2a-bc6a591eaa04@laposte.net> Subject: [gentoo-portage-dev] Constraint-Based Dependency Solver for Portage: again Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-portage-dev@lists.gentoo.org Reply-to: gentoo-portage-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [86.238.216.86] X-Mailer: Zimbra 8.0.6_GA_5922 (zclient/8.0.6_GA_5922) Thread-Topic: Constraint-Based Dependency Solver for Portage: again Thread-Index: m7Rv+DjSYwR4SflsL+ieoPqWAGb5Qw== X-VR-FullState: 0 X-VR-Score: 0 X-VR-Cause-1: gggruggvucftvghtrhhoucdtuddrgeduvddrtdeggddufeeiucetufdoteggodetrfdotffvucfrrhho X-VR-Cause-2: fhhilhgvmecunfetrffquffvgfenuceurghilhhouhhtmecuhedttdenucenucfjughrpeffhffvkfgj X-VR-Cause-3: fhfugggtgfhiofhtsehtjegttdertdejnecuhfhrohhmpehmihgthhgrvghlrdhlihgvnhhhrghrught X-VR-Cause-4: sehlrghpohhsthgvrdhnvghtnecuffhomhgrihhnpehgihhthhhusgdrtghomhenucfkphepuddtrddu X-VR-Cause-5: vdekrdehledrvddtledpkeeirddvfeekrddvudeirdekieenucfrrghrrghmpehmohguvgepshhmthhp X-VR-Cause-6: ohhuthdpihhnvghtpedutddruddvkedrheelrddvtdelpdhhvghloheplhhpnhdqphhrugdqmhhsthhr X-VR-Cause-7: vddtledrlhgrphhoshhtvgdpmhgrihhlfhhrohhmpehmihgthhgrvghlrdhlihgvnhhhrghrughtsehl X-VR-Cause-8: rghpohhsthgvrdhnvghtpdhrtghpthhtohepghgvnhhtohhoqdhpohhrthgrghgvqdguvghvsehlihhs X-VR-Cause-9: thhsrdhgvghnthhoohdrohhrghenucevlhhushhtvghrufhiiigvpedt X-VR-AvState: No X-VR-State: 0 X-Archives-Salt: 3519cc5b-4133-4c3e-80be-51751f85cf3d X-Archives-Hash: 70fdb28b33e73d38f2a6108b5985b887 Dear all, A few months ago, I got back to my constraint-based dependency solver for portage, that I had to leave for a while. Thanks to Zac Medico, it is now based on portage itself to query the portage tree, and so the code is far simpler (and far less buggy). It is on github: https://github.com/gzoumix/pdepa I still have some work to do on the implementation, and with some colleagues, we are planning to publish it in a conference, with the related theory. However, to have relevant information to publish, I need your help, if you could answer some questions that will come up during testing. For instance, in all my tests, emerge (during its dependency resolution) always replaces atoms with the latest version of the pc that matches it, even with all possible backtracking options being selected (I noticed this behavior because emerge failed installing a package such that the latest corresponding cpv could be installed, while the previous version could be). Is it really the default behavior of emerge, and if yes, is there a way to make emerge consider all matching cpv for an atom? Thank you! Michael