306d18e466
Here's the squash of the following patches that enable support
for go1.18 and update our dependencies.
This diff WILL need to be backported to the release/3.14 branch.
* chore: use go1.17.8
See https://github.com/ooni/probe/issues/2067
* chore: upgrade to probe-assets@v0.8.0
See https://github.com/ooni/probe/issues/2067.
* chore: update dependencies and enable go1.18
As mentioned in 7a0d17ea91
,
the tree won't build with `go1.18` unless we say it does.
So, not only here we need to update dependencies but also we
need to explicitly say `go1.18` in the `go.mod`.
This work is part of https://github.com/ooni/probe/issues/2067.
* chore(coverage.yml): run with go1.18
This change will give us a bare minimum confidence that we're
going to build our tree using version 1.18 of golang.
See https://github.com/ooni/probe/issues/2067.
* chore: update user agent used for measuring
See https://github.com/ooni/probe/issues/2067
* chore: run `go generate ./...`
See https://github.com/ooni/probe/issues/2067
* fix(dialer_test.go): make test work with go1.17 and go1.18
1. the original test wanted the dial to fail, so ensure we're not
passing any domain name to exercise dialing not resolving;
2. match the end of the error rather than the whole error string.
Tested locally with both go1.17 and go1.18.
See https://github.com/ooni/probe-cli/pull/708#issuecomment-1096447186
278 lines
7.1 KiB
Go
278 lines
7.1 KiB
Go
// Code generated by go generate; DO NOT EDIT.
|
|
// 2022-04-12 11:16:02.826745 +0200 CEST m=+0.000215792
|
|
|
|
package ooapi
|
|
|
|
//go:generate go run ./internal/generator -file responses.go
|
|
|
|
import (
|
|
"context"
|
|
"io"
|
|
"net/http"
|
|
|
|
"github.com/ooni/probe-cli/v3/internal/netxlite"
|
|
"github.com/ooni/probe-cli/v3/internal/ooapi/apimodel"
|
|
)
|
|
|
|
func (api *simpleCheckReportIDAPI) newResponse(ctx context.Context, resp *http.Response, err error) (*apimodel.CheckReportIDResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := &apimodel.CheckReportIDResponse{}
|
|
if err := api.jsonCodec().Decode(data, out); err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleCheckInAPI) newResponse(ctx context.Context, resp *http.Response, err error) (*apimodel.CheckInResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := &apimodel.CheckInResponse{}
|
|
if err := api.jsonCodec().Decode(data, out); err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleLoginAPI) newResponse(ctx context.Context, resp *http.Response, err error) (*apimodel.LoginResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := &apimodel.LoginResponse{}
|
|
if err := api.jsonCodec().Decode(data, out); err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleMeasurementMetaAPI) newResponse(ctx context.Context, resp *http.Response, err error) (*apimodel.MeasurementMetaResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := &apimodel.MeasurementMetaResponse{}
|
|
if err := api.jsonCodec().Decode(data, out); err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleRegisterAPI) newResponse(ctx context.Context, resp *http.Response, err error) (*apimodel.RegisterResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := &apimodel.RegisterResponse{}
|
|
if err := api.jsonCodec().Decode(data, out); err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleTestHelpersAPI) newResponse(ctx context.Context, resp *http.Response, err error) (apimodel.TestHelpersResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := apimodel.TestHelpersResponse{}
|
|
if err := api.jsonCodec().Decode(data, &out); err != nil {
|
|
return nil, err
|
|
}
|
|
if out == nil {
|
|
return nil, ErrJSONLiteralNull
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simplePsiphonConfigAPI) newResponse(ctx context.Context, resp *http.Response, err error) (apimodel.PsiphonConfigResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := apimodel.PsiphonConfigResponse{}
|
|
if err := api.jsonCodec().Decode(data, &out); err != nil {
|
|
return nil, err
|
|
}
|
|
if out == nil {
|
|
return nil, ErrJSONLiteralNull
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleTorTargetsAPI) newResponse(ctx context.Context, resp *http.Response, err error) (apimodel.TorTargetsResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := apimodel.TorTargetsResponse{}
|
|
if err := api.jsonCodec().Decode(data, &out); err != nil {
|
|
return nil, err
|
|
}
|
|
if out == nil {
|
|
return nil, ErrJSONLiteralNull
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleURLsAPI) newResponse(ctx context.Context, resp *http.Response, err error) (*apimodel.URLsResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := &apimodel.URLsResponse{}
|
|
if err := api.jsonCodec().Decode(data, out); err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleOpenReportAPI) newResponse(ctx context.Context, resp *http.Response, err error) (*apimodel.OpenReportResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := &apimodel.OpenReportResponse{}
|
|
if err := api.jsonCodec().Decode(data, out); err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (api *simpleSubmitMeasurementAPI) newResponse(ctx context.Context, resp *http.Response, err error) (*apimodel.SubmitMeasurementResponse, error) {
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if resp.StatusCode == 401 {
|
|
return nil, ErrUnauthorized
|
|
}
|
|
if resp.StatusCode != 200 {
|
|
return nil, newHTTPFailure(resp.StatusCode)
|
|
}
|
|
defer resp.Body.Close()
|
|
reader := io.LimitReader(resp.Body, 4<<20)
|
|
data, err := netxlite.ReadAllContext(ctx, reader)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
out := &apimodel.SubmitMeasurementResponse{}
|
|
if err := api.jsonCodec().Decode(data, out); err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|