Another quick post.

I’ve updated the Docker Known development environments for MySQL and Postgres to support the newly release PHP 8.

If you’ve already run the environment, you’re going to need to rebuild the docker images (e.g. docker-compose up --build)

Happy coding!

For those following Known’s bleeding edge repo should be interested in a number of changes recently merged in.

First is tentative support for the new PHP 8, released at the end of last month. At the time of writing, we’re still waiting for Travis CI to catch up, but it seems to be working ok.

Second, is a fairly large set of data model changes which sets the stage for some work we hope to do next year.

First, I’ve switched away from the Mongo inspired md5s (on MySQL at least) to using v4 UUIDs for object addressing. This is more industry standard, and is wider supported.

Second, I’ve introduced a site collection. This identifies the site’s host, and gives us a nice entity to hang site specific information off of in the future. Crucially, entities will now be tagged with the site they were created on in a persistent way.

One immediate thing this gives us is a much more robust way for doing multi-tenant in a modern cloud environment.

My intention is to build on this concept going forward, and possibly even use it as an addressing mechanism for reader functionality.

Anyway, heads up if you’re following master. Take a backup before updating!

Last week I gave a talk at the FREYA project wrap up meeting, part of the EOSC life symposium, on PIDs and how we (as part of my day job) were looking at using them to reproduce scientific research. This was one of the prize winners for the end of project award.

The basic concept is as follows:

  1. When a researcher visits an institution we create a PID identifying their “session”
  2. As an experiment is performed, we mint PIDs for each relevant asset, and “cite” the session identifier. Assets should include everything relevant for reproducing the science (this includes things you might not think of such as beam line or microscope configuration settings)
  3. When a research output is produced (research paper, protein in the protein database), all these sessions are tied together with another PID and a link is established between that bundle and the final output
  4. Using the PID Graph it is possible to unpack this.

If you’re interested, you can watch the presentation, or read more in the paper below.