| 25 Mar 2025 |
emily | people will have existing FOD hashes, they'll build their package again, and it will "work" because it's in the cache | 13:50:29 |
emily | but it will not reproduce | 13:50:32 |
emily | having the broken thing be the default is silly, so we should default useFetchCargoVendor to true. but then we do need code to detect the old FOD format so we can reject it | 13:50:49 |
Toma | it will not fetch from the cache because the name is different | 13:50:56 |
emily | as in, defaulting useFetchCargoVendor = true would invalidate the cache even with the same hashes? right, makes sense | 13:51:19 |
emily | could we do anything to detect old hashes? | 13:51:42 |
emily | I guess probably not. so maybe it is okay for them to just fail with a mismatch | 13:51:57 |
Toma | yea | 13:52:07 |
emily | I was hoping we could print out a more useful message so people don't just go "why is my hash invalidated??" but I guess people are somewhat used to hashes changing anyway :P | 13:52:31 |
Toma | is the breaking rust version backported btw? | 13:52:43 |
emily | ok, then I guess we can just do useFetchCargoVendor ? true, assert lib.assertMsg useFetchCargoVendor "buildRustPackage: useFetchCargoVendor is now the only option" | 13:53:14 |
emily | we never backport Rust versions as rustc | 13:53:28 |
emily | we add separate packages if necessary | 13:53:49 |
emily | (AIUI) | 13:53:50 |
Toma | seems fine | 13:54:02 |
emily | we might want to deprecate/remove the useless useFetchCargoVendor at some point, but that can probably wait | 13:54:42 |
emily | as long as the docs don't tell people to add it | 13:54:51 |
Toma | btw what will happen on 24.11? | 13:55:59 |
emily | I assume nothing? but I'm not sure what you're asking | 13:56:21 |
emily | 24.11 is on whatever Rust version it released with for its lifespan | 13:56:27 |
emily | even if we add rustc_1_85 in the next few months, it won't be default, so there'd be no breaking change (I guess we'd have to backport the new machinery in that case) | 13:56:57 |
Toma | let's say we make useFetchCargoVendor default now, will we backport that or no? | 13:57:52 |
emily | no | 13:58:05 |
emily | we don't backport breaking changes | 13:58:12 |
emily | is useFetchCargoVendor even in 24.11? | 13:58:15 |
Toma | yes, I believe | 13:58:25 |
emily | right | 13:58:32 |
emily | is your concern that people need to be able to write packages compatible with both 24.11 and 25.05? | 13:58:41 |
emily | I believe they can do that by setting it explicitly to true. | 13:58:58 |
emily | we can't avoid 25.05 having a breaking change from 24.11, because 1.85 already broke all the hashes | 13:59:03 |