Hi, >> However, the person who reported the error to me claimed he only used `port >> select` and didn't create the symlink himself. I didn't push him to know how >> nor did I try myself, but if indeed `port select` allows this calling it a >> "user error" is a bit unjust. You cannot expect every user to know that >> plain `python` should resolve to a v2 interpreter (I also didn't), and `port >> select` shouldn't be able to break that rule. > > From my point of view, yes, MacPorts allows the user to commit this error, > and we should fix MacPorts to prevent such an error, or at least warn the > user about it, hence the ticket whose URL I mentioned earlier.
Please note, the comment in that ticket referring to the PEP is 3 years old, and the PEP itself was last modified in 2015. The PEP itself notes that "It is anticipated that there will eventually come a time where the third party ecosystem surrounding Python 3 is sufficiently mature for this recommendation to be updated to suggest that the python symlink refer to python3 rather than python2.” I am not saying day that is now, but given python 2.7 is EOL next year (last time I checked) I think it is at this point less of an error for a user to have ‘python’ point to ‘python3’ than it was when that ticket was opened. For me, we should allow ‘port select python’ to select a 3.x version, but at the moment issue a warning to the user if they do this they might have problems. Also none of what a user might or might not do with port select should have any bearing on how any given port works. If it does, it is a bug in that port. ports should be written to, if they are sensitive to the python version used, explicitly configure their builds to use a specific macports python version, and not rely on whatever the environment provides. Chris
smime.p7s
Description: S/MIME cryptographic signature