Closed bartelink closed 2 years ago
@samritchie This develops https://github.com/bartelink/FSharp.AWS.DynamoDB/pull/3 I'm flexible on whether the cleanup PR #47 goes in before or after this (or in some other release)
Will keep chipping away adding tests but would appreciate your thoughts on where to draw the line - ultimately I'm satisfied the basic functionality of the exception filter and the condition checks etc are correct.
After that, the incremental value of validating arbitrary combinations of conditions and individual TransactWrite
items becomes more marginal for me. i.e. its duplicating business of the underlying service and/or SDK (which is not the end of the world, but in the context of this repo they should be marked as characterisation tests and/or examples)
@samritchie I can't think of anything else to do so from my point of view this is ready for final review - let me know if you can see anything that needs doing (in particular, the README is more a braindump than polished tech writing!)
if not, I'll integrate test it when you get a chance to merge and release
Thanks @bartelink, I'll go through this today - I’m still recovering from the plague and my brain is a bit slow at the moment
Thanks - I know the feeling so doubly appreciate any time you can carve out in that case.
For reference, here's where it all slots into Equinox (am I glad I have tests over that!) https://github.com/jet/equinox/blob/6a23d9e26aab33b027d7694502415a552e9ce5bb/src/Equinox.DynamoStore/DynamoStore.fs#L417-L468
(And if you think no reasonable person could love that code, contrast it with https://github.com/jet/equinox/blob/6a23d9e26aab33b027d7694502415a552e9ce5bb/src/Equinox.CosmosStore/CosmosStore.fs#L362-L469, which definitely took more development effort and tight-rope walking!)
Nudge @samritchie - hoping to release a beta of https://github.com/jet/equinox/pull/321 vs having to hand-build some alpha... Even an -alpha
Nuget upload would help a lot...
Thanks for releasing, much appreciated. Your comments are on the money; will circle back on them in the coming days...
Wraps the
TransactWriteItems
APIArgumentOutOfRangeException
Check
+ unconditionalPutItem
pairAdds a
Precondition.CheckFailed
for trapping normal precondition check fails