ulid 20240921.0.0 (#1228)

New stuff:
- UUID 8-4-4-4-12 output like "01920161-d64d-5a3e-589e-c45df155547b"
- Conversion from text representations to a 128-bit number
This commit is contained in:
Gautier de Montmollin
2024-09-23 20:14:59 +02:00
committed by GitHub
parent fb7f72b539
commit 0f5b1dc197
+35
View File
@@ -0,0 +1,35 @@
name = "ulid"
description = "Universally Unique Lexicographically Sortable Identifier"
long-description = '''
<img src="https://github.com/ulid/spec/raw/master/logo.png" alt="image" width="100" height="auto">
In a nutshell, a ULID code (Universally Unique Lexicographically Sortable Identifier) is
a combination of a 48-bit time stamp (most significant part, with a millisecond accuracy),
and a 80-bit random number (least significant part), totalling 128 bits, that is 16 bytes (octets).
The ULID code generation is sort of UUID (Universally Unique Identifier) system, also know as GUID (Globally Unique Identifier).
The characteristic of ULID numbers is that they can be compared and sorted by their timestamps.
The package ULID provides a `Generate` function using the method described above, plus a `Generate_Monotonic` function that enables the production of a monotonically increasing sequence of ULID numbers within the same millisecond.
The preferred (canonical) representation of a ULID is a certain version of the Base32 encoding (example of output: 01J80P3NJDN0Y5YX7D05421X0G).
The ULID package also provides a function `Encode_as_8_4_4_4_12` that outputs a text representation in the usual UUID 8-4-4-4-12 format (like: 01920161-d64d-5a3e-589e-c45df155547b).
Both formats are also recognized by the `Decode` function.
'''
version = "20240921.0.0"
authors = ["Gautier de Montmollin"]
maintainers = ["gdemont@hotmail.com"]
maintainers-logins = ["zertovitch"]
licenses = "MIT"
website = "https://github.com/zertovitch/ulid"
tags = ["ulid", "uuid", "guid", "identifier", "timestamp"]
project-files = ["ulid.gpr"]
executables = ["ulid_test"]
[[depends-on]]
gnat = "(>=11 & <2000) | >=2021"
[origin]
url = "https://sourceforge.net/projects/ulid-ada/files/ulid-2024-09-21.zip"
hashes = ["sha512:b7822a403e879c6363551e2f13e6f44a9f78253ab1ec33138070213bca2fc0177c793968566d125845806acc6971ffff5408daafa454eb195a054534e1308dd3"]