| 17 Apr 2026 |
emily | I did always think it was odd that such an esoteric complicated interface was stable | 10:14:18 |
emily | the definitive proof I live in opposite world is that everyone else's favourite part of Rust (Cargo, the toolchain UX, etc.) is my least favourite | 10:16:07 |
Crony Akatsuki (balkan/slav) | Nope, you are better of than me | 10:32:48 |
Crony Akatsuki (balkan/slav) | I don't like rust in general. I just package some rust programs from time to time | 10:33:22 |
| dish [Fox/It/She] changed their profile picture. | 16:58:36 |
Ralith | cargo's in a weird spot where it's worlds better than what most people are used to but worlds worse than what a build system can be | 20:04:55 |
Ralith | ultimately it generally achieves what it sets out to do and they've been good about ensuring rustc isn't tightly coupled to it | 20:05:22 |
emily | build.rs ruined everything | 22:35:33 |
emily | if not for that it might have been okay | 22:35:35 |
emily | (but yeah I know, tradeoffs. I get why it's very nice for most people) | 22:35:59 |
emily | problem is the entire ecosystem orbits around it so a better build system for Rust isn't really achievable, or rather, it still has to pay the cost of the bad things about Cargo and friends | 22:36:55 |
figsoda | if build.rs didnt exist people will still find a way (proc macros) to do the things build.rs does like running pkg-config | 22:42:35 |
whispers [& it/fae] | the biggest problem to me is that there aren't more structured ways to the tasks that people usually need. like, in this case, everyone has reinvented running pkg-config and then trying to build the library if you have a feature enabled and so you get to gamble on whether it's any good or you have overrides or anything like that | 22:44:48 |
whispers [& it/fae] | it takes the idea of maximal flexibility (which you're probably right, people would find a way to do given the rest of landscape) and effectively pushes it into the common case so that even normal tasks require this machinery which is inconsistent and resistant to introspection | 22:46:19 |
whispers [& it/fae] | * it takes the idea of maximal flexibility (which you're probably right, people would find a way to do given the rest of language) and effectively pushes it into the common case so that even normal tasks require this machinery which is inconsistent and resistant to introspection | 22:46:51 |
whispers [& it/fae] | * it takes the idea of maximal flexibility (which you're probably right, people would find a way to do given the rest of language) and effectively pushes it into the common case so that even normal tasks require this machinery which is ad-hoc, inconsistent, and resistant to introspection | 22:47:08 |
whispers [& it/fae] | i suspect a lot of it (e.g. this case of library loading) is mostly down to the fact that it's a lot of work to get right and so it was never implemented, but the effects are the same | 22:48:28 |
whispers [& it/fae] | * | 22:48:56 |
whispers [& it/fae] | * | 22:49:33 |
figsoda | something like system-deps built into cargo would definitely be interesting to see | 22:58:21 |
nim65s | do you think a bazel(-ish) layer would help ? | 23:06:06 |
emily | unsandboxed proc macros were also a mistake :) | 23:25:05 |
emily | but tbh cc crate is a worse offender than anything pkg-config-related | 23:25:17 |
figsoda | agreed | 23:31:47 |
| 18 Apr 2026 |
Tumble | are you supposed to put Cago.lock in gitignore? | 15:15:49 |
Tumble | i was thinking of building this for myself
https://github.com/waywallen/waywallen/blob/main/.gitignore
but they gitignored the Cargo.lock file | 15:16:03 |
Tumble | * are you supposed to put Cargo.lock in gitignore? | 15:16:16 |
K900 | Generally no | 15:16:23 |
K900 | Also holy shit is that overengineered | 15:17:33 |
Tumble | why are most of the things i decide to compile myself, aways have a weird build setup | 15:18:15 |