Release 10.0 - 230904.10.0
This release includes changes to how Skylark handles timezones, updates to the built-in Skylark schema and the usual array of bug fixes and improvements.
Features
Timezone Rework 🗓️
We've reworked the Skylark availability timezone support to make it easier to handle daylight saving time and generally make it easier and more user friendly to manage.
Previously Skylark used a UTC offset to inputting timezones. This was very simple and convenient, however made it impossible to have different offsets in the start
and end
time.
The rework uses IANA timezone groups to automatically work out the offset for you.
The input for an availability may look like this:
mutation {
createAvailability(availability: {
external_id: "my-availability",
start: "2023-09-04T12:00:00Z",
end: "2023-12-01T12:00:00Z",
timezone: "Europe/London"
}) {
uid
start
end
timezone
}
}
We'll normalise the offset in the datetime string (In the case of that example we entered Z
for UTC) to the timezone you entered, then store that as UTC. The UTC values and the timezone group name you entered can then be returned to you to shift to the timezone.
We realise that timezones are a developer's worst nightmare, so we hope this change relieves some of the pressure of managing offsets, and helps developers sleep a little easier.
LiveAsset 📺
We've changed the Skylark built in object type SkylarkLiveStream
to SkylarkLiveAsset
, and added LiveStream
to the entertainment data model.
We feel this change reflects what the original SkylarkLiveStream
type was originally intended for, which is basically a live version of an asset. And the new LiveStream
object in the entertainment data model gives you the flexibility to add/remove fields to match your data.
Fixes
- Fixes an issue where the
_meta
object would returnnull
in search results - Fixes an issue it was impossible to set a field to
null
once it had been populated