tools.aw_id

Yohn Y. 2025-05-06 Parent:223ba01da43a Child:74721178aed9

13:5ba13dd7ef05 Browse Files

.. v1.r202505.1 + UUIDv7

src/go.mod src/go.sum src/main.go

     1.1 --- a/src/go.mod	Thu Apr 10 13:10:33 2025 +0300
     1.2 +++ b/src/go.mod	Tue May 06 20:53:46 2025 +0300
     1.3 @@ -3,3 +3,5 @@
     1.4  go 1.23.1
     1.5  
     1.6  require github.com/google/uuid v1.6.0
     1.7 +
     1.8 +require github.com/oleg-vasiliev/uuid7 v0.1.1 // indirect
     2.1 --- a/src/go.sum	Thu Apr 10 13:10:33 2025 +0300
     2.2 +++ b/src/go.sum	Tue May 06 20:53:46 2025 +0300
     2.3 @@ -1,2 +1,4 @@
     2.4  github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
     2.5  github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
     2.6 +github.com/oleg-vasiliev/uuid7 v0.1.1 h1:16ucDPE4RtGUSU/A0vVf7MrwNyIJuGJGyrvSCmbupzo=
     2.7 +github.com/oleg-vasiliev/uuid7 v0.1.1/go.mod h1:sv+aMA1tBfQC5hSrfw6abbYpGdXSoyTCziZL2UIIbko=
     3.1 --- a/src/main.go	Thu Apr 10 13:10:33 2025 +0300
     3.2 +++ b/src/main.go	Tue May 06 20:53:46 2025 +0300
     3.3 @@ -1,4 +1,4 @@
     3.4 -// devel.a0fs.ru -- aw_id -- v1.r202504.2 //
     3.5 +// devel.a0fs.ru -- aw_id -- v1.r202505.1 //
     3.6  /*
     3.7    Утилиты генерирования полезных в работе ID
     3.8  */
     3.9 @@ -12,6 +12,7 @@
    3.10  	"strconv"
    3.11  
    3.12  	"github.com/google/uuid"
    3.13 +	"github.com/oleg-vasiliev/uuid7"
    3.14  )
    3.15  
    3.16  const (
    3.17 @@ -53,6 +54,18 @@
    3.18  	return res.String()
    3.19  }
    3.20  
    3.21 +func get_uuid7() string {
    3.22 +	res, err := uuid7.New()
    3.23 +
    3.24 +	if err != nil {
    3.25 +		return "00000000-0000-0000-0000-000000000000"
    3.26 +
    3.27 +	} else {
    3.28 +		return res.String()
    3.29 +
    3.30 +	}
    3.31 +}
    3.32 +
    3.33  func get_ver_id() string {
    3.34  	return fmt.Sprintf("v0.r%s.1", get_time_id(TIME_ID_SHORT2))
    3.35  }
    3.36 @@ -117,6 +130,7 @@
    3.37  
    3.38  func make_all_ids() {
    3.39  	prnt_out("uuid", get_uuid())
    3.40 +	prnt_out("uuid7", get_uuid7())
    3.41  	prnt_out("ts", get_time_id(TIME_ID))
    3.42  	prnt_out("tss", get_time_id(TIME_ID_SHORT))
    3.43  	prnt_out("tss2", get_time_id(TIME_ID_SHORT2))
    3.44 @@ -136,6 +150,8 @@
    3.45  		switch os.Args[1] {
    3.46  		case "uuid":
    3.47  			fmt.Println(get_uuid())
    3.48 +		case "uuid7":
    3.49 +			fmt.Println(get_uuid7())
    3.50  		case "ts":
    3.51  			fmt.Println(get_time_id(TIME_ID))
    3.52  		case "hr":
    3.53 @@ -160,7 +176,7 @@
    3.54  			fmt.Println(get_ver_id4())
    3.55  		default:
    3.56  			fmt.Println("Need one of: ")
    3.57 -			fmt.Println("  uuid, ts, tss, tss2, hr, hrr, hrs, hrs2,")
    3.58 +			fmt.Println("  uuid, uuid7, ts, tss, tss2, hr, hrr, hrs, hrs2,")
    3.59  			fmt.Println("  v, va, vs, vsa")
    3.60  		}
    3.61  		fmt.Println("")