github-wc-polyfill icon indicating copy to clipboard operation
github-wc-polyfill copied to clipboard

Mostly empty page on most page loads

Open jrfnl opened this issue 3 years ago • 25 comments

As of today, I'm seeing mostly empty pages on initial page load:

image

This is accompanied by the following JS error:

12:32:57.307 TypeError: parent is null
Stack trace:
addEventListener@https://github.com/JustOff/github-wc-polyfill/issues:122:11
start@https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:3:12196
connect@https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:17:36272
connectedCallback@https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:1:2610
Ve@https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:17:42518
extractForeignFrameElement@https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:17:40187
loadResponse@https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:17:37295
 1 chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:17:40476
	extractForeignFrameElement https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:17:40476
	loadResponse https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js:17:37295

Doing a reload/F5 allows for the page to display, but having to do that every other click gets old fast.

jrfnl avatar Jun 24 '22 10:06 jrfnl

I can replicate on recent (UXP-based) Serpent 52.9.0; it's quite random, though, but, as OP mentioned, quite annoying 😞 ...

It does happen also with latest palefill, which was recommended as a substitute for this, no longer maintained, extension...

Since the TypeError message is generated from the following GH script:

https://github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js

... I tried blocking it with uBlock Origin (legacy),

"My Filters" tab, add:

! github.com
||github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-539e3d6a1773.js$script,important

... and I haven't witnessed any breakage thus far... YMMV, of course 😉 . This isn't a solution per se, just a "dirty" workaround...

Vangelis66 avatar Jun 24 '22 13:06 Vangelis66

... Today, GH have started serving another manuelpuyol_turbo script that breaks things for me (latest Serpent 52.9.0 32-bit),

https://github.githubassets.com/assets/vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-b12e520649c0.js

I've blocked that one too in uBlock Origin (legacy), so far so good:

! github.com
||github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-be659c79aff6.js$script,domain=github.com,important
||github.githubassets.com/assets/vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-b12e520649c0.js$script,domain=github.com,important

01/07/2022 EDIT: It looks like that second script is no more being served:

https://github.githubassets.com/assets/vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-b12e520649c0.js => Not Found 

so the blocking rule initially posted in my previous comment should be just enough for now... 😉

Vangelis66 avatar Jun 27 '22 15:06 Vangelis66

Looks like the Palefill extension doesn't solve this issue so far and I don't have the uBlock origin extension.

jrfnl avatar Jun 27 '22 20:06 jrfnl

... Today, GH have started serving another manuelpuyol

might make sense to contact that dude and tell him to fix his shit

rofl0r avatar Jun 27 '22 22:06 rofl0r

Looks like they flicked a switch that enables (eg, environment-e9a18cc2906a.js:1:1909) v=n(y=>y?.tagName==="TURBO-FRAME", ...) instead of v=n(y=>(y?y.tagName:null)==="TURBO-FRAME", ...) or v=n(y=>(y && y.tagName)==="TURBO-FRAME").

00:05:29.115 SyntaxError: expected expression, got '.'
vendors-node_modules_delegated-events_dist_index_js-node_modules_stacktrace-parser_dist_stack-74aed8-42898397c9f5.js:2:7624
00:05:29.122 SyntaxError: expected expression, got '.'
environment-e9a18cc2906a.js:1:1909
00:05:32.099 SyntaxError: expected expression, got '.'
github-elements-abe1614d4045.js:1:2185
00:05:32.101 SyntaxError: expected expression, got '.'
element-registry-a03b4cfb3296.js:1:927
00:05:32.121 SyntaxError: expected expression, got '.'
vendors-node_modules_github_paste-markdown_dist_index_esm_js-node_modules_github_quote-select-0221c5-f00978376043.js:22:39690
00:05:32.123 SyntaxError: expected expression, got '.'
app_assets_modules_github_behaviors_pjax_ts-026aa5602248.js:1:1483
00:05:32.125 SyntaxError: expected expression, got '.'
app_assets_modules_github_behaviors_keyboard-shortcuts-helper_ts-app_assets_modules_github_be-af52ef-8ba1beffba70.js:2:19
00:05:32.127 SyntaxError: expected expression, got '.'
app_assets_modules_github_behaviors_details_ts-app_assets_modules_github_behaviors_include-fr-019af8-b06209b0c355.js:1:2506
00:05:32.143 SyntaxError: expected expression, got '.'
behaviors-871d9186541b.js:1:1631
00:05:32.146 SyntaxError: expected expression, got '.'
notifications-global-04c0dc62c5c6.js:1:10454
00:05:32.159 SyntaxError: expected expression, got '.'
optimizely-306a62cb1dd2.js:1:1554
00:05:32.166 SyntaxError: expected expression, got '.'
vendors-node_modules_github_browser-support_lib_index_js-node_modules_github_catalyst_lib_ind-10bc67-064ae3c602cb.js:1:6122
00:05:32.168 SyntaxError: expected expression, got '.'
issues-42ac5417fe6e.js:1:9163
00:05:32.177 SyntaxError: expected expression, got '.'
structured-issues-7c2aa6e49a99.js:1:9510

dirkf avatar Jun 27 '22 23:06 dirkf

might make sense to contact that dude and tell him to fix his s**t

... Well, he's on GitHub,

https://github.com/manuelpuyol

currently "Building UI @github" and committing code to https://github.com/github/browser-support (among others...)

@dirkf Is your log from SeaMonkey 2.53? Looks like they broke browsers without native Optional Chaining Operator ("?.") support :angry: ...

Addendum: In a Chromium 78 fork (360EEv12), at least one of the GH scripts now also requires native browser support for the Nullish Coalescing Operator ("??"):

Uncaught SyntaxError: Unexpected token '?'  https://github.githubassets.com/assets/vendors-node_modules_lit-html_lit-html_js-50b1c3ae31f7.js:49

Vangelis66 avatar Jun 27 '22 23:06 Vangelis66

2.53.12. Forthcoming 2.53.13 has ?. but may break other extensions in interesting ways.

dirkf avatar Jun 27 '22 23:06 dirkf

might make sense to contact that dude and tell him to fix his shit ... Well, he's on GitHub, https://github.com/manuelpuyol

ok, i'll use my magical powers to summon him @manuelpuyol @manuelpuyol @manuelpuyol

rofl0r avatar Jun 28 '22 00:06 rofl0r

Unfortunately it's not Manuel's source that's the problem, it's how GH sends the code, as well as their apparent complete lack of anything that might pass for version control or release management, which is really beyond ironic.

dirkf avatar Jun 28 '22 14:06 dirkf

a test version with following commits from palefill included: https://github.com/martok/palefill/commit/1526928d28148b6cc27750360715b16d6effecbf (with fix in comment applied) https://github.com/martok/palefill/commit/7f939ebaae009929da6216b31124f5fcc674e19c https://github.com/martok/palefill/commit/c3b667959882275d09db4c1fde4f5801c145cd7a

(rename to .xpi to install) github-wc-polyfill-1.2.19.1-unofficial.zip

(EDIT: updated version in https://github.com/JustOff/github-wc-polyfill/issues/68#issuecomment-1218104421 )

roytam1 avatar Jun 30 '22 15:06 roytam1

github-wc-polyfill-1.2.19.1-unofficial

generally solves the problem. sometimes "discussions" are displayed strangely (it helps to reload the page)

AroKol78 avatar Jun 30 '22 19:06 AroKol78

Just updated to latest Palemoon (v31.1.0) so just I could use this shit site again and vangelis66 uBlock directive made it finally usable. Thanks dude!

And while at it, holy shit, it's all getting to the point of no return faster and faster. Meanwhile, child of the moon can't commit a single C++ line of code to address any of these major websites breakages.

It was all a scam from the beggining. At this pace, SerenityOS libweb will be more compliant with shitty modern webtech standards faster then one can write "lol, just use Chrome dude".

garoto avatar Jun 30 '22 21:06 garoto

@roytam1 Thanks for your work.

However, this does not appear to fix the problem in Seamonkey 2.53.7, though. Unsure why that is, since WebComponents is still largely an enigma to me.

I don't know if this will be useful to you, but... here's some console information from loading the github.com home page:

SyntaxError: expected expression, got '.'[Learn More]  vendors-node_modules_delegated-events_dist_index_js-node_modules_stacktrace-parser_dist_stack-74aed8-6575784e93e6.js:2:7614
SyntaxError: expected expression, got '.'[Learn More]  environment-926f8956f4a3.js:1:1892
SyntaxError: expected expression, got '.'[Learn More]  vendors-node_modules_github_catalyst_lib_index_js-node_modules_github_time-elements_dist_index_js-161222d671e3.js:1:4534
SyntaxError: expected expression, got '.'[Learn More]  github-elements-7dc552b55468.js:1:2185
SyntaxError: expected expression, got '.'[Learn More]  element-registry-9f412aa21311.js:1:927
SyntaxError: expected expression, got '?'[Learn More]  vendors-node_modules_lit-html_lit-html_js-50b1c3ae31f7.js:49:2049
SyntaxError: expected expression, got '.'[Learn More]  vendors-node_modules_github_remote-form_dist_index_js-node_modules_github_catalyst_lib_index_-bd1f73-5ee6d4eae317.js:1:6921
SyntaxError: expected expression, got '.'[Learn More]  app_assets_modules_github_behaviors_pjax_ts-683fa5a6e739.js:1:1483
SyntaxError: expected expression, got '.'[Learn More]  app_assets_modules_github_behaviors_keyboard-shortcuts-helper_ts-app_assets_modules_github_be-af52ef-8ba1beffba70.js:2:19
SyntaxError: expected expression, got '.'[Learn More]  app_assets_modules_github_behaviors_details_ts-app_assets_modules_github_behaviors_include-fr-019af8-b06209b0c355.js:1:2506
SyntaxError: expected expression, got '.'[Learn More]  behaviors-d4237c1eb484.js:1:1631
SyntaxError: expected expression, got '.'[Learn More]  notifications-global-e675abea1a31.js:1:9753
SyntaxError: expected expression, got '.'[Learn More]  dashboard-9b462821a067.js:1:3128
SyntaxError: expected expression, got '.'[Learn More]  vendors-node_modules_github_mini-throttle_dist_decorators_js-node_modules_github_catalyst_lib-6e1996-edf16be7eea2.js:1:7489
SyntaxError: expected expression, got '.'[Learn More]  app_assets_modules_github_command-palette_items_help-item_ts-app_assets_modules_github_comman-7e29fd-8bf44b133599.js:1:5759
SyntaxError: expected expression, got '.'[Learn More]  command-palette-fc0a839e03b8.js:1:3452

Palefill also does not work.

wyatt8740 avatar Jul 03 '22 14:07 wyatt8740

However, this does not appear to fix the problem in Seamonkey 2.53.7,

please update your seamonkey to 2.53.13.

roytam1 avatar Jul 03 '22 14:07 roytam1

@roytam1 Good idea. I was actually just doing that since I realized after commenting how out of date 2.53.7 was.

Compiling it now. Will be back in a few hours if all goes well.

wyatt8740 avatar Jul 03 '22 14:07 wyatt8740

@wyatt8740

Your report is just a duplicate of dirkf's comment above 😉 ; last Monday, Microsoft (current owners of GitHub) started serving newer scripts that contained the Optional Chaining (?.) and Nullish Coalescing (??) operators; both of them are supported by Chromium >=80, Firefox >=74 and Pale Moon == 31.1.0 (also, by most-up-to-date UXP forks), but NOT SeaMonkey <=2.53.12 😢 ...

The XPI kindly attached by @roytam1 is targeting platforms already supporting natively those two operators 😉 ... BTW:

SyntaxError: expected expression, got '.'

signals that your browser/platform doesn't support "?.", while

`SyntaxError: expected expression, got '?'

signals it doesn't support "??"...

palefill also does not work.

See open issue https://github.com/martok/palefill/issues/29

EDIT: Newer comments showed up as I was typing this... If you can, yes, update to SM 2.53.13+...

Vangelis66 avatar Jul 03 '22 14:07 Vangelis66

@Vangelis66 @roytam1 thank you; finished my seamonkey 2.53.13b1 build and it is working. Sorry for the bother.

wyatt8740 avatar Jul 03 '22 18:07 wyatt8740

slightly modified filter thought by Vangelis66 (previous comments) ||github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-$script,domain=github.com (resistant to changing numbers) (or ||github.githubassets.com/assets/*manuelpuyol_turbo_dist_turbo_es2017-esm_js-$script,domain=github.com)

github-wc-polyfill-1.2.19.1-unofficial despite the action, I blocked anyway (...manuelpuyol_turbo...) - the effect works faster and uses less memory

(by the way - broken https://github.community/)

AroKol78 avatar Jul 14 '22 14:07 AroKol78

... Optional Chaining (?.) and Nullish Coalescing (??) operators ... NOT [supported by] SeaMonkey <=2.53.12 cry ...

??: 2.53.12+ ?.: 2.53.13+

There are some exotic cases of ?. that, reading between the lines of the release notes, haven't yet been sorted (in .13).

dirkf avatar Jul 14 '22 14:07 dirkf

Well, I can't run any SM Windows build in this old x86 laptop past v2.49.5 (FxESR 52.9.1 based?), so I can't test myself... In retrospect, I should've been more careful when reading the log dirkf posted above, apparently on SM v2.53.12, in that only missing support for "?." is reported there - unlike the log by wyatt8740 (in SM v2.53.7 at the time), where both operators were missing...

??: 2.53.12+ ?.: 2.53.13+

Thanks :smile: , I got the "real" :wink: story already elsewhere - but you, too, follow that thread...

EDIT: In my defence, I did write:

both of them are supported by Chromium >=80, ... , but NOT SeaMonkey <=2.53.12

which seems to be a true statement, because 2.53.12 ONLY supports ONE of them :stuck_out_tongue_winking_eye: ...

Vangelis66 avatar Jul 14 '22 14:07 Vangelis66

(by the way - broken https://github.community/)

on Serpent52.9.0 once I raised the version (68-->91 useragent) it seems to work (by the way, "webmasters" 👎 is artificially inflating the requirements)


slightly modified filter thought by Vangelis66 (previous comments) ||github.githubassets.com/assets/chunk-vendors-node_modules_manuelpuyol_turbo_dist_turbo_es2017-esm_js-$script,domain=github.com (resistant to changing numbers) (or ||github.githubassets.com/assets/*manuelpuyol_turbo_dist_turbo_es2017-esm_js-$script,domain=github.com)

github-wc-polyfill-1.2.19.1-unofficial despite the action, I blocked anyway (...manuelpuyol_turbo...) - the effect works faster and uses less memory

i unlocked (...manuelpuyol_turbo...) - looks fixed, no longer have a lot of CPU and memory usage (at my place on Serpent52)

AroKol78 avatar Jul 15 '22 09:07 AroKol78

a test version with following commits from palefill included: martok/palefill@1526928 (with fix in comment applied) martok/palefill@7f939eb martok/palefill@c3b6679

(rename to .xpi to install) github-wc-polyfill-1.2.19.1-unofficial.zip

a slightly updated version for importing https://github.com/martok/palefill/commit/526488cc007c97f3979b8059d73835607fb65c4b and https://github.com/martok/palefill/commit/f6b16ce72d8b779d5328bd98b211fd23142acd61 : (rename to .xpi to install) github-wc-polyfill-1.2.19.2-unofficial.zip

(EDIT: my changes are now tracked in https://github.com/roytam1/github-wc-polyfill/tree/fixes )

roytam1 avatar Aug 17 '22 14:08 roytam1

@roytam1 https://github.com/martok/palefill/issues/46#issuecomment-1244803756 maybe you can apply in https://github.com/roytam1/github-wc-polyfill/blob/fixes/bootstrap.js#L305 (github-wc-polyfill-1.2.19.2-unofficial)

AroKol78 avatar Sep 18 '22 10:09 AroKol78

@roytam1 martok/palefill#46 (comment) maybe you can apply

sure. github-wc-polyfill-1.2.19.3-unofficial.zip

roytam1 avatar Sep 18 '22 14:09 roytam1

I had this problem with Waterfox Classic too.

The "github-wc-polyfill-1.2.19.3-unofficial" seems fix it... Maybe you can update the official extension?

decembre avatar Dec 26 '22 14:12 decembre