Skip to navigation

1.70.11

(fix): XML-encoded (TwiML) types are generated one file per type (e.g. twimlvoice/say.go with its say_test.go) instead of all into the package’s types.go, which grew to tens of thousands of lines for TwiML. Same package and public API; a type whose file name would collide with a file the generator writes for other purposes (types.go, client.go, doc.go, *_test.go, …) stays in types.go.

1.70.10

(fix): Generated SDKs now use reflect.Pointer instead of the deprecated reflect.Ptr alias, so go vet and golangci-lint on Go 1.26+ no longer report “Constant reflect.Ptr should be inlined”. No behavior change: reflect.Pointer has been available since Go 1.18, which generated SDKs already require (they use generics).

1.70.9

(fix): Add the xmlTextFirstBuilders option (default false) for XML-encoded (TwiML) types. When enabled, child builders take the element’s text first and functional options for its attributes — r.Say("hi", twimlvoice.WithSayVoice("alice"), twimlvoice.WithSayLoop(2)), r.Pause(twimlvoice.WithPauseLength(1)) — and the typed variant moves to AddSay(&Say{...}). Every XML type gets a <Type>Option func type and one With<Type><Attribute>(value) option per attribute, so pointer-typed optional attributes no longer need api.String(...)/&v. Also adds a generic Ptr[T any](v T) *T helper next to the existing typed pointer helpers.