#πŸ‘Ύ-core-development

1 messages Β· Page 285 of 1

nimble pendantBOT
#

Now testing! shipit

austere talon
#

FAIL STILL

nimble pendantBOT
austere talon
#

genuinely what is ur problem 😭

charred monolithBOT
austere talon
#

vtest dev3

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
austere talon
#

(U*FIDUJOHjiuhodsgujihogfsd

#

i will killu

odd heath
#

I don't think the queue helps much trolley

austere talon
#

oh wait it worked

odd heath
#

Ehat

charred monolithBOT
austere talon
#

vtest dev3

nimble pendantBOT
austere talon
#

the entire time i was fixing the wrong place

odd heath
#

😭

#

Classic

nimble pendantBOT
nimble pendantBOT
austere talon
#

YESSS

#

vtest dev3

nimble pendantBOT
austere talon
#

i literally added P1 and P2 to know which part is issue

#

except that I added P1 twice

#

so I was looking at the wrong one

nimble pendantBOT
nimble pendantBOT
austere talon
#

okay fire

odd heath
charred monolithBOT
austere talon
#

vtest dev3

nimble pendantBOT
austere talon
#

i have to force push dev again

#

pain

fossil inlet
#

Where's the gif when it's needed

austere talon
nimble pendantBOT
# austere talon vtest dev3
Bad Patches

Settings (found no module):
ID: -
Match: ```
getWebUserSettingFromSection

Slow Patches

AlwaysAnimate (took 5.1ms):
ID: 227
Match: ```
/animate:\i,loop:/


**__FriendsSince (took 5.5ms):__**
ID: `239606`
Match: ```
/#{intl::USER_PROFILE_MEMBER_SINCE}\),.{0,100}userId:(\i\.id),.{0,100}}\)}\),/
nimble pendantBOT
austere talon
#

niiice

limber skiff
#

what fixed it?

#

maximum concurrency?

austere talon
#

I just added maximum concurrency of 50

#

it doesnt really make it any slower it seems

#

which makes sense because theres only so many parallel fetches u can have

#

before it was spamming thousands of fetch() all pending and chrome ran out of resources

limber skiff
#

It was too fast before

#

πŸ˜‚

charred monolithBOT
austere talon
#

vtest dev

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
austere talon
#

idt we need that queue on scripts

charred monolithBOT
austere talon
#

vtest dev3

nimble pendantBOT
charred monolithBOT
limber skiff
#

LOL

#

move the queue on the bottom to only the fetch too

#

instead of whole promise

#

like u did on the first one

austere talon
#

eh it shouldnt matter much

#

vtest dev3

nimble pendantBOT
austere talon
#

i was wondering where the results were

#

didnt run

nimble pendantBOT
nimble pendantBOT
limber skiff
#

nice

austere talon
#

vtest dev3

nimble pendantBOT
austere talon
#

i wonder why it worked sometimes

nimble pendantBOT
nimble pendantBOT
# austere talon vtest dev3
Bad Patches

Settings (found no module):
ID: -
Match: ```
getWebUserSettingFromSection

Slow Patches

AlwaysAnimate (took 5.8ms):
ID: 227
Match: ```
/animate:\i,loop:/


**__WebContextMenus (took 5.4ms):__**
ID: `826308`
Match: ```
/\i\.isPlatformEmbedded/
limber skiff
#

they finally added toArray

austere talon
#

why did it test twice

#

oh

#

nvm

limber skiff
#

😭

austere talon
#

we cant really use it in vencord because its too new

#

but we can use it in dev only stuff

limber skiff
#

yeah

charred monolithBOT
austere talon
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
odd heath
#

Maybe remove that patch before you push tag

austere talon
#

why

charred monolithBOT
#

be8d7a4 CustomCommands: fix replying with commands - Vendicated
b67bb00 ReviewDB: make profile review button like game ... - Vendicated
d177f4d AnonymiseFilenames: use hex alphabet to remove ... - Vendicated
26829a4 ReviewDB: various fixes (#4062) - thororen1234
734412b fix SpotifyControls, GameActivityToggle & AccPa... - sillyElvy

#
[Vendicated/Vencord] New tag created: v1.14.6
fossil inlet
odd heath
#

Or does reporter run on dev

austere talon
#

reporter doesnt give a shit about tags

odd heath
#

I'm aware of that 😭

#

I just wanted the tag to be free of broken patches that's all

#

And reporter to be pretty

#

Maybe im just autistic blobcatcozy

twilit vector
charred monolithBOT
charred monolithBOT
twilit vector
#

i've been trying to think of a snarky comment to that guy for 3 minutes now

#

this internet arguing stuff isnt for me

twilit vector
#

already used

prime dew
twilit vector
#

yes

median rapids
charred monolithBOT
raw turtle
gritty iris
fossil inlet
#

i'm doing something trolley

austere talon
#

insane

limber skiff
#

are you using svc?

fossil inlet
limber skiff
#

they are both parsers

fossil inlet
#

yes?

limber skiff
#

I meant to say swc

#

lol

#

but yeah

fossil inlet
tacit moth
twilit vector
#

sadan is just like taht

fossil inlet
#

you don't have to deal with complicated lifetimes for the ast

#

you just use one lifetime for everything and free it all at once

gritty iris
#

Before:

After:

austere talon
#

we should add View Role Members here

gritty iris
#

wait

#

wha

#

oh wait

#

im losing my shit

#

my brain thought you meant on equicord for some reason

gritty iris
austere talon
#

stop soyjaking @twilit vector

#

what is wrong with ub

#

going through the equicord plugin list and god u have so many terrible plugins 😭

gritty iris
#

is very much agreed

#

I tried to let creations remove a bunch and everyone got mad

#

😭

#

I use a total of 25 of our plugins

#

10 ish of them are for developing stuff or I just have a random usecase every couple months

#

thats his commit everyone was mad about

#

its on the main site now

austere talon
#

nice

#

and make the page title better

#

it should be BetterCommands | Equicord

austere talon
errant nacelle
#

add favouriteanything trolley

austere talon
gritty iris
#

I can pr the ones you want if you would like

austere talon
#

this is unsafe

#

if webpack find for that fails somehow it will crash loop the entire app

gritty iris
#

lemme fix 1s

austere talon
#

now UserStore will probably never break so this example is whatever, but if you use Discord stuff that could break inside a patch you should always use try catch or ErrorBoundary

#

this returns react ui so it should be named renderCharCounter

#
renderCharCounter: ErrorBoundary.wrap((text: string) => {
    // ...
}, { noop: true })
gritty iris
#

I think I just didnt rename it because it was moved from observer

#

funny enough

austere talon
#

OBSERVER

gritty iris
#

yup its before I knew fully about patching

austere talon
#

im surprised adding a char counter was that easy

gritty iris
#

still got 1 to move 😭

#

same ngl

austere talon
gritty iris
#

I know I looked at it for a solid hour like how and why does this work

austere talon
#

this dragify idea is kind of cool but the code for it is cursed

gritty iris
#

its fucked

#

I know

errant nacelle
gritty iris
#

I actually tried to make dragify better at some point

austere talon
errant nacelle
gritty iris
#

they had a char counter that would show if you were reaching the limit

#

but I dont even get that anymore

austere talon
#

hmm

#

still there

#

why did u make EquicordToolbox

#

it doesnt seem like it changes anything

#

or am i missing something

#

or is it just to change icon

gritty iris
#

icon change and smth else

#

I didnt actually rename it

#

that was the og founder

#

I was apart of the original team and his code was terrible so I forced him to leave and before he left he just renamed the plugin Joe_Shrug

austere talon
#

forced him to leave 😭

#

wtf

#

wait who

austere talon
gritty iris
#

@patent minnow

austere talon
#

ohhh

#

i didnt even know

gritty iris
#

I dont think anything functionality is different besides the icon lol

austere talon
#

i thought u started equi sorrykirino

gritty iris
#

nop

austere talon
gritty iris
#

I was the original dev

austere talon
gritty iris
#

sorry :(

#

ill make sure to think of some πŸ”₯

austere talon
#

this is kind of funny

#

i just rename mkvs to mp4 manually

#

ios users hate that

gritty iris
#

lmfao

#

they cant load mp4?

austere talon
#

ios users cant load mkv renamed to mp4

gritty iris
#

we love apple

austere talon
#

ios moment

gritty iris
#

get an android πŸ”₯

austere talon
#

they are not "compatible"

gritty iris
#

I think I just checked the container

#

MP4 (formally MPEG-4 Part 14) is a digital multimedia container format most commonly used to store video and audio, but it can also be used to store other data such as subtitles and still images. Like most modern container formats, it allows streaming over the Internet. The only filename extension for MPEG-4 Part 14 files as defined by the speci...

twilit vector
gritty iris
#

used stuff like that to check

austere talon
#

It's just that Discord technically supports them but for whatever reason doesnt allow them

gritty iris
austere talon
#

by renaming mkv to mp4 you trick discord into supporting it

gritty iris
#

they finally support webm I cant hate

austere talon
#

and then ur browser realises wait a minute this is a mkv not mp4 and renders it fine

#

anyway that plugin is useful too

gritty iris
#

I do requests I find unique

#

one of my pride and joys I keep alive

#

whos watching is dope

austere talon
austere talon
gritty iris
#

nope but I can get an ss

austere talon
#

it should show plugin info

gritty iris
#

we need to complete the move to nextjs for that one

#

πŸ₯€

austere talon
#

what do u use rn

gritty iris
#

solid I think

austere talon
#

is it a react spa or smth 😭

#

oh

gritty iris
austere talon
#

did u vibecode the website

gritty iris
#

nope

#

suprising I know - it can make a lot of it 😭

#

I have one of my buddies who makes websites for a living do it

austere talon
#

bro i thought that was zerebos for a second

#

the Silhouette is a bit like his old avatar

gritty iris
#

this guy made it

#

we just finished it up and he adds stuff I ask for

#

because I dont know solid or vite too well

austere talon
gritty iris
#

it needs to be deleted

#

tidal has a different player as well tmk

#

ytm is broken

austere talon
#

rip

gritty iris
#

they moved from websocket to http

#

so its not accurate

austere talon
gritty iris
#

tidal is a rip basically

austere talon
#

why are some settings camelCase and others PascalCase

gritty iris
#

ngl I didnt even notice until now

signal sundial
gritty iris
austere talon
# gritty iris tidal is a rip basically

instead of making different components you should make a MusicStore interface/base class and then all three players implement that

and you can just pass whichever implementation you want to the component

austere talon
signal sundial
#

as a setting i think?

gritty iris
#

might combine it eventually then ill have to take a look

#

was probably easier to just rip the guts

austere talon
#

guh does tidal also need a local service

grave mangoBOT
austere talon
#

do they not have an official api

gritty iris
#

it needs to be modded in tmk

austere talon
gritty iris
#

but I also havent scanned their api in awhile

#

their apps are seperate

#

its annoying

austere talon
#

or can it not change player track etc

gritty iris
#

so my guess is no

austere talon
#

oh it doesnt rip

gritty iris
#

to my knowledge based off of past stuff

#

mobile app cant change anything

#

just pauses the song

#

cant shuffle send track change track etc for other clients

austere talon
#

so dumb

gritty iris
#

and the client when playing a different songs dont change if a track starts playing they stay whatever it was before besides the client playing it

austere talon
#

dont use button for links

#

use <a>

#

and style it like a button

gritty iris
austere talon
austere talon
# austere talon dont use button for links

button

  • doesnt let users preview the link
  • doesnt let users right click to copy link
  • doesnt let users control whether it opens in current tab or new tab
  • doesnt work without js (doesnt matter in this case because your site wont work without js anyway i think)
grave mangoBOT
austere talon
#

just export IconsModule directly 😭

#

why did u rename ModalCloseButton to CloseButton

gritty iris
#

where what

#

theres both

#

@hybrid blaze Joe_Shrug

#

im taking a guess and saying there was like 10 consts of this

austere talon
#

this is cool

gritty iris
#

and he just pasted it

austere talon
#

btw those modal components are deprecated

#

probably will be removed soon

gritty iris
#

needs sizing fixes

hybrid blaze
austere talon
gritty iris
#

its small on the settings menu

#

all this empty space

#

so much room for activities

austere talon
#

all discord settings pages are like that xD

gritty iris
#

noted blaming discord

austere talon
gritty iris
#

incase you picked up any of my stuff you can snatch it idrc where it ends up

austere talon
#

i dont like this though i will change that

gritty iris
#

that works again?

austere talon
#

yeah they have that giga icon module that isnt mangled

gritty iris
#

this is a great day

austere talon
#

but it could get mangled at any moment

gritty iris
#

they just havent touched it in like a year or so Joe_Shrug

austere talon
#

just copy paste the svg

gritty iris
#

real

#

should add a copy button at that rate

tacit moth
tacit moth
#

cord

gritty iris
#

I think these are level now

errant nacelle
gritty iris
#

use the Icon import trolley

austere talon
gritty iris
#

I cant do that test rn

#

my discord just dies if I type too much into a box

austere talon
#

HOW

gritty iris
#

I dont know

#

hold on

#

ill get an ss

austere talon
#

does equicord lag

gritty iris
#

oh my god im back

#

it randomly caught up

#

it might just be windows lmfao

#

it starts lagging after too much data and holding ctrl v

#

it was around this size of just t's maybe a bit more

gritty iris
#

only lag I hear is mle logging every server because who reads what they enable anyways

#

Enabled Plugins (80):

AlwaysExpandRoles, AnonymiseFileNames, BetterActivities, BetterFolders, BetterSettings, CallTimer, ClearURLs, ClickableRoles, ClipsEnhancements, ConsoleJanitor, ConsoleShortcuts, CopyFileContents, CrashHandler, CustomIdle, DisableCallIdle, DiscordDevBanner, EquicordToolbox, Experiments, ExpressionCloner, FakeNitro, FileUpload, FixSpotifyEmbeds, ForceOwnerCrown, FriendsSince, FullVCPFP, GameActivityToggle, GitHubRepos, GlobalBadges, IconViewer, IgnoreActivities, LastFMRichPresence, MemberCount, MessageLinkEmbeds, MessageLogger, MessageLoggerEnhanced, MoreStickers, MusicControls, MutualGroupDMs, NewGuildSettings, NoDefaultHangStatus, NoDevtoolsWarning, NoF1, NoMaskedUrlPaste, NoOnboardingDelay, NoSystemBadge, NoTypingAnimation, OnePingPerDM, OpenInApp, PermissionsViewer, PinDMs, Questify, Quoter, ReactErrorDecoder, ReviewDB, RichPresence, SearchFix, SecretRingToneEnabler, ServerInfo, ShikiCodeblocks, ShowConnections, ShowHiddenThings, ShowMeYourName, ShowTimeoutDuration, SongSpotlight, SpotifyActivityToggle, SpotifyCrack, TextReplace, ThemeLibrary, Timezones, Translate, UniversalMention, ValidReply, ValidUser, ViewIcons, ViewRawVariant, VoiceChatUtilities, VolumeBooster, WhoReacted, WhosWatching, XSOverlay
#

MessageLoggerEnhanced is mle

hybrid blaze
#

Enabled Plugins (52):

AlwaysTrust, BetterFolders, BetterRoleContext, BiggerStreamPreview, BlockKrisp, ClickableRoles, ConsoleJanitor, ConsoleShortcuts, CrashHandler, Declutter, EquicordToolbox, Experiments, GameActivityToggle, GifPaste, ILoveSpam, IconViewer, ImageZoom, MemberCount, MentionAvatars, MessageClickActions, MessageColors, MessageLogger, MessagePeek, MoreQuickReactions, NoDevtoolsWarning, NoPendingCount, Questify, Quoter, ReactErrorDecoder, RelationshipNotifier, ReplyTimestamp, ReverseImageSearch, ReviewDB, RoleColorEverywhere, ShowHiddenChannels, ShowHiddenThings, ShowSongName, ShowTimeoutDuration, SilentTyping, TypingIndicator, TypingTweaks, UniversalMention, UnreadCountBadge, UserVoiceShow, ValidReply, ValidUser, ViewIcons, VoiceChatDoubleClick, VoiceMessages, WhoReacted, WhosWatching, YoutubeAdblock
austere talon
#

wtf is ViewRawVariant 😭

hybrid blaze
#

can we yeet our messageclickaction?

#

feels terrible

#

its overcooked

gritty iris
austere talon
gritty iris
austere talon
gritty iris
hybrid blaze
bleak blaze
gritty iris
#

alr will add 1s

austere talon
#

every time a patch calls any discord function or component always always try catch / errorboundary

hybrid blaze
gritty iris
#

I know its fried but I keep getting yelled at everytime I remove something 😭

#

its half the userbase everytime

twilit vector
gritty iris
#

its like how are you even using these obscure things

austere talon
#

for april fools make this plugin just translate all your messages to polish before sending

gritty iris
#

REAL

#

was gonna eol on april fools and make it reinstall vencord trolley

bleak blaze
#

april fools joke ban all the lightcord users

gritty iris
#

(im joking)

austere talon
gritty iris
#

I pr'ed what I make that I thought you might want

bleak blaze
#

profilesets

gritty iris
#

πŸ”₯

bleak blaze
#

is a very good equicord plugin

gritty iris
hybrid blaze
austere talon
#

but most equicor plugins are so niche / useless

gritty iris
#

^^

austere talon
#

like what is that bro 😭

gritty iris
#

I DONT KNOW

bleak blaze
gritty iris
bleak blaze
#

that's the best plugin by far

hybrid blaze
#

my favorite one

austere talon
#

wait this is just a case for TextReplace 😭

gritty iris
#

me when textreplace

tacit moth
#

I want that icon picker on vencord

twilit vector
austere talon
gritty iris
#

no

signal sundial
#

look in my userplugins @austere talon some things could be real

gritty iris
#

it was from suncord merge

hybrid blaze
gritty iris
#

we took the entire suncord userbase into equicord

signal sundial
austere talon
#

what are we even doing here

gritty iris
#

that song thing nexpid made was fire

signal sundial
#

add venfetch @austere talon

gritty iris
#

dont

austere talon
#
/^\?+$/.test(content)
signal sundial
#

i should add support for equicord in venfetch

#

will show equicord logo

#

then i can also add venfetch to vendroidenhanced and it has vde logo

bleak blaze
#

what is niche to you guys anyway every pr you have the same review 90% of the time no offense

twilit vector
gritty iris
#

SongSpotlight is good

signal sundial
#

i could PR songlink

austere talon
#

songlink as a plugin seems pointless just use a bot no?

signal sundial
#

easier to just see the buttons for your platform instead of always invoking a bot

gritty iris
signal sundial
#

on mobile i use my bot

atomic juncoBOT
#

Poker Face

Lady Gaga

twilit vector
#

also no spotify or ytm? 😭

hybrid blaze
#

based

signal sundial
bleak blaze
#

it'd be a good dev plugin

fossil inlet
#

debug view sucks on the raw patch because of how oxc handles node -> source code mapping

signal sundial
sterile oak
# sterile oak yea, sure

could I have a small request? if Equicord and Vencord could not put the whole plugin in two files vennieflower

austere talon
#

@gritty iris btw how do u deal with the constant merge conflicts when updating equicord with vencord changes 😭

#

must be painful

gritty iris
#

normally just like 10 or so conflicts

austere talon
#

why lmao 😭

#

autumn insane

gritty iris
#

uh

#

I added something and it was just in the repo so I was like sure why not

grave mangoBOT
austere talon
#

why does it keep trying to use unavailable emotes

#

i hate discord

#

(i dont have fakenitro on so its not that)

gritty iris
#

im trying to make a profile collections api

#

these all use the same patches

austere talon
#

did u steal my reviewdb patches

gritty iris
#

uhhhh totallyyyy notttt

austere talon
#

thats okay

sterile oak
#

I assume you gonna use the equicord version of the plugin, which all of its code in two files. There are hooks, components, the menu, the modal all in a single file, it's honestly hard to navigate

austere talon
#

you want it to be more files?

gritty iris
#

would never

austere talon
sterile oak
austere talon
#

WHAT IS THAT

gritty iris
#

hold on

sterile oak
gritty iris
austere talon
gritty iris
#

I was gonna be put on witch trial for removing that

austere talon
#

or did u rewrite after they merged

gritty iris
#

I dont know why

austere talon
gritty iris
austere talon
#

ah and then rewrite

gritty iris
#

either we merged or stole

#

dont remember

austere talon
#

this could be added to gameactivitytoggle

#

when u right click the toggle it could open a context menu with a checkbox for spotify

#

idk how intuitive that would be though

gritty iris
#

I made it a toolbox setting as well because that was annoying

#

but the actual toggle is fucked

#

couldnt get a checkbox to work at all

#

so you get this

sterile oak
gritty iris
#

onclick it closes anyways Joe_Shrug

austere talon
sterile oak
#

lmao

gritty iris
#

okay that was for discord bot users

#

I wont use it I just know people will

#

you missed it

#

yesterday we had doom in equicord

austere talon
gritty iris
austere talon
#

BRO WHAT

gritty iris
#

we were bored

sterile oak
austere talon
#

add back smh

sterile oak
#

agreed

gritty iris
#

cant

#

firefox said it was too big

#

only reason I removed it

#

our zip was 14mb lmfao

raw turtle
austere talon
#

why dev only

sterile oak
gritty iris
#

shit code

austere talon
#

but just use a bot for this

#

user app

gritty iris
#

they have bots for that?

#

I need to go searching more πŸ₯€

#

why did it take 2 minutes 😭

austere talon
#

textreplace

gritty iris
#

doesnt it read you the message 😭

#

no wait

#

otherway around

#

voice to message

#

little bubble under the voice message or smth I forgot ngl

#

these plugins have too much to remember

sterile oak
#

vee will add a basic transformation language to textreplace, yes

charred monolithBOT
sterile oak
gritty iris
#

the api worked

#

this is peak

gritty iris
#

this is fine

#

also they removed the broken settings patch from the look of it

gritty iris
fossil inlet
#

Might move companion to rust for like a 9999x speedup or smth

gritty iris
#

rip reviewdb patches

austere talon
gritty iris
#

got it working finally

#

added chat/member list popout user popout from bottom left and dm sidebar

gritty iris
#

Or not really needed?

gritty iris
#

@austere talon Im gonna pr the apis we have excluding the audioplayer one is there any you dont want now and should I pr them all together?

#

we have user area api (bottom left panel) header bar api which includes channel header as well and profile collections api

signal sundial
gritty iris
signal sundial
gritty iris
hybrid blaze
gritty iris
#

^

#

I dont use anything in channel so thats norma;

hybrid blaze
#

What about the update notice?

#

looks way better imo than the ugly card

#

but

#

could break since its a findby

gritty iris
hybrid blaze
#

but for update

gritty iris
#

thats discord

#

discords update one?

#

do we even use that bar

hybrid blaze
#

equicord update one

#

sob

hybrid blaze
gritty iris
#

I've never seen it

hybrid blaze
#

wtf

#

u trippin

gritty iris
#

Equicord: v1.14.6.1 β€’ ec6b6ea (Standalone) - Mar 19, 2026
Client: stable ~ Discord Desktop v1.0.9229
Platform: Windows 11
Last Crash Reason: N/A
⚠️ Potentially Problematic Plugins: NoSystemBadge
-# Note: These plugins might not be the cause of your problem. They are simply plugins that cause common issues.

gritty iris
hybrid blaze
#

insane

gritty iris
#

automatic update

hybrid blaze
#

but no

#

it should trigger that

#

if there is a update

#

works fine to me

gritty iris
#

im always updated

#

it has an errorboundary so it should be fine

fossil inlet
#

EVIL (less so)

#

i can parse every plugin except for ML, SHC, fix codeblock gap and fake nitro blobcatcozy

charred monolithBOT
fossil inlet
charred monolithBOT
#

Summary

  • Render functions in VencordPopoverButtons were called as plain
    functions inside .map(), which violates React's Rules of Hooks
  • Extracted a PluginPopoverButton wrapper component so the render
    call happens inside a proper React component body
  • Follows the same pattern already used by ChatButtons.tsx
  • Error handling moved from try/catch to ErrorBoundary (consistent
    with every other similar API)

All 4 existing consumers (viewRaw, translate, quickMention,
hideAttachm...

odd heath
fossil inlet
odd heath
#

peak

fossil inlet
#

oxc is so good

#

i can just tell it to eval this, and it does

fossil inlet
errant nacelle
#

That's how you check if a bit flag is set

fossil inlet
unkempt oak
#

everybody used that plugin

twilit vector
#

does it add ~ to the end of every sentence or smth~

signal sundial
#

im so xini wiggly~

gritty iris
#

Everyone was losing it

unkempt oak
#

oh horror

#

i was only parsing the first type & id

hybrid jetty
hybrid jetty
#

stupid firefox extension πŸ’”

#

but yeah no dragify's code definitely needs a rework it is absysmal

unkempt oak
#

oh is dragify the one that does this popup

#

i just thought it was a discord feature

#

wowie

hybrid jetty
#

πŸ—£οΈ

#

it also works on servers

#

member list

#

dm list

#

forums

#

threads

#

uhhhh

#

i'm actually not sure about stages

#

i don't know if i actually wired that in to work

#

okay it works but it shows as a voice chanel instead of stage

#

but it does paste the ID or #mention correctly

charred monolithBOT
twilit vector
#

so many people starring vendroid and expecting it to work properly

unkempt oak
#

how much csp is too much csp...

willow garden
#

no csp

charred monolithBOT
#

Summary

Shows who sent the last message in your DMs, so you can tell if you left someone on read.

Patches PrivateChannel subText to show a preview below the username:

  • πŸ‘» red = you read their msg and didn't reply
  • πŸ’¬ white = unread from them
  • green = you sent last

No API calls, just reads from cached messages + flux events.

Addresses https://github.com/Vencord/plugin-requests/issues/852

Test plan

  • Enable plugin, open some DMs, go back to list
  • Check the three states show up cor...
hybrid blaze
fossil inlet
#

least insane equicord patch

scenic brook
#

I don't really like the way that plugin parses, it breaks the message into chunks on every r, h and # which makes any parsing after it a pain

fossil inlet
scenic brook
#

That too, my helper thing ignores ones like that

fossil inlet
#

but that will be a pain

gritty iris
fossil inlet
#

Also talk is cheap. Send patches

gritty iris
#

what patches 😭

scenic brook
#

git patches

#

he wants a PR lol

signal sundial
#

average nix user

fossil inlet
gritty iris
raw turtle
weak thistle
#

yes

#

sadan insane

fossil inlet
#

It's insane when not mono spaced

raw turtle
#

show

fossil inlet
raw turtle
#

may i see

fossil inlet
austere talon
raw turtle
#

non monospaced comic sans lol

fossil inlet
#

It's not exactly an obscure font

odd heath
#

why must i always find annoying bugs

fossil inlet
odd heath
#

it pisses me off

#

so i will war crime a regex and fix it

gritty iris
gritty iris
#

path is equicordplugins/_api/headerBar.ts for example

fossil inlet
#

you are blind

gritty iris
#

no test patch πŸ₯€

#

I am?

fossil inlet
#

yes

#

let me push fix

gritty iris
#

where πŸ˜”

fossil inlet
#

pull main and rebuild in a second

#

@gritty iris pull and test

#

wait no

#

i fucked it up

gritty iris
#

just lmk when lmfao

fossil inlet
#

should be good nowβ„’

gritty iris
#

you say that but

raw turtle
fossil inlet
odd heath
gritty iris
#

its a public repo github

raw turtle
gritty iris
fossil inlet
odd heath
#

i commited a regex warcrime

#

im proud of myself

fossil inlet
#

ik

#

evil ci

signal sundial
#

@fossil inlet satan

fossil inlet
#

this can't take that long clueless

charred monolithBOT
#

please don't kill me for this gruesome regex, is the best and shortest i could come up with to actually match every emoji

issue is, as shown below, that emojis become part of the gradient making them a colored blob without keeping the emoji recognizable
with this fix the plugin uses the same behaviour discord does for emojis in nicknames
if you can come up with a better regex please suggest so 😭 but since you need to match all of ZWJ, regional indicators, repeating bits and whatever else...

odd heath
#

this was annoying me so bad

#

and the regex is so ugly but its good enough i think

fossil inlet
#

@odd heath why does /\p{Emoji}/v alone not work?

fossil inlet
odd heath
#

same for #*

#

needs negative lookahead and doesnt work for emojis that are made up of multiple codes

#

thats the issue

#

also doesnt work for country flags i think?

fossil inlet
odd heath
#

this is what it should match for trans flag

fossil inlet
#

vchars πŸ³οΈβ€βš§οΈ

nimble pendantBOT
# fossil inlet vchars πŸ³οΈβ€βš§οΈ

​​ 🏳 ​ WAVING WHITE FLAG
​ ️ ​ VARIATION SELECTOR-16
​ ‍ ​ ZERO WIDTH JOINER
​ ⚧ ​ MALE WITH STROKE AND MALE AND FEMALE SIGN
​ ️ ​ VARIATION SELECTOR-16

fossil inlet
#

killing myself

#

why is it bad if it matches separately

#

oh wait

#

nvm

odd heath
#

πŸ³οΈβ€βš§οΈ
πŸ‡©πŸ‡ͺ
πŸ‘¨β€πŸ‘¨β€πŸ‘§β€πŸ‘¦

my regex matches them all like this and this is how it should

#

vchars πŸ‘¨β€πŸ‘¨β€πŸ‘§β€πŸ‘¦

nimble pendantBOT
fossil inlet
#

@odd heath how about /([\p{Emoji}--\d](?:\u200d|[\ufe00-\ufe0f]|[\p{Emoji}--\d])*)/v

odd heath
#

should also match *️⃣

fossil inlet
#

vchars 1️⃣

nimble pendantBOT
fossil inlet
#

unicode is evil and should be eradicated. we should all go back to ascii

odd heath
#

also

#

yours puts them all together

#

idk if thats good or bad

#

😭

fossil inlet
#

but in general, bad

odd heath
#

yeah probably

fossil inlet
#

anyway, i give up

odd heath
#

your regex also still amtches * and #

#

o

#

fair

#

how bad is my version though

fossil inlet
#

regex needs a mode to work on grapheme clusters instead of code points

odd heath
#

wdym

fossil inlet
#

@odd heath you might be able to make your regex a bit more readable with these instead of raw unicode code points/ranges

#

i'd also add a regex 101 link as a comment there

odd heath
#

guuuh

#

i will vibecode the changes

#

with clause

odd heath
#

😭

fossil inlet
#

wait what

#

OH

#

LOVE

odd heath
#

YES

#

lemme see if this works in discoer

#

hmmmmmm

#

let me see

#

it doesnt work wiht existing code

#

thats meh

#

but surely fixable

#

split doesnt work with it catdespair

#

oh

#

i forgot to capture

#

😭

#

pushed

odd heath
fossil inlet
#

you were looking in the wrong place

odd heath
odd heath
#

WHAT

#

WHY SOB

#

is this useful enough for a comment or not πŸ₯€

#

how am i supposed to know

median rapids
#
// = means assignment
let myvar = 1
#

lgtm

odd heath
#

ok fine i remove it

charred monolithBOT
scenic brook
#

It's been so long I stopped bothering checking if it still works tbh

charred monolithBOT
#

TL:DR This plugin NEEDS direct DOM manipulation for its primary function. In the case that this is COMPLETELY unacceptable just close this PR without a second thought.

I'm aware of the rule "No raw DOM manipulation. Use proper patches and React". But the primary function of this plugin is to replace ALL occurrences of "microsoft" to "microslop". This means the plugin has to be able to walk the DOM tree and replace the occurrences.

I originally got the idea from this [chome w...

hybrid blaze
twilit vector
#

Create plugin "m

signal sundial
#

@austere talon 67

charred monolithBOT
#

replacing all visible microsoft strings does not require mutating text nodes in the DOM.

in a react app, the correct implementation is the element/string creation path afaik:
transform string children and selected string props before react renders them

i get the intent and it's really fucking funny ngl but this should be implemented as a render-time transformation, not a document-wide text rewrite

gritty iris
# charred monolith

Time to specifically replace the word Microsoft with microslop in equicord because who uses textreplace anyways trolley

charred monolithBOT
gritty iris
charred monolithBOT
austere talon
#

he should pr his plugin to equicord

#

would you merge @gritty iris

gritty iris
#

we have this in equicord

gritty iris
#

theres been like 2 changes since then which is patch fixing and merging your ui changes

charred monolithBOT
#

replacing all visible microslop strings does not require mutating text nodes in the DOM.

in a react app, the correct implementation is the element/string creation path afaik: transform string children and selected string props before react renders them

i get the intent and it's really fucking funny ngl but this should be implemented as a render-time transformation, not a document-wide text rewrite

I did try to hook/patch the React.createElement function but I did not get it...

charred monolithBOT
odd heath
#

It probably doesn't work either

scenic brook
#

Something to do with the glow behind the text not matching if you switch the order of the names

#

I don't fully remember anymore

#

It's based on the data attribute so I made a function to get the names for both places

odd heath
#

i see

#

i just copied what discord did with the elements blobcatcozy

chrome coral
#

seems to be happening on some users with reviewdb

fossil inlet
#

Is it loading the data every time the user opens a profile? 😭

twilit vector
#

reviews yeah

#

vee show us the traffic spike for manti.vendicated.dev blobcatcozy

austere talon
#

you have to spam a profile like crazy to get that error

#

spam open/close someone's profile

#

u get it after like 10 opens

chrome coral
#

I kind of have giga adhd too

scenic brook
scenic brook
#

Discord's function for wrapping the emojis changed and I can't be bothered finding it again

gritty iris
scenic brook
#

Nice, thanks, maybe Elvy can make use of that

odd heath
#

only to the name

scenic brook
#

What if you flip it so the username is first

odd heath
#

same thing

scenic brook
#

The glow will still be based on the displayname being in that position

odd heath
#

gradient only on the name, not on the part smyn adds

odd heath
#

cuz

#

text fill color resets it

scenic brook
#

The glow is a pseudo element though

#

I'm talking about the hover glow, not the text gradient

#

It doesn't seem to bother anyone anyway so it doesn't really matter

odd heath
#

ooooh

#

i get it now

#

yeah thats fucked

#

but thats fucked either way

#

and it doesnt bother me blobcatcozy

#

i just want emojis to be visible properly

scenic brook
#

I fixed it for myself so it doesn't affect me either way lol

odd heath
#

fair

#

i only use the nick-username anyway

scenic brook
#

Same now

odd heath
scenic brook
#

I imagine it'd be annoying if you used username only

#

And their nickname is longer and/or has emojis

odd heath
#

possibly

charred monolithBOT
#

Summary

  • Adds a new FxTwitter Links plugin that automatically rewrites twitter.com and x.com links to fxtwitter.com / fixupx.com before sending or editing messages
  • This gives Discord users rich embeds with videos, polls, quotes, translations, and more via FxEmbed
  • Hooks into onBeforeMessageSend and onBeforeMessageEdit β€” zero config, just enable and go

Link Replacements

Original Replaced
`twit...
charred monolithBOT
median rapids
charred monolithBOT
weak thistle
#

so smart (doesn't gh show edit history as well)

chrome coral
#

discord should add

charred monolithBOT
twilit vector
#

"feat: add Chrome extension ID" and it's just a comment

charred monolithBOT
#

I tried reproducing this issue by deleting the last message and then sending :+1: immediately after. In my testing, the reaction does appear briefly for a moment, but it gets removed right away.

Because of that, I didn’t observe any lasting or visible issue from a user perspective. It seems like the system is handling the deleted message case, even if there’s a very short-lived reaction internally.

Let me know if there are specific conditions where this behaves differently, but for now I ...

charred monolithBOT
gritty iris
fossil inlet
twilit vector
#

i want refund on my badge

#

unacceptable

#

yeah seems to be just in ui element menu

prime dew
hot sequoia
charred monolithBOT
fossil inlet
#

so fast blobcatcozy

odd heath
fossil inlet
odd heath
charred monolithBOT
odd heath
#

😭

#

??

twilit vector
#

bud deleted head repo and forgot prs close aswell

#

😭

#

lol bro copied wavedev's id in first pr's consts

#

and forgot readme image in new pr 😭

prime dew
#

πŸ˜”

twilit vector
#

isnt this entire pr just dom manip

gritty iris
fossil inlet
#

fancy errors blobcatcozy

sullen plover
#

continuing here because it makes more sense

#

so there's an edge case in glib where if you have libspeechd installed but not speech-dispatcher, it crashes in the background
this has existed for a long time, but I only just found it because KDE now shows when processes crash as a notification

#

I don't really know what should be done about this, but gating it behind an option switch fixes it obviously
we can try detecting it at runtime by accessing $XDG_RUNTIME_DIR/speech-dispatcher/speechd.sock

#

oh bruh the vesktop dev channel was hidden by default
I had the whole category set to show and then discord lied to me

charred monolithBOT
fossil inlet
#

@austere talon what are your thoughts on finds that aren't unique, but happen to match correctly (maybe randomly) due to the order that discord loads modules

#

(found a bunch while making my CLI reporter)

charred monolithBOT
#

Summary

This PR updates the release pipeline to create a native Apple Silicon macOS build while keeping Intel support, then merges both into a single universal macOS binary for release. Universal macOS binaries run natively on Intel and Apple Silicon systems.

It also cleans up a few workflow issues that came up along the way. It adds a workflow_dispatch trigger for manual releases, migrates ...

charred monolithBOT
#

Closes Vencord/plugin-requests#634.

Based loosely off of the Last.FM Rich Presence plugin, but modified to use ListenBrainz metadata and cover art.

Currently, ListenBrainz requires a token to retrieve metadata as a result of bot scraping. One can use the MusicBrainz Search API instead; however, this produces slightly different results from ListenBrainz. See implementation in my personal site.

chrome coral
# charred monolith

This reminds me that I should do testing repair logic for that rewrite, since I technically now have a deadline on when it should be finished (Sep 2026)

#

I might as well just spend my time finishing this now

charred monolithBOT
#

A similar pull request was closed in #161 in favor of #165 which is the installer being written.

Thank you for letting me know! In #161, Vendicated says that the issue with your PR was compatibility for older systems, so to maintain compatibility, I changed the workflow to use a Bullseye container with older glibc. I haven't gotten a chance to test on a Linux system, but this should work.

odd heath
#

discord so suspiciously silent wiht breakages again Susge

weak thistle
#

big explosion inc

odd heath
#

yop

chrome coral
#

@austere talon what do u think

#

ive took the time today to fixup all the issues I knew about

gritty iris
#

what happened to the centering 😭

chrome coral
#

windows

#

its so low res that it looks ai generated

gritty iris
#

lmao

chrome coral
#

heres my display scaling turned higher

#

I rewrote the patch logic so its a bit more robust and I feel that its good enough to be reviewed now

chrome coral
#

very messy codebase incoming

weak thistle
#

I mean other than the billion clippy warnings lgtm

chrome coral
#

dated 2024..

weak thistle
#

scary

chrome coral
charred monolithBOT
charred monolithBOT
#

Cleaned up a bunch of the old components being used in settings pages and plugins, swapped them out for the new @components/ standard

the only plugin I didn't test was SortFriendRequests, I do not have any friend requests πŸ’”

I quadruple checked this before I PR'd but i feel like somehow something slipped through the cracks

oh and also i noticed a deprecation notice with src/plugins/_core/settings.tsx but I decided not to touch it, i didnt see anywhere else where customSections was b...

twilit vector
#

sidequest demon

#

i was wondering why every Forms.FormText was deprecated but just sat there 😭

hybrid jetty
#

oh uve gotta be kidding me

#

ARGHHH

#

i deadass double checked if there was any duplicate PR's

#

what kinda pr name is "Migrate off forms" πŸ’”

gritty iris
hybrid jetty
#

yeah but why not add the word components in there

#

didn't catch u in my search terms at all πŸ’”

gritty iris
#

Lol

hybrid jetty
#

welp

#

that was a waste of 3 hours

gritty iris
#

Yw

bleak blaze
#

YW? is crazy

#

😭

hybrid jetty
#

do i just close my pr atp πŸ’”

#

yknow what i gotta one up his PR somehow

#

oh shit he lowk did more than i did wait

#

wait no he didn't

#

am i tweaking

#

i can't read πŸ’”

hybrid jetty
#

rip

charred monolithBOT
still maple
#

Interesting for Vencor which has seen many weird commit comments on old commits
Disable comments on individual commits - GitHub Changelog https://github.blog/changelog/2026-03-25-disable-comments-on-individual-commits/

Repository admins can now disable comments on individual commits, a small but meaningful improvement for maintainers dealing with unwanted noise on old commits. A new β€œCommits” section in repository settings…