New Quick Tip: Fix Svelte LSP indexing in Helix.
Viteβs multi-tsconfig setup can break your dependency graph. Here is how to point svelteserver to the right path.
Read more: marma.dev/articles/202...
#Helix #Svelte #Vite #LSP #Programming
New Quick Tip: Fix Svelte LSP indexing in Helix.
Viteβs multi-tsconfig setup can break your dependency graph. Here is how to point svelteserver to the right path.
Read more: marma.dev/articles/202...
#Helix #Svelte #Vite #LSP #Programming
The set 20 announcement was my highlight from this talk. It hyped me to a degree that can only end in disappointment... but hope dies last :D.
I think the design space in fab has still so much potential and I can't wait to see what they were holding back.
We are using TypeScript. We could also explicitly set the return type, but the problem is that the types don't exist during runtime. They are being checked through the LSP during development and before building. Our function was being changed to an async one after type checking.
I already switched to tanstack start for my personal projects. It's really a joy to work with and thank you very much for your contributions to this amazing stack!
Yes, it should've never built successfully and throw us an error that the function must be an async one.
Which, to be fair, does it now. But I don't want to imagine how many people might have stepped into this and/or maybe still running this version without knowing...
How our "perfect" one-line isOwner() function in Next.js started always returning true.
Spoiler: It is because of server functions...
Wrote about the bug, the fix, and the "magic" that caused it:
marma.dev/articles/202...
#webdev #javascript #typescript #react #nextjs #serverfunctions
Thank you very much!
This one is lying on my desk for too long untouched. I think it is time to pick it up. Thanks for reminding me :)!
Yes, this is me and thank you very much for this feedback! I really appreciate it! Have a good day sir :)
The more I think about it, the more I agree with you. I've heard multiple times that seasoned engineers struggled longer until it clicked bc they had to unlearn a lot of bad practices learned through other languages. So I think first timers might have an advantage here.
May I ask which resources you used and what was lacking?
What is Rust's Vec<T> hiding? The docs just show { /* private fields */ }. I went on a deep dive into the standard library to uncover the layers of abstraction, from unsafe pointers to the safe API we know and love. A look under the hood!
marma.dev/articles/202...
#rustlang #UnderTheHood #DeepDive
No problem. Thanks for replying!
If it's open source would you mind sharing it for us to also read and learn from it? :)
I guess when it comes to features, godot might be the clear winner here.
It depends on what you mean by advantage. I use bevy bc I like rust and coding in general. I tried all the GUI engines but I just can't work with so much clicking. With pure coding frameworks I have a sense of being in full control. Does that count as an advantage? Maybe... For me at least it is.
It may be... The tv is at my parents place. It's so frustrating and honestly enraging that this is possible or even legal!
As bad as it is the software would keep working. We bought a Smart TV about 6 to 7 years ago with Netflix. But they decided, that our TV won't get an update of the Netflix app anymore and the service requires a specific version to connect. So we now have a "broken" tv since we only watch Netflix...
Yeah my day to day job is also JS/TS and I'm always longing to get cozy with rust after work :D
βThe initial productivity boost from Copilot is a trade-off. By outsourcing design and algorithmic thinking, I failed to build a mental map of the code, making it feel foreign weeks later. The temptation is too great, so I deactivated it to prioritize my engineering skills over superficial speed.
Definitely commit by commit. But sometimes colleagues put everything in a giant sole commit... The horror!
Really interested in the outcome. I'm also really interested in zig but learning rust changed me. Any language without the safety guards feels like a battlefield... So that's what holding me back right now.
are there any official news about this? and what's the rationale behind this decision?
Ah thank you very much! Was always wondering how to do stuff like this. Excited to skim through the code!
I guess this is not open source? π₯²
Awesome work! looks really clean!
In addition, anything that implements Drop is not allowed to implement copy.
doc.rust-lang.org/std/marker/t...
Very well written! I'd also add:
Strings/Vectors manage heap data and impl Drop. Their stack part holds pointer info. If Copy, these pointers duplicate, meaning multiple pointers reference the same heap data. Drop called for each then causes a double-free error. For memory safety, they are not Copy
nothing to add here folks. this is the way!
Yeah, I really don't like this behavior.
I found this article and the solution to this seems wild...
mangatmodi.medium.com/go-check-nil...
go.dev/play/p/FKdxm...
I think what's happening here is that indeed it's because the interface value is only nil when both parts of the tuple are nil.
I guess the compiler sets the type of the interface value when a concrete type (here a struct) is passed as an argument.