!rGlCMuXgAhgEpdvJUz:nixos.org

NixOS KDE

223 Members
61 Servers

Load older messages


SenderMessageTime
5 Sep 2024
@outfoxxed:outfoxxed.meoutfoxxedand theres no risk of reading corrupt old caches because caching was disabled07:10:27
@outfoxxed:outfoxxed.meoutfoxxedAlso we should only do this for applications located in the nix store07:11:19
@outfoxxed:outfoxxed.meoutfoxxedWhat might work well here is to reuse the version field that the qml engine already stores with the cache and set it to max(whatever int type) to signify it has an extra header07:13:52
@outfoxxed:outfoxxed.meoutfoxxedso it will be discarded if its somehow loaded in non-store mode07:14:12
@outfoxxed:outfoxxed.meoutfoxxedits a uint32, we have plenty of headroom on the version number07:15:55
@k900:0upti.meK900 ⚡️I don't know about that07:16:57
@outfoxxed:outfoxxed.meoutfoxxeddo you have a better idea?07:17:07
@k900:0upti.meK900 ⚡️I don't want to mess with the internals any more than absolutely necessary07:17:35
@k900:0upti.meK900 ⚡️Maybe we should talk to Qt upstream and see what they think07:17:49
@outfoxxed:outfoxxed.meoutfoxxedI don't either but I also don't want hundreds of outdated cache files07:17:53
@outfoxxed:outfoxxed.meoutfoxxedyeah thats probably a good idea07:18:03
@outfoxxed:outfoxxed.meoutfoxxedI'll mention it07:18:30
@outfoxxed:outfoxxed.meoutfoxxedlooking through the load/store code its pretty integrated07:21:56
@outfoxxed:outfoxxed.meoutfoxxedprobably less of a good idea than I hoped07:22:13
@k900:0upti.meK900 ⚡️I'm also putting some notes on the PR07:26:06
@outfoxxed:outfoxxed.meoutfoxxedWhat do you think of hashing the application and qtdeclarative versions together and putting them in qml_compile_hash07:27:33
@outfoxxed:outfoxxed.meoutfoxxedthats a 48 character space usually used for just the qtdeclarative version07:27:49
@outfoxxed:outfoxxed.meoutfoxxedand already embedded in the qmlc07:27:57
@outfoxxed:outfoxxed.meoutfoxxedwe can use one or more bytes to signify it should be read as a hash of both and compared as such07:28:31
@outfoxxed:outfoxxed.meoutfoxxedworst case scenario some application not running from the nix store gets a cache miss07:28:53
@k900:0upti.meK900 ⚡️I think I need to reread the cache cleaning code07:31:35
@k900:0upti.meK900 ⚡️Because I am very confused on how it's intended to work07:31:44
@outfoxxed:outfoxxed.meoutfoxxedqv4executablecompilationunit.cpp07:31:54
@outfoxxed:outfoxxed.meoutfoxxedExecutableCompilationUnit::verifyHeader07:32:01
@outfoxxed:outfoxxed.meoutfoxxedmy proposal is to check for a proefix on unit->libraryVersionHash, and if present handle the following bytes as a hash of QML_COMPILE_HASH and the application's store path07:33:13
@outfoxxed:outfoxxed.meoutfoxxed * my proposal is to check for a prefix on unit->libraryVersionHash, and if present handle the following bytes as a hash of QML_COMPILE_HASH and the application's store path 07:33:26
@outfoxxed:outfoxxed.meoutfoxxedif not present its handled normally to avoid breaking anything that isn't a nix packaged qtquick application07:34:37
@k900:0upti.meK900 ⚡️I wonder if upstream would be open to like07:36:31
@k900:0upti.meK900 ⚡️Hashing all the build IDs together or something07:36:39
@outfoxxed:outfoxxed.meoutfoxxed
In reply to @k900:0upti.me
Hashing all the build IDs together or something
it seems like qt has .tag for the same purpose as build id at least
07:37:40

Show newer messages


Back to Room ListRoom Version: 9