On Wed, 5 Feb 2020 at 19:19, Ryan Schmidt wrote: > On Feb 5, 2020, at 11:48, Vincent Habchi wrote: > > > So basically I have a long list of dependents to install, one (or more) of > > which itself/themselves depend(s) on python 3.7, at least in its/their > > default version(s). Since I don’t want to have python3.7 installed > > alongside python3.8, how can I find out (easily) which port(s) in the list > > is/are requiring python37? > > Just let MacPorts install what it wants to and the port should work. It is > normal for ports to have dependencies on things that you don't otherwise wish > to use yourself. That is ok. > > For some reason many port maintainers are selecting python37 when they need a > python3. I wish they would use the latest stable version, python38, instead.
In probably all the cases the use of python37 rather than 38 is a sole consequence of: (A) nobody bothering to change that to 37 in that particular port (I'm pretty sure some of my own ports still depend on python 3.7, but there's no "dear macports, please tell me which ports I need to update" command) (B) or maybe someone trying to change it, but eventually figuring out that not all py38-* dependencies are available, and not being proactive enough to try to change the full chain. Last time I tried to upgrade buildbot to 3.8 it probably took me two hours to fix all dependencies which were still missing support for 3.8, and once I did it, both master and worker on my machines became broken (and it took me quite some time to figure out the reason) because the launch file hardcodes python version, and one needs to manually fix it and restart the service (as well as properly stop the old one, which is not always straightforward). Not that any single module care about whether it's running python 3.7 or 3.8, it's just that historic reasons / too many ports have their own consequences. That said, feel welcome to submit pull requests to update individual ports. Mojca