go.uuid
golang-templates/seed
Our great sponsors
go.uuid | golang-templates/seed | |
---|---|---|
4 | 3 | |
4,857 | 433 | |
- | 1.6% | |
0.0 | 7.5 | |
8 months ago | 8 days ago | |
Go | Makefile | |
MIT License | Creative Commons Zero v1.0 Universal |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go.uuid
-
Writing UDF for Clickhouse using Golang
package main import ( "bufio" "encoding/binary" "encoding/hex" "fmt" "os" "strings" "time" ) func main() { scanner := bufio.NewScanner(os.Stdin) scanner.Split(bufio.ScanLines) for scanner.Scan() { id, _ := FromString(scanner.Text()) fmt.Println(id.Time()) } } func (me UUID) Nanoseconds() int64 { time_low := int64(binary.BigEndian.Uint32(me[0:4])) time_mid := int64(binary.BigEndian.Uint16(me[4:6])) time_hi := int64((binary.BigEndian.Uint16(me[6:8]) & 0x0fff)) return int64((((time_low) + (time_mid << 32) + (time_hi << 48)) - epochStart) * 100) } func (me UUID) Time() time.Time { nsec := me.Nanoseconds() return time.Unix(nsec/1e9, nsec%1e9).UTC() } // code below Copyright (C) 2013 by Maxim Bublis // see https://github.com/satori/go.uuid // Difference in 100-nanosecond intervals between // UUID epoch (October 15, 1582) and Unix epoch (January 1, 1970). const epochStart = 122192928000000000 // UUID representation compliant with specification // described in RFC 4122. type UUID [16]byte // FromString returns UUID parsed from string input. // Following formats are supported: // "6ba7b810-9dad-11d1-80b4-00c04fd430c8", // "{6ba7b810-9dad-11d1-80b4-00c04fd430c8}", // "urn:uuid:6ba7b810-9dad-11d1-80b4-00c04fd430c8" func FromString(input string) (u UUID, err error) { s := strings.Replace(input, "-", "", -1) if len(s) == 41 && s[:9] == "urn:uuid:" { s = s[9:] } else if len(s) == 34 && s[0] == '{' && s[33] == '}' { s = s[1:33] } if len(s) != 32 { err = fmt.Errorf("uuid: invalid UUID string: %s", input) return } b := []byte(s) _, err = hex.Decode(u[:], b) return } // Returns canonical string representation of UUID: // xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. func (u UUID) String() string { return fmt.Sprintf("%x-%x-%x-%x-%x", u[:4], u[4:6], u[6:8], u[8:10], u[10:]) }
-
satori uuid vs google uuid vs gofrs uuid ? which to use to generate uuid for enterprise coding standards
Link to source code :https://github.com/satori/go.uuid up to v5
-
Building web-based SaaS with Go as a solo entrepreneur. What should I be aware of?
Something to note is that all of this is still open source. Theoretically, someone can decide to fork SQLBoiler and add all the missing things, or send in a PR. A good example is that the current most popular uuid package. gofrs/uuid was forked from an unmaintained previously popular package.
- CVE-2021-3538 issued for latest release of github.com/satori/go.uuid
golang-templates/seed
-
The first release of goyek - a library for creating build pipelines
BTW I also maintain https://github.com/golang-templates/seed and guess what I am using there? Makefile! Because this is the de-facto standard ;)
-
golang-templates/seed builds Docker images OOTB
I am happy to announce that finally, https://github.com/golang-templates/seed is building a Docker container image. As well as it pushes it as part of the release pipeline.
What are some alternatives?
uuid - Go package for UUIDs based on RFC 4122 and DCE 1.1: Authentication and Security Services.
pagoda - Rapid, easy full-stack web development starter kit in Go
cookiecutter-golang - A Go project template
go-shortid - Super short, fully unique, non-sequential and URL friendly Ids
vscode-dev-containers - NOTE: Most of the contents of this repository have been migrated to the new devcontainers GitHub org (https://github.com/devcontainers). See https://github.com/devcontainers/template-starter and https://github.com/devcontainers/feature-starter for information on creating your own!
scaffold - Generate scaffold project layout for Go.
autoflags - Populate go command line app flags from config struct
go-chat-bot - IRC, Slack, Telegram and RocketChat bot written in go
conv - Fast conversions across various Go types with a simple API.
golang-standards/project-layout - Standard Go Project Layout
latex-action - :octocat: GitHub Action to compile LaTeX documents
container - A lightweight yet powerful IoC dependency injection container for the Go programming language