Tags: cisse21/uuid
Tags
3.1.0 This release includes new functionality (PR gofrs#31) to help consumers extract a time.Time value out of a Version 1 UUID. UUIDs have their own internal timestamp, which is a counter of 100ns increments since the start of the Gregorian Calendar (00:00:00 UTC on 15 Oct, 1582). To represent that a new `Timestamp` type was added, with a `Time()` method used to convert the timestamp value to a `time.Time` value. To extract the timestamp from a Version 1 UUID, a new package function (`TimestampFromV1`) was added to extract a `Timestamp` out of a UUID. If it's not a V1 UUID it returns an error. Big thanks to Ron Kuris (@rkuris) for this contribution!
3.0.0 v3.0.0 denotes the first major change by The Gofrs, and encompasses feature requests / PRs that had been opened against the original project. This version includes the following *_breaking_* changes: - update the `sql.NullUUID` type to support both the `json.Marshaler` and `json.Unmarshaler` interfaces, which I'll provide more details on later. (gofrs#38) - remove the `Equal` function from the package, as the UUID type is an array type and so you can use `==` directly for comparisons. (gofrs#36 gofrs#39) This version also exposes the internal UUID generator, with constructors, so that consumers can provide their own HWAddrFunc to get the hardware address of the node. This can be used by consumers who want to randomize the MAC address in a V1 UUID. (gofrs#42) In regards to the JSON change, the `sql.NullUUID` type is one that's used with the `database/sql` package to support columns that can contain UUIDs or a NULL value. This means it's a struct with a `UUID` and `Valid` field, so previously a `sql.NullUUID` would marshal to JSON like so: ```JSON { "uuid": { "uuid": "3bdef553-9b6a-4620-8a5f-b94bf22a2520", "valid": true } } ``` By implementing the right interfaces from the JSON package, it'll now marshal like so: ```JSON { "uuid": "3bdef553-9b6a-4620-8a5f-b94bf22a2520" } ```
2.1.0 Version 2.1.0 is functionally equivalent to 2.0.1. It introduces a documentation change to indicate that the package's `Equal` function is deprecated in favor of just comparing two UUID values to one another using `==`. This change was made in gofrs#36. We plan on removing this function in v3.0.0.
PreviousNext