This repository has been archived by the owner on Jun 12, 2024. It is now read-only.
Releases: contiamo/go-base
Releases · contiamo/go-base
Cracking Zebu
Add `GetPageInfoWithQuery` to make the interface more convenient (#76) This allows to get page information to an arbitrary query.
Barking Wallaby
Implement JSONEq that allows matches on empty string (#75) **What** - To simplify some of the tests checks, it can be helpful to allow matches on two empty strings, even though neither is valid json. Specifically this helps when testing apis that can return errors and 204 empty body. Signed-off-by: Lucas Roesler <[email protected]>
Astral Wallaby
Add openapi spec merge method (#67) **What** - Add new generator that merges a directory containing OpenAPI specs into a base OpenAPI spec. This allows defining a base spec with common definitions and then merge into schemas and paths from other files. This allows keeping the schemas smaller which should make them easier to read and maintain. The small files can also be OpenAPI specs, which means they can also be linted independentyly. - Our current Hub API is almost 10000 lines of yaml, which can be laggy in an editor. This is also difficult to maintain because the schema definitions are often so far away from where the are used. It is easier to open and reference several small files. Additionally, this should make it much easier to merge in changes from the datastore and profiler apis Signed-off-by: Lucas Roesler <[email protected]>
Contextful Viperfish
Add tracing ids to log fields via the span hook (#73) **What** - During the span hook, we copy the log to the span, this patch also copies the span and trace id to the log so that tools like Grafana can correlate log lines back to the traces. This works in two steps First, configure the span hook during server init ```go logrus.AddHook(&tracing.SpanHook{}) ``` Then, while logging use `logrus.WithContext(ctx)` Signed-off-by: Lucas Roesler <[email protected]>
Brave Viperfish
Use / prefix for the sql asset paths (#72) * Use / prefix for the sql asset paths **What** - The union filesystem assumes everything starts with `/`, so when using a generated filesystem via vfsgen, we get erros like ```sh open /iews: file does not exist ``` Adding the slash in the right places allows both the tests and the vfsgen to work exactly as expected. This is also hidden from the public API, so users should not need to work about it - Disable the queue leak detection tests in CI because they are false positives and we can't determine the source Signed-off-by: Lucas Roesler <[email protected]>
Ageless Viperfish
Add db migration sub-package (#71) **What** - Implement a generic postgres db migrations package that standardizes the behavior in Hub and Idp - Allow disabling the queue configuration - Allow passing the list of required foreign keys - Add a small jitter to the prepare flow so that we can reduce potential races to the DB Signed-off-by: Lucas Roesler <[email protected]>
Alabaster Seagull
Implement logrus hog to log to spans (#69) **What** - Implement `SpanHook` that can write logrus Entries to the current span logs. This unifies the log interface in our projects Signed-off-by: Lucas Roesler <[email protected]>
Gracious Tamarin
Return after task is handled (#66) **What** - During the worker iteration, return after the task handler returns. This stops the iteration span and allows the worker to start a new iteration. This will avoid having multiple task spans inside the same iteration span. - Bump the Go verison in CircleCI to Go 1.15 Signed-off-by: Lucas Roesler <[email protected]>
Fierce Tamarin
Add generic retention task assertion (#65) **What** - Add new public method for asserting any retention task. This allows us to build the task spec in our applciations but still use the generic assertion code Signed-off-by: Lucas Roesler <[email protected]>
Extreme Tamarin
Enable token issuer customization and add auth method references (#64) * Now the issuer is not hard-coded as `hub` anymore * The claims have the new `AuthenticationMethodReferences` to make it work with IdP