ncruces / go-sqlite3

Go bindings to SQLite using wazero
https://pkg.go.dev/github.com/ncruces/go-sqlite3
MIT License
402 stars 12 forks source link

Move UUID from C to Go #99

Closed ncruces closed 2 months ago

ncruces commented 2 months ago

Be as compatible with uuid.c as possible. But support new UUID formats.

https://pkg.go.dev/github.com/google/uuid

suyash-sneo commented 2 months ago

Hi @ncruces. New here to OSS. I'd like to take this up and make my first contribution.

ncruces commented 2 months ago

That's great!

I'm looking for these 3 functions (more docs here):

uuid()        - generate a version 4 UUID as a string
uuid_str(X)   - convert a UUID X into a well-formed UUID string
uuid_blob(X)  - convert a UUID X into a 16-byte blob

For parsing I'm fine with just using Parse (no need to be exactly 100% compatible with the C version).

Then I'd like to (somehow) overload the uuid() to generate other kinds of UUIDs. Particularly V7, maybe just uuid(7). But other kinds would be good.

These should be helpful to get you started:

suyash-sneo commented 2 months ago

Thanks!! But I've never contributed to Open source and this repo doesn't have any guidelines about How to contribute that I could see. Could you maybe provide a hint in the right direction? That'll be super helpful

ncruces commented 2 months ago

Well, I'm not sure I can help much with that part except point to docs: https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project

suyash-sneo commented 2 months ago

Sure, I'll refer to that. The material you have shared should help me get started so thanks for the help :)

ncruces commented 2 months ago

Removing the current uuid function and making it an extension is a minor breaking change.

I'd like to bundle it with #111 (another minor breaking change) before the next release.