sys-bio / tellurium

Python Environment for Modeling and Simulating Biological Systems
http://tellurium.analogmachine.org/
Apache License 2.0
109 stars 36 forks source link

Unable to start Python kernel #289

Open draeger opened 7 years ago

draeger commented 7 years ago

The front end of Tellurium displays the following error message when launching:

The Tellurium Python kernel failed to start. It may be missing or non-functional. Your Tellurium installation may be corrupt.

I installed Tellurium also via pip which loaded several packages, but it is not clear how to launch the front end from the command line.

This error did only occur after "updating" from Tellurium 2.0.x to 1.0.2 on macOS.

0u812 commented 7 years ago

Please remove the ~/Library/Application Support/Tellurium directory and then start Tellurium again.

This is one detail we haven't worked out yet. We don't necessarily want to wipe this directory every time the user installs a new version of Tellurium (which can come with a new version of Python) because the user could have made changes. Currently, we're just asking people to manually remove or rename the directory, in order to not delete anything important.

The actual error is caused because the Python version changed from 3.6.1 to 3.6.3, and hence the pathname to the interpreter changed also.

0u812 commented 7 years ago

Just added a FAQ entry for this, as anyone installing Tellurium more than once will run into it.

0u812 commented 7 years ago

Also, please feel free to suggest any way this behavior could be improved. It's mainly a UX issue. Since the app data directory mentioned above can be modified by the user (e.g. by installing packages etc), we wanted to take the conservative route and not delete it automatically. However, this situation also is not ideal, because it forces the user to manually rename/remove the directory. Some potential options:

draeger commented 7 years ago

It could already be helpful if the error message had a link to the FAQ. Since Tellurium targets a user base with programing experience, this would be acceptable, I think.

hsauro commented 7 years ago

What installer do you use? An installer should know what was changed by the user so that when it uninstalls it doesn't remove user added material. This is how things work when I've used Windows installers and I think its what the Windowes installer for the IDE currently does. One thing the IDE WIndows instraller currently does is also ask when uninstalling whether you want to remove user settings, usually this is no since you want to maintain your tabs etc in the same configuration. Probably doesn't apply as much with the jupyter version although I assume a user would want to preserve color themes etc between intallations.

I would delete all mateiral added by the initial installation and preserve anything changed or added since.

Herbert

On Mon, Nov 6, 2017 at 1:17 PM, Kyle Medley notifications@github.com wrote:

Also, please feel free to suggest any way this behavior could be improved. It's mainly a UX issue. Since the app data directory mentioned above can be modified by the user (e.g. by installing packages etc), we wanted to take the conservative route and not delete it automatically. However, this situation also is not ideal, because it forces the user to manually rename/remove the directory. Some potential options:

  • Ask the user if the directory should be deleted (losing all modifications)
  • Allow keeping the older directory & Python version (however, the tellurium package will likely need to be upgraded to work with the new notebook viewer)
  • Add & use the new directory, but keep the old one (nothing gets deleted, but a lot of space is used up by each new tellurium release)

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/sys-bio/tellurium/issues/289#issuecomment-342289655, or mute the thread https://github.com/notifications/unsubscribe-auth/ABAZDjuMYh6P6Yarv4lPwy_YnGZvOtDeks5sz3dfgaJpZM4QT3UP .

draeger commented 7 years ago

It would be good to keep the user's information if this was entered, such as ORCID etc.

kirichoi commented 7 years ago

I think the first option (asking the user whether the directory should be deleted) is the way to go. Give them the option and let them know why you should consider deleting the directory.