Create universally unique identifiers (UUIDs) versions 1, 3, 4, 5, 6, 7 and 8 in transformations.
Project description
cmem-plugin-uuid
Create universally unique identifiers (UUIDs) versions 1, 3, 4, 5, 6, 7 and 8 in transformations.
Installation
cmemc -c my-cmem admin workspace python install cmem-plugin-uuid
UUID1
UUID1 version is generated from a host ID, sequence number, and the current time.
Parameters
Node
Node value in the form "01:23:45:67:89:AB", "01-23-45-67-89-AB", or "0123456789AB".
If not given, uuid.getnode()
is used to
attempt to obtain the hardware address. If this is unsuccessful a random 48-bit number is chosen.
Default value: None
ID: node
Clock sequence
If clock sequence is given, it is used as the sequence number, otherwise a random 14-bit sequence number is chosen.
Default value: None
ID: clock_seq
UUID3
UUID version 3 is a reproducible UUID based on the MD5 hash of a namespace identifier (which is a UUID) and a name (which is a string).
Parameters
Namespace
The namespace can be entered manually or selected from the namespace UUIDs defined in RFC 4122:
- Namespace DNS: 6ba7b810-9dad-11d1-80b4-00c04fd430c8 (namespace_dns)
- Namespace URL: 6ba7b811-9dad-11d1-80b4-00c04fd430c8 (namespace_url)
- Namespace OID: 6ba7b812-9dad-11d1-80b4-00c04fd430c8 (namespace_oid)
- Namespace X500: 6ba7b814-9dad-11d1-80b4-00c04fd430c8 (namespace_x500)
If none of the predefined namespace UUIDs is selected, the input namespace is either directly interpreted as a UUID, or used to derive a UUID (see parameter Namespace as UUID). If no namespace is given, the output is the same as that of the standard CMEM UUID operator with input value.
Default value: none
ID: namespace
Use input as namespace
If enabled, the input value is used for the namespace.
Default value: False
ID: input_as_namespace
Namespace as UUID
Applies only if none of the pre-defined namespaces is selected. If enabled, the namespace string needs to be a valid UUID. Otherwise, the namespace UUID is a UUIDv1 derived from the MD5 hash of the namespace string.
Default value: False
ID: namespace_as_uuid
UUID4
UUID version 4 specifies a random UUID. This plugin is equivalent to the standard CMEM UUID operator without input value.
UUID5
UUID version 5 is a reproducible UUID based on the SHA1 hash of a namespace identifier (which is a UUID) and a name (which is a string).
Parameters
Namespace
The namespace can be entered manually or selected from the namespace UUIDs defined in RFC 4122:
- Namespace DNS: 6ba7b810-9dad-11d1-80b4-00c04fd430c8 (namespace_dns)
- Namespace URL: 6ba7b811-9dad-11d1-80b4-00c04fd430c8 (namespace_url)
- Namespace OID: 6ba7b812-9dad-11d1-80b4-00c04fd430c8 (namespace_oid)
- Namespace X500: 6ba7b814-9dad-11d1-80b4-00c04fd430c8 (namespace_x500)
If none of the predefined namespace UUIDs is selected, the input namespace is either directly interpreted as a UUID, or used to derive a UUID (see parameter Namespace as UUID).
Default value: none
ID: namespace
Namespace as UUID
Applies only if none of the pre-defined namespaces is selected. If enabled, the namespace string needs to be a valid UUID. Otherwise, the namespace UUID is a UUIDv1 derived from the SHA1 hash of the namespace string.
Default value: False
ID: namespace_as_uuid
UUID6
UUID6 version is generated from a host ID, sequence number, and the current time. UUID version 6 is a field-compatible version of UUIDv1, reordered for improved DB locality.
Parameters
Node
Node value in the form "01:23:45:67:89:AB", "01-23-45-67-89-AB", or "0123456789AB". If not given, a random 48-bit sequence number is chosen.
Default value: None
ID: node
Clock sequence
If clock sequence is given, it is used as the sequence number, otherwise a random 14-bit number is chosen.
Default value: None
ID: clock_seq
UUID7
UUID version 7 features a time-ordered value field derived from the widely implemented and well known Unix Epoch timestamp source, the number of milliseconds since midnight 1 Jan 1970 UTC, leap seconds excluded, as well as improved entropy characteristics over versions 1 or 6.
UUID8
UUID version 8 features a time-ordered value field derived from the widely implemented and well known Unix Epoch timestamp source, the number of nanoseconds since midnight 1 Jan 1970 UTC, leap seconds excluded.
UUID1 to UUID6
Generate a UUID version 6 from a UUID version 1. The input needs to be a valid UUIDv1 hexdecimal string.
UUID Version
Outputs the UUID version from a UUID input string.
UUID Convert
Convert a UUID from one format to another. The plugin accepts strings in the correct format, however, the log will show a warning if the input does not comply with the standard specified in RFC 4122 and the proposed updates.
Parameters
From
The input format
Options:
-
UUID/32-character hexadecimal string (uuid_hex):
A standard UUID or a UUID as a 32-character lowercase hexadecimal string.
-
128-bit integer (int):
The UUID as a 128-bit integer.
-
URN (urn):
The UUID as a URN.
Default value: UUID/32-character lowercase hexadecimal string
ID: from_format
To
The output format
Options:
-
UUID (uuid):
A standard UUID.
-
32-character lowercase hexadecimal string (hex):
The UUID as a 32-character lowercase hexadecimal string.
-
128-bit integer (int):
The UUID as a 128-bit integer.
-
URN (urn):
The UUID as a URN as specified in RFC 4122.
Default value: 32-character lowercase hexadecimal string
ID: to_format
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file cmem_plugin_uuid-1.0.0.tar.gz
.
File metadata
- Download URL: cmem_plugin_uuid-1.0.0.tar.gz
- Upload date:
- Size: 11.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.7 Linux/6.2.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 06a22b76eb28dbaf42c7c69f60a05230f5f33c3bd638410eb0735e39cc8aa81c |
|
MD5 | 090368feede5460248f42b287dcafe57 |
|
BLAKE2b-256 | ade7e2da6f43ea47bd71036012a883399333775459833eb4e2c66d3009f10c8c |
File details
Details for the file cmem_plugin_uuid-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: cmem_plugin_uuid-1.0.0-py3-none-any.whl
- Upload date:
- Size: 11.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.7 Linux/6.2.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e40f0e4b7546c9309cdca298ae5dc1e6106550e50e9e09e60d64b7cd762f52e5 |
|
MD5 | 4174be0257f1866e19a88118427a719c |
|
BLAKE2b-256 | dd212e1160dd8f1cdacbeb7c4b87b68230f627ca4477939afb488d8a90b073d1 |