Skip to content

Commit

Permalink
Merge branch 'master' into feat/orchestrate-switch
Browse files Browse the repository at this point in the history
  • Loading branch information
DecFox committed Feb 12, 2025
2 parents dd6185b + 437e786 commit 9d49844
Show file tree
Hide file tree
Showing 28 changed files with 276 additions and 184 deletions.
102 changes: 102 additions & 0 deletions .github/ISSUE_TEMPLATE/routine-sprint-releases.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
---
name: Routine sprint releases
about: Monthly releases of probe-cli, etc.
title: ''
labels: priority/medium
assignees: DecFox

---

## Release information

Fill out this information for each release:

**Version Number:**

**Expected Release date:**

**Summary of changes:**

**Link to latest nightly:**

## Pre-release communication

- [ ] Post this message in the #ooni-probe-releases slack channel:

>@here 🏎️ OONI Probe Engine v[VERSION_NUMBER] release work has begun<br/>
Expected release date: [INSERT DATE] + or - x days<br/>
Summary of changes: [INSERT LINK TO PR or CHANGESET]<br/>
Tracking issue: [INSERT LINK TO ISSUE]

## Release checklist

For extended documentation about the process, see [probe-cli's releasing.md](https://github.com/ooni/probe-cli/blob/master/docs/releasing.md).

### Psiphon

- [ ] probe-cli: pin to the latest [staging-client commit](https://github.com/Psiphon-Labs/psiphon-tunnel-core/tree/staging-client) using `./script/go.bash get -u -v`
- [ ] probe-cli: make sure `./script/go.bash list -json ./cmd/ooniprobe` does not include any pinned package in psiphon's `go.mod` or otherwise ask Psiphon developers whether this is fine

### Go version

- [ ] oocrypto: merge with upstream if needed
- [ ] oohttp: merge with upstream if needed
- [ ] probe-cli: possibly update `.github/workflows/gobash.yml`
- [ ] probe-cli: update the `GOVERSION` file if needed
- [ ] probe-cli: update the `toolchain` line inside of `go.mod`
- [ ] probe-cli: update the Go version mentioned in the `Readme.md` file
- [ ] probe-cli: update version specified in TH's Makefile

### Android

- [ ] probe-cli: update `NDKVERSION`, and `MOBILE/android/ensure` if needed

### Dependencies other than Psiphon

- [ ] probe-cli: ensure no dependency bumped its major version number using https://github.com/icholy/gomajor
- [ ] probe-cli: update dependencies with `./script/go.bash get -u -v -d ./...`
- [ ] probe-cli: update C dependencies

### Updating assets and definitions

- [ ] probe-cli: run `./script/updateminipipeline.bash`
- [ ] probe-cli: update github.com/ooni/probe-assets dependency
- [ ] probe-cli: update bundled certs (using `./script/go.bash generate ./...`)
- [ ] probe-cli: update user-agent at `internal/model/http.go`

### Maintenance

- [ ] probe-cli: sync stunreachability targets with snowflake (see `./internal/stuninput`)
- [ ] probe-cli: take a look at [go report card](https://goreportcard.com/report/github.com/ooni/probe-cli/v3)
- [ ] probe-cli: address any outstanding TODO in the diff since last release (or create an issue for it)
- [ ] probe-cli: try to address all the issues marked as "releaseBlocker"
- [ ] all: check whether to update the release documentation

### QA and alpha releasing

- [ ] probe-cli: check warnings emitted by `gosec` runs
- [ ] probe-cli: `./script/go.bash test -race -count 1 ./...` must pass locally
- [ ] probe-cli: tag an alpha release
- [ ] probe-cli: create the release/X.Y branch
- [ ] probe-cli: make sure all workflows are green in the release/X.Y branch
- [ ] team: communicate availability of an alpha release

### Releasing proper

- [ ] probe-cli: update `internal/version/version.go` in release/X.Y to be a stable release
- [ ] probe-cli: tag a new stable version in the release/X.Y branch
- [ ] probe-cli: update internal/version/version.go in master branch to be the next alpha

### Publishing stable packages

- [ ] probe-engine: run `./script/autoexport.bash`
- [ ] debian: publish packages
- [ ] android: publish packages
- [ ] oohelperd: publish docker container

## Post-release communication

- [ ] iThena: notify about new release
- [ ] Update the `#ooni-probe-releases` slack channel:

> @here 🚀 🏎️ OONI Probe Engine v[VERSION_NUMBER] has been released.
35 changes: 35 additions & 0 deletions .github/workflows/add_issues_to_project.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# automatically syched from: ooni/pm-tools
on:
issues:
types:
- opened
- closed
- labeled

jobs:
add-to-project:
name: Add issue to project
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
if: github.event.action == 'opened'
with:
# Add to triaging board
project-url: https://github.com/orgs/ooni/projects/47
github-token: ${{ secrets.ADD_TO_PROJECT_GH_TOKEN }}
labeled: bug, triage
label-operator: OR

- uses: actions/[email protected]
if: github.event.action == 'labeled' && startsWith(github.event.label.name, 'funder/')
with:
# Add to funder reporting board
project-url: https://github.com/orgs/ooni/projects/33
github-token: ${{ secrets.ADD_TO_PROJECT_GH_TOKEN }}

- uses: actions/[email protected]
# Move closed issues that are not invalid over to the funder reporting board
if: github.event.action == 'closed' && github.event.issue.state_reason != 'not_planned' && !contains(github.event.issue.labels.*.name, 'invalid')
with:
project-url: https://github.com/orgs/ooni/projects/33
github-token: ${{ secrets.ADD_TO_PROJECT_GH_TOKEN }}
4 changes: 2 additions & 2 deletions Dockerfile.oonith
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#
# Note: The Dockerfile needs to reside in the root of the repo, so that we can
# copy files into the docker build context.
FROM golang:1.22.2-bullseye as builder
FROM golang:1.22.3-bullseye as builder
ARG BRANCH_NAME=master

WORKDIR /build
Expand All @@ -13,7 +13,7 @@ COPY . .
RUN go run ./internal/cmd/buildtool oohelperd build

## Image running on the host
FROM golang:1.22.2-bullseye as runner
FROM golang:1.22.3-bullseye as runner

WORKDIR /app

Expand Down
2 changes: 1 addition & 1 deletion GOVERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.22.2
1.22.3
8 changes: 4 additions & 4 deletions Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ builds use the latest commit of the `master` branch.
To setup development for this repository you need Go >= 1.15. The
`./script/go.bash` script will automatically download the expected
version of Go mentioned in the [GOVERSION](GOVERSION) file (i.e.,
go1.22.2) and use it for building.
go1.22.3) and use it for building.

You can also bypass `./script/go.bash` and build ooniprobe manually using
`go build ...` but, in such a case, note that:
Expand Down Expand Up @@ -146,10 +146,10 @@ using the correct version of Go. Running this script as follows:
Is equivalent to running these commands:

```bash
go install -v golang.org/dl/go1.22.2@latest
$HOME/go/bin/go1.22.2 download
go install -v golang.org/dl/go1.22.3@latest
$HOME/go/bin/go1.22.3 download
export GOTOOLCHAIN=local
$HOME/sdk/go1.22.2/bin/go build -v -ldflags '-s -w' ./internal/cmd/miniooni
$HOME/sdk/go1.22.3/bin/go build -v -ldflags '-s -w' ./internal/cmd/miniooni
```

### Common build targets
Expand Down
34 changes: 19 additions & 15 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ module github.com/ooni/probe-cli/v3

go 1.21.0

toolchain go1.22.2
toolchain go1.22.3

require (
filippo.io/age v1.2.0
filippo.io/age v1.2.1
github.com/AlecAivazis/survey/v2 v2.3.7
github.com/Psiphon-Labs/psiphon-tunnel-core v1.0.11-0.20241119203223-a6c5cfa67fd9
github.com/Psiphon-Labs/psiphon-tunnel-core v1.0.11-0.20250205204422-09be8eec478f
github.com/alecthomas/kingpin/v2 v2.4.0
github.com/apex/log v1.9.0
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5
Expand All @@ -22,24 +22,24 @@ require (
github.com/google/uuid v1.6.0
github.com/gorilla/websocket v1.5.3
github.com/hexops/gotextdiff v1.0.3
github.com/mattn/go-colorable v0.1.13
github.com/mattn/go-colorable v0.1.14
github.com/mattn/go-sqlite3 v1.14.24
github.com/miekg/dns v1.1.62
github.com/mitchellh/go-wordwrap v1.0.1
github.com/montanaflynn/stats v0.7.1
github.com/ooni/minivpn v0.0.7
github.com/ooni/netem v0.0.0-20240208095707-608dcbcd82b8
github.com/ooni/oocrypto v0.7.0
github.com/ooni/oohttp v0.8.0
github.com/ooni/probe-assets v0.25.0
github.com/ooni/oocrypto v0.7.1
github.com/ooni/oohttp v0.8.1
github.com/ooni/probe-assets v0.26.0
github.com/oschwald/maxminddb-golang v1.13.1
github.com/pborman/getopt/v2 v2.1.0
github.com/pion/stun v0.6.1
github.com/pkg/errors v0.9.1
github.com/prometheus/client_golang v1.20.5
github.com/quic-go/quic-go v0.43.1
github.com/rogpeppe/go-internal v1.12.0
github.com/rubenv/sql-migrate v1.7.0
github.com/rubenv/sql-migrate v1.7.1
github.com/schollz/progressbar/v3 v3.14.2
github.com/spf13/cobra v1.8.1
github.com/tailscale/hujson v0.0.0-20221223112325-20486734a56a
Expand All @@ -48,21 +48,22 @@ require (
gitlab.com/yawning/utls.git v0.0.12-1
gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/goptlib v1.6.0
gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/v2 v2.10.1
golang.org/x/crypto v0.29.0
golang.org/x/net v0.31.0
golang.org/x/sys v0.27.0
golang.org/x/crypto v0.32.0
golang.org/x/net v0.34.0
golang.org/x/sys v0.30.0
)

require (
filippo.io/bigmod v0.0.1 // indirect
filippo.io/edwards25519 v1.1.0 // indirect
filippo.io/keygen v0.0.0-20230306160926-5201437acf8e // indirect
github.com/AndreasBriese/bbloom v0.0.0-20190825152654-46b345b51c96 // indirect
github.com/Jigsaw-Code/outline-sdk v0.0.16 // indirect
github.com/Psiphon-Labs/bolt v0.0.0-20200624191537-23cedaef7ad7 // indirect
github.com/Psiphon-Labs/consistent v0.0.0-20240322131436-20aaa4e05737 // indirect
github.com/Psiphon-Labs/goptlib v0.0.0-20200406165125-c0e32a7a3464 // indirect
github.com/Psiphon-Labs/psiphon-tls v0.0.0-20240824224428-ca6969e315a9 // indirect
github.com/Psiphon-Labs/quic-go v0.0.0-20240821052333-b6316b594e39 // indirect
github.com/Psiphon-Labs/quic-go v0.0.0-20250203210204-a4381c68e52f // indirect
github.com/Psiphon-Labs/utls v1.1.1-0.20241107183331-b18909f8ccaa // indirect
github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect
github.com/alexbrainman/sspi v0.0.0-20231016080023-1a75b4708caa // indirect
Expand Down Expand Up @@ -101,6 +102,7 @@ require (
github.com/flynn/noise v1.0.1-0.20220214164934-d803f5c4b0f4 // indirect
github.com/fxamacker/cbor/v2 v2.5.0 // indirect
github.com/go-gorp/gorp/v3 v3.1.0 // indirect
github.com/go-ole/go-ole v1.3.0 // indirect
github.com/go-sourcemap/sourcemap v2.1.3+incompatible // indirect
github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
Expand All @@ -118,6 +120,7 @@ require (
github.com/klauspost/cpuid/v2 v2.2.6 // indirect
github.com/klauspost/reedsolomon v1.12.0 // indirect
github.com/libp2p/go-reuseport v0.4.0 // indirect
github.com/marusama/semaphore v0.0.0-20171214154724-565ffd8e868a // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mdlayher/netlink v1.7.2 // indirect
github.com/mdlayher/socket v0.5.0 // indirect
Expand Down Expand Up @@ -160,6 +163,7 @@ require (
github.com/rivo/uniseg v0.4.7 // indirect
github.com/segmentio/fasthash v1.0.3 // indirect
github.com/sergeyfrolov/bsbuffer v0.0.0-20180903213811-94e85abb8507 // indirect
github.com/shadowsocks/go-shadowsocks2 v0.1.5 // indirect
github.com/sirupsen/logrus v1.9.3 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/stretchr/testify v1.9.0 // indirect
Expand Down Expand Up @@ -187,9 +191,9 @@ require (
go4.org/netipx v0.0.0-20230824141953-6213f710f925 // indirect
golang.org/x/exp v0.0.0-20240325151524-a685a6edb6d8 // indirect
golang.org/x/mod v0.18.0 // indirect
golang.org/x/sync v0.9.0 // indirect
golang.org/x/term v0.26.0 // indirect
golang.org/x/text v0.20.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/term v0.28.0 // indirect
golang.org/x/text v0.21.0 // indirect
golang.org/x/time v0.5.0 // indirect
golang.org/x/tools v0.22.0 // indirect
golang.zx2c4.com/wireguard v0.0.0-20231211153847-12269c276173 // indirect
Expand Down
Loading

0 comments on commit 9d49844

Please sign in to comment.