mirror of
https://github.com/coder/coder.git
synced 2026-09-24 15:04:27 +08:00
feat: add --experiments flag to replace --experimental (#5767)
- Deprecates the --experimental flag - Adds a new flag --experiments which supports passing multiple comma-separated values or a wildcard value. - Exposes a new endpoint /api/v2/experiments that returns the list of enabled experiments. - Deprecates the field Features.Experimental in favour of this new API. - Updates apidocgen to support type aliases (shoutout to @mtojek). - Modifies apitypings to support generating slice types. - Updates develop.sh to pass additional args after -- to $CODERD_SHIM.
This commit is contained in:
@@ -288,7 +288,7 @@ func (g *Generator) generateOne(m *Maps, obj types.Object) error {
|
||||
// type <Name> string
|
||||
// These are enums. Store to expand later.
|
||||
m.Enums[obj.Name()] = obj
|
||||
case *types.Map:
|
||||
case *types.Map, *types.Array, *types.Slice:
|
||||
// Declared maps that are not structs are still valid codersdk objects.
|
||||
// Handle them custom by calling 'typescriptType' directly instead of
|
||||
// iterating through each struct field.
|
||||
@@ -308,8 +308,6 @@ func (g *Generator) generateOne(m *Maps, obj types.Object) error {
|
||||
// Use similar output syntax to enums.
|
||||
str.WriteString(fmt.Sprintf("export type %s = %s\n", obj.Name(), ts.ValueType))
|
||||
m.Structs[obj.Name()] = str.String()
|
||||
case *types.Array, *types.Slice:
|
||||
// TODO: @emyrk if you need this, follow the same design as "*types.Map" case.
|
||||
case *types.Interface:
|
||||
// Interfaces are used as generics. Non-generic interfaces are
|
||||
// not supported.
|
||||
|
||||
+1
@@ -1,6 +1,7 @@
|
||||
package enums
|
||||
|
||||
type Enum string
|
||||
type Enums []Enum
|
||||
|
||||
const (
|
||||
EnumFoo Enum = "foo"
|
||||
|
||||
+3
@@ -1,5 +1,8 @@
|
||||
// Code generated by 'make site/src/api/typesGenerated.ts'. DO NOT EDIT.
|
||||
|
||||
// From codersdk/enums.go
|
||||
export type Enums = Enum[]
|
||||
|
||||
// From codersdk/enums.go
|
||||
export type Enum = "bar" | "baz" | "foo" | "qux"
|
||||
export const Enums: Enum[] = ["bar", "baz", "foo", "qux"]
|
||||
|
||||
Reference in New Issue
Block a user