compile package a.1.0 with voodoo version x: outputs files into p/a/1.0 and obtain the hash h-x
compile package a.1.0 with voodoo version y: outputs files into p/a/1.0 and obtain a new hash h-y
rollback voodoo and thus compile package a.1.0with voodoo version x: cache hit, no rebuild, returns hash h-x even if the hash of the files on the server is still h-y
Currently, we're using
Current_cache.Make
(https://ocurrent.org/current/Current_cache/Make/index.html) to cache builds. However, some situations might lead into inconsistencies between the data server and the ocurrent state:a.1.0
with voodoo versionx
: outputs files intop/a/1.0
and obtain the hashh-x
a.1.0
with voodoo versiony
: outputs files intop/a/1.0
and obtain a new hashh-y
a.1.0
with voodoo versionx
: cache hit, no rebuild, returns hashh-x
even if the hash of the files on the server is stillh-y
Current_cache.Output
(https://ocurrent.org/current/Current_cache/Output/index.html) is more appropriate to reflect what we're doing. In the previous example, the key would bea.1.0
and the value the voodoo version.