#πŸ‘Ύ-core-development

1 messages Β· Page 200 of 1

rugged spire
#

guh

#

@limber skiff fixed those finds anyway

#

i forgor to merge dev

charred monolithBOT
frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

charred monolithBOT
median rapids
#

damn early bday

charred monolithBOT
gritty iris
# charred monolith

That will either be used as an actual fork or be left there to rot idk which yet

#

Idrk why none our stuff was forked to begin with

crude hearth
#

Timedones 2nd birthday is in 5 months

#

Copilot so useless

#

It still doesnt know

charred monolithBOT
#

press view profile patch also blocks open profile from small profile popout, maybe we should drop it
the patch for dm profile avatar was added by me because i didnt know new profile makes it clickale to open profile lol, i thought it still does nothing, like old profile

charred monolithBOT
#
[Vendicated/Vencord] New branch created: mention-avatars
charred monolithBOT
frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

austere talon
#

conflioct with RCE its over

swift fjord
#

new update soon

charred monolithBOT
verbal pumice
#

can you add noprofilethemes next to norpc in vencord debug πŸ™

#

actually ill do it myself

charred monolithBOT
charred monolithBOT
charred monolithBOT
frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

charred monolithBOT
charred monolithBOT
rugged spire
#

@rugged spire

fossil inlet
#

@rugged spire

wary dew
#

@rugged spire

rugged spire
#

@austere talon will make less ugly by adding option to disable @ and patch chatbox mentions too

#

other than that I think this plugin will stay on and I am confused why this isnt a stock discord feature

sterile oak
#

there is now types of message references, maybe because of the new experimental feature?

rugged spire
#

yes

#

forwarding is type 1

#

reply is type 0

rugged spire
#

I Love React

#

?remindme 10pm resizablesidebar crashes on mobile web

shut vineBOT
#

Alright @rugged spire, in 2 hours, 36 minutes and 25 seconds: resizablesidebar crashes on mobile web

shut vineBOT
#

@rugged spire, <t:1720941815:R>: resizablesidebar crashes on mobile web

austere talon
#

wdym?

#

js creates a closure

#

tf is that error

charred monolithBOT
austere talon
#

enchancement

dusk blaze
#

challenge people read request agreement (IMPOSSIBLE)

charred monolithBOT
frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

charred monolithBOT
spark pivot
#

what if there was /vencord-themes so we could see if someone actually has themes on or not

fossil inlet
still wasp
fossil inlet
spring gorge
fossil inlet
spring gorge
#

true

#

but still

#

support reading my quickcss:

fossil inlet
#

its also optionally uploaded, not automatically

spring gorge
#

oh?

fossil inlet
#

after you run the command, it is prompted as a file upload

frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

charred monolithBOT
austere talon
#

actually maybe i might do it myself

frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

charred monolithBOT
#

92ae626 new plugin MentionAvatars: Shows user avatars i... - Vendicated
0e7570a InvisibleChat: fix embeds missing decrypted con... - henmalib
bbf43c3 fix(FakeNitro): do not convert applicable twitc... - Vendicated
71977f0 fix(ShowMeYourName) - proper case insensitive n... - Jono997
2b273d9 fix(MessageLogger edits): render with proper gu... - Vendicated

swift fjord
#

yo

#

new update time?

shell shuttle
#

why was globalbadges never a plugin built into vencord

#

i forgot

#

and if not globalbadges

#

at least badges from other clients

#

like imagine being able to see aliuxord contributor, other client badges, etc

austere talon
#

cause misleading and against the point

charred monolithBOT
limber skiff
#

ughh

#

commit isnt in dev

charred monolithBOT
#

92ae626 new plugin MentionAvatars: Shows user avatars i... - Vendicated
0e7570a InvisibleChat: fix embeds missing decrypted con... - henmalib
bbf43c3 fix(FakeNitro): do not convert applicable twitc... - Vendicated
71977f0 fix(ShowMeYourName) - proper case insensitive n... - Jono997
2b273d9 fix(MessageLogger edits): render with proper gu... - Vendicated

austere talon
#

what's the point of bumping every branch

#

it's so spammy

limber skiff
#

I use it on my daily basis

#

and to also avoid having to fix so many conflicts in the future

#

a lot of times a conflict emerges

charred monolithBOT
charred monolithBOT
#

it takes up too much space. the header should probably be removed in the small profile and replaced with a vc icon

as for the large profile, the header style is inconsistent with discord

popout: will replace header by vc icon on left side of button
modal: will change text style

btw as nino-dev said bots still uses old profiles. does plugin have to have patches for them?

charred monolithBOT
charred monolithBOT
topaz spoke
rugged spire
#

good luck with that

charred monolithBOT
#

as for the large profile, the header style is inconsistent with discord

I know I've been talking about this a lot (and even opened a technically redundant PR related to it #2690 ), but you can use the Section component I found (see the previously linked PR and #2635 for examples)

btw as nino-dev said bots still uses old profiles. does plugin have to have patches for them?

enable the experiment for simplified bot profiles. i would ideally make sure it works there

also, not enti...

dusk blaze
chilly parcel
#

is there something already in place for doing a setting value isValid check only once the user stops typing? or do I need to do it myself
I don't think sending a web request on each keystroke would be the best idea...

rugged spire
#

what are you trying to validate

chilly parcel
#

if the user has this setting toggled on it just... doesn't work

#

get's a 403

#

and never reports that to the user of the plugin

rugged spire
#

maybe settings isnt the best way of validating and displaying that info?

chilly parcel
#

and it could probably also be easily made to report an invalid api key for those who are incapable of reading and copy paste the client secret instead of the key

austere talon
#

I don't think this is a real use case

#

such a rare edge case

#

noone turns that off or if they do they should realise

and no one has ever complained about it

#

just a note should be enough

chilly parcel
#

fair

rugged spire
#

just modal first time it is detected and save to datastore that the warning has been seen

chilly parcel
#

I had it off for ages and completely forgot about it when enabling the plugin, but an addition to the settings info card is probably more than enough

charred monolithBOT
rugged spire
charred monolithBOT
granite sky
rugged spire
#

hate

granite sky
rugged spire
rugged spire
#

why github gotta do that shit

#

die

#

explode

charred monolithBOT
granite sky
rugged spire
granite sky
#

I just use userplugins as git repo trolley

#

easier to update

rugged spire
#

oh

#

thats why .git/info/exclude exists

charred monolithBOT
#

I'll probably come back with another PR to integrate "different light and dark themes" in theme settings directly, to make it less confusing. Rather than following its own schedule, it could just rely on the active Discord theme, and "sync with system" would give auto theme switching for free.

... But before I can personally use that, there's still the mystery of "why does 'sync with system' always end up setting the theme to Light on my computer" left to solve πŸ€” It's either a Chromium bug o...

austere talon
#

v+ programming @scenic fog

rugged spire
frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

scenic fog
# charred monolith

even nativeTheme.shouldUseDarkColors is false FRICK
I'm resorting to an scheduled-dark-theme extension in VSCode as well, which makes me suspect this is a Chromium/Electron thing

rugged spire
woeful sable
#

fork chromium

#

trust πŸ™

rugged spire
#

google employee will come to my house and kill me if i do it

#

google only cares about making wayland experience worse blobcatcozy

#

mfw newer chromium version adds MORE FUCKING BUGS RATHER THAN FIXING THEM

#

this has happened twice btw

rugged spire
granite sky
woeful sable
#

sucks that you cant make forks private πŸ™

rugged spire
#

github issue

scenic fog
#

so I'm not changing whatever Chromium is looking at πŸ€”

#

Firefox is definitely dark though

rugged spire
austere talon
rugged spire
#

@scenic fog what DE are you using

scenic fog
#

Cinnamon (I'm using Linux Mint)

rugged spire
#

yeah thats your issue

#

i dont even need to be confident but

#

linux mint so out of date with modern anything protocols

#

its an xdg-desktop-portal thing that chromium is using

#

and i dont need to check to be confident that cinnamon does not support it

scenic fog
#

ah, seems like I found the setting

rugged spire
#

oh

#

is it actually a thing?

scenic fog
#

well, there's a thing in Themes that lets you pick between "Prefer dark mode", "Prefer light mode" and ... "Let the apps decide", I had that one selected

rugged spire
#

wait

#

it is supported

#

how

#

am i just assuming mint supports barely anything because of cinnamon wayland stuff taking so long and how they ship outdated stable kernels

scenic fog
#

so I'll be able to use the system theme option like a normal user now I guess :p

scenic fog
#

so, how would you make it so a certain online theme only applies on light or dark mode? two fields like I did for the auto theme switcher plugin, or just a prefix on the line like @light / @dark? (or is that already possible in some way :p)

rugged spire
#

html.theme-light html.theme-dark selectors

scenic fog
#

To put a condition on theme links I mean
(I could definitely download the css files and mess with them though, which makes that useless πŸ˜…)

rugged spire
#

Oh

#

I just thought i had a good idea

#

then I remembered @import had to be at the top of the file

#

and isnt conditional

#

@scenic fog You have 2 options
Modify Vencord to add that conditional theme support
Modify your themes and wrap them in CSS selectors

austere talon
#

Modify Vencord to add that conditional theme support
yes that's what they're talking about...

rugged spire
#

i need some fucking sleep 😭

topaz spoke
#

@austere talon would this channel be the correct one, to talk about the installer rewrite?

austere talon
#

yes

charred monolithBOT
#

Discord Account

No response

What happens when the bug or crash occurs?

Whenever I do anything, this popup is being opened over and over again:
image
Also, you have to dismiss every popup before the app is accepting any further interactions.

What is the expected behaviour?

These popups should obviously not be there. I suppose Discord changed something about their Sentry packages.

How d...

scenic fog
charred monolithBOT
#

For those after me who get here in search if a solution:

Here's the fix (Ubuntu/pop!os) by downgrading back to 0.0.59:

  1. Download https://dl.discordapp.net/apps/linux/0.0.59/discord-0.0.59.deb
  2. Install it: sudo dpkg -i ~/Downloads/discord-0.0.59.deb
  3. Disable immediate update: open ~/.config/discord/settings.json and add one line at the bottom:
{
  // ...
  "MIN_HEIGHT": 500,
  "chromiumSwitches": {}, // <- don't forget the ,
  "SKIP_HOST_UPDATE": true // <- this l...
somber thorn
#

would not be surprised if people forgot they did this and came back to complain

granite sky
granite sky
#

i'm braindead

charred monolithBOT
fossil inlet
# charred monolith

most badges, arent affected that much
a few look a lot worse, a few look a lot better

#

(from what was in the file)

fallen vale
#

is it reasonable to have the style per-badge? or is that too much

fossil inlet
scenic fog
#

(for people that care about that and ask for it, that is :p)

fossil inlet
#

some examples of the bad ones

#

some examples of the good ones

scenic fog
#

(hi ^^')

fossil inlet
scenic fog
#

for some reason it looks more zoomed in when on light theme too πŸ€”

fossil inlet
scenic fog
#

hm yeah, I was thinking that as I posted this

#

that'd explain why I couldn't quite figure why it was different ^^'

austere talon
#

same happens with the vencord badge

#

like the vencord logo

#

why tf is it that way

dusk blaze
#

this plugin had potential until it didn't have setting to not upload file to some random file host

rugged spire
#

WHAT IS discord.new/PJ6VvgEJYg45 AND WHY DID I FIND IN SOURCE CODE

#

7150 PEOPLE USED THIS?

#

discord.new/UqzZCTj2zfwy

frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

rugged spire
#

do ask what I am researching

#

discord.new/2TffvPucqHkN

frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

rugged spire
#

Discord LOVES inconsistency

#

why is GuildTemplateStore absolutely useless for what I want to do?

#

@nova chasm

still wasp
#

@discordapp my beloved

rugged spire
#

ok what the fuck...

rugged spire
#

the standard one

#

and the template one

#

both accept template codes

dusk hill
#

discord moment

rugged spire
dapper crest
#

Lmao

rugged spire
#

no but why does one endpoint ask you supply the channels/roles AND the template code

#

and the other endpoint asks you to submit just the template code in the URL

dapper crest
#

Discord shit code

rugged spire
#

Real

rugged spire
rugged spire
charred monolithBOT
oak hull
#

closed, i merged around 100 commits and i know this wont be accepted anymore

charred monolithBOT
granite sky
#

Vee is giving everyone time to think about the uselessness of their pr

still wasp
#

Mm maybe friendshipranks isn't a good plugin after all

median rapids
#

pretty sure it's analytics

median rapids
rugged spire
#

do you mean the friends or community page

#

That is 100% analytics only

median rapids
#

i mean the guild_template_code field in POST /guilds

rugged spire
median rapids
#

the channels and roles are what actually do something lol

rugged spire
#

trol

#

you need to use /guilds/templates/:id or whatever it was something like that

median rapids
#

also for a while the default template was localized

#

so the server would create channels with spaces

#

when the locale had them

rugged spire
#

Wait

#

Does that still work

median rapids
#

dont believe so

rugged spire
#

Or did they fix on client

median rapids
#

wasnt client issue

rugged spire
#

You still send the channel list to the server

rugged spire
#

So it is patched on the server?

median rapids
#

no

#

not for the default guild template

still wasp
glass jasper
#

I love it very much

median rapids
#

im writing a mildly insane plugin rn

rugged spire
median rapids
#

yes

#

#general was localized

#

to #idk foreign lang where the word general has a space

still wasp
#

I just had an idea

#

That probably sucks

#

Translate channel names / topics and cache them

rugged spire
rugged spire
still wasp
#

Incredible

#

Honestly maybe just a general cleaner ui plugin would be cool

#

Like, remove emojis/symbols from channel names and other places

woeful sable
median rapids
rugged spire
charred monolithBOT
#

Content

A plugin to log all users you where in a voice call/channel with.
On public servers you sometimes want to know who just joined and instantly left your channel, or who you where talking to a few hours or even days ago. A plugin that logs all your voice channel history would be greatly helpful.

Request Agreement

  • [X] I have read the requirements for opening an issue above
still wasp
#

Horror

charred monolithBOT
charred monolithBOT
#

Added a new Plugin called the Signature Plugin developed by @nin1275 and @immrb. on Discord. This plugin will add a small sub-text under every message you send. This is done by using the new Markdown Features in Discord, which means everyone on Discord will see your signature! This plugin will be useful for business using Discord that want to have their business signature under their messages.

prime dew
#

textreplace

granite sky
#

This plugin will be useful for business using Discord that want to have their business signature under their messages.

2 new devs for a preSend

Are they insane

median rapids
median rapids
fallen vale
scenic fog
#

corporate email signatures that say that the message of the employee does not represent the stance of the company, that it isn't guaranteed that the message is virus-free, that the message is only to be read by its intended recipient, etc

fallen vale
granite sky
scenic fog
prime dew
#

And yes, that was on a plugin request the other day

granite sky
scenic fog
fallen vale
#

πŸ’€

austere talon
#

poor self advertising attempt

dusk blaze
#

awful grammar

#

clearly didn't have eslint

#

cant follow var naming conventions

#

wait was this person that you removed submission pass from

dusk blaze
fallen vale
#

oh god-

woeful sable
#

😭

#

is that guns.rip?

#

or is that his site

dusk blaze
#

his site

woeful sable
#

ah

fallen vale
#

their dc banner is just... ew.

#

that banner, with

god got me here ✞
in the top of their bio is crazy

woeful sable
#

whats their discord

fallen vale
#

just click on their website

#

it opens up their profile

#

more specifically, on the discord thing on their website

woeful sable
spice python
#

@stone falcon ignore

woeful sable
#

banner seems fine..?

#

bro puts his site and shit everywhere

#

self advert in his bio, pronouns, status and custom status

#

😭

fallen vale
woeful sable
#

god i hate mobile

#

i cant

dusk blaze
#

(nsfw)

woeful sable
#

😭

dusk blaze
#

no need to send messages husk

fallen vale
#

discord mobile my beloved

woeful sable
spice python
#

the github on his website leads nowhere 😭

woeful sable
#

done got timed out for the p word

#

its soft nsfw

#

😭

fallen vale
#

the other site (the one belonging to the opener of the PR) opens a 403 page lol

spice python
woeful sable
#

he has one linked on his discord

#

oh ye

#

termed/flagged probably 😭

spice python
#

i kinda wanna report that other account

#

because github doesnt allow having multiple accounts afaik

woeful sable
fallen vale
spice python
#

anyways we should probably stop before vee sees this blobcatcozy

dusk blaze
fallen vale
#

nice channel

charred monolithBOT
#

Content

I was sending messages in #support, and assisting people with their questions. A moderator showed up and purged my messages and the questions people asked, i asked why, they deleted that message aswell. So i said they are making it seem like only moderators are allowed to answer questions. Someone said "the morty guy is more helpful and nice" Then someone asked for their banner to be approved, so the moderator said "ask the morty guy to approve your banner if he is better than me...

fossil inlet
#

What is bro yapping about

keen blaze
#

even have to do

#

with vendor

spark pivot
#

taking a quick gander in the support channel shows no sign of this ever happening

charred monolithBOT
#

this can be accomplished with a user app

https://discord.com/application-directory/search?q=yt

You could say that about a lot of the Vencord plugins. Almost all plugins that interact with the way chat messages work could be apps, from custom application commands to message encryption to textReplace. This just skips the third party and does everything on-device, which is both beneficial for privacy reasons, allows for bigger filesizes and allows more customization and post-processi...

fallen vale
fossil inlet
#

what does this pr even do

fallen vale
# charred monolith

why does interacting with anything on a review say you submitted another review..

spark pivot
still wasp
#

Github are soooo bad

frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

BadgeAPI (found no module):
ID: -
Match: ```
.PANEL]:14

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

fallen vale
glass jasper
austere talon
#

evil

austere talon
charred monolithBOT
glass jasper
frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

charred monolithBOT
spark pivot
charred monolithBOT
charred monolithBOT
glass jasper
hallow kestrel
# charred monolith

debating weather adding tint support for spoilers cover in message logger is a good idea or not.

#

so far support for subtext, mention and codeblock are added to the PR.

hallow kestrel
glass jasper
charred monolithBOT
charred monolithBOT
charred monolithBOT
frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

charred monolithBOT
limber skiff
#

does anyone else have this error

#

or did I break something

austere talon
#

discord moment

limber skiff
#

might be a me moment

austere talon
#

no

#

it happens for me too

limber skiff
#

I see

austere talon
#

idk how to reproduce it

limber skiff
#

neither am I

austere talon
#

nvm it's a vencord issue

#

WhoReacted

limber skiff
#

fake user?

austere talon
#

no

#

it's a model user instead of api user

#

which has getter for clan

limber skiff
#

I see

austere talon
#

i think it could just remove that update

#

idk why i added it

#

wow it's your fault smh /s

limber skiff
#

omg

limber skiff
#

idk why I did that either lol

#

wait

#

to re-render?

#

maybe

austere talon
limber skiff
#

ah

austere talon
charred monolithBOT
austere talon
#

should fix it

rugged spire
#

I made a disgusting fix for the issue when using the new deb package. It somehow works.

#

lmao now i get to try native streaming

#

it... doesn't work

#

I would add this to NoTrack but it needs to be done before renderer is even loaded

austere talon
#

le native.ts

rugged spire
#

This HAS to be done before Discord's own script even loads (I think?)

#

This just stops anything Sentry from loading

austere talon
rugged spire
#

must be loaded before discord's own desktop script

rugged spire
#

lol what

#

is vscode assuming my bashrc is malicious LMAO

#

wait

#

no

#

vscode inserts their own bashrc

#

thats why

rugged spire
#

this native.ts doesn't run at all

austere talon
#

idk if build script is set up to support folders in _core

rugged spire
austere talon
#

they're asking if u trust the folder

#

you should only check it if u... trust the folder

rugged spire
#

yeah

austere talon
#

u can create various config files that will execute code

rugged spire
#

but it's assuming their own bashrc will auto-run code there blobcatcozy

austere talon
#

like .eslintrc.js

austere talon
#

there are so many config files that can run code

austere talon
rugged spire
#

true

#

idk why vscode explicitly blocks terminal from even opening though

#

maybe it should warn you that your own config might run stuff

#

anyway

austere talon
#

it has nothing to do with that

#

vscode restricts a lot of features in untrusted folders

#

Restricted Mode tries to prevent automatic code execution by disabling or limiting the operation of several VS Code features: tasks, debugging, workspace settings, and extensions.

rugged spire
#

I know what Restricted Mode is

#

I just feel like they didn't consider the built-in terminal extension integration and just blanket disabled it

#

anyway back to native code hell

rugged spire
#

I need your advice

#

Do I

  • Leave it in patcher.ts (benefit of not having to explicitly specify when to load in my own native.ts file)
  • Edit the native loading code to load natives in src/_core (slightly more annoying but keeps code related to the same concept together)
#

lol what is discord smoking

austere talon
rugged spire
#

oh what

#

this isnt related though?

#

is it?

austere talon
#

it is

rugged spire
#

no this is me smoking some git pull upstream dev and not merging on my other branch blobcatcozy

limber skiff
#

no one saw it

rugged spire
#

whats funny is that was actually being patched by ConsoleJanitor

limber skiff
#

shh

rugged spire
#

@limber skiff I saw it

limber skiff
#

you did not

#

I should have made these branches on my fork

austere talon
#

saw what

limber skiff
#

actually no cuz then i wouldnt be able to run reporter

austere talon
rugged spire
austere talon
#

u can run reporter on fork tho

#

just need to add webhook and token

rugged spire
austere talon
austere talon
#

USER_UPDATE expects an API user which is plain json

#

but the plugin was dispatching user class instances

#

which has getters and shit

#

including getter for clan

#

that's what caused the error

limber skiff
#

should I stop with my two pull requests and just merge them and make a single one

austere talon
#

uhh idk

limber skiff
#

they are already huge it makes no difference 😭

austere talon
#

they are so big changes i didnt really look at them

limber skiff
#

yep

austere talon
#

too much going on

austere talon
limber skiff
#

to be fair I can give my word that they are stable

#

but I would want still want you to at least give an opinion on the changes

#

not that they work

#

send me a list of your enabled plugins vee

#

I wanna compare to mine

austere talon
#

for?

limber skiff
#

to see if you use plugins differently from me which then you could use my branch a little to make sure no plugin is broken

#

not that you need to test, just use it normally and you would notice

austere talon
#

simply daily drive all plugins enabled

#

Enabled Plugins (92):

AutomodContext, BetterGifAltText, BetterGifPicker, BetterRoleContext, BetterRoleDot, BetterSettings, BetterUploadButton, BiggerStreamPreview, CallTimer, ClearURLs, ClientTheme, ConsoleShortcuts, CopyEmojiMarkdown, CrashHandler, Dearrow, Decor, DevCompanion, EmoteCloner, Experiments, F8Break, FakeNitro, FavoriteGifSearch, FixCodeblockGap, FixSpotifyEmbeds, FixYoutubeEmbeds, FriendsSince, GameActivityToggle, GifPaste, GreetStickerPicker, HideAttachments, iLoveSpam, ImageZoom, KeepCurrentChannel, LastFMRichPresence, LoadingQuotes, MemberCount, MentionAvatars, MessageClickActions, MessageLatency, MessageLinkEmbeds, MessageLogger, MessageTags, MoreUserTags, MutualGroupDMs, NoDevtoolsWarning, NoF1, NoOnboardingDelay, NoReplyMention, OnePingPerDM, OpenInApp, PauseInvitesForever, PermissionFreeWill, PermissionsViewer, petpet, PictureInPicture, PlatformIndicators, QuickMention, QuickReply, ReactErrorDecoder, RelationshipNotifier, ReverseImageSearch, ReviewDB, RoleColorEverywhere, SearchReply, Summaries, SendTimestamps, ServerInfo, ShowConnections, ShowHiddenThings, ShowMeYourName, ShowTimeoutDuration, SpotifyControls, SpotifyCrack, ThemeAttributes, Translate, TypingIndicator, TypingTweaks, Unindent, UnsuppressEmbeds, USRBG, ValidReply, ValidUser, VcNarrator, VencordToolbox, ViewIcons, ViewRaw, VoiceDownload, VoiceMessages, WatchTogetherAdblock, WebKeybinds, WebScreenShareFixes, WhoReacted
```**Enabled UserPlugins (2):**

QuickReactFrequents, UnicodeInspector

limber skiff
#

what if

#

hear me out

rugged spire
limber skiff
#

I make another branch

#

which merges my two pull requests

#

and this

#

the biggest branch of vencord

rugged spire
limber skiff
#

the conflicts are gonna be crazy

austere talon
rugged spire
austere talon
nimble pendantBOT
# austere talon vchars

​​ s ​ LATIN SMALL LETTER S
​ o ​ LATIN SMALL LETTER O
​ ​ SPACE
​ t ​ LATIN SMALL LETTER T
​ r ​ LATIN SMALL LETTER R
​ u ​ LATIN SMALL LETTER U
​ e ​ LATIN SMALL LETTER E

rugged spire
#

(no)

austere talon
#

no

rugged spire
#

there is already

austere talon
#

that would require me to make the bot non private

#

which is not happening

rugged spire
#

oh

#

stupit

austere talon
#

it already is a userapp

#

but only i have it

rugged spire
#

what do you use it for

nimble pendantBOT
#

owo

austere talon
swift fjord
#

only let people that don't use userapps use it as a userapp

rugged spire
#

is /say ephemeral in servers?

nimble pendantBOT
#

balls

#

owo

austere talon
#

no

rugged spire
nimble pendantBOT
#

owo

fallen vale
#

okay now thats gonna get spammed to oblivion

shell shuttle
nimble pendantBOT
#

owo

hallow kestrel
nimble pendantBOT
#

owo

glass jasper
hallow kestrel
#

yeah i think so too, i'll prob just make a commit in a bit.

#

done

charred monolithBOT
rugged spire
#

is it just me or do i find it really fucking funny how discord already ignores VencordPatcher errors (and other client mods)?
what if I just uhhhhhhh shiddohwell disabled the rest of their error logging

frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

charred monolithBOT
still wasp
#

Vencord is discord canon

rugged spire
#

Oh it's been well known for a long time

#

also devilbro github is in there SKULL_SKELETON

charred monolithBOT
frail skyBOT
#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Webpack Finds

None

Bad Starts

None

Discord Errors

None

austere talon
# charred monolith
const sentryPath = require.resolve("@sentry/electron");
require.cache[sentryPath] = {
  id: sentryPath,
  loaded: true,
  exports: null,
}
rugged spire
#

i was just about to say what is this psuedocode 😭

austere talon
#

wdym pseudo code

#

it wasn't

#

it just added all fields, some of which aren't needed

rugged spire
#

blobhuskcozy what was dirname()

#

clueless vee

rugged spire
#

doesnt matter

austere talon
#

a function

rugged spire
austere talon
#

it returns the dirname... like one would expect from the name

rugged spire
#

oh

#

its from path okay

#

anyway

grave mangoBOT
austere talon
rugged spire
#

yeah because that's loaded later 😭

#

so how do I load it earlier?

austere talon
#

troll

rugged spire
#

dont worry i figured it out just as you posted thatshiddohwell

#

but what you have might be more reliable

austere talon
#

whatd u come up with

rugged spire
#

something that didnt work

austere talon
#

is sentry electron elsewhere

#

discord desktopp core?

rugged spire
#

wdym "core"

austere talon
#

clueless

rugged spire
#

it's in the node_modules of their asar

rugged spire
#

first time working on this unholy code

austere talon
#

yes its in discord desktop core

rugged spire
#

thought thats what you meant

austere talon
#

wait both have it

rugged spire
#

both what

#

inb4 "i have @sentry/electron installed globally"

austere talon
#

okay sorry

#

i forgot how my own code works

#
// @ts-ignore
import { _nodeModulePaths, _resolveFilename } from "module";

const sentryPath = _resolveFilename("@sentry/electron", {
    paths: _nodeModulePaths(dirname(require.main!.filename))
});

require.cache[sentryPath] = {
    loaded: true,
    id: sentryPath,
    exports: null
} as any;

#

try this

rugged spire
#

still doesnt work

austere talon
#

skill issue i think

#

elaborate

#

wdym doesnt work

rugged spire
#

just sends Error: Cannot find module '@sentry/electron' and a stack trace to the console

austere talon
#

yeah skill issue im afraid

#

works for me

#

don't try to require it

#

copy code

#

anyway idek if this works or if the discord asar has a different require cache

#

it should work

#

cause electron also works

rugged spire
charred monolithBOT
#
[Vendicated/Vencord] New branch created: asar-bundle
spark pivot
austere talon
#

should be added as an option of the messagelinkembeds plugin

limber skiff
#

that's a very funny way of getting something

austere talon
#

where is that

#

and why tf use an error lol

#

can just set a variable

limber skiff
#

in kyuu webpack tarball

brazen bone
# austere talon can just set a variable

Been a while since I wrote that code, but I think the intention was that it should throw an exception anyway to avoid running the function for real, so why not use the value as the exception for extra cursedness?

#

But since the function is just an object lookup there shouldn't really be any harm in running the actual thing

desert cosmos
# charred monolith

im pretty sure uploaded stuff expires after some time, is it really worth it to log anything media related

somber thorn
#

if your discord client caches the image/preview, yeah, it would still display

topaz spoke
#

so I am currently trying to figure out the structure of the tauri installer rewrite, but bumped into some issues. From my understanding the appended code for the install function just reopens the installer with higher privileges with the install argument. So my question is, if I should follow the same structure for both the repair and uninstall functions and later parse the argumenst to run the actual install/uninstall functionality. My second question is, why you would reopen the installer with the argument, instead of directly running the code to patch/uninstall. Is it related to, the installer not having the privileges to manipulate the file system or something else?

charred monolithBOT
dusk blaze
#

me when i don't know how to git pull a pr

austere talon
#

but yes it's to elevate to root

topaz spoke
brazen bone
#

It means being able to write to directories like /opt/discord, which are owned by root

spark cove
#

@austere talon my idea was to:

  • with an esbuild plugin, create a global similar to Vencord but it auto exports every exported value in the renderer build (excluding exports from plugins).
  • generate type information for that global every build, and publish the types to something like @vencord/renderer
  • create an vite-based plugin dev cli tool, like @vencord/cli. would have HMR support, and would transform imports into using the global.
  • plugins would be built targeting a specific vencord build version, and the build would include metadata about what imports it uses. when updating, the client could check the type signature differences and determine what plugins to disable due to breaking changes.
  • the loading system would be as simple as u said, although probably using new Function instead of eval so v8 can still JIT it.
#

i've played with vite hmr a BUNCH lately, and I probably could just add plugin HMR to regular vencord tbh, if you wanted that

#

it would require switching from esbuild to vite tho, which would be pretty easy i think, i'd be very down to do it if you had any interest in it

austere talon
#

this was already fully functional

#

the example plugin worked

#

but i scratched the entire idea because I simply don't want modularity

spark cove
#

oh damn i think i missed this

#

yea thats totally fair lol

austere talon
#

the entire point of vencord is that everything is inbuilt so we have full quality control and can make a functionality guarantee

#

with external plugins it's way worse

#

plugins get abandoned, people write bad code, etc

#

Also we can't provide support with plugins we don't control

#

Also always security aspect

spark cove
#

yea pretty true, if it was added you'd want control over where they came from and stuff, rather than letting anything install them

#

i got the urge to do this because i had a plugin idea for the first time in a long time.. and it's been making me think about vencord again

austere talon
#

but i would hold out with it for a bit cause I'm currently reworking how vencord build works

austere talon
spark cove
#

oo interesting okay

austere talon
#

im not opposed to using vite as long as you can replicate all plugins and such

brazen bone
#

What's hmr?

spark cove
#

hot module replacement

austere talon
#

hot module reload

spark cove
#

yea

brazen bone
#

Oh, that's cool

austere talon
#

like you change code and it hot reloads in place instead of needing to reload

#

we could absolutely hmr ui code

#

like your react components

spark cove
austere talon
#

yeah

spark cove
#

even the other stuff inside index.ts that isnt patches

#

and if the dev wanted,, hmr could help with patches by auto-refreshing on change

spark cove
austere talon
austere talon
#

the current model makes it impossible to add new files

#

once we have asar we can add new files easily without having to make changes to the installer and updater

spark cove
#

oh like css/main/preload/renderer currently

austere talon
#

yeah

#

but we wanna add translation files

spark cove
#

yea thats awesome

austere talon
#

maybe bundle dependencies into the asar instead of loading from cdn

#

the entire reason we load from cdn is cause of this limitation

fallen vale
spark cove
#

yea that would be VERY sick

austere talon
#

it's probably kinda pain to do with vencord tho

#

cause we don't control the react instance and such

crude hearth
#

what advantage does asar even give

spark cove
#

they just said lolol

austere talon
#

btw vap did you see tauri + svelte installer

#

soonβ„’

spark cove
#

no i havent really seen much from the last like year and a half

#

other than what you've dmed me

#

that sounds fire

crude hearth
#

vencord installer webapp

spark cove
crude hearth
#

truly sad piece of history is getting created

#

I still use this installer whenever vencord breaks trolley

spark cove
#

with the asar thing, I think I definitely want to try switching to vite after the PR design is finalized

#

and i wanna review the asar PR when its undrafted

austere talon
#

how will you even port our plugins

#

gonna have to port them to rollup plugins probably?

spark cove
#

not really, the vite plugin api has enough to do it there

austere talon
#

(i mean the bundler plugins)

spark cove
#

yea

#

vite plugin api is capable of doing virtual modules in the same way

#

and can be designed with hmr in mind

austere talon
#

oh nice

spark cove
#

cant be just esbuild or rollup, cus vite uses esbuild in dev, and rollup in prod

#

(lol)

austere talon
#

lmao

#

just make sure this won't make building much slower

#

well prod doesn't matter much

spark cove
#

sure yea i'll include benchmarks or something when i get to it

austere talon
#

naaaah u don't have to include benchmarks lmaooo

spark cove
#

but it sounds fun :)

crude hearth
#

the motivation addreall gave to vap is increadible

spark cove
#

LOL

austere talon
spark cove
#

oh interesting its not a very big PR lol
does this apply to web?

austere talon
#

no

#

web won't change

#

it's already zip

#

well the extensions

spark cove
#

ah true

austere talon
#

the main obstacle with this shit is backwards compat

#

cause people will use ancient installers and take months to update

fallen vale
spark cove
#

not really, good backwards compat should be expected tbh

austere talon
spark cove
#

i think i see what u mean tho

#

like an old installer will not download the asar

#

but would try to fetch the legacy files on the latest release

austere talon
#

yes

#

and the in-app updater needs to be aware

spark cove
#

am i wrong in assuming those legacy files are trying to be working versions of vencord

#

i think the ideal solution would be to ship legacy files that just turn discord into a static window telling the user to use a newer installer version

austere talon
#

maybe

#

well not even that

spark cove
#

or it could download and run the installer itself, since precense of legacy files indicates intent to update

austere talon
#

they could just force update to asar

#

then restart app

spark cove
#

yea exactly

austere talon
#

the main reason I didn't is cause im scared of windows file locking

#

not sure if it can delete the directory nodejs files are being run from

spark cove
#

i think there's probably a way for the main process to spawn another process without it being a child

#

so then the "child" can kill discord and do the installation

#

worst case scenario you simply have to guide to users to manually do it

austere talon
#

i hate how painful testing updater stuff is tho

spark cove
#

testing the git updater seems easy enough but yea http updater sounds pain

austere talon
#

have to make a separate repo

austere talon
spark cove
#

couldnt you make a staging branch that makes releases under the staging tag

#

and tell the http updater to target that tag

austere talon
#

i don't think it explicitly targets any tag

#

just latest one

#

so no

spark cove
#

i mean isnt latest just a reserved tag

#

nope i was remembering the URLs wrong

#

it does seem like u could replace "latest" with "tag/staging" though and it would work the same way

austere talon
#

nah I'll just use a separate repo

#

way safer

spark cove
#

lol fair

#

just trying to think of ways to make it less painful

granite sky
#

Can someone please explain the benefits of using Vendord as an asar file?

spark cove
#

Right now Vencord loads uses multiple files to run: renderer.js, preload.js, main.js (per platform), renderer.css, etc.. (maybe more)
Every time Vencord needs a new file to run, the installers have to hardcode support for updating each file and mapping what platform (Vesktop / Discord Desktop / etc) each file is needed for. I remember how painful it was when we started using renderer.css (i think) lol

Shipping Vencord builds as an asar would de-couple the individual modules from the updater, and make adding new modules to builds in the future SO much safer & easier

granite sky
#

Just to check if I got it right:
Every time a new file in vencord build is added - installer requires an update to map this file
Using asar makes sure that even old installers will have an ability to ship everything needed, which makes adding translation/new modules easier?

turbid hatch
#

plus it means we can ship translations separately instead of baking them in to the js

spark cove
#

and other assets too

#

like workers, or wasm binaries

granite sky
#

Okay, thank you for the explanation!

dusk blaze
#

question; does this only affect desktop, or does it also target browsers

#

(the .asar switch)

spark cove
#

extensions already are build to .zip files, and also the updater doesnt deal with extensions anyways

fallen vale
spark cove
#

im not sure how the userscript handles files, iirc all it would use right now is renderer.js and renderer.css

austere talon
#

yeah

#

userscript probably either won't support translations or have separate language builds

#

otherwise it will become massive

#

2mb userscript

woeful sable
#

seems fine πŸ™

fallen vale
#

we gotta make sure you can load vencord off a floppy disk

woeful sable
#

😭

fossil inlet
verbal pumice
crude hearth
crude hearth
#

wouldnt be too dumb actually

#

have english as default

#

and load language asynchoriously

spark cove
#

You can trigger github workflows from personal access tokens.. Imagine on the site you could customize your own (cached) builds lmao

turbid hatch
#

userscript will be 2 mb

spark pivot
#

userscript will be 0mb cause I eated it all

timber bay
# fossil inlet <@604867037235511297>

Hell with the size lmao, Couldn't care less if it were a half GB. I'd be ecstatic if it ran on a x86 only CPU with no x64, supreme bonus points if it ran on Windows 7. This next part may be far fetched, but even cooler if it were to be set up for SSE2 CPUs instead of SSE3.

I run on some ultimate potato computers over here lol.

austere talon
#

okay so backwards compat with dev install is like impossible

#

i think that's acceptable

brazen bone
#

Dev installs are already I-know-what-I'm-doing mode

austere talon
#

updater will break completely with no indicator

#

actually nah