diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 65a2b6f..7b7f1c5 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.1.0-alpha.72" + ".": "0.1.0-alpha.73" } diff --git a/.stats.yml b/.stats.yml index 1ef41a0..fc492ed 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ -configured_endpoints: 21 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/stainless%2Fstainless-v0-acfed4185515b0f9bfdb9b080df219b3bea1069daeb722d589564aa7d8eb32e6.yml -openapi_spec_hash: 0fb1197c07e1f354f33d96c384e3ca3b -config_hash: eea7be44f19f72b6b9ae93f47dd63f79 +configured_endpoints: 22 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/stainless%2Fstainless-v0-c05bce23f6a3478a1803494b2c627e0bbf73917a849756eddc42f4607e167c6b.yml +openapi_spec_hash: b9eb999620220d15b176f815f21a67ba +config_hash: 977c436868252591d86546b2127ab8ce diff --git a/CHANGELOG.md b/CHANGELOG.md index f0c8a30..ae0b65f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,24 @@ # Changelog +## 0.1.0-alpha.73 (2026-02-20) + +Full Changelog: [v0.1.0-alpha.72...v0.1.0-alpha.73](https://github.com/stainless-api/stainless-api-cli/compare/v0.1.0-alpha.72...v0.1.0-alpha.73) + +### Features + +* **api:** add a super basic GET /v0/user endpoint ([84c3559](https://github.com/stainless-api/stainless-api-cli/commit/84c3559be8e2d3a322db4f72a4f77ffeee030d8c)) +* **api:** manual updates ([81595c3](https://github.com/stainless-api/stainless-api-cli/commit/81595c30b3f24ae68951ad66c05a20a556395902)) +* **api:** manual updates ([2aa45b8](https://github.com/stainless-api/stainless-api-cli/commit/2aa45b852b865f4af42b47d430e67dd1f6c45809)) +* **api:** manual updates ([a3ab921](https://github.com/stainless-api/stainless-api-cli/commit/a3ab921d6ed19120d0a7f0a37574c3476f9282a7)) +* make --wait configurable with error handling ([53bffdf](https://github.com/stainless-api/stainless-api-cli/commit/53bffdf8c25250bc35e3747a87c3db536abcb388)) +* make --wait configurable with error handling ([#171](https://github.com/stainless-api/stainless-api-cli/issues/171)) ([b02c3e3](https://github.com/stainless-api/stainless-api-cli/commit/b02c3e38c0b8e2b6465a3edce475207e383ea4da)) + + +### Chores + +* **internal:** remove mock server code ([6040746](https://github.com/stainless-api/stainless-api-cli/commit/60407467a68e98b08f9920479b3e012b45023690)) +* update mock server docs ([7b64f39](https://github.com/stainless-api/stainless-api-cli/commit/7b64f39fb5bede6621a07f6307d0a976073ab71e)) + ## 0.1.0-alpha.72 (2026-02-17) Full Changelog: [v0.1.0-alpha.71...v0.1.0-alpha.72](https://github.com/stainless-api/stainless-api-cli/compare/v0.1.0-alpha.71...v0.1.0-alpha.72) diff --git a/go.mod b/go.mod index a83fc30..0df9359 100644 --- a/go.mod +++ b/go.mod @@ -15,13 +15,14 @@ require ( github.com/logrusorgru/aurora/v4 v4.0.0 github.com/muesli/reflow v0.3.0 github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c - github.com/stainless-api/stainless-api-go v0.27.1 + github.com/stainless-api/stainless-api-go v0.29.0 github.com/stretchr/testify v1.11.1 github.com/tidwall/gjson v1.18.0 github.com/tidwall/pretty v1.2.1 github.com/tidwall/sjson v1.2.5 github.com/urfave/cli-docs/v3 v3.1.0 github.com/urfave/cli/v3 v3.6.2 + golang.org/x/mod v0.32.0 golang.org/x/sys v0.40.0 golang.org/x/term v0.39.0 golang.org/x/text v0.33.0 @@ -62,7 +63,6 @@ require ( github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect github.com/yuin/goldmark v1.7.16 // indirect github.com/yuin/goldmark-emoji v1.0.6 // indirect - golang.org/x/mod v0.32.0 // indirect golang.org/x/net v0.49.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index 46af09d..59a95c9 100644 --- a/go.sum +++ b/go.sum @@ -107,8 +107,8 @@ github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/stainless-api/stainless-api-go v0.27.1 h1:HozHUev0ZLIHUKL/ttw9fWl5zGSNosYbsmT2JGxdT7c= -github.com/stainless-api/stainless-api-go v0.27.1/go.mod h1:vssVkp6bgBKxXtnvHVnQvGNMHbn36zdkz80NMHIgXKM= +github.com/stainless-api/stainless-api-go v0.29.0 h1:j86SAGkNZmLrm6M/LAZiPw2FiP3pVqnoC4yMQ3X4Lxc= +github.com/stainless-api/stainless-api-go v0.29.0/go.mod h1:vssVkp6bgBKxXtnvHVnQvGNMHbn36zdkz80NMHIgXKM= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= github.com/tidwall/gjson v1.14.2/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= diff --git a/pkg/cmd/build_test.go b/pkg/cmd/build_test.go index c15d734..511b9ae 100644 --- a/pkg/cmd/build_test.go +++ b/pkg/cmd/build_test.go @@ -10,7 +10,6 @@ import ( ) func TestBuildsCreate(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "builds", "create", @@ -55,7 +54,6 @@ func TestBuildsCreate(t *testing.T) { } func TestBuildsRetrieve(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "builds", "retrieve", @@ -64,7 +62,6 @@ func TestBuildsRetrieve(t *testing.T) { } func TestBuildsList(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "builds", "list", @@ -77,7 +74,6 @@ func TestBuildsList(t *testing.T) { } func TestBuildsCompare(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "builds", "compare", diff --git a/pkg/cmd/builddiagnostic_test.go b/pkg/cmd/builddiagnostic_test.go index 85ab3a9..388d8d0 100644 --- a/pkg/cmd/builddiagnostic_test.go +++ b/pkg/cmd/builddiagnostic_test.go @@ -9,7 +9,6 @@ import ( ) func TestBuildsDiagnosticsList(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "builds:diagnostics", "list", diff --git a/pkg/cmd/buildtargetoutput_test.go b/pkg/cmd/buildtargetoutput_test.go index 089d742..b3c5623 100644 --- a/pkg/cmd/buildtargetoutput_test.go +++ b/pkg/cmd/buildtargetoutput_test.go @@ -9,7 +9,6 @@ import ( ) func TestBuildsTargetOutputsRetrieve(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "builds:target-outputs", "retrieve", diff --git a/pkg/cmd/cmd.go b/pkg/cmd/cmd.go index 2c6bf7c..90f6bf9 100644 --- a/pkg/cmd/cmd.go +++ b/pkg/cmd/cmd.go @@ -176,6 +176,14 @@ stl builds create --branch `, &lintCommand, + { + Name: "user", + Category: "API RESOURCE", + Suggest: true, + Commands: []*cli.Command{ + &userRetrieve, + }, + }, { Name: "@manpages", Usage: "Generate documentation for 'man'", diff --git a/pkg/cmd/org_test.go b/pkg/cmd/org_test.go index 3b2a552..fc9fb55 100644 --- a/pkg/cmd/org_test.go +++ b/pkg/cmd/org_test.go @@ -9,7 +9,6 @@ import ( ) func TestOrgsRetrieve(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "orgs", "retrieve", @@ -18,7 +17,6 @@ func TestOrgsRetrieve(t *testing.T) { } func TestOrgsList(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "orgs", "list", diff --git a/pkg/cmd/project_test.go b/pkg/cmd/project_test.go index a0e73ce..5d5b540 100644 --- a/pkg/cmd/project_test.go +++ b/pkg/cmd/project_test.go @@ -9,7 +9,6 @@ import ( ) func TestProjectsCreate(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects", "create", @@ -22,7 +21,6 @@ func TestProjectsCreate(t *testing.T) { } func TestProjectsRetrieve(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects", "retrieve", @@ -31,7 +29,6 @@ func TestProjectsRetrieve(t *testing.T) { } func TestProjectsUpdate(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects", "update", @@ -41,7 +38,6 @@ func TestProjectsUpdate(t *testing.T) { } func TestProjectsList(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects", "list", @@ -52,7 +48,6 @@ func TestProjectsList(t *testing.T) { } func TestProjectsGenerateCommitMessage(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects", "generate-commit-message", diff --git a/pkg/cmd/projectbranch_test.go b/pkg/cmd/projectbranch_test.go index 48e306d..a223043 100644 --- a/pkg/cmd/projectbranch_test.go +++ b/pkg/cmd/projectbranch_test.go @@ -9,7 +9,6 @@ import ( ) func TestProjectsBranchesCreate(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects:branches", "create", @@ -21,7 +20,6 @@ func TestProjectsBranchesCreate(t *testing.T) { } func TestProjectsBranchesRetrieve(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects:branches", "retrieve", @@ -31,7 +29,6 @@ func TestProjectsBranchesRetrieve(t *testing.T) { } func TestProjectsBranchesList(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects:branches", "list", @@ -42,7 +39,6 @@ func TestProjectsBranchesList(t *testing.T) { } func TestProjectsBranchesDelete(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects:branches", "delete", @@ -52,7 +48,6 @@ func TestProjectsBranchesDelete(t *testing.T) { } func TestProjectsBranchesRebase(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects:branches", "rebase", @@ -63,7 +58,6 @@ func TestProjectsBranchesRebase(t *testing.T) { } func TestProjectsBranchesReset(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects:branches", "reset", diff --git a/pkg/cmd/projectconfig_test.go b/pkg/cmd/projectconfig_test.go index d4a8002..d63250f 100644 --- a/pkg/cmd/projectconfig_test.go +++ b/pkg/cmd/projectconfig_test.go @@ -9,7 +9,6 @@ import ( ) func TestProjectsConfigsRetrieve(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects:configs", "retrieve", @@ -20,7 +19,6 @@ func TestProjectsConfigsRetrieve(t *testing.T) { } func TestProjectsConfigsGuess(t *testing.T) { - t.Skip("Prism tests are disabled") mocktest.TestRunMockTestWithFlags( t, "projects:configs", "guess", diff --git a/pkg/cmd/user.go b/pkg/cmd/user.go new file mode 100644 index 0000000..1c9a49a --- /dev/null +++ b/pkg/cmd/user.go @@ -0,0 +1,56 @@ +// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. + +package cmd + +import ( + "context" + "fmt" + "os" + + "github.com/stainless-api/stainless-api-cli/internal/apiquery" + "github.com/stainless-api/stainless-api-go" + "github.com/stainless-api/stainless-api-go/option" + "github.com/tidwall/gjson" + "github.com/urfave/cli/v3" +) + +var userRetrieve = cli.Command{ + Name: "retrieve", + Usage: "Retrieve the currently authenticated user's information.", + Suggest: true, + Flags: []cli.Flag{}, + Action: handleUserRetrieve, + HideHelpCommand: true, +} + +func handleUserRetrieve(ctx context.Context, cmd *cli.Command) error { + client := stainless.NewClient(getDefaultRequestOptions(cmd)...) + unusedArgs := cmd.Args().Slice() + + if len(unusedArgs) > 0 { + return fmt.Errorf("Unexpected extra arguments: %v", unusedArgs) + } + + options, err := flagOptions( + cmd, + apiquery.NestedQueryFormatBrackets, + apiquery.ArrayQueryFormatComma, + EmptyBody, + false, + ) + if err != nil { + return err + } + + var res []byte + options = append(options, option.WithResponseBodyInto(&res)) + _, err = client.User.Get(ctx, options...) + if err != nil { + return err + } + + obj := gjson.ParseBytes(res) + format := cmd.Root().String("format") + transform := cmd.Root().String("transform") + return ShowJSON(os.Stdout, "user retrieve", obj, format, transform) +} diff --git a/pkg/cmd/user_test.go b/pkg/cmd/user_test.go new file mode 100644 index 0000000..af9b285 --- /dev/null +++ b/pkg/cmd/user_test.go @@ -0,0 +1,16 @@ +// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. + +package cmd + +import ( + "testing" + + "github.com/stainless-api/stainless-api-cli/internal/mocktest" +) + +func TestUserRetrieve(t *testing.T) { + mocktest.TestRunMockTestWithFlags( + t, + "user", "retrieve", + ) +} diff --git a/pkg/cmd/version.go b/pkg/cmd/version.go index d32800e..2b395e0 100644 --- a/pkg/cmd/version.go +++ b/pkg/cmd/version.go @@ -2,4 +2,4 @@ package cmd -const Version = "0.1.0-alpha.72" // x-release-please-version +const Version = "0.1.0-alpha.73" // x-release-please-version