Hi folks - a note that I'm open to receiving any 'upstreamable' improvements from this, including changes which may alter the public API (since I consider the library to still be in an unstable state). It is almost certainly the case that the union of UIS DevOps and myself exert control over all uses of the library in anger.
To start off with, I've been meaning to get round to writing unit tests / end-to-end auth tests for it at some point... The prospect of the code being used 'seriously' by someone other than myself is of course a strong motivation for me to do this :)
:) - that's good to hear Edwin. I think our thought is we'd maintain a local fork so that we can roll hotfixes in if necessary but contribute upstream.
You can see some of the work we're doing in this repo. We're trying to test all the flows we actually see in production in our tests and we make use of django-ucamwebauth as a "neutral" implementation of the client side to check that the responses generated are valid.
As it is I think the public API is OK for our needs although given this is a first pass implementation that's not to say that some "gotchas" might appear later. More tests are always good :).
That's good to know. I've configured https://gitlab.developers.cam.ac.uk/uis/devops/external/ucam-wls to mirror from that repo and keep any changes we have locally in uis-master. We can hotfix into that branch and merge upstream master when proper fixes land.