tools.aw_id
tools.aw_id/src/main.go
.. v1.r202505.1 + UUIDv7
1.1 --- a/src/main.go Thu Apr 10 13:10:33 2025 +0300 1.2 +++ b/src/main.go Tue May 06 20:53:46 2025 +0300 1.3 @@ -1,4 +1,4 @@ 1.4 -// devel.a0fs.ru -- aw_id -- v1.r202504.2 // 1.5 +// devel.a0fs.ru -- aw_id -- v1.r202505.1 // 1.6 /* 1.7 Утилиты генерирования полезных в работе ID 1.8 */ 1.9 @@ -12,6 +12,7 @@ 1.10 "strconv" 1.11 1.12 "github.com/google/uuid" 1.13 + "github.com/oleg-vasiliev/uuid7" 1.14 ) 1.15 1.16 const ( 1.17 @@ -53,6 +54,18 @@ 1.18 return res.String() 1.19 } 1.20 1.21 +func get_uuid7() string { 1.22 + res, err := uuid7.New() 1.23 + 1.24 + if err != nil { 1.25 + return "00000000-0000-0000-0000-000000000000" 1.26 + 1.27 + } else { 1.28 + return res.String() 1.29 + 1.30 + } 1.31 +} 1.32 + 1.33 func get_ver_id() string { 1.34 return fmt.Sprintf("v0.r%s.1", get_time_id(TIME_ID_SHORT2)) 1.35 } 1.36 @@ -117,6 +130,7 @@ 1.37 1.38 func make_all_ids() { 1.39 prnt_out("uuid", get_uuid()) 1.40 + prnt_out("uuid7", get_uuid7()) 1.41 prnt_out("ts", get_time_id(TIME_ID)) 1.42 prnt_out("tss", get_time_id(TIME_ID_SHORT)) 1.43 prnt_out("tss2", get_time_id(TIME_ID_SHORT2)) 1.44 @@ -136,6 +150,8 @@ 1.45 switch os.Args[1] { 1.46 case "uuid": 1.47 fmt.Println(get_uuid()) 1.48 + case "uuid7": 1.49 + fmt.Println(get_uuid7()) 1.50 case "ts": 1.51 fmt.Println(get_time_id(TIME_ID)) 1.52 case "hr": 1.53 @@ -160,7 +176,7 @@ 1.54 fmt.Println(get_ver_id4()) 1.55 default: 1.56 fmt.Println("Need one of: ") 1.57 - fmt.Println(" uuid, ts, tss, tss2, hr, hrr, hrs, hrs2,") 1.58 + fmt.Println(" uuid, uuid7, ts, tss, tss2, hr, hrr, hrs, hrs2,") 1.59 fmt.Println(" v, va, vs, vsa") 1.60 } 1.61 fmt.Println("")