
A shorter week for me due to annual leave means a shorter update!
Last week I mentioned a couple of JSON Schema PHP implementations that I had evaluated... isn't it the case that just after you've made your choice, another one pops up on your radar? I stumbled across Opis JSON Schema. The source code is on GitHub and was last updated five months ago... the project has 17 contributors, so it seems well supported. I cloned the repository and ran the tests, all passed. I will perhaps have to look at it further and maybe do a comparison between it and JSON Rainbow JSON Schema, which I am currently using.
Talking of JSON Rainbow JSON Schema, I updated my pull request today based on some feedback from the maintainer. The test I was trying to fix takes a date-time string, specifically 2000-05-01T12:12:12+0100. The test was failing due to 2000-05-01T12:12:12+0100 not matching a regular expression check... +01:00 at the end matched, but +0100 did not. I had a look at the RFC 3339 Date and Time on the Internet: Timestamps specification, and spotted in section 5.6, where it mentions time-numoffset, that the format is ("+" / "-") time-hour ":" time-minute. Based on this, I had submitted a pull request last week to remove this particular date-time, as I concluded it was invalid. The maintainer, in responding, pointed out that that date-time had been in the code base for twelve years, but that the regular expression had changed in recent months. It did cross my mind that perhaps the regular expression had perhaps been incorrect for twelve years... but anyways, I modified my pull request so that offsets with or without a colon separator now match the regular expression, which in turn, fixed two tests. We'll see what comes of it.
In outdoor news, I went for a cycle ride with the family today and managed to capture a nice photo of a meadow.