#๐Ÿช…-progaming

1 messages ยท Page 130 of 1

royal nymph
#

--enable-features=Vulkan,DefaultANGLEVulkan,VulkanFromANGLE

jade stone
royal nymph
#

LOVE

#

show

jade stone
royal nymph
#

nix/nvidia issue

#

:3

jade stone
royal nymph
#

horror

#

what gpu

jade stone
#

6650xt

#

oh

#

i need to enable vulkan in nix i think

royal nymph
#

try

--use-gl=angle
--use-angle=vulkan
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan,VaapiIgnoreDriverChecks,VaapiVideoDecoder,UseMultiPlaneFormatForHardwareVideo
#

half of these flags are probably dead

jade stone
royal nymph
#

NIX IS EVIL

jade stone
#

@royal nymph love?

royal nymph
#

nix users have lost it

supple whale
#

yeah this is full gone

#

i used it for my app and it doesnt exist anymore

supple whale
#

you need them on linux for webGPU to work

jade stone
#

guhhh

#

nixos bug

#

time to use nix-ld

royal nymph
jade stone
#

oh what the hell

#

brave has lib vulkan

royal nymph
#

i think the --use-gl and --use-angle ones are obsolete

jade stone
supple whale
#

defo still used

royal nymph
royal nymph
supple whale
#

no

#

that changes the default vulkan

#

aka disables auto detection

#

--enable-unsafe-webgpu --ozone-platform=x11 --use-angle=vulkan --enable-features=Vulkan,VulkanFromANGLE

#

mmmm

#

:))))

royal nymph
#

x11

#

why

supple whale
#

x11 isnt required

#

its just recommended

royal nymph
#

i hate chromium on wayland too but does it matter for webgpu?

supple whale
#

no

royal nymph
#

ah yeah makes sense

supple whale
#

well yes on some retarded distros

#

but not on ubuntu

royal nymph
#

chromium on wayland just sucks

#

devtools are so cooked

#

i love the context menus being below the window

supple whale
#

did u show u my webGPU shit btw?

#

im turbo proud of it

#

dont go into src/wasm tho

#

thats all emscripten generated shit

#

i wish chrome supported %.2f

shrewd canopy
royal nymph
#

crazy

paper scroll
royal nymph
#

@nimble bone

clear thunder
jade stone
#

That's hard when programs I use just don't work under wayland

jade stone
#

I like rust because I can write cursed code like this and it works blobcatcozy

impl EventStream {
    pub fn try_new(dpy: Arc<X11Display>) -> Result<Self> {
        let x11_fd = dpy.connection_number();
        assert!(x11_fd > 0);
        Ok(Self {
            dpy,
            x11_fd: AsyncFd::new(x11_fd)?,
        })
    }

    pub async fn next_event(&self) -> Result<XEvent> {
        let mut guard: Option<AsyncFdReadyGuard<'_, i32>> = None;
        // XPending is not always accurate, so loop until we have an event so we don't sleep the thread
        while self.dpy.pending() == 0 {
            guard.take().as_mut().map(AsyncFdReadyGuard::clear_ready);
            guard = Some(self.x11_fd.readable().await?);
        }
        let event = self.dpy.next_event();
        if self.dpy.pending() == 0
            && let Some(mut guard) = guard
        {
            guard.clear_ready();
        }
        return Ok(event);
    }
}โ€Š
worldly sigil
shrewd canopy
#

Force all web/js developers into embedded world

deep mulch
#

#KillAllWebDevs

jade stone
#

embed v8 trolley

shrewd canopy
#

#LoveAllKotlinDevs

valid jetty
#
$ echo 'int main() { puts((char *)&((int){0x557755})); }' | tcc -run -
-:1: warning: implicit declaration of function 'puts'
UwU
jade stone
#

./run

i = 0x557755
while (c = i & 0xFF) {
  i >>= 8;
  console.log(String.fromCharCode(c));
}
rugged berryBOT
#

Here is your js(18.15.0) output @jade stone

U
w
U
fleet cedar
#

./run ```rs
println!("{}", std::str::from_utf8(&0x557755u32.to_le_bytes()).unwrap())

rugged berryBOT
#

Here is your rs(1.68.2) output @fleet cedar

UwU
jade stone
#

guhh

#

why can't i just readlink /proc/pid/exe

unkempt ember
#

In France we say : " Le Octet "

deep mulch
fierce pendant
delicate groveBOT
#

@jade stone, <t:1767829641:R>: comment on report

austere idol
deep mulch
#

salad moment LOL

clear thunder
#

LOL

runic nebula
#

How does discord call voice channel statuses internally? i cant seem to find them in VoiceChannel objects

tired vigil
#

check ChannelStatusStore

supple whale
#

so i might have gone a bit hard on the subtitle optimisation shit

#

turns out webgl2 is simply faster than webgpu

#

29-30ms webgl2 vs 30-31ms webgpu for worst case stress test

#

while offering much better backwards compatibility

pallid heron
supple whale
#

ASS renderer

pallid heron
#

woahh

#

thats a cool project

fierce pendant
supple whale
fierce pendant
#

is this good to use

supple whale
#

no it doesnt cure cancer, nor will you revive ur dead monther

#

you're trully the master of weird questions

supple whale
#

you're asking the person that made the software, if their software is good, based on some non-specified requirements you keep to yourself

#

so you want a biased, unobjective answer

#

so yes this is the best software ever made in the world

fierce pendant
#

why didnt you tell me that directly?

supple whale
#

I unironically believe that there's no better tool out there to watch anime

#

best possible video, audio and sub qualities, with insane speeds, offline support and a bunch of cool features like AL integrations, social forums, and a bunch of other goodies

deep mulch
#

interesting conversation

ivory heath
royal nymph
fierce pendant
tired vigil
#

he should become a vencord contributor

crimson sparrow
#

Torvalds vibecoding python is in fact not something I thought Iโ€™d see

royal nymph
#

I'm pushing it out to github not because it needs to be public, but
because of my policy of using the internet as my backups. And because
it makes it so much easier to just sync between machines.

final root
#

Old ahh project>npm i

added 1138 packages, and audited 1139 packages in 43s

235 packages are looking for funding
run npm fund for details

42 vulnerabilities (11 low, 9 moderate, 18 high, 4 critical)

To address all issues, run:
npm audit fix

Run npm audit for details.

i think it needs updating

#

i fixed it with somehow no problems just npm audit fix then npm audit fix --force

jade stone
winged mantle
#

this is the reason i use private repos

#

i have no idea what this is

#

(actually i do i was messing with discord.py for some reason)

#

(but never pushed. lol)

#

lol i was such a pro java programmer in 2022

#

just create a class called global to put global vars

final root
winged mantle
#

I sort of find it reassuring how crap some of my fairly recent code was?

final root
#

i still dont know what "its gonna work this time trust" is

winged mantle
#

I feel like I have not got that much better until I look at stuff from just a few years ago

#

how does this even compile

balmy lintel
#

just use pnpm โค๏ธ

winged mantle
#

what even is this

final root
balmy lintel
#

at least not using b*n or yarn

winged mantle
#

I insanely did a typedef with a lowercase typename

final root
jade stone
winged mantle
#

C++

#

lol wat

jade stone
#

I love C++ as a language but I think I'd use it more if it had an actual build system /package manager

#

Cmake just sucks to use

final root
winged mantle
#

i was trying to do syntax highlighting with probably no research on how syntax highlighters work

#

this is just weird

winged mantle
#

if you say you love it you most certainly are insane but on the right occassion I also love it

#

the best thing about C++ is how smart typing out std::vector makes me feel

jade stone
#

Doing rust right now and the more I do rust the more I long for some of the features of C++

#

At the same time when I program C++ I often miss out on some of the features from rust

#

The grass is always greener I guess

winged mantle
#

I will probably always say I will learn rust but never actually do it

#

(learn it properly, not like my really limited experience)

winged mantle
jade stone
winged mantle
jade stone
#

Although it is getting reflection in 26

#

But that's still just one of the few

#

I'd love to see C++ get checked. Generics

#

As well as a unified build system

#

And package manager

#

And modules become a real thing

winged mantle
#

i'm not sure if i'm missing features from rust but it feels like i'm too c++ brained to learn it properly

#

learning c and c++ was already very hard for my java brain in 2022

jade stone
#

Tbh rust lambdas suck compared to c++ lambdas

#

I love c++ lambdas and not having explicit capture groups sucks

pseudo sierra
#

like given makefiles are literally just fancy bash scripts how is making an actually good program around that so hard

winged mantle
#

my rust experience is v. limited

jade stone
#

I feel like it matters a lot more in rust where moving versus capturing by ref matters a lot for the borrow checker

#

Also, something I hate about rust is there's no way to implicitly clone a value

#

So reference counted types are a pain to use

#

Because every time you want to pass them to something you have to manually call .clone

winged mantle
#

horror

jade stone
#

@winged mantle data.tok is ref-counted internally, data is a shared_ptr

supple whale
#

im only marginally faster than the competition

jade stone
#

what is sabre and how did it fail?

supple whale
#

some DOM based rendering library

#

it failed by not working and not having accurate documentation

#

so it doesnt even construct

#

i copied the docs 1:1, didnt work

deep mulch
#

@jade stone loves gradle for C++

obsidian roost
fallen nebula
balmy lintel
night sphinx
#

10000 ancient runes errors and warnings

fierce pendant
supple whale
fierce pendant
#

yes

#

yes

#

yes

#

you are correct

#

but from everything i tried in 5 minutes i am already a fan

supple whale
#

play some super popular torrent and watch the peers show up on the globe in the torrent client [where they actually are irl]

#

shit just automagically works offline

#

its sick

#

you can even edit list entries, make forums post etc, all while offline

fierce pendant
supple whale
#

you will

#

hayase auto-tracks episode progress

#

so if u sign in with anilist, and watch shit while offline

#

then thats editing list entries

#

it can also auto-skip filler episodes etc

#

there's little u cant do

#

even reverse search anime by screenshots or images

fierce pendant
#

live human dubbing when

supple whale
#

there are dub extensions for english

#

that's as close as you'll get

#

and ofc the video player that's goated as fuck

fierce pendant
#

i want the app do have an integrated ai meant to torture a human so the human automatically translates the animes i watch

supple whale
#

the vid player is cracked as shit

fierce pendant
#

the ui is a bit weird when i move it between monitors with different aspect ratios

supple whale
#

its normal

fierce pendant
#

waow

supple whale
#

idk what u expect to happen

fierce pendant
#

yea

fierce pendant
deep mulch
dense sand
#

Wow what i just uploaded an invalid isic card to verify for student membership on GitHub and got accepted lol

fallen nebula
#

I still hate Web dev
But i gotta say yes deno + vue is very easy to use and i know why people would want to use it for everything

fierce pendant
supple whale
#

i know

#

this lib is faster than all native C++ implementations of this

#

im faster than mpc-hc, vlc, mpv

#

not more resource efficient tho

#

i INHALE resources kekw

fierce pendant
#

if i can render say gex in subtitles i dont care

ornate quiver
#

i love guhradle

fierce pendant
nimble bone
#

kys

frosty obsidian
#

they call it bun because its buns

fallen nebula
#

react is death
and idk bun seems more complex and with bs than deno

#

genuinely this is all i had to create for deno to work

{
    "tasks": {
        "dev": "deno run -A --node-modules-dir npm:vite dev",
        "build": "deno run -A --node-modules-dir npm:vite build",
        "preview": "deno run -A --node-modules-dir npm:vite preview"
    },
    "imports": {
        "vue": "npm:vue@^3.5.24",
        "vite": "npm:vite@^7.2.4",
        "@vitejs/plugin-vue": "npm:@vitejs/plugin-vue@^6.0.1",
        "vue-router": "npm:vue-router@^4.6.4"
    },
    "compilerOptions": {
        "lib": [
            "dom",
            "dom.iterable",
            "dom.asynciterable",
            "deno.ns"
        ],
        "jsx": "react-jsx",
        "jsxImportSource": "vue",
        "types": [
            "npm:vite/client"
        ]
    },
    "lint": {
        "rules": {
            "tags": [
                "recommended"
            ]
        }
    },
    "fmt": {
        "indentWidth": 4,
        "lineWidth": 2147483647,
        "useTabs": true,
        "useBraces": "always"
    },
    "unstable": [
        "fmt-component"
    ]
}
#

node is a curse

#

the less i can touch it the more happy i am

fallen nebula
#

why husk rosie

#

explain

fierce pendant
#

i am a bun + sveltekit guy

jade stone
fallen nebula
#

i'm a C(++) guy until this happen

#

my fucking god
this is not normal
but it works
even AI is shocked

ornate quiver
#

what are you yapping about

fallen nebula
#

uh ?

placid cape
#

But still way better than maven

dense sand
#

I like gradle with kotlin dsl a lot

fierce pendant
dense sand
#

Kotler

deep mulch
#

@young flicker loves gradle with groovy

dense sand
fallen nebula
dense sand
#

how

#

that language doesnt make any sense

fallen nebula
#

For the build.gradle it's good enough

deep mulch
#

groovy is unbearable

ornate quiver
#

horrible

dense sand
#

yes

nimble bone
#

ykyk

#

idk why google is trying to force kotlin in absolutely everything you know you know

deep mulch
#

groovy makes me want to kill myself

deep mulch
#

google has nothing to do with this

nimble bone
#

kotlin everywhere dsl compose everything whatever

deep mulch
#

thats literally jetbrains

nimble bone
#

Jetbrains basically a google puppet yk

ornate quiver
#

useless ugly and slow

#

can't wait for the day Gradle fully drops groovy support

lavish cloud
#

Does anyone know what to do when docker is stuck on this

#

(I've never used docker but its the only recommended installation method for this thing)

clear thunder
#

if you expand the terminal window enough it should show progress iirc

lavish cloud
#

why is it downloading at like 1kbps wtaf

reef remnant
jade stone
#

@solemn ravine This is the example they give for a simple counter

use iced::widget::{button, column, text, Column};

pub fn main() -> iced::Result {
    iced::run(Counter::update, Counter::view)
}

#[derive(Default)]
struct Counter {
    value: i64,
}

#[derive(Debug, Clone, Copy)]
enum Message {
    Increment,
    Decrement,
}

impl Counter {
    fn update(&mut self, message: Message) {
        match message {
            Message::Increment => {
                self.value += 1;
            }
            Message::Decrement => {
                self.value -= 1;
            }
        }
    }

    fn view(&self) -> Column<'_, Message> {
        column![
            button("+").on_press(Message::Increment),
            text(self.value),
            button("-").on_press(Message::Decrement),
        ]
    }
}โ€Š
solemn ravine
#

ya

jade stone
#

But I haven't seen an easy to break this up into a counter component, with its own self-contained state

#

I found this, but it is way to much boilerplate to be reasonable

#

Also it doesn't solve the issue at all

#

You still have to add the component as a part of your state

supple whale
#

god i cant imagine not having an ultrawide for coding rn

deep mulch
#

@jade stone your ui

jade stone
#

@deep mulch findroid so good

#

Managed to rotate just the blacks and white layer 180ยฐ

supple whale
#

so this is kinda normal

#

i love the wrapping rows they added

#

so fucking useful

supple whale
#

here's what that looks like on 'le ultrawide

jade stone
supple whale
#

nah fuck that

#

way too many files

jade stone
#

Have you considered closing your tabs

#

That's worse than me with my web browser

supple whale
#

the UI is fuckign almost 400 files atp

#

because i felt like it

supple whale
#

sveltekit

fallen nebula
dense sand
#

can yall push to github?

#

i know there was an incident earlier today, but github status doesnt show anything

tired vigil
jade stone
supple whale
#

the that's usually are "the feature I'm currently working on"

#

which I then all close once I finish it

fierce pendant
pallid heron
fierce pendant
balmy lintel
#

I don't have 50 tabs open when developing a big project

#

Maybe 7 or 6 but not higher

supple whale
#

then its simply not a big project

#

for this shit i'll have all these tabs open, and then another 2 vscode instances

#

one for the native wrapper, and one for the ipc bindings

fierce pendant
balmy lintel
fierce pendant
#

anyways i am currently developing a very small project and have 2 tabs, 50 tabs is bad

supple whale
balmy lintel
supple whale
#

@deep mulch @jade stone @balmy lintel @fierce pendant i can show off the project in vc sometime if u guys want

#

you'll understand how utterly insane it is

supple whale
#

the one i just showed off

fierce pendant
supple whale
#

plays the uwu

fierce pendant
supple whale
#

you have the uwu

#

you play it

fierce pendant
supple whale
#

what is there to not understand

#

i want to show off the cool codebase of the project ur calling me insane for

fierce pendant
#

and whats that project

supple whale
#

hayase

fierce pendant
supple whale
#

right here

fierce pendant
#

will you uwu for me if i donate?

supple whale
#

sure

winged mantle
#

why do i feel like the best way to work on a bytecode vm is to start on the bytecode vm

night sphinx
#

use butterflies and flip some bits

winged mantle
#

I feel like it'd be better to establish the runtime semantics

#

and focus on the bytecode by just parsing a simple assembly language instead of having to work on a lexer then a parser then the runtime before being able to see results

dense sand
#

i feel like having excel filler and pdf convertor are things in my web app which will make my server explode

fierce pendant
dense sand
#

is there like a way to tell why its happening

#

whats taking 10 seconds of runtime??

jade stone
dense sand
# jade stone isn't that node internals

probably?? i have a code which fills out excel worksheet using ExcelJS and then exports it to PDF using libreoffice-convert, but it just hangs after writing the pdf to disk

deep mulch
#

@jade stone sloppy sadan

dense sand
#

i use bun

#

= no bugs

deep mulch
#

@nino

fierce pendant
fallen nebula
#

deno good

fallen nebula
charred mason
#

hello

winged mantle
#

so good

winged mantle
#

if the array is empty it will invoke UB

jade stone
#

not sure if unreachable aborts in debug builds

winged mantle
#

I made a msitake though

#

in my language it will mean it's ub to have an empty block

jade stone
winged mantle
#

yeah

fleet cedar
#

Why ub and not compile error

jade stone
#

yeah...

winged mantle
#

it was a mistake

#

also it's interpreted

fleet cedar
#

Neither of those answer the question

#

Mistakes can be fixed

jade stone
#

not the best

fleet cedar
#

Interpreted languages can have errors

jade stone
#

but still should not be ub

winged mantle
#

yeah but it is particularly funny for an interpreted language to have ub

winged mantle
#

evaluating it is meant to return the last expression

#

std::unreachable() tells the compiler the code is unreachable but in this case it's a lie

tacit osprey
#

Any way to hide mic and speaker button on user bar?

winged mantle
#

i guess i could require something to be in every block but that would be annoying

winged mantle
#

I would prefer neither blobcatcozy

#

just return nil like every sloplang

#

this is such a sloplang let x = 0 works even though I didn't add variables yet

#

it's parsed as let; x = 0;

#

and that's not a variable that's just a global assignment

jade stone
# winged mantle so good

please for the love a god pick a sane naming scheme for types. how do you use that unholy amalgamation of snake_case and PascalCase.

winged mantle
#

don't worry there are plenty of projects where i use pascalcase

#

I switch between coding styles all the time

jade stone
#

insane

#

i just use PascalCase for types and camelCase for everything else

winged mantle
#

in this project i decided to not use this monstrosity i am using in some other projects

if (true)
    func_call();
else {
    func_call1();
    func_call2();
}
#

i have to remember which projects i use the insane style and which i use the sane style for consistency

jade stone
#

do you not use clang-format

winged mantle
#

clang-format's cool with this formatting

#

though i don't really use it in personal projects as there are certain things i can't configure to work how i want

#

oh wait i guess clang format could enforce consistency by adding braces for you but i don't think it has something to automatically remove them

winged mantle
#

still clang format aligns things in dumb ways with seemingly no way to fully get rid of that

#

it's made me ask myself how hard it could be to write a formatter

#

for C++ it's probably a nightmare

jade stone
#

afaik clang-format uses a custom AST thing instead of the normal clang one because of how complicated c++ is to parse

jade stone
winged mantle
#

there are others

#

astyle

#

uncrustify

#

I wonder if you could make an LLM based formatter

fleet cedar
#

I think people would be unhappy if your formatting is nondeterministic

winged mantle
#

just send your whole codebase to chatgpt

fleet cedar
#

Though I think you can make deterministic llms, people just don't want to

winged mantle
#

it would be so boring if chatgpt gave reliable answers

jade stone
winged mantle
winged mantle
#

what if there was a compiler that made random mutations to your code until the error is fixed

#

(eventually by chance it randomly comments out everything)

supple whale
#

whats the easiest way i can add a custom plugin to vencord

#

without having to fuck around much in the future?

#

is this even possible or will i need to rebuild it each update?

jade stone
jade stone
#

you can make your own plugin under the src/userplugins folder

#

also if you're going to make a vencord plugin you should try out my vscode extension for it (not biased blobcatcozy )

supple whale
#

like what, does it run pnpm builds when it auto-updates?

jade stone
supple whale
#

when does vencords updater run when it does that?

tired vigil
#

oh that makes sense
I always thought it just magically updated vencord at runtime

supple whale
#

via discord?

#

like when u open discord it does git pull and pnpm build and then re-injects?

#

im so turbo confused by how this works

jade stone
#

it just rebuilds

supple whale
#

but what invokes the rebuild

#

like i launch discord

#

and what, there's vencord code in discord with my custom path that re-builds it?

#

and when i restart discord that re-build version is applied?

jade stone
#

something like that, yeah

supple whale
#

whats the "vencord's update" in this context

jade stone
#

when you're using the git updater, if there are commits to pull it will try pulling them

#

if that didn't error, it will rebuild

jade stone
#

updater for dev builds

supple whale
#

i only know of the vencord installer binary, and the source code that u manually inject via pnpm inject

jade stone
#

it just uses git from your source tree

supple whale
jade stone
#

idk tbh

#

i use vesktop

#

which doesn't install via pnpm inject

#

but the updater code is here

supple whale
#

like the fucking discord custom plugin shit is so ass documented

jade stone
#

nobody who knows enough to make them wants to

supple whale
#

fuck me...

jade stone
#

just tell me what you want to make and i can point you in the right direction

supple whale
#

that its embedded?

jade stone
#

yes

#

it modifies discord's asar

#

that's how vencord injects

supple whale
#

i dont even care if its done via plugin, it probably wont be, i'll likely make an empty dummy plugin, and embed it as top level code

jade stone
#

this sounds like something to do with a patch

#

unless you don't need to interact with discord's code at all

#

i'd need to know what the "turbo cursed shit" is

supple whale
#

i dont know the details, thats what i was just hired to do

supple whale
jade stone
supple whale
#

yeah

#

the guy already has the code for it

#

its just about injecting it on launch each time

#

it doesnt need to be clean, it doesnt need to be stable, it doesnt need to be "correct"

#

for all intents and purposes its "run console.log('hello world') before sign-in occurs"

jade stone
#

are you signing in with a username/password or a token

supple whale
#

doesnt matter

jade stone
#

it's possible

#

not going to write it for you, but shouldn't be that hard

supple whale
#

yeah i know

#

i just want to know if its possible

jade stone
#

anything is

supple whale
#

will top level code in a dummy plugin do it?

jade stone
#

you can fully patch discord's code

supple whale
#

does ven inject b4 sign-in?

jade stone
#

vencord injects before any of discord's code runs

supple whale
#

perfect

jade stone
#

you can use regex to find and replace any part of it

supple whale
#

so just an userplugin in src/userplugins

jade stone
#

that's what the patches are

supple whale
#

then pnpm inject

#

and auto updates and eveyrthing else just works

#

as long as there are no git conflicts

#

sounds about right?

jade stone
#

yes

supple whale
#

great, thx for the help

jade stone
#

if you're going to write patches, which you should, i'd highly reccomend my plugin you can use LSP features with discord's minfied code (go to definition, show all usages) and get a live preview in your editor of the patches you write

supple whale
#

this is just a shit JS monkeypatch

#

not a proper ven plugin

#

not that i'd ever attempt to submit another plugin to this project after being ghosted for half a year

#

i just want to run some custom code, for my friend

jade stone
supple whale
#

afaik he's patching the JS builtins not discord

#

yes i know its not a good idea

#

we both dont care tho xd

supple whale
#

nice sesson token sir

valid jetty
#

@hoary sluice @deep mulch

fierce pendant
jade stone
fierce pendant
#

just make it compile to rust thats an llvm wrapper too

jade stone
#

nop

#

(i also wouldn't say rust wraps llvm, it uses it as a backed, but doesnt publicly expose any of it)

valid jetty
#

it's an alternative to llvm ir which is less bloated

fierce pendant
#

when you are unable to lock in so much that you install cursor

#

im sorry

#

nvm im not installing it

dense sand
#

did anyone here got worker threads working with nextjs

deep mulch
#

@jade stone uses cursor

ancient anvil
fallen nebula
#

me when i noticed discord is weirdly slow and i see this : OOF

winged mantle
#

I tried decompiling my own project and it seems to using sentry??

#

I didn't consent to this

fleet cedar
#

Yup your io is sending telemetry

#

Have fun

supple whale
#

god this latest discord update is trully enjoyable

fierce pendant
fierce pendant
winged mantle
#

I almost typed cargo build on my C++ makefile project ??

#

it was ages ago i last wrote rust

#

i think it's because recently i was compiling a rust project (not mine)

winged mantle
#

this is reasonable

#

this is like when your only dependency is express

#

you still have like 500 transitive dependencies

#

tbf it's already probably way less bloated than most ui solutions

#

stuff like qt invents its own wheels for everything :D

#

even basic data structures

winged mantle
#

eh maybe i'll just use imgui

#

instead now it just depends on a whole compiler

#

oh, thank goodness, that was slightly worrying lol

pearl stagBOT
winged mantle
#

how does this work

crimson sparrow
#

Seems to just return

winged mantle
#

I should not be allowed to write rust

#

(protip: posting your rust code and saying that you should be "banned from writing rust" is a good way to get people in chat to act as a linter and works consistently)

#

I think I overengineered my B.F. parser anyway

#

boyfriend parser <3

#

brainfuck interpreter is probably something you can easily do with no parser

#

and really code golf it

winged mantle
jade stone
winged mantle
deep mulch
open nymph
#

how does vencord on vesktop grab the webpack modules with sandboxing AND context isolation? I'm trying to do the same for another webpack-built website from an electron instance I made

#

I can successfully make it work with both disabled, but I was wondering how y'all do it

royal nymph
#

are you trying to make an electron app for a website?

#

learn how the different electron processes (main, preload, renderer) work

open nymph
royal nymph
open nymph
#

and then I'm grabbing the webpack modules though window.require('__debug').mainModule

open nymph
royal nymph
#

because require is a nodejs thing

#

ans require("__debug").mainModule doesn't even make any sense, what are you trying to achieve?

open nymph
#

I just got home one sec

#

lemme show

open nymph
#

all in the preload btw

frosty obsidian
#

hm

ornate quiver
#

interesting

worldly sigil
#

at least it isn't vercel trolley

solid gazelle
#

@worldly sigil @worldly sigil @worldly sigil @worldly sigil

worldly sigil
#

hi

formal shore
#

GUYS

#

IMAGINE.

#

creating.

#

a script on your bot.

#

a command*

#

that gives you the role just below the bot.

supple whale
#

tracks bug for 3h

#

it was Vite

#

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

#

@jade stone help me

jade stone
supple whale
#

TLDR vite is not outputting workers inside its manifest file

jade stone
#

oh god

supple whale
#

so that means sveltekit doesnt pick it up in its build output

jade stone
#

that sounds like a pain

supple whale
#

so that means my service worker cant cache it

#

so that means when u open my app offline the worker doesnt load

#

which means subtitles dont render

#

which means a white box renders

#

which means u cant see the video

#

THE RABBIT HOLE HOLY FUCKING SHIT

jade stone
#

have you found the source of the bug

supple whale
#

vite!

jade stone
#

no like the actual source

#

in vite's code

supple whale
#

no

#

its somewhere in 2 plugins

#

they use 2 different pluginms for handling workers

#

which vite themselves doesnt handle

#

idk how to debug vite tbf

#

@jade stone you got experience with that?

#

cuz im honestly at my wits end

jade stone
supple whale
#

want to help?

#

PLSSSSSS

jade stone
#

they have pretty good contributing docs

#

sure

supple whale
#

fuck man actually idk where to start

#

wanna hop in a vc real quick?

#

i'll show the issue

jade stone
#

sure

supple whale
#

cuz this me rn FR

deep mulch
#

@jade stone

jade stone
#

@deep mulch

deep mulch
#

stinky sadan!

jade stone
#

nop

pseudo sierra
#

satanic salad

fallen nebula
#

omg
i did it
i used all the credits a paid gemini account can use
and it's asking me to upgrade to the 150โ‚ฌ/m
it's very good to make my detailed C# exam that needs me to use entity framework and clean architecture and create corpo code
i still have to direct it a lot but to do all the boilerplate it's nice
and even to just translate the french logic into english code
sadly i can't let myself vibecode tho so it still takes time
but it's way less annoying being a manager than a typing machine

fallen nebula
#

i didn't waste it
he made my exam

#

ah yes

supple whale
#

@jade stone i found another horrific bug

#

this time its firefox

jade stone
#

Lovely

supple whale
#

if a worker spawns a worker, the 2nd nested worker cant listen to message events

#

:))))))))))))))))))

#

so shit like postMessage() wont work

#

oh, another firefox bug!

#

hahahaha this browser is so dogshit

jade stone
#

At least Firefox finally supports css anchors

supple whale
#

fuckiong it supports jack shit

#

barely anything works in this browser

#

this is crazy

#

oh my fucking god
if your video is looped, and u use requestvideoFrameCallback
and the video loop
the time doesnt reset to 0, it keeps adding

#

pathetic excuse of a browser

dense sand
#

does anyone here knows how to use loki + grafana? im trying to setup the dashboard but id like to know one specific thing

#

vcotd

elder yarrowBOT
dense sand
lethal kite
#

thats the real picture

#

non edited

#

Terry Taco has entered the lobby ๐ŸŒฎ๐Ÿ’—

dense sand
#

how is that related to my question

lethal kite
#

bro terry taco etnered the lobby

dense sand
#

sir this is wendys

royal nymph
#

I'm working on a new website that depends on anchors and it just didn't work on Firefox when I was working but I figured by the time I'm done it'll be supported

supple whale
#

had to perform these actions against humanity

#

just to get shit running on firefox

#

at least offscreen canvas with webgl2 context isnt as fucked as offscreen with 2d context

#

that shit's completly fucked on ff, random errors when resizing, random detaching etc

#

so in comparison this is relatively mild

#

still, no multi-threading, so like >x4 slower than chrome, and almost x10 slower when ANY form of rapid memory growth occurs

#

but FF has always been dogshit with memory allocation and gc

#

at least its competetive with chrome in single threaded when the memory has already been pre-grown

#

actually its faster in those cases

#

but yeah "faster if you ignore problem A, B and C"

#

at least WebAssembly.Memory.prototype.toResizableBuffer is no longer experimental in browsers as of last week, so me using it doesnt make me unhinged!

supple whale
#

I LOVE this one: // Firefox cries about uninitialized data, but is slower with zero initialized data...

#

but then when u actually go to pre-initialize the memory to make this shit go away, its >10% slower

#

also when looping a video in ff, requestVideoFrameCallback doesnt reset to 0 for mediaTime on a loop, it just keeps counting up

#

so you can be on the 30th second of a 5 second video... fun!

supple whale
fierce pendant
#

chat

#

i made a javascript framework

#

mentally help me

deep mulch
#

@lyric latch has cobwebs in his room

fierce pendant
#

whats that

#

which person do you think i am ๐Ÿ˜ญ๐Ÿ˜ญ

#

my framework have better name tohuhg

fierce pendant
#

i plan on maybe supporting vue components in torch but you aint getting react

#

but like

#

the torch philosophy is "you should kill yourself instead of sending too much js to the client"

#

mine too!

#

mine is
Zero Interactiveness with zero JS

#

thats like 3 wikipedia pages

#

mine is just

class HomePage implements estrogen.Page {
  render() {
    return `<h1>Hi!</h1>`    
}  
}
elder yarrowBOT
#

๐ŸŒˆ yuvea is 99.98% gay

fierce pendant
#

its your decisions if you wanna
import * as torch from "@usetorch/torch"
or
import * as estrogen from "@usetorch/torch"

#

can you help me implementing atleast some typesafety

#

i dont want this to be so bad

#

i dont know if what i wanna do is even possible to do type safe

#
import { Context, Hono } from 'hono'
import * as estrogen from "@usetorch/torch"
const app = new Hono()

class HomePage implements estrogen.Page {
    load(ctx: Context) {
        var definitelyAString: string = "meow"
        return {
            definitelyAString
        }
    }
    render(data: any, ctx?: Context): string {
        return `${data.definitelyAString}`
    }
}

export default app

could i make data have type-safety when used in render()

#

what the fuck is a generic and what the fuck is a parameter

#

oh

#

why would i need to have that though

#
interface TorchPage {
    route?: string;
    layout?: Layout
    load?(ctx: Context): Promise<any> | any;
    render(data: any, ctx?: Context): string;
}```
does this even deserve typesafety
#

ok

unkempt ember
#

Why not using unknown along with a TypeGuard ?

fierce pendant
#

i am too dumb to understand what this does

#

when i extend it what

#

i dont see the point of that as long as i didnt also add type validation

deep mulch
#

hi axy blobcatcozy

fierce pendant
#

i lost my sanity when i was six

#

i dont fucking care anymore

#

time to make a website with my framework!

royal nymph
#

this is so cursed why does jsx return a function

#
await (
    <>
        <h1>My Todos</h1>
        <Defer>
            <TodoList />
        </Defer>
        <Defer>
            <TodoList />
        </Defer>
    </>
)(ctx);
deep mulch
#

@delicate root teach me web development and webgl

#

and web data visulization

#

i need to render 200 mb of data

mellow kettle
placid igloo
#

vhg

elder yarrowBOT
fierce pendant
#

@delicate root i build the first website with my framework

fierce pendant
#

uhh the github repo was private on acvident i just made it public if you wanna take a look

jade stone
#

@supple whale sonarr wont import it so i just downloaded it with filezilla and am using VLC blobcatcozy

supple whale
#

;P

#

u can mount a network drive and download to said network drive

dense sand
supple whale
#

its up there for me as some of my favorite shit

#

it has so many scenes i fuck with, and the major's personality is so fucking good, i love it

supple whale
#

casual "just rendering subtitles"

fierce pendant
fierce pendant
supple whale
#

fucking robbing vencord blind

#

if its a design, i'll steal it XD

blazing haven
supple whale
#

its almost 1:1 the same design vencord did

#

with some light touchups

royal nymph
#

vsb 1 malware

elder yarrowBOT
supple whale
#

fucking vps running out of bandwidth:

#

this is with 93% of data being cached by cf

fierce pendant
#

after write a javascript framework yesterday, i am writing my own "quick dev enviroments" platform now

#

its planned to be self hostable

balmy lintel
supple whale
#

๐Ÿ™‚

balmy lintel
#

What are you hosting

supple whale
#

electron app installers

balmy lintel
supple whale
#

issue is, vps says im doing like 100-200GB a day

#

and cf says only 5-10GB a day actually reaches the vps

#

so idk if i have some firewall missconfig, or if some1 is attacking me and the IP somehow got leaked

#

idk

supple whale
dense sand
#

Does anyone here know about any lightweight solutions to puppeteer? It seems so bloated to me

jade stone
dense sand
#

Yes

jade stone
#

Lightweight and browser don't belong in the same sentence

dense sand
#

I need it for testing with vitest

jade stone
#

I've heard of playwright

#

But idk what it really is

dense sand
#

My friends have been shitting at me for it being so slow

supple whale
#

but yeah its all just chromium

#

both pupeteer and selenium and electron

#

pupeteer is already as lightweight as you'll get it tho, considering its headless

#

they will all run roughly the same as they use chromium's testing framework, which is chromiums API for remote interfacing with the browser

#

or chromedriver, w/e u want to call it

supple whale
dense sand
supple whale
#

then u wont get less bloated than that lol

cinder cloud
#

Is there a plugin made that lets you search for messages with a specific reaction?

cinder cloud
#

My bad

jade stone
#

Nop

#

Insane

supple whale
#

holly what a hit

supple whale
#

1.3k commits in a year isnt bad tbf

fierce pendant
#

time to learn go

ornate quiver
#

do not

jade stone
#

do not

clear thunder
#

do not

jade stone
#

@lyric latch rate

class {
    getExportMapWreq_d(): RangeExportMap | undefined {
        const wreqD = this.findWreq_d();

        if (!wreqD)
            return;

        // function (module, exports, wreq)
        // wreq.d(exports, {exportA: () => a, exportB: () => b});
        const [, exports] = wreqD.arguments;

        return Object.fromEntries(exports.properties
            .map((x): false | [string, RangeExportMap[string]] => {
                if (
                    !isPropertyAssignment(x)
                    || !(
                        isArrowFunction(x.initializer)
                        || isFunctionExpression(x.initializer)
                    )
                )
                    return false;

                let lastNode: Node | undefined = findReturnIdentifier(x.initializer);

                lastNode ??= findReturnPropertyAccessExpression(x.initializer);

                let ret: RangeExportMap | ExportRange | undefined;

                ret = this.tryParseStoreForExport(lastNode, [this.makeRangeFromAstNode(x.name)]);

                classDecl: {
                    // check for ret here instead of using ||= because we can't short-circuit
                    if (!lastNode || ret)
                        break classDecl;

                    const rawMap = this.tryParseClassDeclaration(lastNode, [x.name]);

                    if (!rawMap)
                        break classDecl;
                    ret = this.rawMapToExportMap(rawMap);
                }

                ret ||= this.makeExportMapRecursive(x);
                // ensure we aren't nested
                ret = (function nestLoop(curName: AnyExportKey, obj: RangeExportMap | ExportRange):
                    RangeExportMap | ExportRange {
                    if (Array.isArray(obj)) {
                        return obj;
                    }

                    const keys = allEntries(obj);

                    if (keys.length === 1 && keys[0][0] !== WebpackAstParser.SYM_HOVER) {
                        if (obj[curName]) {
                            return nestLoop(curName, obj[curName]);
                        }

                        const [[key]] = keys;

                        assertNotHover(obj[key]);

                        obj[key] = nestLoop(key, obj[key]);
                        return obj;
                    }
                    for (const [k] of keys) {
                        if (k === WebpackAstParser.SYM_HOVER) {
                            continue;
                        }
                        assertNotHover(obj[k]);
                        obj[k] = nestLoop(k, obj[k]);
                    }
                    return obj;
                })(x.name.getText(), ret);

                return lastNode != null ? [x.name.getText(), ret] : false;
            })
            .filter((x) => x !== false));
    }
}
supple whale
#

whyyyyyyyy

pulsar elk
#

i havent slept

#

for 3 days

#

i dont even know actualyl

#

ive been trying to deobfuscate this thing

#

and make a tool for deobfuscating

#

that obfuscator

#

its so over for me

#

and i have realised i have been sitting and staring at the viewer for approximately 12 minutes, reading with my eyes not my brain

glossy pilot
#

@jade stone have you seen that yet

deep mulch
balmy lintel
#

creating my own website now

open nymph
#

so I was wondering

pulsar elk
open nymph
#

why doesn't vencord just bundle its own react and other libs and just inject the code into the page instead of hooking into discord's webpack modules?

#

except for patching some methods

#

let's say I make a plugin that simply adds a button, made with react

pulsar elk
#

im pretty sure its for like package size

open nymph
#

why can't you bundle and inject your own react and render the button?

pulsar elk
#

and performance

#

and efficiency

open nymph
#

just that?

#

I mean

#

not "just" but still

pulsar elk
#

and if you bundle vencord with its own version of react, i think there could be conflicts with discord

#

's version

open nymph
#

you can give it a different name at compile time I think

pulsar elk
#

dont take my word as gospel, i dont do web dev that much anymore

open nymph
#

especially if you use vite

pulsar elk
#

also

#

eh

#

nvm

open nymph
pulsar elk
#

wouldnt a separate react instance for vencord

#

be isolated from default discord component tree

#

making it pretty hard to do stuff in plugin dev

supple whale
#

we need to go to the 2005's iframe layout, where navbar, sidebar, main content were all separate iframes

#

having shit like channels, or users in its own iframe would make this app run x10 better

#

assuming they do origin isolation so that the iframes are multithreaded lol

open nymph
#

and then add a component there?

open nymph
royal nymph
#

and no, you can't have multiple versions of React

open nymph
#

oh really

#

just asking, I'm curious

open nymph
royal nymph
#

because they will conflict

#

and like I said there is no reason to have your own react

royal nymph
# royal nymph because they will conflict

if you keep them in separate react roots then yes it will work but if you try to inject elements created with React1 into the React2 tree you will instantly crash

open nymph
open nymph
royal nymph
open nymph
#

dunno

supple whale
#

tru it is a monkey idea

#

iframes > all

fierce pendant
jade stone
#

@deep mulch is this enough method chaining

#

10 levels of indentation

royal nymph
#

you will use a for loop

deep mulch
jade stone
#

this code has like four nested for loops at the bottom

royal nymph
#
this.vars.get(decl)?.uses?.forEach(({ location: { parent } }) => {
    if (!isCallExpression(parent)) return;
    
    // your map((calledUse) here

    if (use)
        uses.push(use.at(-1)!);
})
#

same code but way more efficient and way more readable

#

excessive array method chaining is evil

jade stone
royal nymph
#

nope

ornate quiver
#

nop

#

we need sequences in js

royal nymph
# jade stone <@289556910426816513> is this enough method chaining

vai rewrite this code to use a single for loop like this:

this.vars.get(decl)?.uses?.forEach(({ location: { parent } }) => {
    if (!isCallExpression(parent)) return;
    
    // map((calledUse) code here

    if (use)
        uses.push(use.at(-1)!);
})

make sure to include all logic and have the identical result

elder yarrowBOT
# royal nymph vai rewrite this code to use a single for loop like this: ```js this.vars.get(de...
    if (!isCallExpression(parent)) return;

    const calledUse = parent;
    let use;

    if (exportName === WebpackAstParser.SYM_CJS_DEFAULT) {
        // TODO: handle default exports other than just functions
        use = isCallExpression(calledUse.parent)
            ? [this.makeRangeFromAstNode(calledUse)]
            : undefined;
    } else if (typeof exportName === "string") {
        const expr = findParent(
            calledUse,
            isPropertyAccessExpression,
        );

        // Replicating original logic

-# Response generated by gemini-2.5-flash. AI may be incorrect or misleading.
royal nymph
#

WHYYY

#

u get the idea blobcatcozy

jade stone
#

@royal nymph love?

deep mulch
#

yea

royal nymph
#

so much more readable

jade stone
royal nymph
#

well nit but personally I find this unreadable, I would do this instead:

for (const use of this.vars.get(decl)?.uses ?? []) {
    const calledUse = use.location.parent;
royal nymph
#

i mean

#

you should probably split that up in smaller functions

jade stone
#

yeah

deep mulch
#

sloppy sadan

jade stone
#

thanks copilot

glossy pilot
#

that's so real

royal nymph
#

why tf is it any

#

what is ts cooking

#

its not any if i dont use then

#

wtf if i set noImplicitAny to true it isnt any

#

it was because of overloads

#

the fix: casting to PrivateThreadChannel (before it was Private | Public)

pulsar elk
fierce pendant
#

tanstack router ๐Ÿคค

jade stone
fierce pendant
jade stone
#

You get FOUC

fierce pendant
#

whos fouc

jade stone
#

Oh

#

Looks like it was fixed

jade stone
fierce pendant
#

why would css modules improve that though?

jade stone
#

They aren't properly handed with ssr

fierce pendant
#

haha

#

only reason i am moving my website to tanstack start is because i wanna use mdx

ionic lake
#

you can use mdx within anything

fierce pendant
#

but i don wanna

#

svelte-jsx sounds like the thing i will use shortly before killing myself

ionic lake
#

well okay have fun

fierce pendant
#

uhh

#

thanks

ionic lake
#

I meant something very simple, but whatever whets your appetite, I guess

fierce pendant
#

oh i also want a preloading router for no reason

frosty obsidian
#

astro does that for ex

jade stone
#

The problem with tanstack is that the initial payload of html to the client did not contain these tags (for css modules)

#

The css was loaded by vite on the client instead

#

Which happens after the initial render of SSR html

open nymph
#

lol

deep mulch
#

@jade stone have you used tanstack data table

jade stone
deep mulch
#

@jade stone teach me typescript instantly

jade stone
#

what do you want to do

deep mulch
jade stone
#

no like what do you want to specifically that you need help with in typescript

deep mulch
#

the type system

jade stone
#

uhh

#

prefer @ts-expect-error over @ts-ignore when you need an escape hatch

#

i personally prefer interface over type when possible

#

use a consistent naming scheme for types