deepgram / deepgram-go-sdk

Go SDK for Deepgram's automated speech recognition APIs.
https://developers.deepgram.com
MIT License
34 stars 28 forks source link

integrate `sdkVersion` with git tags #12

Open davidalpert opened 2 years ago

davidalpert commented 2 years ago

Proposed changes

Add a Makefile and/or github workflow to auto-update the in-code sdkVersion so that it matches the version tags.

Context

Go modules use git tags to manage dependencies and the tooling supports installing specific versions of the module/package based on git tags. This is such a strong convention that Go documentation recommends a publishing process for go modules.

It appears that the sdkVersion value in the code and the tags in the repo have drifted.

This drift means that api calls to the Deepgram API made using this code may be difficult to track and diagnose as the sdkVersion used in the calls will probably not reflect the tagged releases.

Possible Implementation

In my own Go projects I have opted for a hybrid model where I use a Makefile with a few release targets:

release-major                  release major version
release-minor                  release minor version
release-patch                  release patch version

These targets also use conventional commits to generate and update a CHANGELOG.md file packaged into the release commit.

Other information

If any or all of this would be of use I am happy to put together a pull request.

SandraRodgers commented 1 year ago

@davidalpert I know you wrote this up a long time ago. I'm working on getting this SDK to a better state and I think your recommendation would be a great improvement. Are you still interested in putting together a pull request?

davidalpert commented 1 year ago

I missed this notification but I could maybe take a look this weekend.

jpvajda commented 1 year ago

@dvonthenen 👋 I was curious what your thoughts were on this issue?

davidvonthenen commented 1 year ago

This relies on CI making updates. Will move this over to the post-v1 release