OflPNzNIci6n X4KUc17JTE0sxZeuCDf64wG8hc6btNbUrO8Ev7ozwsQfI8DSv2C60E9mQNzF1lJOkcKYyQ XYtQwNXAWqNNE7hXoXFmT4tyAclFTdC0ITsJxOh7hPmLVRqUWfUX5pm4uzFtiTrs46MUR2 vv4RCxGZ2LXn/jKP0mD0cKkqfkn7zE8TGANQEuHEJpqk5CUb5j6pW/1xUKLUvA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1717532889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=T6RWXtlakxmquiSL5MKp1r6qSQDXkcomvE8a0LPaWc8=; b=lLN7uUgoKDzr8Ei3eQ+sQDvN2ubdn90+UgEUWUHV216J4rsy75cYX9eMsh5I09mU+LJ6OY +83K6ir3lcGTBy8JLUR/2syFiANyXBlA1QQs6xHcxwbuoRzLo/N4BXK5jWFyeV7MNeJ48V KfuI8B/F4HXoTCWttSgLCTeaC3Z8YbF0agCJdl6th6MaXlf72SXQ9no4FshSz7FQV9+Kul syPXxNjtFvIbisqlv3o2X42UnW/RcGMwtWhs/MOChOuMFoEoUreRNiy6XCkrO1djQybouC HYrAqTXBhswYNfr0CoC6whmllNzB0iKXuPmsSV0UVQZiLnSV3PyNC28HKmjXHg== Received: from aniel.nours.eu (nours.eu [IPv6:2001:41d0:8:3a4d::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: bapt) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Vv2Gd2HJCzJG8; Tue, 4 Jun 2024 20:28:09 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: by aniel.nours.eu (Postfix, from userid 1001) id 0BB55D3031; Tue, 4 Jun 2024 22:28:07 +0200 (CEST) Date: Tue, 4 Jun 2024 22:28:07 +0200 From: Baptiste Daroussin To: Gleb Popov Cc: Charlie Li , Joseph Mingrone , Ruslan Makhmatkhanov , ports-committers , dev-commits-ports-all@freebsd.org, dev-commits-ports-main@freebsd.org Subject: Re: git: 988da7290c99 - main - ./UPDATING: mention the python default version change Message-ID: <7mwhr244z33obcsagjyozsbb5w2ydmiwgehmi5kp2pnihmhm7l@t4ztvn5e2z2f> References: <202405291420.44TEKdBd073352@gitrepo.freebsd.org> <86frtu6rxz.fsf@phe.ftfl.ca> <8d5be29c-94a7-4edd-bc61-c50e8b0ff754@freebsd.org> List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-all@freebsd.org Sender: owner-dev-commits-ports-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Tue 04 Jun 12:14, Baptiste Daroussin wrote: > On Tue 04 Jun 12:00, Gleb Popov wrote: > > I don't quite get what's being talked about here. I update PHP packages the > > same way as Python ones. > > > > When I want to switch Nextcloud to a newer PHP version, I uninstall it, > > then do an autoremove sweep, then install a new one. > > > > I just upgraded my Python packages the same way - remove old applications, > > autoremove deps, install the same applications with a new py311 prefix. > > > > Getting conflicts is actually good there, as it either alerts me of a > > py39-only software or remove py39 leftovers. > > except that without a pkg set, the number of conflicts is so huge that it > results in too complex problem for a solver to deal with and the outcome is it > proposes the user to delete half of kde for example or many other bad scenario > for the end user. > > Perl upgrades and php upgrades do not generate such complicated issues because > the way they we deal with them in the ports tree is way more upgradable > friendly. > > I don't know how this should be done with python, and maybe I should spend some > time diving into it, but clearly the way it is done now is not friendly and > something either on the technical side or the policy side should be done. > > each time a procedure involves pkg set, it means we have not thought enough > about it to make it user friendly. > > Best regards, > Bapt Self replying: example of impossible solving issues generated by the current policy in python world let say you have py39-mutagen and py39-matrix-synapse installed. There is absolutly no way for pkg to discover that because default python was changed to python 3.11 then those package should now be named py311-mutagen and py311-matrix-synapse. Which means the solver will current propose to remove them and all they depend on, as they do not exist anymore in remote repositories, or if we have stronger rules than we have now pkg will die in a non solveable situation and let the user try to figure out what should be done. This is our role as ports committers to find something which don't let users be trapped in such situation. Best regards, Bapt