I cloned and ran go test on this and found that the tests only pass if I commented out the TestLock function in the lock_test file. I'm sure the build constraints in the other files take care of this in practical use, but just an FYI that the tests, as they are, fail.