29 Aug 2024 |
emily | so it works out | 23:54:33 |
30 Aug 2024 |
Winter | for a long time, i've wanted to write Go setup hooks. but when i wanted to ask zowoq about it (since apparently they were also doing it), they told me to fuck off. it's been years since then, and it still hasn't happened... so... | 03:43:43 |
Winter | * | 03:43:55 |
Winter | not really interested in helping to improve the Go situation | 03:44:04 |
Winter | i'm glad mostly everything else has switched to at least providing setup hooks, though | 03:46:15 |
@adis:blad.is | I'm tempted to tackle that similarly to https://github.com/NixOS/nixpkgs/issues/333702 | 03:48:37 |
emily | Node.js could use a bit of the same treatment, I've noticed | 03:50:08 |
emily | though I think they had something closer to that in the past and replaced it? | 03:50:16 |
@adis:blad.is | Yeah it was.. Terrible. | 03:50:37 |
emily | what if it was good instead? :) | 03:50:45 |
@adis:blad.is | Conceptually it doesn't have to be, but our setup was. | 03:50:50 |
emily | ooh, we should start calling it "OBLF" so we have another acronym as confusing and misleading as "IFD". | 03:50:55 |
emily | I didn't actually get around to starting to write the tool for Rust yet, but FWIW I wouldn't necessarily be opposed to extending it to work with other language package sets if that ends up being a thing that would be convenient | 03:51:42 |
emily | (though I can understand if Go wants a tool written in Go, etc.) | 03:51:57 |
@adis:blad.is | In reply to @emilazy:matrix.org Node.js could use a bit of the same treatment, I've noticed I can't even conceptualize what that would look like for node | 03:53:45 |
emily | hm | 03:54:08 |
@adis:blad.is |
The Python ecosystem is much worse about following SemVer
They actually don't follow semver at all: https://peps.python.org/pep-0440/
| 03:54:10 |
emily | because of nested node_modules ? | 03:54:14 |
Winter | nodejs is... hell | 03:54:28 |
Winter | have you seen the sheer amount of hacks we have to do? | 03:54:38 |
@adis:blad.is | Because of how many versions of a dependency that needs to coexist in a tree | 03:54:51 |
emily | right | 03:55:08 |
@adis:blad.is | And how they need to be compatible | 03:55:19 |
emily | you can at least canonicalize all the compatible ones, right? | 03:55:19 |
emily | but yeah the nice thing about Rust and Go is that they have ecosystems that are well-behaved about versioned dependencies | 03:55:31 |
emily | so it's probably a lot easier to accomplish for them than anything else | 03:55:37 |
Winter | yeah i'd say let's make this work well with Rust/Go first | 03:55:42 |
Winter | which is 1000000x more feasible than npm | 03:55:49 |
@adis:blad.is | I'm not loving the whole FOD situation we have in nodejs. But I don't see a path to a better alternative. | 03:56:34 |
Winter | it's not perfect, no | 03:56:54 |