more flexible versioning
Use iced-lock rather than copy-pasting the lock impl