#👾-core-development

1 messages · Page 256 of 1

scenic brook
#

Oh they split the emoji into its own span

#

All it does is add this class to emojis, surely we can emulate that

#

I'll have a look Later™️ if nobody else does

scenic brook
long stream
scenic brook
#

Hmm, when you have the username first the glow is still generated from the display name

charred monolithBOT
scenic brook
#

I'll add a fix later for that if I can find it Added it, not thrilled about the duplicated code but I don't really care enough to think about it more

scenic brook
#

I like the hardcoded css class

jolly egret
#

nobody follows the plugin rules

desert cosmos
#

there are rules?

austere talon
#

that fix seems very hacky and suboptimal

limber skiff
#

it's how discord does

limber skiff
#

but better to use their own code if possible

charred monolithBOT
limber skiff
#

vtest dev2

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
scenic brook
austere talon
#

seems that WhoReacted is causing gateway crashes

#

ah yeah I see the issue

austere talon
#

pnpm test dev

#

PNPM

#

vtest dev

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
austere talon
#

js finally added array methods like .filter to iterators

#

too bad it's so new we can't use it yet

opaque silo
austere talon
#

we can use it on vesktop

opaque silo
#

yop

fossil inlet
#

@austere talon :megahusk:

austere talon
fossil inlet
# austere talon what

how do i enable arrpc on vesktop (the builtin version has never worked for me on linux)

austere talon
#

hop off using flatpak

fossil inlet
#

also this would make it impossible to use a local build if you were making changes to it

austere talon
#

just add as userplugin / edit code

#

normal users just get confused

austere talon
opaque silo
#

built-in arrpc can't even do OBS detection despite out patches enabling the toggle to do so

opaque silo
fossil inlet
#

maybe add a warning when you enable it or something

opaque silo
#

vee hates choice that's why he uses gnome (the normie users can't be given the ability to have options)

dusk blaze
#

saladeath

austere talon
#

it's not choice

#

there is 0 reason to use the arrpc plugin on vesktop unless you are making changes to arrpc and want to use your own version, in which case you are definitely competent enough to just add it as a userplugin

#

"inbuilt one doesn't work so I use external + plugin" is not a valid argument, because that's a very poor solution we shouldn't encourage

opaque silo
austere talon
#

that is completely unrelated to the plugin being hidden on vesktop now

opaque silo
#

😭😭🤥

charred monolithBOT
idle fossil
#

?

torn horizon
#

waiting for pr review Life

jagged reef
#

Aren’t we all

scenic brook
#

Pretty minor as it's caught and returns false anyway but opening DMs causes this error in logs

limber skiff
scenic brook
limber skiff
#

so discord is trying to tell me that the function fetchingMessages receives null as the channel id?

charred monolithBOT
shell shuttle
#

vtest dev4

charred monolithBOT
charred monolithBOT
#

On last.fm, scrobbles from services like Spotify and Apple Music scrobble singles with the single name as the album name. This creates albums with the same name as the single. Users can add cover art to singles this way. However, this method does not show up with the user.getrecenttracks method, which means "missing" art for said singles.

This PR fixes this by checking for an album of the same name as the single.

charred monolithBOT
#

yes album name is optional. but that means there is no album attached to your track and thus no album art. lastfm itself will also not show any album art on your feed. i'm really not a fan of the plugin attempting to fix broken scrobbles like this, you really should just be scrobbling properly instead!

you might be interested in https://picard.musicbrainz.org to fix your tags instead, pretty sure it can do bulk tagging of your library

austere talon
#

or just find people who scrobble properly on soulseek and download from them AZKiXD

charred monolithBOT
#

last.fm actually does show the album art in my feed. Here's an example from last month:
image
The Yue songs did not have any album name when scrobbled.

I assume what I do in my PR is similar to what they do to support that, given the API response doesn't include the track image by default. I don't think it's unreasonable for Vencord to do the same.

And I appreciate the suggestion, but I would much rath...

austere talon
#

😭

#

that's where we make unofficial compilations

#

I hate Singles

charred monolithBOT
austere talon
#

bad player...

torn horizon
#

waiting for pr review day 69 blobhuskcozy

charred monolithBOT
kindred tree
#

fuck lastfm blobcatcozy

brazen bone
#

Do we know anything about how discord's managed to make devtools lag so bad?

austere talon
#

magic ✨

#

you know all those sites that try to block devtools

#

they should just copy from discord

brazen bone
#

Yeah it's insane, discord has finally succeeded in achieving absolute enshittification

#

Am I misreading this or does profiler say it downloaded the css a hundred times

#

And following that, it reports a lot of css updates in devtools, layout computations, and sendPackets between parent and child process

austere talon
#

how

brazen bone
#

I don't know, I'm trying to figure it out

brazen bone
#

I can't make any sense of this other than it has something to do with updating the list of styles in the element inspector

fossil inlet
opaque silo
brazen bone
#

If there's one website on the planet that it has issues with, I'm inclined to blame that website, not the devtools

charred monolithBOT
fossil inlet
#

guuhh so minor

#

cba to fix

dusk blaze
#

salad virus

limber skiff
#

😭

fossil inlet
#

OH

#

wtf

charred monolithBOT
#

This pull request introduces a new plugin, MarkdownToolTip, designed to enhance Discord chat functionality by enabling one-click insertion of syntax-highlighted code blocks for 18+ programming languages. The plugin integrates seamlessly with Discord's context menu, streamlining the process of creating formatted code blocks. Key changes include the addition of the plugin's implementation, documentation, and developer attribution.

Plugin Implementation:

  • [`src/plugins/markdownToolT...
idle fossil
#

18+ programming languages woah...

#

🔞

fossil inlet
#

AI ahh readme

#

dont all context menu callbacks have a ref to the element that triggered them

charred monolithBOT
torn horizon
hollow musk
charred monolithBOT
#

Plugin Implementation:

  • src/plugins/markdownToolTip/index.tsx: Added the core functionality for the MarkdownToolTip plugin, including the context menu patch, supported language definitions, and the insertCodeBlock function that handles code block insertion with syntax highlighting.

Contributor Update:

  • src/utils/constants.ts: Added iLazer to the Devs object as a contributor to the project.
hollow musk
charred monolithBOT
long stream
# charred monolith

oh come on, you could at least try to make it look like you didn't ai generate it gone

jagged cloak
#

clearly bro did not use claude 4 opus max mode for this /s

dusk blaze
limber skiff
#

the opposite of giving credibility

dusk blaze
brazen bone
#

What even is an 18+ programming language

torn horizon
#

I'd like to believe it means 18 more TrollDespair

limber skiff
#

clearly not

jolly egret
#

ai readme
discord cdn link that expires
horror formatted codeblock in md
added another plugin too originally?
told people to open issues

charred monolithBOT
charred monolithBOT
charred monolithBOT
dusk blaze
austere talon
#

wtf is a minus issue

charred monolithBOT
#

What happens when the bug or crash occurs?

You copied our code you do not have rights to do that without proper licensing.

What is the expected behaviour?

I expect vencord to be unique and do not copy our code

How do you recreate this bug or crash?

view code

Errors

Replace this text with your crash-log.

Request Agreement

  • [x] I am using Discord Stable or tried on Stable and this bug happens there as well
  • [x] I am a Vencord Developer
scenic brook
#

Probably minor not minus

charred monolithBOT
charred monolithBOT
scenic brook
#

Does that just make every vencord user spam them with friend requests?

austere talon
charred monolithBOT
charred monolithBOT
opaque silo
long stream
#

just a troll being bored

#

don't give them attention

jagged cloak
#

guthub

charred monolithBOT
desert cosmos
charred monolithBOT
austere talon
#

"obscure endpoint" and it's just a mobile only feature ported to desktop

#

still cool but lol

gritty canyon
#

who is toby

austere talon
#

toby

gritty canyon
limber skiff
#

Toby

gritty canyon
#

the comments are amazing please keep them in

fossil inlet
#

chatgeppity

charred monolithBOT
hollow musk
still maple
kindred tree
#

compared to the endpoints the pc client uses

austere talon
#

how

#

use a proxy like charles/burpsuite to see what requests the mobile app send

kindred tree
#

that’s so much more effort than pressing f12 lol

#

also is that even a thing if you use iOS

austere talon
#

just don't use ios

#

probably is tho

kindred tree
#

😢

austere talon
#

surely ios can use proxies & install a certificate

kindred tree
#

there’s probably aomething ye, but never looked into it

#

gotta check sometime

dusk blaze
kindred tree
#

yay

austere talon
#

i love that they added their own name to the ui

median rapids
#

yeah😭

jagged reef
#

200 perfectly

jagged reef
gritty iris
austere talon
#

they copy pasted it from my plugin

#

lmao

gritty iris
#

I just thought it was funny as a const lol

grave mangoBOT
gritty iris
#

Perfect lmao

austere talon
#

I should make that plugin better

gritty iris
#

I hate event listeners but they are so useful

#

I know how to use them and all but I just can't with them like they are too simple for me i guess I don't know

charred monolithBOT
opaque silo
charred monolithBOT
opaque silo
# charred monolith

won't be possible without shipping a node dbus lib with vencord

there might also be a node libnotify lib to avoid raw dbus interaction but that's still a native dep that vencord needs to ship

#

🤥

#

@rotund canopy

#

you could also be insane and shell out with notify-send (CLI for libnotify) ... not exactly practical as it doesnt support raw image data

limber skiff
#

with a proper name

scenic brook
#

MessageActions.jumpToMessage

limber skiff
#

yep

charred monolithBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
gritty canyon
charred monolithBOT
charred monolithBOT
#

and the latter being that attachments seem to be capped to a very low resolution (at least on Ubuntu).

This is by design, is it a problem? I just tested it and it looked fine for me. The relevant paragraph

Images may be placed in the notification, but this should be done with caution. The image should never exceed 200x100, but this should be thought of as a maximum size. Images should always have alternative text provided through the alt="..." attribute.
Image data cannot be embe...

dusk blaze
charred monolithBOT
clear jasper
charred monolithBOT
#

Ah ok, the attachment is the night sky on top of the notification, I thought that was noise mb. Yeah I don't think that will work on linux at all. I got confused by the cat.

Feature Works on linux
Notification title customization
Notification body customization
Attachment preview
Avatar customization
Attribute text
Headers (aka notification grouping)

Not sure about the last one, I'd assume its the example author in ...

charred monolithBOT
charred monolithBOT
charred monolithBOT
austere talon
#

it's not a veto as much as it's simply not possible with how vencord currently works lol

#

but yeah native libs are bad

dusk blaze
#

vencord will go zero runtime dependencies @austere talon

austere talon
#

essentially already is

opaque silo
austere talon
opaque silo
#

husk I thought I did that

#

OH I CLOSED TO TRAY

#

😭

charred monolithBOT
#

Not sure about the last one, I'd assume its the example author in the first image of the pr description.

I'm pretty sure the headers are a Windows specific feature (?). They're used to group multiple notifications together in the action center, but also add a visual indicator to the message. I'll try to take a screenshot of this behaviour once I get my laptop working

charred monolithBOT
charred monolithBOT
opaque silo
#

using AI for a full typescript impl husk husk

jagged cloak
#

no way we found someone who's not brainlessly vibe prompting

#

at least for now

scenic brook
#

You mean you don't just tell copilot to write it and then paste every error that comes up back into it until there stops being errors?

dusk blaze
#

Just Grok it ✨

dusk blaze
scenic brook
#

It is kinda funny that by definition the only people mad at this are children

gritty canyon
#

the gate in uk and australia requires id verification and some people just dont want to do that

lime idol
odd heath
shell shuttle
#

can't be funny in this server smh

lime idol
odd heath
#

You're aware they check the log themselves right 😭

#

Anyway give me like

#

Half an hour

odd heath
#

wires what did discord cook

limber skiff
#

I'll fix if no one does

odd heath
#

iwanna try if i can find what they nuked blobcatcozy

limber skiff
#

for anonymise file names?

odd heath
#

yea

#

ill take a look at webcontextmenus after that

#

but i dont feel like saveProductWithAttachments is something that it should patch simultaneously i fail to find anything else what couldve been patched prior

#

unless it is the right thing?

limber skiff
#

I shouldn't had closed my client so I could compare versions

#

but now it's too late

odd heath
limber skiff
#

take a look at the other patch for anonymise file names

#

the location it patches is a call to a function

#

that function was the same called in the other patch, but instead it had one of its parameters as that constant string

#

find all places where that function is called and try to guess if it's related to attachments

#

understood what I mean?

odd heath
#

mostly

#

they mightve just nuked the second one tho

limber skiff
#

if not leave it to me and I will look later

odd heath
#

sure

#

ill take a look at webcontextmenus for now

#

also you should review my pr frfr

austere talon
#

this doesnt seem right

odd heath
#

so either make it non-lazy or make it go until after the ternary specifically

#

cuz if its lazy it ends before the parenthesis and thats why it errors

austere talon
#

ah

odd heath
#

also

#

i just found this

#

why is cancopyimage here

#

cuz if i make the patch so it applies for it it causes crashes

austere talon
#

so u can copy image?

odd heath
#

and if i extend it to 120 it crashes on vesktop

#

whenever you click on an image

#

so idk

#

removing the cancopyimage completely makes it work fine

limber skiff
#

what's the original method?

odd heath
limber skiff
#

show me canSaveImage

#

or find why I is undefined

charred monolithBOT
odd heath
austere talon
limber skiff
#

ahh

austere talon
#

actually yeah I shouldn't be undefined lol

#

i think

odd heath
#

but idk what to do with that patch

limber skiff
odd heath
# limber skiff ^^

idk it doesnt get redefined anywhere so its window.DiscordNative itself thats undefined

#

but that seems a bit too broad to look for

#

and i dont think that gets set to undefined anywhere

#

or is it just always undefined on vesktop Hmm

#

yeah it seems like its just generally undefined on vesktop/web

#

so keeping cancopyimage patched like that probably doesnt make sense at all

#

but idk what to change it to

limber skiff
#

just return true to canCopyImage and make it use vencord util for copying

odd heath
#

a least for me

#

dont see what that change would even di

limber skiff
#

then just return true lol

odd heath
#

instead of typeof i.clipboard?

#

ill just put it on line one of the fn

#

and see what happens

austere talon
#

just let me fix it

odd heath
#

okey

#

sure

gritty iris
odd heath
#

why does it crash on vesktop then

gritty iris
#

im checking on vesktop rn

#

works for me

#

ill test with your patch 1s

#

works with yours

gritty iris
odd heath
#

classic

gritty iris
#

😭

gritty iris
#

seems to work fine

odd heath
#

i mean yea but it also works fine if you just dont patch it at all

#

thats what confused me so much

gritty iris
#

the button shows?

#

oh it does

#

neat

#

now I could be wrong but that aint a file ext

odd heath
#

LMAO

gritty iris
#

its now a png

#

im so lost

gritty iris
odd heath
charred monolithBOT
dusk blaze
#

Vencord-with-github-support

#

for some reason this emailed me

desert cosmos
#

i will fork vencord

#

Ninocord

jolly egret
#

discord project uses discord server
walled garden
???

#

😭

opaque silo
#

i mean I get their argument

#

information being in discord servers has been a disaster for access and preservation

#

cause its not indexable by the wider internet

fossil inlet
#

yop

#

vencord forum when

charred monolithBOT
clear jasper
#

nice embed images

limber skiff
#

adding author for one line change

clear jasper
#

i thought you were supposed to add author for any change

#

do you want me to remove it

limber skiff
#

yeah

limber skiff
clear jasper
#

alr done

jolly egret
#

you still added yourselves to devs idk about that

limber skiff
#

new UI and they are making gap with margin-left

#

you gotta be kidding me

charred monolithBOT
limber skiff
#

vtest dev2

nimble pendantBOT
limber skiff
#

just not adding themselves to plugin author

nimble pendantBOT
# limber skiff vtest dev2
Bad Patches

WebContextMenus (had no effect):
ID: 998502
Match: ```
/(?<=(?:canSaveImage|canCopyImage)(\i?){.{0,50})!\i.isPlatformEmbedded/g


**__WebContextMenus (errored):__**
ID: `29264`
Match: ```
/return\s*?\[.{0,50}?(?=\?.{0,100}?id:"copy-image")/

Error: ```
Unexpected token ')'

nimble pendantBOT
# limber skiff vtest dev2
Bad Patches

WebContextMenus (had no effect):
ID: 998502
Match: ```
/(?<=(?:canSaveImage|canCopyImage)(\i?){.{0,50})!\i.isPlatformEmbedded/g


**__WebContextMenus (errored):__**
ID: `29264`
Match: ```
/return\s*?\[.{0,50}?(?=\?.{0,100}?id:"copy-image")/

Error: ```
Unexpected token ')'

limber skiff
#

ah right

#

they prob aren't even in channels store

clear jasper
limber skiff
#

what merge conflicts?

jolly egret
#

how did you hit merge conflicts in an hour of the PR being open

limber skiff
#

there should be none

jolly egret
clear jasper
limber skiff
#

right

#

ill fix it for you

clear jasper
#

Ty

jolly egret
#

if you're merging stuff could you take a look at my PRs ty

#

they both aren't that big

limber skiff
#

sorryy I'm tired rn

#

I'm just fixing what is broken to keep everything clean right now

charred monolithBOT
limber skiff
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
limber skiff
#

weird

clear jasper
limber skiff
#

huh?

clear jasper
limber skiff
#

I'm just saying that the error is weird

#

I can't reproduce and it only happens sometimes

clear jasper
#

o

limber skiff
#

it looks like if some module which has not been loaded is trying to be required

#

guessing the error comes from this .call

#

just a guess though because I can't see the stack trace of it

charred monolithBOT
limber skiff
#

I like how these are looking like

jolly egret
dusk blaze
glass jasper
charred monolithBOT
granite wharf
#

I thought that was gonna be a simple change but i got jumpscared by it being an entire plugin

jagged reef
#

Holy moly

#

T- 5 days until my other MR hits one year

#

.

#

I don't have the funds to inbest in another cake

fossil inlet
#

new plugin pr soon™️

glass jasper
austere talon
charred monolithBOT
clear jasper
#

without:

#

and here's the error:

#

(@austere talon)

austere talon
#

anyway we don't even support Firefox

#

this is only a problem because Firefox bad

clear jasper
austere talon
#

if anything this code should be userscript only

clear jasper
#

is there a way to do that or do I have to code that

austere talon
#

there isnt but dw about it

clear jasper
austere talon
#

I'll add it maybe

austere talon
clear jasper
#

oh

#

ok undid

austere talon
#

it needs to be at build time

#

otherwise Google extension reviewers might not like

glass jasper
austere talon
#

because the userscript is mostly an afterthought

glass jasper
#

Understandable

clear jasper
#

fair enough

clear jasper
clear jasper
#

similarly,

charred monolithBOT
clear jasper
#

yes I spent two hours nonstop on that

#

no, i don't have a problem

clear jasper
#

because of course not why should anything work

#

and I had been testing with a ff extension this entire time

austere talon
clear jasper
#

nvm it's a setting in tampermonkey

austere talon
#

you cannot make csp more lenient by adding a second rule

clear jasper
#

oh

#

am dumb

#

whatever there's a working userscript/extension platform now

austere talon
grave mangoBOT
clear jasper
#

ohhhh i missed that

#

yeah when I set tampermonkey to disable CSP it works just fine

charred monolithBOT
#

Will set this as able to review because 1. the .userscript and .extension targets and also 2. it does work if you have disabled CSP in tampermonkey

to disable csp in tampermonkey (don't do this unless you only use tampermonkey for discord):

  • go to tampermonkey's settings
  • go to general and set config mode to advanced
  • scroll down to security
  • set Modify existing content security policy (CSP) headers to Remove entirely
    Also, you'll most likely want to:
  • set page filter mode to bo...
clear jasper
charred monolithBOT
austere talon
#

it only works if u remove discord's header

and then it's pointless cause there's no csp in the first place

grizzled halo
#

Fakenitro stickers sending isnt working, the stickers are unlocked howerver clicking them does nothing

Happens on vesktop and desktop (with no errors in console)
On latest version of vencord
Multiple (at least 3 others) also have the same problem

#

just in case it's not known already

charred monolithBOT
limber skiff
#

vtest dev2

nimble pendantBOT
limber skiff
#

GitHub is dying haha

charred monolithBOT
limber skiff
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
glass jasper
#

Actually insane

desert cosmos
#

i mean issues necroposting isnt that bad

#

well only if its still an issue

#

LOCKED FOR SPAM

#

vee..

kindred tree
#

bump blobcatcozy

austere talon
#

necroing year old irrelevant invalid issue for yet another invalid issue

charred monolithBOT
austere talon
charred monolithBOT
austere talon
#

better wording i think

scenic brook
#

Would it be better to exhaustively list the whitelisted sites? Maybe collapsed if you don't want it taking up too much space

#

Otherwise they have no way of knowing what they are besides those two

austere talon
#

not really possible

#

well kinda

#

idk how to display it there

#

we can add it in the future if there is demand

scenic brook
#

Not a huge deal, I just foresee people forever asking what the whitelisted sites are

austere talon
#

it shouldn't affect many users

austere talon
#

you don't need more than those 3

woeful sleet
#

Could just make it so clicking "whitelisted websites" opens a modal that has them all listed. that or a details pane somewhere below the rest of it

scenic brook
#

tbf I don't use themes anyway so whatever works thumb

charred monolithBOT
dusk blaze
#

venWOKE

scenic brook
#

wokecord

charred monolithBOT
limber skiff
#

rest in peace Vee

versed fern
austere talon
#

made the message slightly better

limber skiff
#

yeah

#

that's good

austere talon
#

ready to merge?

dusk blaze
#

CSS will be capitalized

#

@limber skiff surprised you didn't catch that after correcting capitalization on a code comment

limber skiff
#

didn't know it had to be

dusk blaze
#

Css

austere talon
#

@uneven needle btw for your csp thing

if you want a user friendly and secure way to whitelist domains, do the following:

  1. add ipc methods for adding and removing domains from the whitelist to your plugin
  2. inside the native ipc handler, validate that the input is a valid URL (just do new URL(url) with try catch), then show a confirmation dialog (electron dialog api) to the user with a short explanation. confirmation shouldn't be necessary for remove
  3. if the user presses confirm, add it to the NativeSettings object (please choose a reasonable namespace on this object that guarantees compatibility). Settings api but native with no renderer access
  4. Read whitelisted domains from the NativeSettings
#

maybe if there is a lot of demand vencord can add an api for that

#

but doubt

scenic brook
#

There's a parseUrl function in misc as well that's just that try catch

austere talon
#

which you can't import in native

scenic brook
#

Good point

uneven needle
austere talon
#

like detect csp violation > whitelist url

#

actually maybe I can integrate that into vencord natively

#

could be a good compromise for people wanting to use other sites for their themes

uneven needle
#

yeah

austere talon
#

meh idk

#

we can add it later if needed

charred monolithBOT
charred monolithBOT
charred monolithBOT
fossil inlet
#

Lol didn't I have a PR for fixing that a while ago

charred monolithBOT
austere talon
#

no it doesnt

clear jasper
#

where's the actual patcher then

austere talon
#

oh it does actually

austere talon
#

anyway the change is very weird

austere talon
#

the one by coot seemed wrong

austere talon
fossil inlet
austere talon
#

if i'm reading it right

clear jasper
#

see the video in the PR comments

fossil inlet
#

ill trust you on that, too tired to wrap my head around it blobcatcozy

clear jasper
austere talon
#

i never even use patchhelper

fossil inlet
#

tbh i stopped using it after i integrated a version into vscode

austere talon
#

i just use the og companion

fossil inlet
#

it's also annoying to have to have the settings page open to do it

austere talon
#

i write patches in vscode and press test patch

#

90% of times it works instantly

clear jasper
#

I only use it because it shows what i'm relpacing in real time

fossil inlet
clear jasper
#

ye

limber skiff
#

I dont even use the companion

#

I just write the patch and in case case I cant see why it doesnt work I paste into regex101

charred monolithBOT
#

Thanks for your contribution!

This csp plugin is not actually useful for the reasons mentioned on the Discord (in cases where the plugin can function (no csp header), we don't need it anyway)

The rest is a good addition but I'm not a fan of passing around the isExtension boolean, style isn't quite right and there are some missing parts (mainly build time constants for the new build targets) so I'll just add the same targets myself

desert cosmos
#

review pr
close it
wires

gritty canyon
#

at least it got reviewed

desert cosmos
#

😭

clear jasper
#

vgithub

nimble pendantBOT
charred monolithBOT
austere talon
#

I don't really want to make any new changes to the installer tbh

austere talon
#

should I

dusk blaze
odd heath
austere talon
#

technically u can kinda use css with the userscript but
a) the editor just doesn't work so u have to import with settings sync
b) literally 0 external stuff

#

so i do think it's better UX to just recommend stylus

#

but stylus might be confusing to figure out

fossil inlet
#

Themes Are Not Supported On The Userscript

Use Better Discord On Desktop For A Better Experience

limber skiff
#

😭

austere talon
#

maybe we could make a small stylus guide

#

put it somewhere

fossil inlet
austere talon
#

and this if you click edit quickcss

#

people who don't use chromium/firefox will simply cope

odd heath
austere talon
#

confusing

fossil inlet
#

you just click out and go about your day

odd heath
#

personal opinion blobcatcozy

#

i hate those popups

austere talon
#

why lol

#

vencord code is structured so bad I wanna do a big refactor

#

like the file structure

odd heath
#

do

limber skiff
#

that's so ugly

fossil inlet
#

why not just use a discord modal

odd heath
limber skiff
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
# limber skiff vtest
Bad Patches

TypingTweaks (had no effect):
ID: 738619
Match: ```
/.map((\i)=>\i.\i.getName(\i,\i.id,\1))/

Slow Patches

ShowHiddenChannels (took 37.1ms):
ID: 302270
Match: ```
/(?<=&&)(0,\i.jsxs?).{0,180}.buttonIcon/


**__ShowHiddenChannels (took 12.2ms):__**
ID: `677601`
Match: ```
/(?:{|,)render(?!Header|ExternalHeader).{0,30}?:/g
limber skiff
#

machine so slow everything is a slow patch

#

I still dont understand this

fossil inlet
#

discord added it randomly only for vencord reporter to mess with you

charred monolithBOT
austere talon
#

alert is easier

odd heath
charred monolithBOT
limber skiff
#

vtest dev2

nimble pendantBOT
austere talon
#

i made most ErrorBoundaries noop

limber skiff
#

typo

charred monolithBOT
limber skiff
limber skiff
#

that's good

austere talon
#

and even show noop in dev

limber skiff
#

I thought you were gonna ask me to review csp PR before merging it

nimble pendantBOT
# limber skiff vtest dev2
Bad Patches

TypingTweaks (had no effect):
ID: 738619
Match: ```
/.map((\i)=>\i.\i.getName(\i(?:.guild_id),\i.id,\1))/

Slow Patches

ShowHiddenChannels (took 7.4ms):
ID: 677601
Match: ```
/(?:{|,)render(?!Header|ExternalHeader).{0,30}?:/g

nimble pendantBOT
austere talon
#

it's gonna be funny if you have a random errorboundary here or somewhere

austere talon
limber skiff
austere talon
#

the changes I made were just the ui showing u what got blocked

fossil inlet
#

unable to do anything error boundaries everywhere blobcatcozy

limber skiff
#

have you merged updater PR

#

if not do it too

austere talon
#

nah cause I didn't test that it works

#

need to do that

charred monolithBOT
limber skiff
#

vtest dev2

nimble pendantBOT
limber skiff
austere talon
#

😭

#

noooo

limber skiff
#

(I doubt it's gonna have issues)

austere talon
#

yes but

#

if it does

limber skiff
austere talon
#

everyone will be stuck on broken version

#

with broken updater

#

support nightmare

#

just need to test

limber skiff
#

do it real quick and merge then

nimble pendantBOT
nimble pendantBOT
limber skiff
#

I swear github is just being slow again

austere talon
limber skiff
#

so many patches being marked as slow

austere talon
#

okay i will test

charred monolithBOT
limber skiff
austere talon
#

also while doing the ErrorBoundary change

#

I noticed some bad places that weren't using noop

#

lmao

#

like typingtweaks avatar didnt use noop

#

imagine having big ErrorBoundary card next to typing indicator

limber skiff
#

because I just fixed it and error boundary was catching it

#

LOL

#

users are going to be jumpscared

austere talon
#

ah no

#

mentionavatars

#

thankfully

#

okay it seems to work

#

but i'm still scared lol

charred monolithBOT
austere talon
#

i will merge

#

i have an idea @limber skiff

#

we make this update

#

then we wait until it publishes

#

we update to it

#

then immediately push a second change

#

update to that change too, see if it works

#

if not we can emergency revert it

austere talon
# austere talon okay it seems to work

maybe you can also test:

git checkout main
git pull
git reset --hard origin/HEAD~1 # head is now at SHC fix showing lock
curl "https://patch-diff.githubusercontent.com/raw/Vendicated/Vencord/pull/3436.patch" | git apply -
pnpm buildStandalone

then fully restart discord

there should be 1 update

try updating to it and see if it works

dusk blaze
#

and NixOs

austere talon
#

like why is quickcss and theme code in utils

odd heath
#

vencord would benefit if my settingsarray pr was merged blobcatcozy

dusk blaze
#

has all the slop with no clear structure

odd heath
#

yop

austere talon
#

yeah but it's awful in vencord lmfao

dusk blaze
#

utils/utils.ts

fossil inlet
odd heath
#

kinda

fossil inlet
limber skiff
austere talon
#

then make one, nerd

#

do u have anything else u wanna push

limber skiff
austere talon
#

that u havent pushed yet

limber skiff
#

I mentioned the other day

austere talon
#

I'm looking at prs but nothing quick

limber skiff
#

a bunch of files with utils import webpack commons when they shouldnt

austere talon
limber skiff
#

and then sillyexplode

odd heath
#

i also have one open that allows to hide replies to blocked messages

#

quite short but dont know if it still works xdd

charred monolithBOT
limber skiff
#

I pushed everything I have

austere talon
#

i dont understand what this is saying

fossil inlet
austere talon
#

guhhh this is ulgy

#

(meow) should be role coloured as well

scenic brook
austere talon
#

also this looks like it would conflict with other mention plugins

fossil inlet
scenic brook
#

It was coloured previously unintentionally because the thing was broken

austere talon
#

but not mentions

#

like this is clean

#

but inside mentions it isnt

limber skiff
#

alright

scenic brook
#

Oh these are different things, ignore me

limber skiff
#

can't believe a vencord dev has to install vencord

austere talon
fossil inlet
#

i'm going to eat then clean up that pr blobcatcozy

austere talon
#

i keep getting jumpscared

#

see pr title
oh yeah surely this is just 3 lines
look inside
50 new lines of code

limber skiff
#

ngl we need more reviewers

scenic brook
#

It was baby's first pr so it might be able to be done better these days

charred monolithBOT
fossil inlet
austere talon
#

okay I found a thing to merge

#

finally

austere talon
limber skiff
#

okay I have it installed with http

austere talon
#

do you love

fossil inlet
charred monolithBOT
#

I should also note, kagi translate is free on the website, but it makes a session_token using a CF challenge, so if you want to test this plugin without paying for kagi, you can remove the Cookie header and instead add a "session_token" key to the body JSON. I think this token expires quite quickly though, so I didn't implement support in this PR, but if desired I could make the setting take either a kagi session or a translate session

austere talon
#

find a way to scrape it

#

try to reverse engineer their web ui

kindred tree
#

I don't think you can scrape a captcha..

austere talon
#

requiring api key sucks balls

limber skiff
#

are you saying you always need to resolve a captcha to translate?

austere talon
austere talon
#

you need to solve a captcha which gives u a session token

kindred tree
austere talon
#

they really don't want you to scrape it

#

undertsandbale

#

do i merge the pr now

#

and then we test

#

test in production

#

🔥

limber skiff
#

sorry but I dont think it's useful to have that service then

austere talon
#

i mean we have deepl with required key too and ik some people use it

limber skiff
#

no one is gonna generate an api token to use it

kindred tree
#

I did test it from main myself, tho my branch is outdated atm

austere talon
#

but idk how popular kagi is

limber skiff
#

never heard of it

austere talon
#

me neither

kindred tree
#

it's pretty powerful from my experience, DeepL often throws out quite messy answers

limber skiff
#

I feel like it fits better being a third party plugin

austere talon
limber skiff
#

if one really wants to use it

limber skiff
#

do your test

austere talon
#

ready for death?

charred monolithBOT
austere talon
#

okay so

kindred tree
#

also google translate doesn't even work with traditional chinese for me, lol

odd heath
#

oh its that pr Aware

austere talon
#
  1. I merge into main
  2. we wait for build
  3. We update our client to it
  4. I merge a pr into main
  5. We test if we can update to this new change
limber skiff
#

alright

#

if not we push a fix quickly

#

seems good

austere talon
#

yeah just revert

limber skiff
#

testing in production

austere talon
#

only few people will be affected

limber skiff
#

ye

austere talon
limber skiff
#

do it

austere talon
#

but just in case things go south somehow

limber skiff
#

it aint gonna break I have faith

austere talon
#

updater changes are so scary ahaha

charred monolithBOT
#

e7076f5 Use much stricter, whitelist based CSP (#3162) - Vendicated
fae15db avoid showing ugly red error cards to users - Vendicated
c19827a UserScript: disable theme ui, instead recommend... - Vendicated
9430803 TypingTweaks: Fix typing avatars and names disa... - Nuckyz
47856a2 Updater: fix network errors triggering popups (... - Vendicated

kindred tree
#

also would it be possible to hide these settings until either service is selected? It feels a bit cluttered already

austere talon
#

nah

kindred tree
#

oh well

glass jasper
limber skiff
#

@austere talon merge something now

austere talon
#

bro

#

i cant update my client for some reason lmao

#

stuck on old version

limber skiff
#

same

austere talon
#

did i fuck it up

limber skiff
#

nvm

#

worked now

#

nooooo

#

the changelog

charred monolithBOT
odd heath
scenic brook
limber skiff
#

updater works

austere talon
#

doesnt for me

charred monolithBOT
austere talon
#

why is this still old commiot

#

oh it isnt

#

but updater no work for me

#

it says up to date

limber skiff
#

seems good to me

kindred tree
#

worked for me

limber skiff
#

I have a feeling this is going to look horrible

odd heath
#

yop

austere talon
#

checks out

limber skiff
#

okay that looks horrible haha

chrome coral
#

thats peak wdym

#

apart from whatever that icon is

austere talon
#

should I bump extension

#

ya i will

charred monolithBOT
chrome coral
austere talon
#

immediately

jolly egret
#

we pushed strict csp

austere talon
#

indeed

fossil inlet
#

is there anything wrong with tenor?

odd heath
#

i was gonna say

austere talon
#

okay updater worked

odd heath
#

tenor seems like something we should allow wires

fossil inlet
#

it's what discord uses lol

austere talon
#

why tf are u using shit from tenor as background 😭

#

retarded

#

you're adding so much lag by using 30mb gifs

fossil inlet
charred monolithBOT
#
[Vendicated/Vencord] New tag created: v1.12.3
chrome coral
#

tenor seems reasonable

odd heath
#

@austere talon vveev you should prolly make venbot sticky for that stuff everyone is gonna come about it

#

or at least a command

chrome coral
#

vsticky

nimble pendantBOT
limber skiff
#

@austere talon make a commad to merge a branch into another

#

or make a tag

austere talon
#

LMFAO

#

yes

limber skiff
#

genuinely useful not lying

jolly egret
#

ehh

austere talon
#

all the background theme goblins gonna come crawling out of their holes

#

gonna be a fun time

jolly egret
#

tessie time

fossil inlet
#

give your git token to venbot then just run shell commands

#

@austere talon allow tenor for banger gif

#

people will copy and paste from their favorites

chrome coral
austere talon
#

I'm gonna whitelist the top 3

fossil inlet
#

oh, the top is just pintrest

chrome coral
#

what is a alphacoders

fossil inlet
#

looks like wallpaper site

#

@dusk blaze use

austere talon
#

why does tenor have 3 million domains

#

oh media1 is fake