first pass at moving from v8 to v9 internally
MODIFY
VERSION
VERSION
-v9.0.2-alpha
+v9.0.2-alpha client/models as separate modules, otel updates, other breaking changes.
v8.2.1 Sort attributes list used in v8.2.0 to reduce diffs
@@ -11,7 +11,7 @@ v8.1.7: Fix for dynamo batch deletes when using common initialisms in composite
v8.1.6: Add dynamodb codegen support for batch deleting arrays of objects
v8.1.5: Fixed dynamodb codegen error involving fields marked with x-nullable
-su
+
v8.1.4: Add dynamodb codegen support for batch writing arrays of objects
v8.1.3: Support TS methods with a single hyphenated header variable

MODIFY
_hardcoded/tracing.go
_hardcoded/tracing.go
@@ -7,6 +7,7 @@ import (
"fmt"
"net/http"
"os"
+ "strconv"
"time"
"github.com/Clever/kayvee-go/v7/logger"
@@ -29,21 +30,7 @@ import (
var defaultCollectorHost string = "localhost"
var defaultCollectorPort uint16 = 4317
-// propagator to use.
-var propagator propagation.TextMapPropagator = propagation.TraceContext{} // traceparent header
func SetupGlobalTraceProviderAndExporter(ctx context.Context) (sdktrace.SpanExporter, *sdktrace.TracerProvider, error) {
- // samplingProbability := 0.01
- // isLocal := os.Getenv("_IS_LOCAL") == "true"
- // if isLocal {
- // samplingProbability = 1.0
- // } else if v := os.Getenv("TRACING_SAMPLING_PROBABILITY"); v != "" {
- // samplingProbabilityFromEnv, err := strconv.ParseFloat(v, 64)
- // if err != nil {
- // return nil, nil, fmt.Errorf("could not parse '%s' to float", v)
- // }
- // samplingProbability = samplingProbabilityFromEnv
- // }
- // fmt.Println("isLocal:", isLocal)
addr := fmt.Sprintf("%s:%d", defaultCollectorHost, defaultCollectorPort)
@@ -73,12 +60,25 @@ func SetupGlobalTraceProviderAndExporter(ctx context.Context) (sdktrace.SpanExpo
}
func newTracerProvider(exporter sdktrace.SpanExporter, resource *resource.Resource) *sdktrace.TracerProvider {
+ samplingProbability := 0.05
+ isLocal := os.Getenv("_IS_LOCAL") == "true"
+ if isLocal {
+ samplingProbability = 1.0
+ } else if v := os.Getenv("TRACING_SAMPLING_PROBABILITY"); v != "" {
+ samplingProbabilityFromEnv, err := strconv.ParseFloat(v, 64)
+ if err != nil {
+ samplingProbabilityFromEnv = 1
+ }
+ samplingProbability = samplingProbabilityFromEnv
+ }
+ fmt.Println("samplingProbability:", samplingProbability)
+
tp := sdktrace.NewTracerProvider(
// We use the default ID generator. In order for sampling to work (at least with this sampler)
// the ID generator must generate trace IDs uniformly at random from the entire space of uint64.
// For example, the default x-ray ID generator does not do this.
- sdktrace.WithSampler(sdktrace.AlwaysSample()),
- // sdktrace.WithSampler(sdktrace.ParentBased(sdktrace.TraceIDRatioBased(samplingProbability))),
+ // sdktrace.WithSampler(sdktrace.TraceIDRatioBased()),
+ sdktrace.WithSampler(sdktrace.ParentBased(sdktrace.TraceIDRatioBased(samplingProbability))),
// These maximums are to guard against something going wrong and sending a ton of data unexpectedly
sdktrace.WithSpanLimits(sdktrace.SpanLimits{
AttributeCountLimit: 100,
@@ -87,8 +87,8 @@ func newTracerProvider(exporter sdktrace.SpanExporter, resource *resource.Resour
}),
// Batcher is more efficient, switch to it after testing
- sdktrace.WithSyncer(exporter),
- // sdktrace.WithBatcher(exporter),
+ // sdktrace.WithSyncer(exporter),
+ sdktrace.WithBatcher(exporter),
sdktrace.WithResource(resource),
)
otel.SetTracerProvider(tp)
@@ -120,9 +120,7 @@ func MuxServerMiddleware(serviceName string) func(http.Handler) http.Handler {
// var carrier propagation.HeaderCarrier = propagation.HeaderCarrier{}
// otelmux has extracted the span. now put it into the ctx-specific logger
- // ctx := otel.GetTextMapPropagator().Extract(r.Context(), carrier)
- // testsc := trace.SpanFromContext(ctx).SpanContext()
- // spew.Dump(testsc)
+
s := trace.SpanFromContext(r.Context())
bag := baggage.FromContext(r.Context())
rid = bag.Member("X-Request-ID").Value()
@@ -142,27 +140,22 @@ func MuxServerMiddleware(serviceName string) func(http.Handler) http.Handler {
}
bag, err = bag.SetMember(member)
ctx := baggage.ContextWithBaggage(r.Context(), bag)
- r = r.Clone(ctx)
+ r = r.WithContext(ctx)
rw.Header().Add("X-Request-ID", rid)
logger.FromContext(r.Context()).AddContext("X-Request-ID", rid)
}
- // testctx := trace.ContextWithSpanContext(ctx, s.SpanContext())
- // r2 := r.Clone(testctx)
- // spew.Dump(r2.Header)
-
if sc := s.SpanContext(); sc.HasTraceID() {
spanID, traceID := sc.SpanID().String(), sc.TraceID().String()
- // fmt.Println("span/trace: ", spanID, " ", traceID)
// datadog converts hex strings to uint64 IDs, so log those so that correlating logs and traces works
if len(traceID) == 32 && len(spanID) == 16 { // opentelemetry format: 16 byte (32-char hex), 8 byte (16-char hex) trace and span ids
traceIDBs, _ := hex.DecodeString(traceID)
- logger.FromContext(r.Context()).AddContext("trace_id",
+ logger.FromContext(r.Context()).AddContext("dd.trace_id",
fmt.Sprintf("%d", binary.BigEndian.Uint64(traceIDBs[8:])))
spanIDBs, _ := hex.DecodeString(spanID)
- logger.FromContext(r.Context()).AddContext("span_id",
+ logger.FromContext(r.Context()).AddContext("dd.span_id",
fmt.Sprintf("%d", binary.BigEndian.Uint64(spanIDBs)))
}
}

MODIFY
clients/go/gengo.go
clients/go/gengo.go
@@ -226,8 +226,8 @@ func newTracerProvider(exporter sdktrace.SpanExporter, samplingProbability float
LinkCountLimit: 100,
}),
//Batcher is more efficient, switch to it after testing
- sdktrace.WithSyncer(exporter),
- //sdktrace.WithBatcher(exporter),
+ // sdktrace.WithSyncer(exporter),
+ sdktrace.WithBatcher(exporter),
sdktrace.WithResource(newResource()),
)

MODIFY
go.mod
go.mod
-module github.com/Clever/wag/v8
+module github.com/Clever/wag/v9
go 1.16

MODIFY
hardcoded/hardcoded.go
hardcoded/hardcoded.go
// sources:
// ../_hardcoded/doer.go (10.35kB)
// ../_hardcoded/middleware.go (1.685kB)
-// ../_hardcoded/tracing.go (7.182kB)
+// ../_hardcoded/tracing.go (6.71kB)
package hardcoded
@@ -111,7 +111,7 @@ func _hardcodedMiddlewareGo() (*asset, error) {
return a, nil
}
-var __hardcodedTracingGo = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x39\x5d\x6f\xdc\xb6\xb2\xcf\xd2\xaf\x98\x0a\x48\x2b\x05\xb2\x14\xa7\x69\x5a\xb8\xf0\x83\x63\x3b\xc9\xe2\xda\xae\x61\xbb\xb7\xf7\xe2\xe2\x22\xe0\x4a\xb3\x5a\x9e\x48\xa4\x0e\x49\xed\x07\x02\xff\xf7\x83\x21\x29\xad\x64\xef\xfa\xb4\x05\x8e\x1f\x16\xbb\xc3\x99\xe1\x7c\x7f\xd0\x2d\x2b\xbe\xb2\x0a\x41\xa3\x5a\xa1\x32\x8a\x15\x5c\x54\x61\xc8\x9b\x56\x2a\x03\x71\x18\x44\x85\x14\x06\x37\x26\x0a\x83\x08\x45\x21\x4b\x2e\xaa\x7c\xce\x05\x53\xdb\x09\x68\x89\x1b\xfa\xbd\x68\x2c\xa6\x40\x93\x2f\x8d\x69\xe9\xbb\xd4\xf4\x69\x78\x83\x51\x18\x06\x51\xc5\xcd\xb2\x9b\x67\x85\x6c\xf2\xf3\x1a\x57\xa8\xf2\xaf\x6c\xbb\x42\x3c\xaa\x64\xbe\xfa\x39\xaf\x65\x55\xa1\x22\xcc\x3c\x87\x31\x72\xc9\x56\x58\x54\xcb\xbc\x92\x47\xba\xc5\x75\x4e\x1f\xc4\xb8\x92\x99\x6c\x51\x18\xac\xb1\x41\xa3\xb6\x19\x97\x39\xc9\xac\xf8\x3c\xe7\x42\x1b\xd5\x35\x28\x0c\x33\x5c\x8a\x7c\xc4\xae\x92\x8a\xd7\x35\xcb\x9b\x6e\x93\x4b\x83\x75\xd3\x6d\x0e\x71\xa3\xe3\x97\xce\x72\x66\xe8\xb6\xce\xe0\x8b\x58\x73\x56\x55\xac\x7a\x19\x07\x37\x64\x77\x54\x3a\x97\xa6\x6e\xed\x07\xf9\xe4\xef\x11\xed\xbe\x55\xaa\x2d\x5e\x64\xd1\x2a\xd9\xb2\xca\x1a\xe9\x45\x3c\x5d\x7e\xcd\x15\x6a\xd9\x29\x2b\x93\x2e\xbf\x5a\xfe\xf0\x32\xc5\xbf\x57\x61\xc0\x72\x9f\x06\x35\x85\x91\xc6\xa6\x90\x62\xf5\x12\x77\x87\x91\xaf\x8e\xb3\xe3\xb7\xd9\x9b\x17\xef\xf0\x52\x24\x61\xb8\x62\x0a\x4a\x5c\xb0\xae\x36\xe7\xb2\xae\xb1\x30\x52\x7d\x96\xda\x80\x36\x8a\x8b\x0a\x4e\x21\xaa\x65\xc1\xea\xa5\x24\x31\xf6\x61\xdf\x52\x76\x74\x5c\x98\xe3\xf7\x70\x0a\xef\x7e\x3c\xfe\x39\x0c\xf3\x1c\x7a\x33\x4a\x05\x46\x42\xa7\x31\xb3\xd4\x23\xf0\xc8\xd0\xd9\x03\x6e\xcc\x35\x6b\x6f\x77\xa7\xa7\xd3\x73\x12\xf8\xdc\xa5\xdf\xb7\x47\xc8\x73\xb0\x2a\xb4\x4c\xa1\x30\xb0\x44\x56\xa2\x0a\x17\x9d\x28\xe0\x1e\x4d\xd7\x7e\xaa\xe5\x9c\xd5\x96\xe8\x56\xc9\x15\x2f\x51\x9d\x89\xf2\xd2\x07\x47\x5c\x98\x0d\xf8\x5c\xce\x3c\xd3\x04\xe2\xde\x83\xd9\x7d\xcb\x44\x8f\x9b\xc2\xeb\x01\x6e\xf9\xa9\x9e\x61\x0a\xa8\x94\x54\x09\x7c\xb3\xf9\xa9\x59\xd3\xd6\x5c\x54\xb7\x4a\xce\xd9\x9c\xd7\xdc\x6c\xe1\xe4\x14\xde\x64\x6f\x8e\xed\x39\xd7\x57\x64\x47\x82\x49\x9d\x7d\x42\x83\x62\x15\x47\x5f\x66\xf7\x5f\xae\x7e\x3b\x3f\xbb\x8a\x12\x38\x3d\x85\xc8\xa8\x8e\xa2\x83\xf0\x17\x03\xc9\xe1\x0b\x4e\xe1\x38\x7b\x63\x4f\x1f\x01\x6b\x8d\x44\xb5\x7a\x72\xc5\xc3\xdd\xd9\xf9\xec\xe6\xd3\x97\xfb\xb3\xeb\xdb\x2b\xfa\x72\x7b\xf7\xdb\x87\xb3\x0f\xb3\xab\xd9\xc3\xff\x46\xc9\xaf\xb0\x82\xef\x4e\x21\x8a\xfc\x2d\xc1\x9e\x6b\x3e\x2a\xd9\x5c\x8a\x95\x55\x98\x98\x6b\xa3\x28\xd2\xb2\x5b\xa6\x34\x7e\xac\x25\x33\xf1\x2a\x85\xf7\xef\x12\xc7\x81\x2f\x2c\xe2\x77\xa7\x20\x78\x2f\x7c\x10\x28\x34\x9d\x12\x04\x4a\xdd\xc7\xa2\x31\xd9\x25\x59\x70\x11\x47\x85\xec\xea\x12\x84\x34\xd0\x12\x4f\xf8\xe1\x95\xfe\x81\xc2\x66\x41\xcc\xa3\x14\x56\x9e\xf5\xe3\x41\x19\xe1\x74\x9f\x81\xbc\xe4\xce\x42\xf6\x93\x6e\xbd\x55\x5c\x98\x5a\xc4\x91\x37\xf0\x49\x94\xf6\xb6\x4e\xc2\x30\x60\x65\x69\xd5\x24\xd4\xfb\x96\x70\x17\x71\xf4\x4a\x9f\xbc\x2a\xa3\x74\x6f\xae\x3c\x87\x52\x4e\x24\xae\x6e\x5f\xae\x50\x6d\xe1\xf8\x27\xd0\x58\x48\x51\x6a\x58\xe3\x0f\x75\x0d\x46\x6d\x49\xc1\x42\x0a\x81\x85\xa1\xaf\x93\x4c\x85\xa2\x67\x05\xcc\x58\x3e\x66\x89\xfd\x35\x40\x19\x49\x69\x01\x72\x01\x43\x76\x9e\xd8\xd4\x23\xd4\x3f\x96\x28\x40\x75\x42\x50\x02\x73\x41\x89\x54\x76\x85\x25\x30\x4b\xae\x81\x6b\x60\xa0\x79\x89\x05\x53\x29\x30\x51\xc2\x7a\x44\x61\x59\x58\xae\xf5\x76\x84\xdf\x43\x7a\xbe\xb2\xc5\x41\xda\xa3\x41\xda\x2c\x0c\xa8\xd2\x9e\xd7\x9c\xf2\x92\x02\x71\x5c\x77\xb3\x1b\x5c\xbb\xa3\x38\x0c\x82\xe9\xd1\x1f\xdc\x2c\xef\xd0\xdb\x83\x4b\x71\x8b\x8a\xcb\x32\x3e\xfe\xe9\x35\xb5\xcb\xec\xde\x5a\x2f\x49\xf7\xd2\x5d\x8a\xb2\x95\x5c\x98\x98\x5c\x77\x00\x67\x26\x34\x16\x9d\xc2\x98\xce\x93\x30\xd0\x93\x24\xf7\x91\x3d\x90\x91\xa4\x54\x26\x52\xd8\xa9\xe3\x62\x70\x2f\xdd\x3f\x18\x56\xa8\x2c\x91\xff\x4a\x57\x0e\xe1\x30\xc8\x37\x3a\x1c\x60\x11\x0d\x07\x27\x79\xbe\x73\xe4\xf1\xbb\xb7\xef\x7f\xc9\x59\xcb\x5d\x9d\xd6\x51\x92\x50\x30\x3d\xcb\xab\x97\x73\xca\x56\x27\x28\x14\x32\x43\xfe\xea\x3b\xe3\x09\xbc\x5a\x45\x56\xf0\x24\x0c\x1e\xc3\x30\x30\x2d\x69\x20\x70\x3d\x2d\x6f\xf1\x54\x51\x81\xeb\x3b\xdf\xec\xe2\x24\x21\x2f\x63\x9d\xdd\xa3\x79\x42\x64\x5a\x92\xd4\x0d\x2e\x19\x65\x9f\x2f\xaf\x64\xcb\x24\x9b\x89\x85\xbc\x88\x23\x6d\x98\x22\x99\x8e\xac\x7a\x2a\x4a\xc1\x13\x5c\x93\x52\x11\x39\x11\xb5\x8e\x4e\x80\xbe\xa5\x61\xf0\x98\x84\xbd\xaa\x53\xa1\x4c\x6b\xf5\x0e\x1f\x43\x57\xfb\x9f\x2b\xd1\x6b\x0d\x07\x8a\x7b\xdf\xc0\xe1\x75\xff\x2d\xeb\xd5\x4c\x0e\x56\x7e\xb2\xbd\xb3\xda\x80\x70\xf3\xec\xe6\x30\xb0\xa9\x88\xd4\xfa\x26\xc9\x3b\xbb\x80\x0a\x05\x2a\xea\x72\x19\xcc\x04\x48\x45\x3c\x17\x52\x0d\x15\x8c\xca\xc1\x5a\xaa\xaf\x10\x33\x03\x35\x32\x6d\x60\xcd\xcd\xd2\x65\xa3\x45\x42\xf2\x5e\x5f\x16\xc6\x1c\xa1\xe9\xb4\xe9\x7f\xa2\xeb\x92\x30\xbb\xd0\xd0\x09\xbe\x90\xaa\xa9\xb7\xc0\x0c\x28\x26\x4a\xd9\xc0\x42\xc9\xc6\x72\x40\x61\xb8\x42\xb2\x6e\x81\x54\x54\xa8\x9d\xbf\x7f\x97\xb9\x2b\x3e\x4a\x05\xb8\xb1\xb7\xa6\x13\x4d\x36\x47\x8a\x6d\xa7\xb7\x97\x12\xb5\xad\xe3\xa5\xb4\xd2\x12\x8b\xc1\x48\x14\xf6\xf7\x4e\xfa\x5d\xb3\x3d\xab\xd7\x6c\xab\x1d\x38\x4e\x6c\xf2\x52\x96\xbd\x48\x73\x6b\xdb\xfe\x07\xa6\xb1\x8c\xa7\x3e\x9a\x5d\xdc\x51\x65\xf4\x47\xcf\x1b\x42\x32\xdc\xf0\xb0\x44\x8d\xd0\xb0\x0d\x6f\xba\x46\x03\x53\x48\x56\xaf\x3a\xa6\x4a\x60\x15\xa3\x71\x19\xb4\x6c\xd0\x2c\xc9\x21\x95\xa4\xcf\xb5\x92\xa2\xb2\x05\x53\xa3\xa0\x51\x1f\x18\x18\x57\x86\x4b\x66\x18\x74\x02\x37\x2d\x16\x06\xcb\x7a\xfb\x4c\xf1\x96\x89\x2b\xde\x70\xa3\xa7\x83\x86\x83\x51\xe0\x07\x67\xfd\xec\x7c\x2e\x3b\x61\xec\xc1\x09\x1c\xbf\x79\x43\x12\x07\x97\x2b\x14\x66\x7c\x40\x7f\xfd\xe1\x15\x17\x5f\x9f\x9e\xf5\x87\x8f\x49\x1a\x3a\x95\x3f\x30\x53\x2c\x51\x51\x3d\x6f\xa4\x42\xc0\xc5\x82\x17\x54\xd9\x52\xd0\x6b\x6e\x8a\x25\x59\x80\x1b\x60\x0b\xca\x18\x1a\x3c\x6d\x3b\x78\xa2\xc7\x56\x14\xa3\xc4\xda\xeb\x30\x7f\xd1\x14\x69\x82\x31\xd4\x92\x3e\xed\x7c\x55\x7e\xa1\xac\xec\xce\x9e\xce\x8a\xf1\x78\x52\xa4\x16\x23\x9b\x56\x6a\x6e\xf0\x65\xcc\xe9\x4c\x99\x4e\xe6\xcd\x0f\x6e\x41\xf9\xf6\x68\x2b\xaf\x2f\x3e\xa6\xa5\x4a\x93\xe7\x7f\x66\xc6\xfc\x28\xd5\x03\x6a\x63\x6d\x8d\x4c\xd8\x0e\x3f\xb7\xc5\xa0\xa4\x96\xdc\x09\x6e\x7a\x0b\xa7\xc4\x92\x82\xaa\xe1\x54\xb2\xb5\xcd\x31\x4d\x57\x00\x9b\xcb\x15\xda\xd2\x20\x3b\x43\x1d\xdb\x26\xe7\x88\x36\x83\x99\x01\x27\x9e\x06\x26\x80\x8b\xa3\x06\x1b\xa9\xb6\xc4\x73\x28\x7e\x0b\x9f\xc1\xdc\x76\xee\xbe\x38\x94\xb6\x9a\xea\xec\x4f\xcf\xcd\x5e\xa7\x38\x81\xf8\xf5\xb0\x9b\x64\x33\x71\x6d\x6f\xfc\x6b\x13\xf3\x20\xdb\xc9\x29\xec\x78\xdd\xe0\xfa\x29\xbb\x38\x39\xdc\xa2\xf0\xef\xb4\xa7\xde\x9b\xb8\xaf\x8d\xe4\x39\x5c\x77\x9b\x7b\xfb\x02\x70\xcd\xcb\xb2\xc6\x35\x55\x86\xde\xc2\xcd\x0e\x64\x96\xcc\x80\x5e\xda\xc1\x75\x8e\xc0\x8c\x61\xc5\x12\x4b\xf2\x33\x83\xd1\x46\xed\x9f\x13\x32\x62\x3d\x33\xae\x40\x9a\xb5\xad\x8e\xa2\xd2\x27\x60\x9b\xa1\x76\xae\x70\xc3\x18\x2b\x4b\xf7\xdb\xb5\x7f\xe0\x62\x21\x89\x2d\x85\x85\xc2\x7f\x76\xa8\x0d\xad\xfd\x05\x5f\xf0\xa2\xef\x9c\xc4\xfd\x8e\x57\x4b\x03\x42\xae\x61\x8d\x20\x45\xbd\x05\xdd\xb5\xf6\xed\x82\x90\xc8\xf3\xd4\x07\xb8\xb0\x8c\xa8\x17\x30\xe3\xb4\xb8\x60\x86\x95\xd2\x8e\x08\x58\x98\x3e\x20\xf6\xd8\x21\x26\x5d\x78\x81\x37\xac\x41\xbf\x20\x26\x40\xc8\x31\xcd\x30\xd9\x67\x26\x4a\xea\x4c\x30\xfe\x45\xce\x96\xa6\x26\x4b\xd8\x01\xcb\x3e\x2f\x64\xfb\x79\xa6\xc3\x39\xd5\x88\x5d\xda\xea\xd8\xfa\xf3\xd3\xbe\xdc\xa7\xd9\x28\x98\x4c\xf5\x67\xa5\x2d\xcd\x3b\xdb\x8f\xdc\x16\xed\xfc\xef\xe4\x86\x97\x25\xef\x91\x9d\x06\x13\x35\x3f\x12\xbd\x65\xa2\xd6\x8e\xee\x0e\x75\x2b\x85\xc6\x3f\x14\x77\xc3\x05\xbc\xf6\x70\xeb\x34\x1b\xf7\x41\x40\x5b\xb0\xe2\xa5\xb7\x1f\x41\xf2\xbc\xd7\x1b\x96\x4c\x03\x6e\xc8\xef\x94\x9f\xb6\x10\xb4\x4c\x64\xd6\xab\x6d\x67\xa8\x3a\x73\xe1\x63\xa1\x30\x9b\xa7\x71\xe0\xb9\xd1\x15\x05\x53\x8a\xe3\x74\xcb\xfe\x6c\xf7\xe4\x73\x7f\x72\x7a\xf8\xec\x1b\x0d\x86\xff\x01\xc1\x68\xf1\xf6\x51\x70\xc0\x9b\xd9\xa5\xbb\x24\x56\xfd\x66\x1e\x27\x69\xaf\x4c\xe2\xd9\x50\xad\xd0\xc5\x50\x3a\x6c\x1f\x7d\x36\x6c\x12\x70\x60\xe1\x09\x75\x8b\xeb\xec\xa2\x6b\xda\xd8\xb1\xb0\x70\x7d\x98\xd1\x48\x08\x8b\x3a\x67\x15\x21\xfb\xe7\xab\xec\x25\x54\x72\xb1\xc5\xcc\xae\xb1\x99\xa3\x8a\xa3\xff\x39\xf2\x81\x70\x34\xbb\x88\x92\xec\xbf\x59\xdd\x61\x9c\x58\x43\xf3\x85\x0d\x89\xd3\x7e\x11\x1f\xe8\x95\xf7\x0b\x59\xeb\x29\x07\x8b\xb6\x87\xd2\x93\xea\xa9\x05\xfa\xf9\x28\x4e\xb2\x7b\x1b\x79\xce\x28\xb4\x52\x07\xc1\xe3\x58\x8a\xef\x46\xbc\x34\x15\xd1\x61\x2e\xd1\xf1\xf0\xbc\xd7\x33\x99\xca\x94\x12\x03\xa7\x7f\xd0\x58\xb5\x87\x15\xa9\xb7\xd9\x0d\xae\xf7\x1a\xc4\x91\xf6\x3a\x3d\x59\x74\xac\x24\xb4\x1d\xaa\xd2\xae\x37\xb1\x5b\x5f\x7a\xf1\xc9\x2f\xee\x22\x67\xf1\x7b\x34\xfe\x0e\x27\x84\x43\xf5\xc1\xd7\x0b\xe2\x2d\xe3\xe6\x15\x0b\x9a\xc6\xdc\x9c\x55\x8e\x4e\x59\x3f\x9c\xd7\x52\xa0\x8d\xac\xd0\x41\xd7\xde\x35\x71\x92\x9d\x95\xe5\x61\x6d\xf6\x2c\x43\xe3\x58\x21\xe2\xfe\xd7\x21\x1e\x43\x36\x52\xd4\x7a\x35\x5c\xc0\x8e\x94\x18\x7b\xdb\x6e\xae\x4f\x02\xa0\xcf\x01\xf5\x96\xc8\x7b\x85\x3c\xc7\xe7\x09\xa2\xde\x7a\xfd\x86\x08\x75\x19\xf7\x84\xeb\xaf\xa0\x8b\xec\x33\xd3\x43\x74\xf5\x81\xd3\x32\x31\xbb\x48\x9d\x98\xb3\x0b\x4b\x59\x58\xd2\x49\x08\xa6\x04\x3d\x10\x99\x4f\x5f\x6b\x76\x2d\xf1\x04\xa2\x14\xfa\x1b\x22\xfa\xe1\xaf\x19\x08\x4b\xdf\xd2\x0a\x29\x56\x48\xfd\x75\x89\x1b\x5f\x71\xb5\x7d\x8f\xb4\x0b\x0e\x35\xc4\x14\xb4\xa4\x22\x05\x66\x29\x35\xd2\x0f\xdb\x13\x0b\xa9\x14\xd6\x6e\x75\xae\x65\xa5\x6d\x67\x76\xeb\xb8\x5d\xcd\x74\x1f\xa9\x35\x8a\xb8\xbf\x9d\xd2\xf0\xc7\xb7\xf0\xfd\xf7\x16\xea\x04\xb4\xc0\xe3\xf7\xf0\x0d\xa8\x9a\x4e\xde\x78\x5c\x0f\x3e\xa1\xd3\xf9\xd6\x20\xc4\x3f\xbe\x3d\x2a\x96\x4c\x91\xb0\x49\x0a\xbf\x78\xe8\xf1\xfb\x1d\xd4\x2f\x74\x76\x05\x69\x69\xde\x2b\xb5\x0b\xc7\xc0\xcb\xf0\x41\xa7\xf0\x85\xac\xbd\xc4\x4d\x76\x81\x85\x2c\xd1\x1b\x75\x62\xa2\xbf\x14\x95\x96\xf2\x0b\x2f\xa3\xd4\xd1\x06\xd3\x97\xb1\x32\x4a\xc1\xfd\x17\x24\xfb\xc0\xab\x4b\x51\x72\x26\xb2\xdf\xad\x81\xe3\x41\xaa\xff\xfb\xe5\xe4\xff\x13\x5f\x19\x7c\x70\x1c\x16\xd5\x5b\xee\xaf\x4b\x4a\x84\x7f\x4f\xd0\x5e\xa4\x5e\x46\x5f\x16\x83\x20\x58\x66\x76\x0c\xfa\xfc\xf0\x70\x1b\xab\x75\x0a\xb6\x9a\xd0\x5e\x10\x3c\xfa\x89\x71\x34\x7c\xee\x66\xf1\xdd\xd3\x42\x89\xba\x50\x7c\x6e\xf7\x7a\x5a\xe0\x59\xdb\xd6\xdc\x3d\xe0\xd9\xb9\xed\x77\xda\x09\xec\xfa\x8f\xc6\xc6\x5b\xd7\x3a\x37\xdb\xe6\x6d\x07\xd7\xe1\x79\x63\x37\xe4\xee\x79\xb1\xa0\xd4\xa3\xd6\xcf\xda\x76\x34\xa1\xd9\x87\xa3\xf1\x93\xf3\xd9\xed\xed\x97\x9b\xb3\xeb\xcb\x28\x19\x95\xfa\x9e\xe6\xf4\x00\x6a\x18\xec\x5e\x98\x47\x18\x7f\x9e\xd7\x84\x55\x18\x28\xef\xfb\x41\x89\x6b\x54\x15\xc6\x76\xe2\xf2\x90\x0b\xf7\xcc\x60\x1f\xec\x76\xd0\x1b\x5c\x53\xb5\x1b\xf5\x24\xdb\xc3\xdd\x3f\x3f\xb2\xfb\x62\x89\x0d\xfb\xfd\xee\x2a\x9d\x40\x77\x23\xe6\x7f\xe1\xb6\xaf\x32\x5e\x4c\xcb\xde\xaf\x9f\x7e\xda\x53\xe1\x63\xf8\xaf\x00\x00\x00\xff\xff\x01\x86\x1d\xab\x0e\x1c\x00\x00")
+var __hardcodedTracingGo = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x58\xdd\x6f\xdc\xb8\x11\x7f\x96\xfe\x8a\x39\x01\x77\x95\x02\x59\x8a\x73\xb9\xdc\xc1\x07\x3f\xf8\x2b\xc9\xa2\xb6\x6f\xe1\xf5\xf5\x5a\x14\x45\xc0\x95\x66\x25\x36\x12\xa9\x92\xd4\x7e\x20\xf0\xff\x5e\x0c\x29\x69\xb5\xf6\xee\x36\x17\x34\x0f\x8e\x96\x9c\x19\xce\x17\x67\x7e\xc3\x86\x65\x9f\x59\x81\xa0\x51\x2d\x51\x19\xc5\x32\x2e\x0a\xdf\xe7\x75\x23\x95\x81\xd0\xf7\x82\x4c\x0a\x83\x6b\x13\xf8\x5e\x80\x22\x93\x39\x17\x45\x3a\xe7\x82\xa9\xcd\xce\x52\x89\x6b\xfa\xbd\xa8\x2d\xa5\x40\x93\x96\xc6\x34\xf4\x2d\x35\xfd\xd5\x46\x65\x52\x2c\xe9\xd3\xf0\x1a\x03\xdf\xf7\x82\x82\x9b\xb2\x9d\x27\x99\xac\xd3\xab\x0a\x97\xa8\xd2\xcf\x6c\xb3\x44\x3c\x29\x64\xba\xfc\x39\xad\x64\x51\xa0\x22\xca\x34\x85\x31\x71\xce\x96\x98\x15\x65\x5a\xc8\x13\xdd\xe0\x2a\xa5\x3f\x24\xb8\x90\x89\x6c\x50\x18\xac\xb0\x46\xa3\x36\x09\x97\x29\xa9\xaf\xf8\x3c\xe5\x42\x1b\xd5\xd6\x28\x0c\x33\x5c\x8a\x74\x24\xae\x90\x8a\x57\x15\x4b\xeb\x76\x9d\x4a\x83\x55\xdd\xae\x0f\x49\xa3\xed\x63\x7b\x29\x33\x74\x5a\x6b\xf0\x28\xd5\x9c\x15\x05\x2b\x8e\xd3\xe0\x9a\x42\x80\x4a\xa7\xd2\x54\x8d\xfd\x43\xe1\xf9\x36\xa6\xed\x57\xa1\x9a\xec\xa8\x88\x46\xc9\x86\x15\xd6\x49\x47\xe9\x74\xfe\x39\x55\xa8\x65\xab\xac\x4e\x3a\xff\x6c\xe5\xc3\x71\x8e\xff\x6d\xc2\x40\xe5\xfe\x1a\xd4\x94\x51\x1a\x6b\x4a\x9f\x63\xd2\x1d\x45\xba\x3c\x4d\x4e\xdf\x24\xaf\x8f\x9e\xd1\x69\x11\xf9\xfe\x92\x29\xc8\x71\xc1\xda\xca\x5c\xc9\xaa\xc2\xcc\x48\xf5\x51\x6a\x03\xda\x28\x2e\x0a\x38\x87\xa0\x92\x19\xab\x4a\x49\x6a\xec\xa3\x9e\xd2\x45\x69\xb9\x30\xa7\xef\xe0\x1c\xde\xfe\x78\xfa\xb3\xef\x2f\x5a\x91\xc1\x0c\x4d\xdb\x7c\xa8\xe4\x9c\x55\x8f\x74\xde\x54\xc9\x25\xcf\x51\x5d\x88\xfc\xa6\x0b\x53\x98\x99\x35\x74\x17\x2c\xb9\x72\xff\x47\x10\xf6\xbe\x4c\x66\x0d\x13\x3d\x6d\x0c\xaf\x86\x75\x2b\x4f\xf5\x02\x63\x40\xa5\xa4\x8a\xe0\x8b\xef\x7b\x2c\xcf\x15\x9c\x9d\xc3\xa2\x36\xc9\xac\x51\x5c\x98\x45\x18\x7c\xaf\xcf\xbe\xcf\x83\x78\xaf\xa5\x2f\x57\xc9\xa2\xc8\xdd\xba\x9b\x25\xaa\x0d\x9c\xfe\x04\x1a\x33\x29\x72\x0d\x2b\xfc\x4b\x55\x81\x51\x1b\x30\x92\x34\x17\x98\x19\xfa\xdc\xf1\x33\x64\xbd\x28\x60\xc6\xca\x31\x25\xf6\xc7\x00\xf9\x93\xb2\x0b\xe4\x02\x06\xdf\x9e\x59\xc7\x11\xe9\x1f\x25\x0a\x50\xad\x10\xe4\x7e\x2e\xa0\x51\x32\x6f\x33\xcb\x60\x4a\xae\x81\x6b\x60\xa0\x79\x8e\x19\x53\x31\x30\x91\xc3\x6a\xc4\x61\x45\x58\xa9\xd5\x66\x44\xdf\xaf\xf4\x72\x65\x83\x83\xb6\x27\x83\xb6\x89\xef\xd1\x3d\xb9\xaa\x38\x0a\x43\x4e\xdc\xb9\x35\xc9\x3d\xae\xdc\x56\xe8\x7b\xde\xee\xd6\x1f\xdc\x94\x0f\xd8\xf9\x83\x4b\x31\x45\xc5\x65\x1e\x9e\xfe\xf4\x8a\x8a\x5d\x32\xb3\xde\x8b\xe2\xbd\x7c\x37\x22\x6f\x24\x17\x26\xa4\xd0\x1d\xa0\x99\x08\x8d\x59\xab\x30\xa4\xfd\xc8\xf7\xf4\x4e\x62\xa0\x52\x3b\xda\x92\xa6\x94\x5a\x31\x6c\xcd\x89\xac\x67\xf6\xf2\xfd\x9b\x61\x81\xca\x32\x75\x9f\x74\xe4\x90\x0e\x83\x7e\xa3\xcd\x61\x2d\xa0\x2a\x7f\x96\xa6\xdb\x40\x9e\xbe\x7d\xf3\xee\x97\x94\x35\xdc\xdd\x32\x1d\x44\x11\x25\x13\x5f\xd8\xe3\xbe\x3b\x07\xc1\x2b\xf8\xe2\x7b\x9e\x42\xd3\x2a\x41\x3f\x63\xf7\x87\x52\xf6\x86\x32\x79\x11\x06\x36\xa3\x21\x53\xc8\x0c\xc5\xab\xaf\x6b\x67\xf0\xfd\x32\xb0\x8a\x47\xbe\xf7\xe4\xfb\x9e\x69\xc8\x02\x81\xab\xdd\x2b\x11\xee\x1a\x2a\x70\xf5\xd0\x95\xaa\x30\x8a\x28\xca\x58\x25\x33\x34\xcf\x98\x4c\x43\x9a\xba\xb6\x93\xbc\x57\xb2\xee\xae\x24\xf9\x32\x4a\x26\x62\x21\xaf\xc3\x40\x1b\xa6\x48\xa7\x13\x6b\x9e\x0a\x62\xe8\x18\xee\xc8\xa8\x80\x82\x88\x5a\x07\x67\x40\x5f\xb1\xef\x3d\x45\x7e\x6f\xea\xae\x52\xa6\xb1\x76\xfb\x4f\x5d\xbd\x78\x69\x44\x6f\x35\x1c\x28\x08\x7d\xf9\x85\x57\xfd\x57\xd2\x9b\x19\x1d\xac\x16\xe4\x7b\xcd\xea\xa6\xe2\xa2\x98\x2a\x39\x67\x73\x5e\x71\xb3\x21\x37\xbe\x4e\x5e\xff\xe4\x7b\x5c\xdf\x52\x30\x6d\x46\xe9\xe4\x03\x1a\x14\xcb\x30\xf8\x34\x99\x7d\xba\xfd\xed\xea\xe2\x36\x88\xe0\xfc\x1c\x02\xa3\x5a\xaa\xe3\x7c\x01\x3d\x3d\x99\xbf\x4f\xf0\x39\x9c\x26\xaf\x7d\xef\x09\xb0\xd2\x08\x7c\x01\xcb\x67\xa2\x1f\x1f\x2e\xae\x26\xf7\x1f\x3e\xcd\x2e\xee\xa6\xb7\xf4\x31\x7d\xf8\xed\xf2\xe2\x72\x72\x3b\x79\xfc\x47\x10\xfd\x0a\x4b\xca\x9a\x20\x38\x74\x00\x05\xea\x46\x2c\x87\x74\xee\x90\x46\x32\x65\x4a\xe3\xfb\x4a\x32\x13\x2e\x63\x78\xf7\x36\xf2\xbd\x3d\x59\x78\x44\x22\x69\xee\x7b\xde\xd3\x41\xbb\x0e\xb3\x52\x72\x7a\x94\xcf\x53\xaa\xc0\x95\x08\x83\x3d\xb4\x67\x41\xbc\x4f\x44\x34\xa4\xf5\x10\xc1\xfb\x17\xa9\xe1\x7b\xb6\x56\x22\xb4\x1a\x77\xaa\xeb\xe4\x1a\x0a\x14\xa8\x18\xd5\x33\x98\x08\x90\x8a\x82\xbe\x90\x6a\x38\x8b\xea\xf5\x4a\xaa\xcf\x10\x32\x03\x15\x32\x6d\x60\xc5\x4d\xe9\xca\xa5\x25\x42\xba\x5e\x7d\xdd\x1e\x4b\x84\xba\xd5\xa6\xff\x89\xe0\x3a\xfe\xe4\x5a\x43\x2b\xf8\x42\xaa\xba\xda\x00\x33\xa0\x98\xc8\x65\x0d\x0b\x25\x6b\x2b\x01\x85\xe1\x0a\x29\xfd\x33\xa4\xaa\x4f\xdd\xf2\xdd\xdb\xc4\x1d\xf1\x5e\x2a\xc0\xb5\x3d\x35\xde\xb1\x64\x7d\xa2\xd8\x66\xf7\xf4\x5c\xa2\x06\x21\x0d\xe4\xd2\x6a\xdb\x89\x18\xfc\x44\xa5\x69\xe6\x0c\x08\x77\xd3\x7f\x72\xfd\x40\x4d\xe7\x92\x69\xcc\xc3\xc8\x56\xd9\xe3\x5c\x53\xa6\x50\x18\x47\x7f\x44\xd4\xbe\xf8\x39\xf1\x69\x0a\x8f\x25\x6a\x84\x9a\xad\x79\xdd\xd6\x1a\x98\x42\x72\x7d\xd1\x32\x95\x03\x2b\x18\x41\x52\xd0\xb2\x46\x53\x52\x54\x0a\x49\x7f\x57\x4a\x8a\xc2\xb6\x35\x8d\x82\x90\x35\x30\x30\xae\x59\xe6\xcc\x30\x68\x05\xae\x1b\xcc\x0c\xe6\xd5\xe6\x85\x11\x0d\x13\xb7\xbc\xe6\x46\xef\x42\x08\xb7\x66\xb3\xfd\xa2\xc7\xa7\x57\xb2\x15\xc6\x6e\x9c\xc1\xe9\xeb\xd7\xa4\xb1\x77\xb3\x44\x61\xc6\x1b\xf4\xaf\xdf\xbc\xe5\xe2\xf3\xf3\xbd\x7e\xf3\x29\x8a\x7d\x67\xf2\x25\x33\x59\x89\x8a\xba\x6e\x2d\x15\x02\x2e\x16\x3c\xa3\xfe\x13\x83\x5e\x71\x93\x95\xe4\x01\x6e\x80\x2d\xa8\xae\x11\xb8\xb3\x4d\xfb\x65\x14\x37\x22\x1b\x55\xc0\x97\x01\xeb\x0e\x3a\x42\x31\x54\xfc\xbe\x38\x76\xbd\xf3\x48\xf1\xdf\xee\xe1\xda\xdc\xb1\x66\xda\x61\x61\xa9\xc2\x11\x2c\xb6\x40\x40\xd6\x8d\xd4\xdc\xe0\x71\x4a\x7b\x46\xd7\x45\xbe\x3c\xc5\x30\xde\xbb\x74\x43\xc0\x97\x27\xdb\x1f\xbb\x16\x61\x1a\xea\x07\x69\xfa\x35\xe8\xf1\xbd\x54\x8f\xa8\x8d\xf5\x35\x32\x61\x71\xd8\xdc\x56\x84\x9c\x80\x53\x2b\xb8\xe9\x3d\x1c\x93\x48\x4a\xaa\x9a\x53\x63\xd5\xf6\xa2\x69\x3a\x02\xd8\x5c\x2e\xd1\xd6\x07\xd9\x1a\xc2\x55\xf6\x86\x8e\x78\x13\x98\x18\x70\xea\x69\x60\x02\xb8\x38\xa9\xb1\x96\x6a\x43\x32\x87\x16\xb5\xe8\xae\x31\xb7\xf8\xaa\xaf\x10\xb9\xed\x79\x3a\xf9\x6a\x44\xdc\xd9\x14\x46\x10\xbe\x1a\xf0\x7f\x32\x11\x77\xf6\xc4\x3f\x85\x85\xbd\x41\xb7\xb3\x73\xd8\xca\xba\xc7\xd5\x73\x71\x61\x74\x18\x48\xe0\xb7\x80\x88\x3e\x9a\xb8\xaf\xd9\xa7\x29\xdc\xb5\xeb\x99\x1d\xb8\xef\x78\x9e\x57\xb8\xa2\xca\xd0\x7b\xb8\xde\x2e\x99\x92\x19\xd0\xa5\x6c\xab\x9c\x02\xcb\x8c\x61\x59\x89\x39\xc5\x99\xc1\x68\x6a\xed\xa6\xf7\x84\x44\x4f\x8c\xab\x92\x66\x65\x4b\xa4\x28\xf4\x19\x58\xc8\xa2\x5d\x28\x1c\x64\x66\x79\xee\x7e\x3b\x90\x06\x5c\x2c\x24\x89\xa5\xb4\x50\xf8\x9f\x16\xb5\xa1\xd1\x3a\xe3\x0b\x9e\xf5\xf8\x86\xa4\x3f\xf0\xa2\x34\x20\xe4\x0a\x56\x08\x52\x54\x1b\xd0\x6d\x63\x9f\x0a\x88\x88\x22\x4f\xcd\x80\x0b\x2b\x88\x1a\x02\x33\xce\x8a\x6b\x66\x58\x2e\x2d\x90\xc3\xcc\xf4\x09\xb1\xc7\x0f\x21\xd9\xc2\x33\xbc\x67\x35\x76\x43\x58\x04\x44\x1c\x12\xd2\x4c\x3e\x32\x91\x53\x7b\x82\xf1\x2f\x0a\xb6\x34\x34\xb7\x3b\x18\x6c\x47\xf8\x64\xbf\xcc\x78\xd8\xa7\x1a\xb1\xbd\xb6\x3a\xb4\xf1\xfc\xb0\xef\xee\x13\x82\xdd\xed\xe6\x17\xb9\x2d\xcd\x5b\xdf\x8f\xc2\x16\x6c\xe3\xef\xf4\x86\xe3\x9a\xf7\xc4\xce\x82\x1d\x33\xdf\x13\xbf\x15\xa2\x56\x8e\xef\x01\x75\x23\x85\xc6\x3f\x14\x77\x10\x10\x5e\x75\xeb\x36\x68\x91\xc3\x34\x34\xa7\x2a\x9e\x77\xfe\xa3\x95\x34\xed\xed\x86\x92\x69\xc0\x35\xc5\x9d\xee\xa7\x2d\x04\x0d\x13\x89\x8d\x6a\xd3\x1a\xaa\xce\x5c\x74\xb9\x90\x99\xf5\xf3\x3c\xe8\xa4\xd1\x11\x19\x53\x8a\xa3\xda\xa9\x6a\x1f\x91\xe5\xa8\xae\xba\x9d\xf3\xc3\x7b\x5f\x08\xbe\xff\x5f\x15\xb3\x68\x6e\xb8\xec\xb6\xf3\x8d\x41\xbc\xea\x27\x6c\x7b\x7b\x3d\x6f\xce\x0a\x22\xee\xde\x62\x92\x63\xa4\xe4\x4b\x4b\x99\xdc\x61\x3d\x47\x15\x06\x7f\x3f\xe9\x3c\x7e\x32\xb9\x0e\xa2\xe4\x6f\xac\x6a\x31\x8c\xac\x0a\x7c\x61\x7d\x7f\x3e\x60\xd6\x9e\x5f\x75\x0e\xa0\x24\x7b\x2e\xc1\x92\xed\xe1\xec\x58\xb5\xb5\x66\x50\xaa\x07\x22\x61\x94\xcc\x6c\x88\x43\x27\x80\xa0\xaa\xf7\x34\xd6\xe2\xbb\x91\x2c\x4d\xd5\x6a\x00\x00\x3a\x1c\xde\xaa\x7a\x21\xbb\x3a\xc5\x24\xc0\xd9\xef\xd5\xd6\xec\x01\x62\xf7\x3e\xbb\xc7\xd5\x5e\x87\x38\xd6\xde\xa6\xe7\x88\x9b\x34\xa1\x61\x59\xe5\x76\xda\x0b\xdd\x34\xd7\xab\x4f\x71\x71\x07\x39\x8f\xcf\xd0\x74\x67\x38\x25\x1c\x69\x66\xd6\x63\x45\x3a\xcf\x38\x60\x60\x97\xc6\x31\x8c\x89\xce\xf1\x29\x1b\x87\xab\x4a\x0a\xb4\x53\x9d\xef\x56\x57\x5d\x68\xc2\x28\xb9\xc8\xf3\xc3\xd6\xec\x99\x0d\xc7\xb9\x42\xcc\xfd\xaf\x43\x32\x86\xf0\xe8\xcc\x62\xfc\xdd\xc8\xfe\x0a\x3a\x4b\x3e\x32\x3d\x04\xb8\x8f\x5d\xc3\xc4\xe4\x3a\x76\xa9\x3d\xb9\xb6\x9c\x99\x65\xdd\xc9\x82\x98\x56\x0f\x24\x47\x9a\x5a\x04\x49\x55\x98\xe6\x23\xa4\x96\x50\xe2\xba\x2b\x12\x9a\xca\xbf\x03\xe6\x54\xc3\x63\xd0\x92\xee\x15\x98\x52\x6a\xa4\x1f\xb6\x8c\x67\x52\x29\xac\xdc\x4c\x5e\xc9\x42\xdb\x66\xe2\xe6\x7c\x3b\x52\xe8\x3e\xe6\x15\x8a\xb0\xd3\xd5\xce\x8b\x3f\xbe\x81\x1f\x7e\xb0\xab\xce\x12\xbb\x78\xfa\x0e\xbe\x00\x15\x80\x9d\xc7\x23\xd7\x36\xce\x68\x77\xbe\x31\x08\xe1\x8f\x6f\x4e\xb2\x92\x29\x52\x36\x8a\xe1\x97\x6e\xf5\xf4\xdd\x76\xb5\x1b\x44\x2c\x6a\x6e\x08\xa2\xe4\xda\x05\xd6\xeb\x74\xb8\xd4\x31\x7c\x22\xa7\x95\xb8\x4e\xae\x31\x93\x39\x76\xbe\xe9\x95\x74\xe4\x7f\x26\xbe\x79\x9e\x58\xe6\x4f\x3c\x0f\x62\xc7\xee\xed\xbe\xba\xe5\x41\x0c\xee\xa9\x3c\xb9\xe4\xc5\x8d\xc8\x39\x13\xc9\xef\xd6\xc7\xe1\xa0\xd8\x3f\x7f\x39\xfb\x57\xd4\x5d\xb3\x2e\xcc\x87\xb5\xed\x9c\xf7\x4d\xca\x12\xef\xb7\xe9\xda\x6b\xd5\xab\xd9\x95\x19\xcf\xf3\xca\xc4\xf6\xef\x8f\x8f\x8f\xd3\x50\xad\x62\xb0\xb7\x93\x00\xad\xf7\xd4\x41\x9d\x11\x6a\xda\x82\xc8\xed\xcb\x45\x8e\x3a\x53\x7c\x6e\xa7\x52\x1a\x3f\x59\xd3\x54\xdc\xbd\x0f\x5a\xc0\xf1\x3b\x81\x59\x3b\xbc\xa2\xb1\x59\xd7\x36\x2e\xd8\xb6\xeb\x58\xc4\x35\xbc\x9e\x6c\xd1\xd9\x9e\x07\x11\xba\x47\xd4\xb3\x58\xd3\x8c\xa0\x85\x7d\xc0\x18\xbf\x72\x5c\x4c\xa7\x9f\xee\x2f\xee\x6e\x82\x68\x54\x3a\x7b\x9e\xf3\x03\xa4\xe3\xc7\x8d\x11\xc5\xd7\xcb\xda\x11\xe5\x7b\xaa\x0b\xff\x60\xc4\x1d\xaa\x02\x43\x0b\x15\xba\x95\x6b\x37\x24\xdb\xf7\xc0\xed\xea\x3d\xae\xa8\x04\x8e\x6a\xbc\xed\x89\xee\x65\x3c\x99\x65\x25\xd6\xec\xf7\x87\xdb\x78\x67\x75\x8b\x8d\xfe\x8a\x9b\xbe\x64\x74\x6a\x5a\xf1\xdd\xdc\xd4\xc1\x14\xe5\x3f\xf9\xff\x0d\x00\x00\xff\xff\x59\xfc\x71\x13\x36\x1a\x00\x00")
func _hardcodedTracingGoBytes() ([]byte, error) {
return bindataRead(
@@ -127,7 +127,7 @@ func _hardcodedTracingGo() (*asset, error) {
}
info := bindataFileInfo{name: "../_hardcoded/tracing.go", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)}
- a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x79, 0x85, 0xf6, 0x4e, 0x22, 0x48, 0x3c, 0x7b, 0xab, 0x6c, 0xdc, 0x51, 0x34, 0x92, 0xe8, 0x20, 0x29, 0x95, 0x7e, 0x50, 0x4f, 0x44, 0x74, 0x2, 0x2a, 0x4b, 0x82, 0xc9, 0x31, 0x2e, 0x60, 0x2}}
+ a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf1, 0x7b, 0x77, 0xc3, 0x73, 0x16, 0x9a, 0x84, 0xf2, 0xce, 0x29, 0xc6, 0xb, 0x13, 0x62, 0x7c, 0xbf, 0x23, 0x8d, 0x73, 0xee, 0xb5, 0x37, 0x56, 0xcf, 0xd0, 0x0, 0x64, 0x9f, 0xf3, 0x9, 0xf1}}
return a, nil
}

MODIFY
main.go
main.go
@@ -16,14 +16,14 @@ import (
"github.com/go-openapi/spec"
"github.com/go-openapi/swag"
- goclient "github.com/Clever/wag/v8/clients/go"
- jsclient "github.com/Clever/wag/v8/clients/js"
- "github.com/Clever/wag/v8/hardcoded"
- "github.com/Clever/wag/v8/models"
- "github.com/Clever/wag/v8/server"
- "github.com/Clever/wag/v8/server/gendb"
- "github.com/Clever/wag/v8/swagger"
- "github.com/Clever/wag/v8/validation"
+ goclient "github.com/Clever/wag/v9/clients/go"
+ jsclient "github.com/Clever/wag/v9/clients/js"
+ "github.com/Clever/wag/v9/hardcoded"
+ "github.com/Clever/wag/v9/models"
+ "github.com/Clever/wag/v9/server"
+ "github.com/Clever/wag/v9/server/gendb"
+ "github.com/Clever/wag/v9/swagger"
+ "github.com/Clever/wag/v9/validation"
)
// config contains the configuration of command line flags and configuration derived from command line flags

MODIFY
main_test.go
main_test.go
@@ -18,12 +18,12 @@ func Test_config_validate(t *testing.T) {
name: "with server",
input: config{
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
jsModulePath: swag.String("jsModulePath"),
},
output: config{
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
jsModulePath: swag.String("jsModulePath"),
relativeDynamoPath: swag.String("server/db"),
generateDynamo: true,
@@ -45,7 +45,7 @@ func Test_config_validate(t *testing.T) {
output: config{
clientOnly: swag.Bool(true),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
jsModulePath: swag.String("jsModulePath"),
generateServer: false,
generateDynamo: false,
@@ -61,13 +61,13 @@ func Test_config_validate(t *testing.T) {
clientOnly: swag.Bool(true),
clientLanguage: swag.String("go"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
},
output: config{
clientOnly: swag.Bool(true),
clientLanguage: swag.String("go"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
generateServer: false,
generateDynamo: false,
generateTracing: true,
@@ -82,14 +82,14 @@ func Test_config_validate(t *testing.T) {
clientOnly: swag.Bool(true),
clientLanguage: swag.String("js"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
jsModulePath: swag.String("jsModulePath"),
},
output: config{
clientOnly: swag.Bool(true),
clientLanguage: swag.String("js"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
jsModulePath: swag.String("jsModulePath"),
generateServer: false,
generateDynamo: false,
@@ -104,13 +104,13 @@ func Test_config_validate(t *testing.T) {
input: config{
clientLanguage: swag.String("js"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
jsModulePath: swag.String("jsModulePath"),
},
output: config{
clientLanguage: swag.String("js"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
jsModulePath: swag.String("jsModulePath"),
relativeDynamoPath: swag.String("server/db"),
generateServer: true,
@@ -126,12 +126,12 @@ func Test_config_validate(t *testing.T) {
input: config{
clientLanguage: swag.String("go"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
},
output: config{
clientLanguage: swag.String("go"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
relativeDynamoPath: swag.String("server/db"),
generateServer: true,
generateTracing: true,
@@ -146,7 +146,7 @@ func Test_config_validate(t *testing.T) {
input: config{
clientLanguage: swag.String("js"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
},
wantErr: true,
},
@@ -166,11 +166,11 @@ func Test_config_validate(t *testing.T) {
dynamoOnly: swag.Bool(true),
relativeDynamoPath: swag.String("gen-db/db"),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
},
output: config{
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
relativeDynamoPath: swag.String("gen-db/db"),
dynamoOnly: swag.Bool(true),
generateServer: false,
@@ -186,11 +186,11 @@ func Test_config_validate(t *testing.T) {
input: config{
dynamoOnly: swag.Bool(true),
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
},
output: config{
outputPath: swag.String("output-path"),
- goPackageName: swag.String("github.com/Clever/wag/v8/output-path"),
+ goPackageName: swag.String("github.com/Clever/wag/v9/output-path"),
relativeDynamoPath: swag.String("db"),
dynamoOnly: swag.Bool(true),
generateServer: false,

MODIFY
server/gendb/gendb.go
server/gendb/gendb.go
@@ -9,7 +9,7 @@ import (
"strings"
"text/template"
- "github.com/Clever/wag/v8/swagger"
+ "github.com/Clever/wag/v9/swagger"
"github.com/awslabs/goformation/v2/cloudformation/resources"
"github.com/go-openapi/spec"
"github.com/go-swagger/go-swagger/generator"

MODIFY
server/gendb/templatefuncs.go
server/gendb/templatefuncs.go
@@ -7,7 +7,7 @@ import (
"text/template"
"github.com/Clever/go-utils/stringset"
- "github.com/Clever/wag/v8/utils"
+ "github.com/Clever/wag/v9/utils"
"github.com/awslabs/goformation/v2/cloudformation/resources"
"github.com/go-openapi/spec"
"github.com/go-openapi/swag"

MODIFY
server/genserver.go
server/genserver.go
@@ -9,10 +9,10 @@ import (
"github.com/go-openapi/spec"
- clients "github.com/Clever/wag/v8/clients/go"
- "github.com/Clever/wag/v8/swagger"
- "github.com/Clever/wag/v8/templates"
- "github.com/Clever/wag/v8/utils"
+ clients "github.com/Clever/wag/v9/clients/go"
+ "github.com/Clever/wag/v9/swagger"
+ "github.com/Clever/wag/v9/templates"
+ "github.com/Clever/wag/v9/utils"
)
// Generate server package for a swagger spec.

MODIFY
swagger/operation.go
swagger/operation.go
@@ -4,8 +4,8 @@ import (
"fmt"
"strings"
- "github.com/Clever/wag/v8/templates"
- "github.com/Clever/wag/v8/utils"
+ "github.com/Clever/wag/v9/templates"
+ "github.com/Clever/wag/v9/utils"
"github.com/go-openapi/spec"
)

MODIFY
swagger/parameter.go
swagger/parameter.go
@@ -5,7 +5,7 @@ import (
"strconv"
"strings"
- "github.com/Clever/wag/v8/utils"
+ "github.com/Clever/wag/v9/utils"
"github.com/go-openapi/spec"
)

MODIFY
validation/validation.go
validation/validation.go
@@ -6,7 +6,7 @@ import (
"regexp"
"strings"
- "github.com/Clever/wag/v8/swagger"
+ "github.com/Clever/wag/v9/swagger"
swaggererrors "github.com/go-openapi/errors"
"github.com/go-openapi/loads"
"github.com/go-openapi/spec"

first pass at moving from v8 to v9 internally