Skip to content

Commit

Permalink
Fix crash in single_app.ipynb from invalid version (#181)
Browse files Browse the repository at this point in the history
* Fix crash in single_app.ipynb from invalid version

This is the same issue that I recently solved in
the aiidalab and aiidalab-registry packages,
see aiidalab/aiidaslab#339 and aiidalab/aiidalab-registry#103 for details.

It did not occur to me that the same issue
occurs here right in our AiiDAlab home!

* CI: Run tests on push to main branch
  • Loading branch information
danielhollas authored Nov 19, 2024
1 parent d91ac60 commit d1ae1cc
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 18 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ name: continuous-integration
on:
push:
branches:
- master
- main
pull_request:

env:
Expand Down
15 changes: 9 additions & 6 deletions home/app_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from aiidalab.app import AppRemoteUpdateStatus as AppStatus
from aiidalab.app import AppVersion
from jinja2 import Template
from packaging.version import parse
from packaging.version import InvalidVersion, parse

from home.utils import load_logo
from home.widgets import LogOutputWidget, Spinner, StatusHTML
Expand Down Expand Up @@ -258,11 +258,14 @@ def _refresh_prereleases(self, change):
installed_version = app.installed_version

has_prereleases = app.has_prereleases
prerelease_installed = (
parse(installed_version).is_prerelease
if isinstance(installed_version, str)
else False
)
prerelease_installed = False
if isinstance(installed_version, str):
try:
parsed_version = parse(installed_version)
except InvalidVersion:
pass
else:
prerelease_installed = parsed_version.is_prerelease

with self.hold_trait_notifications():
# The checkbox can only be enabled when the app has prereleases,
Expand Down
12 changes: 1 addition & 11 deletions single_app.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -78,17 +78,7 @@
"source": [
"app_base = AiidaLabApp(name, app_data, AIIDALAB_APPS)\n",
"\n",
"try:\n",
" display(AppManagerWidget(app_base, minimalistic=False))\n",
"except Exception as error:\n",
" display(\n",
" ipw.HTML(\n",
" '<div style=\"font-size: 30px; text-align:center;\">'\n",
" f\"Unable to show app widget due to error: {error}\"\n",
" \"</div>\",\n",
" layout={\"width\": \"600px\"},\n",
" )\n",
" )"
"display(AppManagerWidget(app_base, minimalistic=False))"
]
}
],
Expand Down

0 comments on commit d1ae1cc

Please sign in to comment.