diff --git a/.github/workflows/release-doctor.yml b/.github/workflows/release-doctor.yml new file mode 100644 index 0000000..a4c0b51 --- /dev/null +++ b/.github/workflows/release-doctor.yml @@ -0,0 +1,17 @@ +name: Release Doctor +on: + pull_request: + workflow_dispatch: + +jobs: + release_doctor: + name: release doctor + runs-on: ubuntu-latest + if: github.repository == 'FarquestSocial/farquest-go' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next') + + steps: + - uses: actions/checkout@v4 + + - name: Check release environment + run: | + bash ./scripts/check-release-environment diff --git a/.release-please-manifest.json b/.release-please-manifest.json new file mode 100644 index 0000000..c476280 --- /dev/null +++ b/.release-please-manifest.json @@ -0,0 +1,3 @@ +{ + ".": "0.0.1-alpha.0" +} \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 266314e..d911ce8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -34,7 +34,7 @@ To use a local version of this library from source in another project, edit the directive. This can be done through the CLI with the following: ```bash -go mod edit -replace github.com/stainless-sdks/farquest-go=/path/to/farquest-go +go mod edit -replace github.com/FarquestSocial/farquest-go=/path/to/farquest-go ``` ## Running tests diff --git a/README.md b/README.md index 37e8720..751f01d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Farquest Go API Library -Go Reference +Go Reference The Farquest Go library provides convenient access to [the Farquest REST API](https://docs.farquest.com) from applications written in Go. The full API of this library can be found in [api.md](api.md). @@ -9,18 +9,26 @@ It is generated with [Stainless](https://www.stainlessapi.com/). ## Installation + + ```go import ( - "github.com/stainless-sdks/farquest-go" // imported as farquest + "github.com/FarquestSocial/farquest-go" // imported as farquest ) ``` + + Or to pin the version: + + ```sh -go get -u 'github.com/stainless-sdks/farquest-go@v0.0.1-alpha.0' +go get -u 'github.com/FarquestSocial/farquest-go@v0.0.1-alpha.0' ``` + + ## Requirements This library requires Go 1.18+. @@ -35,7 +43,7 @@ package main import ( "context" - "github.com/stainless-sdks/farquest-go" + "github.com/FarquestSocial/farquest-go" ) func main() { @@ -144,7 +152,7 @@ client.Organizations.New(context.TODO(), ..., ) ``` -See the [full list of request options](https://pkg.go.dev/github.com/stainless-sdks/farquest-go/option). +See the [full list of request options](https://pkg.go.dev/github.com/FarquestSocial/farquest-go/option). ### Pagination @@ -340,4 +348,4 @@ This package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) con We take backwards-compatibility seriously and work hard to ensure you can rely on a smooth upgrade experience. -We are keen for your feedback; please open an [issue](https://www.github.com/stainless-sdks/farquest/farquest-go/issues) with questions, bugs, or suggestions. +We are keen for your feedback; please open an [issue](https://www.github.com/FarquestSocial/farquest-go/issues) with questions, bugs, or suggestions. diff --git a/aliases.go b/aliases.go index bd7b9ee..9888bc7 100644 --- a/aliases.go +++ b/aliases.go @@ -3,7 +3,7 @@ package farquest import ( - "github.com/stainless-sdks/farquest-go/internal/apierror" + "github.com/FarquestSocial/farquest-go/internal/apierror" ) type Error = apierror.Error diff --git a/api.md b/api.md index 1e4206c..52aa0af 100644 --- a/api.md +++ b/api.md @@ -2,49 +2,49 @@ Methods: -- client.Organizations.New(ctx context.Context, body farquest.OrganizationNewParams) error +- client.Organizations.New(ctx context.Context, body farquest.OrganizationNewParams) error # Session Methods: -- client.Session.NewCorrelated(ctx context.Context, params farquest.SessionNewCorrelatedParams) error +- client.Session.NewCorrelated(ctx context.Context, params farquest.SessionNewCorrelatedParams) error # Auth Methods: -- client.Auth.Callback(ctx context.Context, body farquest.AuthCallbackParams) error -- client.Auth.GetState(ctx context.Context, state string) error +- client.Auth.Callback(ctx context.Context, body farquest.AuthCallbackParams) error +- client.Auth.GetState(ctx context.Context, state string) error # Quest Methods: -- client.Quest.New(ctx context.Context, body farquest.QuestNewParams) error -- client.Quest.Get(ctx context.Context, id string) error -- client.Quest.List(ctx context.Context, filter farquest.QuestListParamsFilter) error +- client.Quest.New(ctx context.Context, body farquest.QuestNewParams) error +- client.Quest.Get(ctx context.Context, id string) error +- client.Quest.List(ctx context.Context, filter farquest.QuestListParamsFilter) error ## Types Methods: -- client.Quest.Types.List(ctx context.Context) error +- client.Quest.Types.List(ctx context.Context) error ## Completions Methods: -- client.Quest.Completions.Count(ctx context.Context, id string) error +- client.Quest.Completions.Count(ctx context.Context, id string) error ## Validation Methods: -- client.Quest.Validation.Get(ctx context.Context, id string) error +- client.Quest.Validation.Get(ctx context.Context, id string) error # Quests Methods: -- client.Quests.Complete(ctx context.Context, body farquest.QuestCompleteParams) error +- client.Quests.Complete(ctx context.Context, body farquest.QuestCompleteParams) error diff --git a/auth.go b/auth.go index 26a1532..9aaa875 100644 --- a/auth.go +++ b/auth.go @@ -7,10 +7,10 @@ import ( "fmt" "net/http" - "github.com/stainless-sdks/farquest-go/internal/apijson" - "github.com/stainless-sdks/farquest-go/internal/param" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go/internal/apijson" + "github.com/FarquestSocial/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/option" ) // AuthService contains methods and other services that help with interacting with diff --git a/auth_test.go b/auth_test.go index 8f877a1..0b44634 100644 --- a/auth_test.go +++ b/auth_test.go @@ -8,9 +8,9 @@ import ( "os" "testing" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal/testutil" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal/testutil" + "github.com/FarquestSocial/farquest-go/option" ) func TestAuthCallback(t *testing.T) { diff --git a/client.go b/client.go index ae9d06e..14e3826 100644 --- a/client.go +++ b/client.go @@ -6,8 +6,8 @@ import ( "context" "net/http" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/option" ) // Client creates a struct with services and top level methods that help with diff --git a/client_test.go b/client_test.go index bec3c61..bb3291f 100644 --- a/client_test.go +++ b/client_test.go @@ -9,9 +9,9 @@ import ( "testing" "time" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal" + "github.com/FarquestSocial/farquest-go/option" ) type closureTransport struct { diff --git a/field.go b/field.go index e547c33..5d9f480 100644 --- a/field.go +++ b/field.go @@ -1,7 +1,7 @@ package farquest import ( - "github.com/stainless-sdks/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/param" "io" ) @@ -9,7 +9,7 @@ import ( // This helps specify null, zero values, and overrides, as well as normal values. // You can read more about this in our [README]. // -// [README]: https://pkg.go.dev/github.com/stainless-sdks/farquest-go#readme-request-fields +// [README]: https://pkg.go.dev/github.com/FarquestSocial/farquest-go#readme-request-fields func F[T any](value T) param.Field[T] { return param.Field[T]{Value: value, Present: true} } // Null is a param field helper which explicitly sends null to the API. diff --git a/go.mod b/go.mod index 441ea93..8cb8be5 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/stainless-sdks/farquest-go +module github.com/FarquestSocial/farquest-go go 1.19 diff --git a/internal/apierror/apierror.go b/internal/apierror/apierror.go index 5c4a028..528e2e8 100644 --- a/internal/apierror/apierror.go +++ b/internal/apierror/apierror.go @@ -8,7 +8,7 @@ import ( "net/http" "net/http/httputil" - "github.com/stainless-sdks/farquest-go/internal/apijson" + "github.com/FarquestSocial/farquest-go/internal/apijson" ) // Error represents an error that originates from the API, i.e. when a request is diff --git a/internal/apiform/encoder.go b/internal/apiform/encoder.go index 4889af0..1c71f5d 100644 --- a/internal/apiform/encoder.go +++ b/internal/apiform/encoder.go @@ -13,7 +13,7 @@ import ( "sync" "time" - "github.com/stainless-sdks/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/param" ) var encoders sync.Map // map[encoderEntry]encoderFunc diff --git a/internal/apijson/encoder.go b/internal/apijson/encoder.go index 68d391b..2069e10 100644 --- a/internal/apijson/encoder.go +++ b/internal/apijson/encoder.go @@ -12,7 +12,7 @@ import ( "github.com/tidwall/sjson" - "github.com/stainless-sdks/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/param" ) var encoders sync.Map // map[encoderEntry]encoderFunc diff --git a/internal/apijson/field_test.go b/internal/apijson/field_test.go index dd0a30f..f96c819 100644 --- a/internal/apijson/field_test.go +++ b/internal/apijson/field_test.go @@ -4,7 +4,7 @@ import ( "testing" "time" - "github.com/stainless-sdks/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/param" ) type Struct struct { diff --git a/internal/apiquery/encoder.go b/internal/apiquery/encoder.go index 1d7978c..bf61dc3 100644 --- a/internal/apiquery/encoder.go +++ b/internal/apiquery/encoder.go @@ -9,7 +9,7 @@ import ( "sync" "time" - "github.com/stainless-sdks/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/param" ) var encoders sync.Map // map[reflect.Type]encoderFunc diff --git a/internal/requestconfig/requestconfig.go b/internal/requestconfig/requestconfig.go index b0f2910..af008b1 100644 --- a/internal/requestconfig/requestconfig.go +++ b/internal/requestconfig/requestconfig.go @@ -17,10 +17,10 @@ import ( "strings" "time" - "github.com/stainless-sdks/farquest-go/internal" - "github.com/stainless-sdks/farquest-go/internal/apierror" - "github.com/stainless-sdks/farquest-go/internal/apiform" - "github.com/stainless-sdks/farquest-go/internal/apiquery" + "github.com/FarquestSocial/farquest-go/internal" + "github.com/FarquestSocial/farquest-go/internal/apierror" + "github.com/FarquestSocial/farquest-go/internal/apiform" + "github.com/FarquestSocial/farquest-go/internal/apiquery" ) func getDefaultHeaders() map[string]string { diff --git a/internal/version.go b/internal/version.go index 1e49ee4..4ff68e4 100644 --- a/internal/version.go +++ b/internal/version.go @@ -2,4 +2,4 @@ package internal -const PackageVersion = "0.0.1-alpha.0" +const PackageVersion = "0.0.1-alpha.0" // x-release-please-version diff --git a/option/requestoption.go b/option/requestoption.go index 199fe8c..1988ab6 100644 --- a/option/requestoption.go +++ b/option/requestoption.go @@ -11,7 +11,7 @@ import ( "net/url" "time" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" "github.com/tidwall/sjson" ) @@ -19,7 +19,7 @@ import ( // which can be supplied to clients, services, and methods. You can read more about this functional // options pattern in our [README]. // -// [README]: https://pkg.go.dev/github.com/stainless-sdks/farquest-go#readme-requestoptions +// [README]: https://pkg.go.dev/github.com/FarquestSocial/farquest-go#readme-requestoptions type RequestOption = func(*requestconfig.RequestConfig) error // WithBaseURL returns a RequestOption that sets the BaseURL for the client. diff --git a/organization.go b/organization.go index 7894011..8b9f468 100644 --- a/organization.go +++ b/organization.go @@ -6,10 +6,10 @@ import ( "context" "net/http" - "github.com/stainless-sdks/farquest-go/internal/apijson" - "github.com/stainless-sdks/farquest-go/internal/param" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go/internal/apijson" + "github.com/FarquestSocial/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/option" ) // OrganizationService contains methods and other services that help with diff --git a/organization_test.go b/organization_test.go index 01df518..eef22cd 100644 --- a/organization_test.go +++ b/organization_test.go @@ -8,9 +8,9 @@ import ( "os" "testing" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal/testutil" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal/testutil" + "github.com/FarquestSocial/farquest-go/option" ) func TestOrganizationNew(t *testing.T) { diff --git a/quest.go b/quest.go index c819f8c..a4588dc 100644 --- a/quest.go +++ b/quest.go @@ -8,10 +8,10 @@ import ( "net/http" "time" - "github.com/stainless-sdks/farquest-go/internal/apijson" - "github.com/stainless-sdks/farquest-go/internal/param" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go/internal/apijson" + "github.com/FarquestSocial/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/option" ) // QuestService contains methods and other services that help with interacting with diff --git a/quest_test.go b/quest_test.go index 78c3eef..4b69635 100644 --- a/quest_test.go +++ b/quest_test.go @@ -9,9 +9,9 @@ import ( "testing" "time" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal/testutil" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal/testutil" + "github.com/FarquestSocial/farquest-go/option" ) func TestQuestNewWithOptionalParams(t *testing.T) { diff --git a/questcompletion.go b/questcompletion.go index 5a4168b..e6f6e8a 100644 --- a/questcompletion.go +++ b/questcompletion.go @@ -7,8 +7,8 @@ import ( "fmt" "net/http" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/option" ) // QuestCompletionService contains methods and other services that help with diff --git a/questcompletion_test.go b/questcompletion_test.go index 455f777..8ad0e08 100644 --- a/questcompletion_test.go +++ b/questcompletion_test.go @@ -8,9 +8,9 @@ import ( "os" "testing" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal/testutil" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal/testutil" + "github.com/FarquestSocial/farquest-go/option" ) func TestQuestCompletionCount(t *testing.T) { diff --git a/questtype.go b/questtype.go index e472a4c..efe3adb 100644 --- a/questtype.go +++ b/questtype.go @@ -6,8 +6,8 @@ import ( "context" "net/http" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/option" ) // QuestTypeService contains methods and other services that help with interacting diff --git a/questtype_test.go b/questtype_test.go index ad7a0ae..f06ebdb 100644 --- a/questtype_test.go +++ b/questtype_test.go @@ -8,9 +8,9 @@ import ( "os" "testing" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal/testutil" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal/testutil" + "github.com/FarquestSocial/farquest-go/option" ) func TestQuestTypeList(t *testing.T) { diff --git a/questvalidation.go b/questvalidation.go index b894719..28d9fa6 100644 --- a/questvalidation.go +++ b/questvalidation.go @@ -7,8 +7,8 @@ import ( "fmt" "net/http" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/option" ) // QuestValidationService contains methods and other services that help with diff --git a/questvalidation_test.go b/questvalidation_test.go index 6224969..1d484b4 100644 --- a/questvalidation_test.go +++ b/questvalidation_test.go @@ -8,9 +8,9 @@ import ( "os" "testing" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal/testutil" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal/testutil" + "github.com/FarquestSocial/farquest-go/option" ) func TestQuestValidationGet(t *testing.T) { diff --git a/release-please-config.json b/release-please-config.json new file mode 100644 index 0000000..a38198e --- /dev/null +++ b/release-please-config.json @@ -0,0 +1,67 @@ +{ + "packages": { + ".": {} + }, + "$schema": "https://raw.githubusercontent.com/stainless-api/release-please/main/schemas/config.json", + "include-v-in-tag": true, + "include-component-in-tag": false, + "versioning": "prerelease", + "prerelease": true, + "bump-minor-pre-major": true, + "bump-patch-for-minor-pre-major": false, + "pull-request-header": "Automated Release PR", + "pull-request-title-pattern": "release: ${version}", + "changelog-sections": [ + { + "type": "feat", + "section": "Features" + }, + { + "type": "fix", + "section": "Bug Fixes" + }, + { + "type": "perf", + "section": "Performance Improvements" + }, + { + "type": "revert", + "section": "Reverts" + }, + { + "type": "chore", + "section": "Chores" + }, + { + "type": "docs", + "section": "Documentation" + }, + { + "type": "style", + "section": "Styles" + }, + { + "type": "refactor", + "section": "Refactors" + }, + { + "type": "test", + "section": "Tests", + "hidden": true + }, + { + "type": "build", + "section": "Build System" + }, + { + "type": "ci", + "section": "Continuous Integration", + "hidden": true + } + ], + "release-type": "go", + "extra-files": [ + "internal/version.go", + "README.md" + ] +} \ No newline at end of file diff --git a/scripts/check-release-environment b/scripts/check-release-environment new file mode 100644 index 0000000..6ef15a5 --- /dev/null +++ b/scripts/check-release-environment @@ -0,0 +1,28 @@ +#!/usr/bin/env bash + +warnings=() +errors=() + +lenWarnings=${#warnings[@]} + +if [[ lenWarnings -gt 0 ]]; then + echo -e "Found the following warnings in the release environment:\n" + + for warning in "${warnings[@]}"; do + echo -e "- $warning\n" + done +fi + +lenErrors=${#errors[@]} + +if [[ lenErrors -gt 0 ]]; then + echo -e "Found the following errors in the release environment:\n" + + for error in "${errors[@]}"; do + echo -e "- $error\n" + done + + exit 1 +fi + +echo "The environment is ready to push releases!" diff --git a/session.go b/session.go index dbceb81..7decbcb 100644 --- a/session.go +++ b/session.go @@ -7,10 +7,10 @@ import ( "fmt" "net/http" - "github.com/stainless-sdks/farquest-go/internal/apijson" - "github.com/stainless-sdks/farquest-go/internal/param" - "github.com/stainless-sdks/farquest-go/internal/requestconfig" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go/internal/apijson" + "github.com/FarquestSocial/farquest-go/internal/param" + "github.com/FarquestSocial/farquest-go/internal/requestconfig" + "github.com/FarquestSocial/farquest-go/option" ) // SessionService contains methods and other services that help with interacting diff --git a/session_test.go b/session_test.go index 1beed21..e2c73ab 100644 --- a/session_test.go +++ b/session_test.go @@ -8,9 +8,9 @@ import ( "os" "testing" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal/testutil" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal/testutil" + "github.com/FarquestSocial/farquest-go/option" ) func TestSessionNewCorrelated(t *testing.T) { diff --git a/usage_test.go b/usage_test.go index 19a8ad1..e46b529 100644 --- a/usage_test.go +++ b/usage_test.go @@ -7,9 +7,9 @@ import ( "os" "testing" - "github.com/stainless-sdks/farquest-go" - "github.com/stainless-sdks/farquest-go/internal/testutil" - "github.com/stainless-sdks/farquest-go/option" + "github.com/FarquestSocial/farquest-go" + "github.com/FarquestSocial/farquest-go/internal/testutil" + "github.com/FarquestSocial/farquest-go/option" ) func TestUsage(t *testing.T) {