intermine / intermine/intermine-apps-c

Google Charts API Moved; broke all list widgets, even the ones that didn't use charts.

Open
#57 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
1
Forks
3
PR merge metrics
No merged PRs in 30d

Description

We thought we had fixed https://github.com/intermine/intermine-apps-c/issues/45, but we had not.

There's a mix of a few things going on here:

1. 🚚 Google moved the old jsapi script. The fix seems straightforward at face value - see https://developers.google.com/chart/interactive/docs/basic_load_libs#updateloader for the method signature update, and the updated url to point to the new script. This was completed in the fix for #45, and the up-to date script works _fine_ so long as you're only using it locally, e.g. by serving a clone of this repo on your machine.
2. 💥 When we deploy the "fixed" script onto InterMine something still fails. My guess is that there are a few things going on - we probably need to fix some places it's hardcoded into intermine, too, like these: https://github.com/intermine/intermine/search?q=jsapi&unscoped_q=jsapi ◀️ ◀️ ◀️ This is where the biggest problem still lies - I'm not sure what's going on. I thought maybe it was the minified version, or the bundled vs unbundled versions but I think I managed to rule that out, too. I would suggest double-checking both these avenues, though.
3. 🍒 The cherry on the top: when the google chart loading fails it kills all of the other widgets, such as enrichment, even though the enrichment widgets don't user the google charts api. Initialising the google widgets in a try/catch block would fix this, and make all the widgets a bit more robust.

Contributor guide

No contributing guide indexed for this repository

Research direction

Read the linked #45 fix and the Google Charts loader update, then search the repository for hardcoded “jsapi” references as suggested in the issue. Compare local and deployed behavior, checking both bundled and unbundled paths. Done means chart widgets load after deployment and a chart-loading failure no longer prevents unrelated widgets such as enrichment from initializing.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.