diff --git a/coderd/apidoc/docs.go b/coderd/apidoc/docs.go index 7d33d7e4a5f62..e7830ef285836 100644 --- a/coderd/apidoc/docs.go +++ b/coderd/apidoc/docs.go @@ -7383,7 +7383,7 @@ const docTemplate = `{ }, { "type": "string", - "format": "uuid", + "format": "string", "description": "Key ID", "name": "keyid", "in": "path", @@ -7420,7 +7420,7 @@ const docTemplate = `{ }, { "type": "string", - "format": "uuid", + "format": "string", "description": "Key ID", "name": "keyid", "in": "path", diff --git a/coderd/apidoc/swagger.json b/coderd/apidoc/swagger.json index 9366380de0aa1..ecb04b352017a 100644 --- a/coderd/apidoc/swagger.json +++ b/coderd/apidoc/swagger.json @@ -6516,7 +6516,7 @@ }, { "type": "string", - "format": "uuid", + "format": "string", "description": "Key ID", "name": "keyid", "in": "path", @@ -6551,7 +6551,7 @@ }, { "type": "string", - "format": "uuid", + "format": "string", "description": "Key ID", "name": "keyid", "in": "path", diff --git a/coderd/apikey.go b/coderd/apikey.go index 895be440ef930..0bf2d6ca19a22 100644 --- a/coderd/apikey.go +++ b/coderd/apikey.go @@ -151,7 +151,7 @@ func (api *API) postAPIKey(rw http.ResponseWriter, r *http.Request) { // @Produce json // @Tags Users // @Param user path string true "User ID, name, or me" -// @Param keyid path string true "Key ID" format(uuid) +// @Param keyid path string true "Key ID" format(string) // @Success 200 {object} codersdk.APIKey // @Router /users/{user}/keys/{keyid} [get] func (api *API) apiKeyByID(rw http.ResponseWriter, r *http.Request) { @@ -292,7 +292,7 @@ func (api *API) tokens(rw http.ResponseWriter, r *http.Request) { // @Security CoderSessionToken // @Tags Users // @Param user path string true "User ID, name, or me" -// @Param keyid path string true "Key ID" format(uuid) +// @Param keyid path string true "Key ID" format(string) // @Success 204 // @Router /users/{user}/keys/{keyid} [delete] func (api *API) deleteAPIKey(rw http.ResponseWriter, r *http.Request) { diff --git a/coderd/coderdtest/coderdtest.go b/coderd/coderdtest/coderdtest.go index 0de5dbb710a0e..34ba84a85e33a 100644 --- a/coderd/coderdtest/coderdtest.go +++ b/coderd/coderdtest/coderdtest.go @@ -471,7 +471,7 @@ func NewOptions(t testing.TB, options *Options) (func(http.Handler), context.Can serverURL, err := url.Parse(srv.URL) require.NoError(t, err) - serverURL.Host = fmt.Sprintf("localhost:%d", tcpAddr.Port) + serverURL.Host = fmt.Sprintf("127.0.0.1:%d", tcpAddr.Port) derpPort, err := strconv.Atoi(serverURL.Port()) require.NoError(t, err) diff --git a/coderd/database/dbpurge/dbpurge_test.go b/coderd/database/dbpurge/dbpurge_test.go index 1d57a87e68f48..b3be0f82631c0 100644 --- a/coderd/database/dbpurge/dbpurge_test.go +++ b/coderd/database/dbpurge/dbpurge_test.go @@ -15,12 +15,14 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "go.uber.org/goleak" + "go.uber.org/mock/gomock" "cdr.dev/slog" "cdr.dev/slog/sloggers/slogtest" "github.com/coder/coder/v2/coderd/database" "github.com/coder/coder/v2/coderd/database/dbgen" + "github.com/coder/coder/v2/coderd/database/dbmock" "github.com/coder/coder/v2/coderd/database/dbpurge" "github.com/coder/coder/v2/coderd/database/dbrollup" "github.com/coder/coder/v2/coderd/database/dbtestutil" @@ -46,8 +48,9 @@ func TestPurge(t *testing.T) { // We want to make sure dbpurge is actually started so that this test is meaningful. clk := quartz.NewMock(t) done := awaitDoTick(ctx, t, clk) - db, _ := dbtestutil.NewDB(t) - purger := dbpurge.New(context.Background(), testutil.Logger(t), db, clk) + mDB := dbmock.NewMockStore(gomock.NewController(t)) + mDB.EXPECT().InTx(gomock.Any(), database.DefaultTXOptions().WithID("db_purge")).Return(nil).Times(2) + purger := dbpurge.New(context.Background(), testutil.Logger(t), mDB, clk) <-done // wait for doTick() to run. require.NoError(t, purger.Close()) } diff --git a/docs/install/uninstall.md b/docs/install/uninstall.md index 7a94b22b25f6c..c04bd6e9c2723 100644 --- a/docs/install/uninstall.md +++ b/docs/install/uninstall.md @@ -74,17 +74,17 @@ performing the following step or copying the directory to another location.
-## macOS +## Linux ```shell -rm -rf ~/Library/Application\ Support/coderv2 +rm -rf ~/.config/coderv2 +rm -rf ~/.cache/coder ``` -## Linux +## macOS ```shell -rm -rf ~/.config/coderv2 -rm -rf ~/.cache/coder +rm -rf ~/Library/Application\ Support/coderv2 ``` ## Windows diff --git a/docs/reference/api/users.md b/docs/reference/api/users.md index 43842fde6539b..bef79ddaad4e3 100644 --- a/docs/reference/api/users.md +++ b/docs/reference/api/users.md @@ -919,10 +919,10 @@ curl -X GET http://coder-server:8080/api/v2/users/{user}/keys/{keyid} \ ### Parameters -| Name | In | Type | Required | Description | -|---------|------|--------------|----------|----------------------| -| `user` | path | string | true | User ID, name, or me | -| `keyid` | path | string(uuid) | true | Key ID | +| Name | In | Type | Required | Description | +|---------|------|----------------|----------|----------------------| +| `user` | path | string | true | User ID, name, or me | +| `keyid` | path | string(string) | true | Key ID | ### Example responses @@ -965,10 +965,10 @@ curl -X DELETE http://coder-server:8080/api/v2/users/{user}/keys/{keyid} \ ### Parameters -| Name | In | Type | Required | Description | -|---------|------|--------------|----------|----------------------| -| `user` | path | string | true | User ID, name, or me | -| `keyid` | path | string(uuid) | true | Key ID | +| Name | In | Type | Required | Description | +|---------|------|----------------|----------|----------------------| +| `user` | path | string | true | User ID, name, or me | +| `keyid` | path | string(string) | true | Key ID | ### Responses diff --git a/dogfood/coder/main.tf b/dogfood/coder/main.tf index 8ec22dfb56351..e4ed874fd410f 100644 --- a/dogfood/coder/main.tf +++ b/dogfood/coder/main.tf @@ -333,7 +333,7 @@ module "vscode-web" { module "jetbrains" { count = data.coder_workspace.me.start_count source = "dev.registry.coder.com/coder/jetbrains/coder" - version = "1.0.2" + version = "1.0.3" agent_id = coder_agent.dev.id agent_name = "dev" folder = local.repo_dir @@ -358,7 +358,7 @@ module "coder-login" { module "cursor" { count = data.coder_workspace.me.start_count source = "dev.registry.coder.com/coder/cursor/coder" - version = "1.2.1" + version = "1.3.0" agent_id = coder_agent.dev.id folder = local.repo_dir } @@ -374,7 +374,7 @@ module "windsurf" { module "zed" { count = data.coder_workspace.me.start_count source = "dev.registry.coder.com/coder/zed/coder" - version = "1.0.1" + version = "1.1.0" agent_id = coder_agent.dev.id agent_name = "dev" folder = local.repo_dir diff --git a/enterprise/coderd/coderdenttest/coderdenttest.go b/enterprise/coderd/coderdenttest/coderdenttest.go index 9813b2c474e5f..c9986c97580e0 100644 --- a/enterprise/coderd/coderdenttest/coderdenttest.go +++ b/enterprise/coderd/coderdenttest/coderdenttest.go @@ -105,7 +105,7 @@ func NewWithAPI(t *testing.T, options *Options) ( AuditLogging: options.AuditLogging, BrowserOnly: options.BrowserOnly, SCIMAPIKey: options.SCIMAPIKey, - DERPServerRelayAddress: oop.AccessURL.String(), + DERPServerRelayAddress: serverURL.String(), DERPServerRegionID: oop.BaseDERPMap.RegionIDs()[0], ReplicaSyncUpdateInterval: options.ReplicaSyncUpdateInterval, ReplicaErrorGracePeriod: options.ReplicaErrorGracePeriod, diff --git a/enterprise/coderd/coderdenttest/proxytest.go b/enterprise/coderd/coderdenttest/proxytest.go index 5aaaf4a88a725..c4e5ed6019f61 100644 --- a/enterprise/coderd/coderdenttest/proxytest.go +++ b/enterprise/coderd/coderdenttest/proxytest.go @@ -109,7 +109,7 @@ func NewWorkspaceProxyReplica(t *testing.T, coderdAPI *coderd.API, owner *coders serverURL, err := url.Parse(srv.URL) require.NoError(t, err) - serverURL.Host = fmt.Sprintf("localhost:%d", tcpAddr.Port) + serverURL.Host = fmt.Sprintf("127.0.0.1:%d", tcpAddr.Port) accessURL := options.ProxyURL if accessURL == nil { diff --git a/enterprise/wsproxy/wsproxy_test.go b/enterprise/wsproxy/wsproxy_test.go index ab6ef7f992377..523d429476243 100644 --- a/enterprise/wsproxy/wsproxy_test.go +++ b/enterprise/wsproxy/wsproxy_test.go @@ -94,14 +94,8 @@ func TestDERPOnly(t *testing.T) { func TestDERP(t *testing.T) { t.Parallel() - deploymentValues := coderdtest.DeploymentValues(t) - deploymentValues.Experiments = []string{ - "*", - } - client, closer, api, user := coderdenttest.NewWithAPI(t, &coderdenttest.Options{ Options: &coderdtest.Options{ - DeploymentValues: deploymentValues, AppHostname: "*.primary.test.coder.com", IncludeProvisionerDaemon: true, RealIPConfig: &httpmw.RealIPConfig{ @@ -146,7 +140,7 @@ func TestDERP(t *testing.T) { }) require.NoError(t, err) - // Wait for both running proxies to become healthy. + // Wait for all three running proxies to become healthy. require.Eventually(t, func() bool { err := api.ProxyHealth.ForceUpdate(ctx) if !assert.NoError(t, err) { @@ -207,7 +201,7 @@ resourceLoop: require.NoError(t, err) // There should be three DERP regions in the map: the primary, and each - // of the two running proxies. Also the STUN-only regions. + // of the two DERP-enabled running proxies. Also the STUN-only regions. require.NotNil(t, connInfo.DERPMap) require.Len(t, connInfo.DERPMap.Regions, 3+len(api.DeploymentValues.DERP.Server.STUNAddresses.Value())) @@ -290,7 +284,7 @@ resourceLoop: t.Run(r.RegionName, func(t *testing.T) { t.Parallel() - ctx := testutil.Context(t, testutil.WaitShort) + ctx := testutil.Context(t, testutil.WaitLong) derpMap := &tailcfg.DERPMap{ Regions: map[int]*tailcfg.DERPRegion{