laurent22 / joplin

Joplin - the privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and iOS.
https://joplinapp.org
Other
45.99k stars 5k forks source link

Chrome's latest update broke Web clipper autocomplete #5426

Open nikosvaggalis opened 3 years ago

nikosvaggalis commented 3 years ago

Environment

Joplin version: 2.35 Clipper:2.1.3 Platform: Win10 x64 OS specifics: Chrome:93.0.4577.63

Steps to reproduce

  1. When clipping a web page try to enter something into the Tags drop down,nothing happens.

Describe what you expected to happen

Should bring a context sensitive list of the tags up

Logfile (The GET /folders works as it brings up a list of the folders,but /tags does not bring up a list of Tags )

2021-09-06 10:05:30: "Starting Clipper server on port 41184" 2021-09-06 10:10:56: "Request: GET /ping" 2021-09-06 10:10:56: "Request: GET /auth/check?token=44444" 2021-09-06 10:10:56: "Request: GET /folders?as_tree=1&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=1&order_by=title&order_dir=ASC&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=2&order_by=title&order_dir=ASC&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=3&order_by=title&order_dir=ASC&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=4&order_by=title&order_dir=ASC&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=5&order_by=title&order_dir=ASC&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=6&order_by=title&order_dir=ASC&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=7&order_by=title&order_dir=ASC&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=8&order_by=title&order_dir=ASC&token=44444" 2021-09-06 10:10:56: "Request: GET /tags?page=9&order_by=title&order_dir=ASC&token=44444"

Note

Tried on the older version of Chromium 92.0.4515.0 (Developer Build) (64-bit) and it does work without having to do anything else. Firefox works as well

tangodev commented 3 years ago

This is mostly a copy-pasta of my post seen here: https://discourse.joplinapp.org/t/web-clipper-autocompletion-broke/12589/22

environment

Brave browser: Version 1.30.87 Chromium: 94.0.4606.71 (Official Build) (64-bit)
Clipper: 2.1.3

Joplin 2.4.9 (prod, linux)

Client ID: [redacted]
Sync Version: 3
Profile Version: 39
Keychain Supported: No

Revision: bb44c4e

popup

This is my log dump from after inspecting the popup:

Popup: Init bridge and restore state...
main.chunk.js:1 Popup: Init bridge
main.chunk.js:1 Popup: Env: prod
main.chunk.js:1 Popup: Creating React app...
main.chunk.js:1 findClipperServerPort: Trying 41184
main.chunk.js:1 findClipperServerPort: Got response: JoplinClipperServer
main.chunk.js:1 Popup: Restoring saved state: 
Object
main.chunk.js:1 Popup: GET auth/check
main.chunk.js:1 Sending message  
Object
main.chunk.js:1 checkAuth: we already have a valid token - exiting
main.chunk.js:1 Popup: GET folders
main.chunk.js:1 Popup: Got command: 
Object
index.html:1 Unchecked runtime.lastError: The message port closed before a response was received.
main.chunk.js:1 Popup: GET tags
main.chunk.js:1 Popup: Saving state 
Object
2
main.chunk.js:1 Popup: GET tags
main.chunk.js:1 Popup: Saving state 
Object
DevTools failed to load source map: Could not load content for chrome-extension://alofnhikmmkdbbbgpnglcpdollgjjfek/popup/build/static/js/runtime-main.js.map: HTTP error: status code 404, net::ERR_UNKNOWN_URL_SCHEME
DevTools failed to load source map: Could not load content for chrome-extension://alofnhikmmkdbbbgpnglcpdollgjjfek/popup/build/static/js/2.chunk.js.map: HTTP error: status code 404, net::ERR_UNKNOWN_URL_SCHEME
DevTools failed to load source map: Could not load content for chrome-extension://alofnhikmmkdbbbgpnglcpdollgjjfek/popup/build/static/js/main.chunk.js.map: HTTP error: status code 404, net::ERR_UNKNOWN_URL_SCHEME
DevTools failed to load source map: Could not load content for chrome-extension://alofnhikmmkdbbbgpnglcpdollgjjfek/popup/build/static/css/main.chunk.css.map: HTTP error: status code 404, net::ERR_UNKNOWN_URL_SCHEME

It seems that Clipper is connecting to Joplin's server, but gets nothing: Unchecked runtime.lastError.

I start to type hear, a substring of a tag that I have. At this stage the autocomplete was always suggesting something. I see this in the logs:

Popup: Saving state {selectedFolderId: '063f384d48d949298ec781eaa330ebfc'}

image

script

This is what I have when debugging the content script:

Failed to load resource: net::ERR_BLOCKED_BY_CLIENT
/clipper/#debugging-the-extension:1 Not allowed to load local resource: chrome://extensions/
/clipper/#debugging-the-extension:1 Not allowed to load local resource: chrome://extensions/
/clipper/#debugging-the-extension:1 Not allowed to load local resource: chrome://extensions/
index.js:6 jopext: Loading content script
index.js:551 jopext: Got command: 
Object
index.js:333 Got command: isProbablyReaderable
index.js:551 jopext: Got command: 
Object
index.js:333 Got command: isProbablyReaderable
DevTools failed to load source map: Could not load content for https://joplinapp.org/css/bootstrap.min.css.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE

After clicking on the popup I also get:

jopext: Got command: 
{name: 'isProbablyReaderable'}
VM43 index.js:333 Got command: isProbablyReaderable
tangodev commented 3 years ago

@tessus are there any obstacles here (apart from developer time being finite)? Last time a simple tag update fixed it. Is this a similar case, or is it more involved? :thinking:

tessus commented 3 years ago

I can't reproduce this problem. e.g. I have a tag called template, when I start typing t the tag template shows up.

Clipper: 2.1.3 Joplin: 2.5.8

tangodev commented 2 years ago

Apologies for the late reply. I have a setup that may be helpful in reproducing the behavior on your end.

I used Vagrant. This box specifically: https://app.vagrantup.com/peru/boxes/ubuntu-18.04-desktop-amd64/versions/20211016.01 I used the stock version of firefox

ii  firefox                                    93.0+build1-0ubuntu0.18.04.1                    amd64        
clipper: 2.1.3

and installed chrome:

ii  google-chrome-stable                       96.0.4664.45-1                                  amd64        
clipper: 2.1.3

joplin used: Joplin-2.5.10.AppImage

Results

chrome

joplin-clipper-t-shoot-chrome-on-ubuntu

firefox

joplin-clipper-t-shoot-firefox-on-ubuntu

I hope this helps!

tangodev commented 2 years ago

Is the "vagrant way of doing it" helpful, @tessus ? I still have my box, so if you need more info I can open it again and do more troubleshooting.

tessus commented 2 years ago

I'm using Proxmox as a virtualization solution. There is a vagrant plugin, but it hasn't been developed since 2016 and a bunch of stuff is missing. So personally I can't use it really, but it's great to have a reliable reproduction env on your end.

I haven't looked at the clipper code for a while, so Laurent will have to look into it.

tangodev commented 2 years ago

Hello @laurent22 , I'd like to bump this issue up. The lack of autocomplete makes my workflow pretty much broken, since I rely heavily on tags (a few notebooks, but lots of tags). Could you please look into this?

laurent22 commented 2 years ago

This is a bug in Chrome: https://groups.google.com/a/chromium.org/g/chromium-extensions/c/NYFOHdi_RCA

tangodev commented 2 years ago

Thank you for the response!

Since I don't have access:

image

I'd like to ask you to star or raise awareness somehow for this issue (if you haven't already). Maybe that'll convince the developers to increase the priority.

laurent22 commented 2 years ago

For the record, I've tried to replace the tag datalist component with the autocomplete.js lib but couldn't get it working:

https://github.com/laurent22/joplin/tree/clipper_tag_autocomplete

Just putting it there in case someone figures it out. Google should fix their browser though.

tangodev commented 2 years ago

It started working for me. Can you guys re-test on your ends? Looks like it got fixed upstream.

laurent22 commented 2 years ago

Indeed it looks like it's been fixed, it works for me on Version 97.0.4692.71.