Black Lives Matter. Please consider donating to Black Girls Code today.

Browsers compatibility

I have a Dash app which loads fine in both Firefox and Chromium but in Brave none of the charts is shown, and a few other elements too. I am a n00b in browser compatibility so I do not know what’s the issue in Brave breaking the display, any idea?
I do not see how I could modify something to make it compatible, I guess it needs to be done at the Dash package level, is that right?
in general, what’s the state with compatibility between Dash and other browsers than Firefox or Chrome/Chromium?

The Dash integration tests run against Chrome (https://github.com/plotly/dash-renderer/blob/55206f6a84741a25fdeb42c0dfecc359d2dba675/tests/IntegrationTests.py#L19).

Dash is manually tested against:

  • IE11 on Windows 10
  • IE10 on Windows 8
  • Microsoft Edge 15 on Windows 10
  • Firefox 54 on Windows 10
  • Chrome 59 on Windows 10 and OSX 10.10
  • Opera 46 on Windows 10
  • Safari 10.1 on OSX 10.10

We do the cross-browser cross-platform testing using BrowserStack.

First time I’ve heard of Brave! It’s pretty nice :slight_smile:

I just manually tested Brave on my OS 10.10 machine. It seems to work for me.

Is there a particular example that isn’t working for you?

yeah, it has default adblocker and privacy shields for users who may be not able to customize Firefox/Chrome…
btw I can see the examples in the gallery just fine, but for some reason in my app all the plotly charts are there but blank and the dropdown/radio selectors do not work (nothing happens on click)… must be an issue related to my code but I have to dig more into it to understand. all is working in Firefox/Chromium.

UPDATE
in terminal I get the following:

127.0.0.1 - - [25/Jul/2017 08:34:02] “POST /_dash-update-component HTTP/1.1” 403 -

WARNING in flask_seasurf [~/anaconda2/envs/test-environment/lib/python2.7/site-packages/flask_seasurf.py:282]:
Forbidden (CSRF token missing or incorrect.): /_dash-update-component

Huh, it looks like some CSRF issue. Is this an app that is deployed or an app that is running locally?

If it is deployed, could you try setting:

server = app.server
server.secret_key = os.environ.get('secret_key', 'secret)

and see if that works? There is some more info about the secret key in plot.ly/dash/deployment

it’s running locally, what baffles me is that I do not get any CSRF issue when loading in Firefox and Chromium

( at the moment I use just app.run_server(debug=True) for localhost or app.run_server(host=‘xxx.xxx.xx.xxx’,debug=True) for a different machine, my project is still kitchen-stage, far from production :stuck_out_tongue: )

Interesting. There might be some issue with Brave blocking cookies. Is there any way to tell if that’s the case?

interesting yes, I’ll try to find out!

I am not quite sure about it.

Chris, my App has concerns with some most updated browsers. My coleagues says the app loads in all browsers but Dcc.Links only work on Opera and MS Edge.

Can I do something to correct it?

Thanks.