#๐Ÿ‘พ-core-development

1 messages ยท Page 52 of 1

quaint sapphire
#

you can report the warning

charred monolithBOT
charred monolithBOT
quaint sapphire
#

@austere talon you should make pnpm lint:fix a precommit hook

austere talon
#

no

#

pre commit hooks are annoying asf I don't wanna wait 10 seconds to commit

quaint sapphire
#

how about a github action that runs it on PRs?

austere talon
#

fix ur setup to show problems inside ur ide and you won't have a need for this

quaint sapphire
#

i dont have a need for this

#

why do you always assume it is my problem?

austere talon
#

hmm why else did u bring it up then?

quaint sapphire
#

cause some people are not aware of it

#

and make files w/o the licence header for example

#

its just annoying to open a file and having your eslint rules shout at me for smth I did not do

#

this makes me want to do one of the two:

  1. format the file myself
  2. disable eslint cause it doesnt help me
austere talon
#

I get your frustration but pre commit hooks aren't the correct solution

#

Pre-commit hooks are a waste of time.

Why? Because they enforce standards too early. Pre-commit hooks make us wait for a quality check on every commit.๐Ÿ‘Ž

The code shouldn't need to be "right" to save my changes.

The code only needs to be right before merge.

Solution? Use CI.

Likes

2608

Retweets

258

#

this threads sums it up pretty well

jagged cloak
#

mm

charred monolithBOT
quaint sapphire
austere talon
#

we already do

quaint sapphire
#

on PRs?

austere talon
#

yes

quaint sapphire
#

on PRs it only complains

#

it doesnt fix

austere talon
#

yes

#

Ci shouldn't alter ur code that's bad

quaint sapphire
#

its only code formatting tho

charred monolithBOT
#

This request is extremely simple in concept. All I want is for Fakemojis to look like real emojis, similar to the plugin for Vendetta aptly titled Realmoji. The biggest benefit to this is the ability to send multiple emojis in the same message, or a mix of fakemojis and text, something that is nigh-impossible with the current implementation. Would this be possible for a future update? Thanks, I love Vencord! :D

austere talon
jagged cloak
#

just fix the merge commit right 5head jasonzoom

#

good luck

charred monolithBOT
austere talon
woeful sable
#

gulp

charred monolithBOT
jagged cloak
#

h

charred monolithBOT
austere talon
#

discord changed the way profile pronouns work, i like it

inland fable
austere talon
#

ohhh wait i know the reason WebContextMenu borks

#

i can fix the 638525 warnings

#

but not the 759725 one

#

discord has two nearly identical modules

#

note how they're nearly identical but not quite lmao

#
759725: (e,t,n)=>{
        n.r(t);
        n.d(t, {
            default: ()=>u
        });
        var r = n(785893)
          , l = (n(667294),
        n(18094))
          , o = n(971402)
          , i = n(120415)
          , a = n(480657)
          , c = n(473708);
        function u(e) {
            var t = e.href
              , n = e.textContent
              , u = e.onSelect
              , s = (0,
            a.Z)(t, n);
            return i.FB ? null == s ? null : (0,
            r.jsx)(l.Menu, {
                navId: "image-context",
                onClose: o.Zy,
                "aria-label": c.Z.Messages.IMAGE_ACTIONS_MENU_LABEL,
                onSelect: u,
                children: (0,
                r.jsx)(l.MenuGroup, {
                    children: s
                })
            }) : null
        }
    }
    ,
637810: (e,t,n)=>{
        n.r(t);
        n.d(t, {
            default: ()=>s
        });
        var r = n(785893)
          , l = (n(667294),
        n(18094))
          , o = n(971402)
          , i = n(120415)
          , a = n(893516)
          , u = n(480657)
          , c = n(473708);
        function s(e) {
            var t = e.src
              , n = e.onSelect
              , s = (0,
            a.Z)(t)
              , f = (0,
            u.Z)(t, null);
            return i.FB ? (0,
            r.jsxs)(l.Menu, {
                navId: "image-context",
                onClose: o.Zy,
                "aria-label": c.Z.Messages.IMAGE_ACTIONS_MENU_LABEL,
                onSelect: n,
                children: [(0,
                r.jsx)(l.MenuGroup, {
                    children: s
                }), (0,
                r.jsx)(l.MenuGroup, {
                    children: f
                })]
            }) : null
        }
    }
    ,
#

uh ig i can just only match return i.FB?

quaint sapphire
#

what do you want to match?

charred monolithBOT
lime stone
umbral hedge
#

crying, sobbing, balling my eyes out, spaghetti falling out my pocket

frail skyBOT
#
Bad Patches

UserVoiceShow (had no effect):
ID: 1764
Match: /,{user:\w{1,2}}\)(?!;case)/

Bad Starts

None

Discord Errors
Cannot use SettingsStoreAPI without setting as dependency.

austere talon
#

LET'S GOOOO stupid web context menu errors gone

limber skiff
#

cannor use settingsstoreapi

quaint sapphire
#

how about you .trim() the discord errors?

austere talon
#

this works fine in reality because discord doesn't use the first module, but for the ci tester I just force load every single chunk discord has

#

So it tries to patch the first

#

for the other broken one I was able to just change the find to only find the correct module, for the one I shared I had to adjust the match

frail skyBOT
#
Bad Patches

UserVoiceShow (had no effect):
ID: 1764
Match: /,{user:\w{1,2}}\)(?!;case)/

Bad Starts

None

Discord Errors
Cannot use SettingsStoreAPI without setting as dependency.

austere talon
#

that commit was pointless, I just did it to fix the false positives in reporter

woeful sable
#

yay!

charred monolithBOT
woeful sable
#

isn't that alr a plugin

charred monolithBOT
austere talon
#

inb4 chrome user

jagged cloak
jagged cloak
#

but thats just pronondb

austere talon
#

nah I just patched that shit trolley

jagged cloak
austere talon
charred monolithBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
jagged cloak
#

horror tharki plugin

charred monolithBOT
cunning canyon
charred monolithBOT
frail skyBOT
#
Bad Patches

UserVoiceShow (had no effect):
ID: 1764
Match: /,{user:\w{1,2}}\)(?!;case)/

Bad Starts

None

Discord Errors
font-weight: bold;
color: purple;
 [kb store] KeybindStore: Looking for callback action SOUNDBOARD_HOLD but it doesn't exist in this version. Skipping

Cannot use SettingsStoreAPI without setting as dependency.

#
Bad Patches

UserVoiceShow (had no effect):
ID: 1764
Match: /,{user:\w{1,2}}\)(?!;case)/

Bad Starts

None

Discord Errors
Cannot use SettingsStoreAPI without setting as dependency.

cunning canyon
#

nvm

austere talon
#

whats up? @cunning canyon

#

:3 sorry for so much review

#

sometimes i feel like im annoying with how many changes i request KoishiXD

cunning canyon
#

ah it just complains possibly undefined after add type Rules, now i'm adding if everywhere

austere talon
#

then u typed it wrong HaatoXD

cunning canyon
#

this then i add | undefined to the type and then it says possibly undefined everywhere without if()

austere talon
#

oh

#

you can fix that by using js features better

#
foo = bar();
if (!foo) {
  foo = {}
}
#

this is kinda bad style

#
foo = bar()
  ?? {
    ...
  }
#

do this instead!

#

same thing but better

charred monolithBOT
cunning canyon
#

@austere talon how to do these two

austere talon
#
const STRING_RULES_KEY = "TextReplace_stringRules";

...
DataStore.get(STRING_RULES_KEY);
#

as for the former, just a react component

#

are u not good with react?

cunning canyon
austere talon
#

its really easy

#

to make a new component, just make a new function (with upper case name) and put the code in there

#

then you can pass props to ur component

#
interface MyComponentProps {
  text: string;
  onClick(): void;
}

function MyComponent({ text, onClick }: MyComponentProps) {
  return <p onClick={onClick}>{text} (please don't put a onClick on a p)</p>;
}

<MyComponent text="hi" onClick={() => console.log("hi")}/>
#

like this

cunning canyon
#

doneee

charred monolithBOT
austere talon
#

btw why dont ui make these empty arrays @cunning canyon

#

is there any reason they need to have enelement

#

is it so settings always has at least one element

charred monolithBOT
cunning canyon
austere talon
#

yeah ok

austere talon
# charred monolith

never hardcode colours unless u have a good reason to (like hardcoding spotify colour would be ok)

#

it will look terrible on themes that change colours

#

god why do u use a table

#

makes it painful

austere talon
#

table is really bad you should never use it, unless you have an actual table

#

i still have no idea what this does @cunning canyon

#

i understand / and the flags

#

but why are you matching ~a~ as regex "a"

#

that's weird

charred monolithBOT
austere talon
#

anyway it's almost good now

#

I would just add some further instructions, like maybe a link to regex cheatsheet, how to use flags, the fact that u can surround in spaces for full words, etc

cunning canyon
austere talon
#

horror

#

Well it matches /a/g but instead of / you can also use @ ; % # '

#

I would just change it to /\/?(.+?)(?:\/(gimsuy))?/

charred monolithBOT
charred monolithBOT
cunning canyon
#

i changed to .match(/^(\/)(.*?)\1([gimsuy]*)$/)

austere talon
#

u should make the / optional tho

#

/^(\/)?(.+?)(?:\/([gimsuy]*))?$/

charred monolithBOT
austere talon
#

btw maybe we can add Javascript replacement

cunning canyon
austere talon
austere talon
#

tbh i think flags are useless to have

cunning canyon
#

nah just need to change a bit

austere talon
#

maybe m but other than that I don't think flags are useful

austere talon
#

would be easy to do and make it more powerful

cunning canyon
#

idk about that thing

verbal pumice
#

you can also get people to put malicious code in there but at that point might as well use the console instead

charred monolithBOT
jagged cloak
#

i dont understamd this but it looks cool

charred monolithBOT
charred monolithBOT
charred monolithBOT
#

Adds additional cosmetics to staff of discord servers, depending on the permissions.

-Administrator Tag (or Gray Crown)
-Management (Channel, Roles) Tag (or Bronze Crown)
-Thread Creator Tag (or Gray Crown)

Since this has been requested before, I just wanted to say that it would be cool to also have the crowns for staff of discord servers, as there is one plugin that adds a gold crown to only the owner but not anyone else.

A similar plugin exists for BetterDiscord:
https://better...

charred monolithBOT
limber skiff
#

modying

cunning bobcat
limber skiff
#

they failed epicly

cunning bobcat
#

fr

#

as always

limber skiff
#

they aint changing how it works though

cunning bobcat
cunning bobcat
limber skiff
#

I meant they arent adding or removing anything

#

the current plugin version will work fine

cunning bobcat
#

i doubt they'll keep masked links though

#

too many security concerns to work out

limber skiff
#

I didnt have to edit the plugin to make it work with masked links lol

cunning bobcat
#

wait so what did you change

limber skiff
#

they use the exact same implementation, expect they change the children option to be the masked text

#

before the children option would be the link url

limber skiff
#

recursively

cunning bobcat
#

ah

#
  1. trol
limber skiff
#

let me show you

cunning bobcat
#

wait

#

did they fucking

#

99999999999. test

#

THEY CAPPED IT TO 50

cunning bobcat
limber skiff
cunning bobcat
#

(i dont use fakenitro tro)

limber skiff
#

it wouldn't look like that anyways lol

#

cuz your version isnt updated

limber skiff
#

I would for sure use at least the transformation options

#

no reason to not have them on

cunning bobcat
limber skiff
#

๐Ÿ˜”

cunning bobcat
#

this is how you do package.json'ing

cunning bobcat
#

how else would I add a banner that looks not ass in bandager?

#

OH COME ON I THOUGHT I FIXED THAT

limber skiff
#

you can easily break stuff modifying it

cunning bobcat
limber skiff
#

maybe

#

but there is for sure another solution

cunning bobcat
#

๐Ÿ‘€

#

enlighten me, oh wise one

limber skiff
#

not now

cunning bobcat
#

maybe i won't also have to hardcode accent colors that look like dark theme

limber skiff
#

I don't want to look at discord src code rn

cunning bobcat
#

(setting premium type also sets accent colors on popout)

limber skiff
#

but it as simple as literally patch the line that checks for the premiumType when doing the banner

cunning bobcat
#

i'll look into it

limber skiff
#

unless they render a completely different profile component for premium

#

in that case you can still force render that profile without changing the premiumType

cunning bobcat
#

so glad my naming is ass

#

wait

#

this is the wrong place

#

jesus discord code is giving me a headache

#

react devtools time

#

oh right

#

they exist

#

HOLY WShiT ITS VEN

verbal pumice
cunning bobcat
#

true

charred monolithBOT
umbral hedge
#

(in what situation do people need more than 1 donor badge)

austere talon
#

has always been

#

someone requested it yesterday so I had to make it

#

completely forgot about it beforehand cause noone ever asked for it

umbral hedge
#

o

#

i see

austere talon
#

anyway it's also useful if we ever wanna add more badges

#

like staff badge

umbral hedge
#

meow badge

charred monolithBOT
umbral hedge
#

wish the webhook would just say what github says

austere talon
#

:P

umbral hedge
#

im trying to regularly bump it because last time i had to do some horror merge conflict with 100 commits

#

this is so sad can we hit 2 shiggys

charred monolithBOT
obsidian shuttle
stark flint
#

different emotes

obsidian shuttle
#

ah, that would explain it

umbral hedge
#

erm

cunning canyon
#

erm

austere talon
#

why did u use that as find

#

hardcoding minified names bad bad

cunning canyon
#

it looks like this idk how to find

austere talon
#

take any string from that module that is unique

cunning canyon
#

i tried ".bannerSrc," in patch helper it looks replaced at right place but in code it doesnt work

austere talon
#

how big is that module

cunning canyon
#
var t,
        n = e.user,
        o = e.displayProfile,
        f = e.bannerSrc,
        d = e.onClose,
        _ = e.guildId,
        O = e.profileType,
        g = void 0 === O ? G.y0.POPOUT : O, S = e.allowEdit,
        A = void 0 === S || S, b = e.showPremiumBadgeUpsell,
        P = void 0 === b || b, x = e.isHovering,
        k = e.animateOnHover,
        M = q(i.useState(null == (null == o ? void 0 : o.banner) ? X.COMPLETE : X.SHOULD_LOAD), 2),
        w = M[0],
        V = M[1],
        F = (0, u.e7)([I.Z], (function () {
            return I.Z.getGuild(_)
        }
        )),
        H = (0, u.e7)([y.default], (function () {
            return y.default.getId()
        }
        )) === n.id && A,
        Y = R.ZP.isPremiumAtLeast(null == o ? void 0 : o.premiumType, B.p9.TIER_2), //here
        z = q(i.useState(!1), 2),
        Q = z[0],
        J = z[1],
        $ = (0, u.e7)([T.Z], (function () {
            return T.Z.isFocused()
        }
        )),
        ee = m.QK.getSetting(),
        te = k || !ee ? Q : $,
        ie = (0, l.useToken)(c.Z.unsafe_rawColors.PRIMARY_800).hex(),
        oe = (0, l.getAvatarSize)(l.AvatarSizes.SIZE_80),
        ae = (0, s._i)((0, p.ZP)(n.getAvatarURL(_, oe), ie, !1)),
        se = (0, E.Z)(null !== (t = null == o ? void 0 : o.primaryColor) && void 0 !== t ? t : ae).hsl,
        ue = (0, C.e7)(g),
        ce = null != f ? f : null == o ? void 0 : o.getBannerURL({
            size: ue,
            canAnimate: te
        }),
        le = null != ce;
austere talon
#

is there not more

cunning canyon
#

more

austere talon
#

look at the whole module, find a unique string along it

#

try like .profileType or .displayProfile though they probably aren't unique

cunning canyon
#

ok .displayProfile, works

charred monolithBOT
charred monolithBOT
charred monolithBOT
jagged cloak
umbral hedge
#

i started and then adhd'd while trying to make it look native

charred monolithBOT
quaint sapphire
#

delet

#

me idiot

quaint sapphire
austere talon
#

maybe we should put this behind a flag/setting

#

cause potentially unsafe

#

but it's really cool because then u can do stuff like this

#

this is the rule

charred monolithBOT
woeful sable
#

like multiple pins, naming pins, colours ect..

charred monolithBOT
limber skiff
charred monolithBOT
somber ginkgo
#

cloud in the userscript is still broken MUGA ```
00:15:29.994 injected.js:1 Uncaught TypeError: Cannot read properties of null (reading 'node')
at injected.js:1:3766
(

#

although the prompt to authorise does show up, it fails after hitting the button

#

do i care this has probably already been reported: no

topaz widget
charred monolithBOT
pallid lava
#

womp womp

somber ginkgo
pallid lava
#

oh already reported

#

womp womp nonetheless

austere talon
#

it's literally not our code

charred monolithBOT
somber ginkgo
# austere talon it's literally not our code

i wish i knew how to properly word an issue on the VM issue tracker, but there seem to be some similar issues that are supposedly fixed (notably, https://github.com/violentmonkey/violentmonkey/issues/1578 )

GitHub

Calling GM_xmlhttpRequest with the url field set to a URL object throws an exception: VM69 injected.js:1 Uncaught TypeError: Cannot read properties of null (reading 'node') at VM69 injected...

austere talon
#

ye i looked at that yesterday

#

but unrelated

somber ginkgo
#

another issue i found while searching was one where the workaround for the issue at hand was closing the editor when a page was loaded

frail skyBOT
#
Bad Patches

UserVoiceShow (had no effect):
ID: 1764
Match: /,{user:\w{1,2}}\)(?!;case)/

Bad Starts

None

Discord Errors

#
Bad Patches

UserVoiceShow (had no effect):
ID: 1764
Match: /,{user:\w{1,2}}\)(?!;case)/

Bad Starts

None

Discord Errors
Cannot use SettingsStoreAPI without setting as dependency.

somber ginkgo
#

and with that thought for the day, im off to bed

austere talon
#

@cunning canyon what do u think about javascript rules

#

should we do it or no

austere talon
#

we could just remove the restriction

somber ginkgo
#

but u2u ยฏ_(ใƒ„)_/ยฏ

austere talon
#

I'll just ban them jasonzoom

somber ginkgo
#

okay now i sleep fr

cunning canyon
charred monolithBOT
#

This looks awesome. Is there any further work that needs to be done on this and is there an ETA on when it will be merged?

Yes, there is. Currently, it uses ur entire system audio (including discord), which means viewers can hear themselves in your stream. Additionally, currently it's not possible to customise resolution & fps. And the ui also needs to be improved

austere talon
#

i reverted the js commits for now

#

so we can merge

#

maybe add js rules later

austere talon
#

u did a very bad thing because u used forceRerender every time the user typed a char in the input box

#

so u always rerendered the entire ui which made typing really glitchy

#

i changed that cause yes flowercat

cunning canyon
#

lol

austere talon
#

it would randomly push the text out of screen and stuff

#

and move ur cursor

#

just horrible

#

not really ur fault, using datastore reactively just sucks

charred monolithBOT
charred monolithBOT
austere talon
#

todo: delete fxtwitter, NoCanaryMessageLinks now that text replace is real

also probably make a channel where people can share rules

austere talon
#

I added js rules

#

but I decided to remove it again

#

seems unsafe

austere talon
#

this is why I added js rules but yeah mm seems too abusable

#

๐Ÿ˜ตโ€๐Ÿ’ซ

jagged cloak
#

so people dont mass spam support "why no work" clueless

#

i mean they will anyway but w/e

charred monolithBOT
charred monolithBOT
charred monolithBOT
true gullBOT
jagged cloak
#

is there a rule 9 on github

cunning canyon
#

oh

jagged cloak
#

me when discussions have to be different

charred monolithBOT
nocturne haven
#

Let's fight the YT videos that promote this nonsense

charred monolithBOT
charred monolithBOT
charred monolithBOT
verbal pumice
#

most sane vencord android user

jagged cloak
#

gggg

charred monolithBOT
austere talon
#

most useful tharki plugin

charred monolithBOT
#

perhaps something that isnt useful in the moment can be a day later? idk personally i was very disappointed when i found out vencord logger deletes logged messages after restarting discord. also irritating how there's no actual log but that makes sense cause ur only gonna have like 10 max logged messages at a time probably

well for the sake of user privacy, it's good that it does not store logged messages. if a message is deleted, it's usually deleted for a reason.

somber ginkgo
charred monolithBOT
woeful sable
#

I will contribute something someday

jagged cloak
#

make 5 alts

charred monolithBOT
frank snow
#

Hello, this is my first time using Vencord and TS, I would like to know if it possible to create a custom plugin and import it in the Vencord firefox extension ? rushia_smile

#

I do prefer when discord is not directly in my system being able to spy my processes etc.

verbal pumice
#

you can build for web browsers from source by following the normal process and then pnpm buildWeb
or if you'd like a discord client that can't spy on your processes theres https://github.com/Vencord/Desktop, which is the web version of discord running in electron that keeps full vencord functionality

frank snow
#

thanks, I'll take a look at that thanks

austere talon
#

as for developing in browser, I do not recommend it

#

recommend in the desktop client or Vencord desktop

limber skiff
austere talon
#

or set up web-ext or smth if u really wanna use browser but it's kinda meh

limber skiff
#

oh wait

#

was pronoun db fixed

austere talon
#

ye I fixed it

#

they rewrote a bunch of stuff so I just changed the way it works

quaint sapphire
#

one of them is hot-reloading a browser extension

austere talon
#

you can't really hot reload vencord

quaint sapphire
#

you are missing the point

limber skiff
#

Any idea why this might happen ven

quaint sapphire
#

the browser requires that you reload the extension

#

that is one annoying step

#

that the discord client does not have

#

but the extension has

#

by hot reloading, we also reload the extension

#

which enables you to just reload the page and it would be updated

limber skiff
#

oh

#

I know why

#

It's cuz you force make it required

quaint sapphire
limber skiff
#

not enabled

#

@austere talon german sir

quaint sapphire
#

good for leon

austere talon
#

Nice selfbot

limber skiff
#

fixed already

austere talon
limber skiff
#

just have to enable it in settings too

austere talon
#

u can remove the required if u just enable in settings

limber skiff
#

true

austere talon
#

I just made everything required cause it was easier than messing with settings

limber skiff
#

I kept just to be sure

charred monolithBOT
limber skiff
#

well

#

Settings should be initialized right

austere talon
#

I went ahead and renamed the plugin from QuickConnections to ShowConnections to have the same name as the BD plugin (and imo be more self explanatory)

Connections are already shown, but i guess this works!

#

@lime stone betterdiscord users are really stupid

limber skiff
austere talon
#

even though we do, just split into multiple plugins

#

case in point if you don't give it the same name as the BD plugin they won't find it husk

#

we should add tags to plugins that will also be used for search

#

So we can give plugins the betterdiscord plugin names as tags

limber skiff
#

@lean elm is this the right place

#

idk if it's directly under the username or after the status

lean elm
#

it would be at the right place if Ven merged my proper fix, that i submitted a month ago

limber skiff
#

it wouldnt

#

discord broke the patch

#

I just fixed it

lean elm
#

ahh

#

i see

limber skiff
#

is that the right place?

lean elm
#

should be, but that left margin is off

limber skiff
#

ye

#

does ur pr fix it?

lean elm
#

i think so

limber skiff
#

do you want me to send you the new patch

lean elm
limber skiff
#

so you can test

lean elm
limber skiff
#

do you want me to merge your pr

lean elm
#

yes please prayge

limber skiff
#

okay I will review it

#

gonna push my fix to it too

limber skiff
#

ok took me a while

#

but seems good

charred monolithBOT
limber skiff
#

there you go

frail skyBOT
#
Bad Patches

None

Bad Starts

None

Discord Errors

limber skiff
#

freaking blank spaces

#

shut up

frail skyBOT
#
Bad Patches

None

Bad Starts

None

Discord Errors

quaint sapphire
#

is my favourite error

lean elm
somber ginkgo
#

textreplace rules channel when

lean elm
limber skiff
#

nop I sleep

lean elm
#

lol what's ur time rn?

limber skiff
#

11:50 am

#

yes am

#

not pm

lean elm
#

well lmao, gn ๐Ÿ˜‚

#

man that emoji bot ๐Ÿ’€

charred monolithBOT
austere talon
#

^

#

that's the main reason i havent merged it

#

just super messy

lean elm
#

well yes

charred monolithBOT
verbal pumice
#

any reason why this isnt exported?

austere talon
lime stone
#

@austere talon it's off-centre now

charred monolithBOT
verbal pumice
charred monolithBOT
charred monolithBOT
verbal pumice
#

aliucord jumpscare

jagged cloak
#

oh

#

i didnt even notice it was aliucord

charred monolithBOT
quaint sapphire
#

when discord has a memory leak so you get the OOM

#

(chances of it being vencord? I'd say low, it mostly happens when the dev-tools are open)

#

Oh yeah, I got one more thing

#

this did not cause discord to crash

#

just thought I would share it here

#

I guess the Garbage Collector collected smth it shouldn't collect?

#

@austere talon

austere talon
#

no

#

thats when u restart app i think

#

thats when it usually happens

austere talon
quaint sapphire
#

naruhodo

quaint sapphire
quaint sapphire
quaint sapphire
#

hmm

#

ig I have to link vencordDist with the dist folder?

quaint sapphire
#

is there a way to customize where it loads the bundle from or do I sym-link shit?

austere talon
#

2gb = [Integer limit] bytes

quaint sapphire
#

huh, I thought 32bit is 4gb

#

oh well

lean elm
#

unsigned 4, signed 2

austere talon
#

yeah

quaint sapphire
#

oooooh

#

yeah that makes sense

austere talon
#

but anyway it's a hard chromium 32 bit limitation

#

they'd need to rewrite the entirety of chromium to support more than 2gb ram on 32bit lmao

lean elm
#

btw is there a way to make a tooltip? Like hover over a ? and it shows some box with a tooltip

quaint sapphire
#

discord somehow does it

austere talon
#

search for tooltip in vencord code

lean elm
#

thx

quaint sapphire
#

from what I see vencord generates all those files, so it should be safe if I symlink

austere talon
#

symlink works but vencord desktop has a setting to change location

quaint sapphire
#

oooh, yeah now I see it, I was looking like an idiot up here

austere talon
#

oh yeah it's not there cause vencord desktop code is an entirely separate codebase

#

and I want to mix their code as little as possible

quaint sapphire
#

it could be exposed as a global and vencord could detect it
but yeah I agree

austere talon
#

oh yeah that's already done

#

for adding it to the sidebar

quaint sapphire
#

๐Ÿ™

austere talon
grave mangoBOT
quaint sapphire
#

@austere talon oh yeah, exporting settings does not export the datastore

so plugins that use it will uhh, not have their data backed-up

#

im not saying that cloud backup should have this, but exporting to a file definitely should

austere talon
#

not really possible cause DataStore isn't guaranteed to be serializable

#

we'd have to add a method that plugins can add to add a custom settings serialiser & deserialiser

quaint sapphire
#

hmm

charred monolithBOT
heavy mural
#

um ima dev frfr

charred monolithBOT
merry lynx
#

ETA on channel tabs?

#

Feel free to ping me ๐Ÿ™‚

austere talon
#

no eta

merry lynx
#

Damnit i need it

#

Where is vencord stored on my pc?

frail skyBOT
#
Bad Patches

None

Bad Starts

None

Discord Errors

#
Bad Patches

None

Bad Starts

None

Discord Errors
charred monolithBOT
#
  • What should the plugin/feature do?
    It should allow adding a blacklist of words to block/filter with possibly wildcards and regex support, applying to all statuses and messages.
    -How does it work?
    My idea would be to run all statuses and messages through a generated regex, based on the wordlist + settings given by the user, and based on a regex the user might also provide, but I would suggest using a similar system to whatever the ChatFilter better discord plugin uses, linked below.
    -Any...
jagged cloak
#

i presume running regex on every single message would tank performance or something

#

but vencord patches are light so idk

austere talon
#

it's fine as long as u don't make slow af regex

jagged cloak
#

oh they do

austere talon
jagged cloak
#

oh for like automod shidd right hm

austere talon
#

average vencord user carefully crafting the slowest regex you have ever seen

jagged cloak
#

true

austere talon
#

naaaah their markdown parser uses regex a lot

jagged cloak
#

ah

limber skiff
charred monolithBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
frail skyBOT
#
Bad Patches

None

Bad Starts

None

Discord Errors

None

limber skiff
#

yopp

frail skyBOT
#
Bad Patches

None

Bad Starts

None

Discord Errors

None

limber skiff
#

love

charred monolithBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
verbal pumice
#

did anyone ever work on this

limber skiff
#

nope

austere talon
#

btw @limber skiff

#

commits that don't change anything for users like your most recent one should start with [skip ci] so they don't trigger an update

charred monolithBOT
limber skiff
#

oh

#

I was wondering what I did

austere talon
limber skiff
#

nice to know

austere talon
#

skips ci

limber skiff
#

yeah I was wondering which ci though lol

austere talon
#

ci = continuous integration = all of our workflows

limber skiff
#

I dumb

austere talon
#

it will also skip test workflow but it's whatever assuming u linted

limber skiff
#

even on pr?

austere talon
#

nah

limber skiff
#

๐Ÿ˜”

austere talon
#

the final merge commit can be skip ci

#

if that's what you mean

charred monolithBOT
limber skiff
#

cuz I'm obligated to make pr

fresh parcel
#

Is it possible (or are there plans) for a way to make your own plugins without having to make a whole ass fork of Vencord ?

austere talon
#

discord deranged and uses a separate function for that

austere talon
stark flint
fresh parcel
#

nice, I just don't want to have to bother with keeping a fork up to date all the time

austere talon
#

does it really make a difference whether you're working on plugin repo or vencord repo?

austere talon
#

even once we add a proper way to load external plugins it will still only be a secondary option with the main model still being to have it in client

fresh parcel
#

๐Ÿ˜ญ

#

i thought the plugins were in the Vencord repo

austere talon
#

yeah they are

#

you add your plugin, pr it and once it's merged anyone can use it

fresh parcel
#

well ofc

#

but the external loader would be great for convenience even for making plugins

#

since then i don't have to manually patch vencord

#

and can just use the normal auto-installed version

austere talon
#

you can just run pnpm inject

#

it will open the regular installer except it installs your own build

fresh parcel
#

dang fr ?

#

that's nice

austere talon
#

yea MenheraNod

fresh parcel
#

i couldn't find any dev instructions

austere talon
#

docs folder

fresh parcel
#

"who want to make progam"
"now who wants to doc"

fresh parcel
#

yeah that checks out

#

aight i'll see if i can get voice messages on desktop working with passable UX

austere talon
#

I wonder if discord are working on that for desktop

fresh parcel
#

possible

#

it's fr just a flag in the message object it seems

charred monolithBOT
austere talon
fresh parcel
#

Fr

#

Lemme just hop on windows to program this

#

Turns out the dev environment and root owned discord install don't like each other very much

austere talon
#

run the installer as root, build as not root

fresh parcel
#

yeah it's just that due to my setup with nvm, pnpm doesn't work with sudo

#

so i can't run the inject command

#

but it's fine i got it working on windows

fresh parcel
#

basically pnpm is in my home so running as sudo makes that not work

austere talon
#

it should work, it's likely just that pnpm is a shell alias with nvm

fresh parcel
#

yep

austere talon
#

and aliases don't work with sudo

#

you can which pnpm to get the actual command, then run that with sudo

#

and it should work

austere talon
#

actually that's what calls the method we're currently patching so we could just move the patch there

#

horror thats regeneratorRuntime so introducing async there is pain

austere talon
#

this was so painful @limber skiff

#

maybe u can improve the patch i used

austere talon
#

would be nice if u could look if u can improve it and maybe also test whether fake nitro still works correctly with it and all

charred monolithBOT
lime stone
#

I wonder why i don't have textreplace lol

#

oh, it's v. new

austere talon
#

github insane

charred monolithBOT
limber skiff
limber skiff
austere talon
austere talon
#

patching sendMessage is what we did before

limber skiff
#

cant we patch that other function too

austere talon
#

why

#

this is simpler

nocturne haven
#

just patch the message enqueue module I guess?

limber skiff
#

oh I thought you meant the patch was too complex

#

I can still try making it simpler

austere talon
#

it kinda is but patching every single way they send messages is probably harder

#

they have sendStickers, uploadFiles, sendMessage, possibly more

limber skiff
#

yeah I prefer patching a single place too

austere talon
charred monolithBOT
jagged cloak
#

cause that takes effort

fresh parcel
#

hmmm, are there currently anyways to manipulate the attachments array when it gets sent ?

fresh parcel
#

ahh alright

#

I was gonna offer help but this looks like patching so I'm not touching that

#

๐Ÿ˜ญ

charred monolithBOT
fresh parcel
#

nice

austere talon
fresh parcel
#

yeah i was looking in more detail

austere talon
#

Well unless you can propose a better patch but you probably can't based on what u just said

fresh parcel
#

guess i'll watch this

fresh parcel
#

I've done a decent amount of x86

#

but i don't want to deal with react...

#

i already have to do this at work

#

๐Ÿ˜ญ

#

THE FUCKIGN BOT

#

fSQDJFLKM

lean elm
austere talon
#
GitHub

Now exposes properly typed methods instead of raw ipc, which means the renderer knows nothing about the implementation details

Closes #953

GitHub

The idea is to have quick actions here, and any plugin can specify one or more actions that will automatically appear here

lean elm
#

ah great

austere talon
#

why does it make the github banner big on some but small on others

austere talon
lean elm
#

it is ready

#

just like wanted to ask sun if he made some changes to commit

#

but he prolly didnt

austere talon
# austere talon I wanna get all of these merged today: https://github.com/Vendicated/Vencord/pu...

Also https://github.com/Vendicated/Vencord/pull/875 but it has some unresolved feedback and nebula said they're busy for now

GitHub

Meowcrypt is a fun little plugin that is similar to other encryption plugins. I may add support for other profiles in the future.
Uses code from a couple of other Vencord plugins for the toggle but...

austere talon
#

PR to the pr

lean elm
#

yea, i merged it and did some final changes

austere talon
lean elm
#

uhm lemmy see

austere talon
#

I think sun wanted to push that to ur branch

lean elm
#

yea, tho he not responding whyyy

#

imma set the pr to draft then

verbal pumice
#

and relooking at the code i have no idea why it does that

grave mangoBOT
verbal pumice
austere talon
#

does the component not get functions to update settings

#

๐Ÿคจ

austere talon
lean elm
verbal pumice
austere talon
verbal pumice
#

i thought i didnt use the global lookWhatTheyTookFromUs

lean elm
#

ur code, idk how to fix it xd, maybe open another pr on my fork

#

well does it matter if it updates even without saving?
TextReplace has the same problem

charred monolithBOT
jagged cloak
#

llets goo

austere talon
jagged cloak
#

actually no it would still be presend cause all i do is edit message content

#

moment

charred monolithBOT
#

Discord Account

Tonรฌ#7947

What happens when the bug or crash occurs?

I was loading up my computer and discord was failing to update. After some basic troubleshooting, I uninstalled Vencord, and it worked just fine. After trying reinstall Vencord, however, the installation fails with the following text "rename C:\Users\User\AppData\Local\Discord\app-1.0.9012\resources\app.asar C:\Users\User\AppData\Local\Discord\app-1.0.9012\resources_app.asar: The system cannot find the path speci...

charred monolithBOT
jagged cloak
#

thats react devtools????

#

๐Ÿง 

jagged cloak
#

wauit

#

]sdzfgjkl.hfklgfhgh

#

'nmg

#

me when this goes to react devtools

#

DISCORD paste my image i hate this platform

charred monolithBOT
jagged cloak
#

they edited it and it made me look stupid

#

i quit

charred monolithBOT
jagged cloak
#

lol

#

i also screenshotted the wrong setting

austere talon
#

LMAO

#

both dumb

jagged cloak
#

reasons i should not be trusted with push access: i will push a fork bomb

#

at least i caught myself unlike some people in support xd

charred monolithBOT
cunning canyon
#

branch name has uwu in it

austere talon
#

true

frail skyBOT
#
Bad Patches

None

Bad Starts

None

Discord Errors

None

#
Bad Patches

None

Bad Starts

None

Discord Errors
font-weight: bold;
color: purple;
 Cannot access 'sle' before initialization ReferenceError: Cannot access 'sle' before initialization
    at Module.default (WebpackModule20410:2:50)
    at VencordWeb:12:719
    at VencordWeb:5:5697
    at [vencord.lazy.get] (VencordWeb:5:4767)
    at mr.<computed> [as get] (VencordWeb:5:5178)
    at Object.handleProtoChange (VencordWeb:33:22111)
    at CONNECTION_OPEN (WebpackModule473419:2:5858)
    at https://canary.discord.com/assets/7f5b9e3cab7c3bc212f4.js:9312:766
    at https://canary.discord.com/assets/7f5b9e3cab7c3bc212f4.js:9302:818
    at n (https://canary.discord.com/assets/7f5b9e3cab7c3bc212f4.js:9312:743) ```
charred monolithBOT
austere talon
#

it time

jagged cloak
#

why is the branch named KLNFDLSKFJASKLHJEWKLSDIGFKM

#

branch

austere talon
#

lol

#

thats not a vencord problem

#

it's discord moment

jagged cloak
#

no i mean this lol

austere talon
#

ik

#

i didnt have a better name

jagged cloak
#

typical ven

austere talon
#

for some reason it's a const instead of var

#

so it errors trol

#

we love discord

#

wait

#

mmm

#

it works for me

#

oh wait im dum i didnt actually hop on canary

#

now i am

#

anyway it works

charred monolithBOT
charred monolithBOT
limber skiff
charred monolithBOT
jagged cloak
#

fastest break

austere talon
#

and it bit me

jagged cloak
#

trol

charred monolithBOT
charred monolithBOT
austere talon
# charred monolith

prime example of why vencord has pr rule that makes you keep your branch up to date