I searched for "ipython-5.0.0" in the source and found this: if [ -z "$IPYTHONDIR" ]; then # We hardcode a version number in the directory name. The idea is # that we keep using the same version number as long as that is # possible. Only when some future IPython version really requires # a new structure for the $IPYTHONDIR should this version number be # changed to the new IPython version. export IPYTHONDIR="$DOT_SAGE/ipython-5.0.0" fi
So it should be viewed as "IPython, version 5.0.0 or later, as long as things remain compatible". Maybe it would be better to have a directory "ipython-config" (for example) with subdirectories that somehow convey the version information. We could also, or in addition, create a README file the existing directory with some sort of explanation. -- John On Monday, April 1, 2024 at 2:38:09 PM UTC-7 Marc Culler wrote: > The problem that it *causes* is that people think that Sage has somehow > managed to install an ancient ipython-5.0.0 in their ~/.sage directory. > The user that reported this was indeed having problems because of an out of > date ipython thet they had installed with %pip. The python package was > installed as a --user package in ~/.sage. That is where the macOS app > installs all pip packages, being disallowed from putting them into the app > bundle itself because that would break the signature and macOS would then > refuse to run the app.. > > The old version of ipython caused the new app to crash with the rather > amazing error message "object of type List is not iterable". When the user > removed their ~/.sage directory everything worked as expected. But then, > after starting Sage, they checked to see what was actually in the > directory, and were alarmed to ",find" that Sage had re-installed > ipython-5.0.0. > > As I said, this idea confuses users, and understandably so. It was not a > great idea. There were so many other, better, ways of naming the directory. > > Maybe for the next Sage release I will move the pip packages to > ~/Library/SageMath-X.Y. That won't stop Sage from creating > ~/.sage/ipython-5.0.0 but it will remove the motivation for users to look > in the .sage directory and get confused. > > - Marc > > On Monday, April 1, 2024 at 3:31:06 PM UTC-5 Nils Bruin wrote: > >> One scenario where I could see this being beneficial: >> These configurations are written into `$HOME/.sage` (normally), so that >> is not a location that is predicated by a venv or a localized subdir. If a >> user is using two different sagemath installs (e.g., one system, the other >> for development) that have incompatible ipython configs, they need to live >> in places that allow peaceful co-existence. This would do it. I agree the >> version number can look confusing, It seems like a historic artifact that >> we didn't need to change our ipython configs since version 5.0.0, probably. >> It looks to me like a fairly arbitrary choice how to mark that directory >> name. Not changing it would be the easiest solution, but if someone wants >> to make an argument that another naming convention has benefits (following >> common practices that have since evolved?) it could be changed, at the >> expense of everyone with an install needing to change locations of files >> they already customized. So based on that, I think the best time to change >> it (if at all) would be when an incompatible change in config is happening >> anyway. >> >> >> On Monday 1 April 2024 at 12:20:16 UTC-7 Dima Pasechnik wrote: >> >> >> I must say I don't know what kind of problems these versioned names are >> meant to solve. >> >> >> >> >On 31 March 2024 15:23:24 CEST, Marc Culler <marc....@gmail.com >> <https://groups.google.com/>> wrote : >> >> >if [ -z "$IPYTHONDIR" ]; then >> > # We hardcode a version number in the directory name. The idea is >> > # that we keep using the same version number as long as that is >> > # possible. Only when some future IPython version really requires >> > # a new structure for the $IPYTHONDIR should this version number be >> > # changed to the new IPython version. >> > export IPYTHONDIR="$DOT_SAGE/ipython-5.0.0" >> >fi >> >> -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/3de2c4d8-f592-4088-bb61-c063d38ec110n%40googlegroups.com.