OONI Probe CLI v3.14.0
This is what changed since v3.14.0-beta:
-
π fix(oonimkall): ensure we can submit last measurement 018b5de
-
π [backport] fix(ndt7): force our bundled CA pool 7aa0b5a
-
π fix(netxlite): hotfix for Android EAI_NODATA 2b48dcf
These are the most important changes since v3.13.0:
-
β¨ We refactored the way in which ooniprobe list works to ensure that it does not use nested queries. This improvement made ooniprobe list significantly faster (around 7x in our testing).
-
β¨ The
torsf
experiment is now part ofooniprobe run experimental
. Note: if you are packagingooniprobe
, you need to make sure the package depends ontor
, becausetorsf
assumes thetor
binary is installed on the system. -
β¨ We improved the Go rewrite of the Web Connectivity test helper and we're starting to roll it out (which may have some impact on the measurements quality: the new implementation should work ~better with ooniprobe 3.x).
-
β¨ We improved iplookup by adding support for using Cloudflare to lookup the IP address of a probe.
-
β¨ We're now annotating measurements with the probe's architecture.
-
π Fixed
dnscheck
integration withooniprobe run experimental
: nowooni/probe-desktop
is able to rundnscheck
as part of experimental smoothly (while integration was more complex withrelease/3.13
). -
π Fixed
stunreachability
integration withooniprobe run experimental
: runningstunreachability
now records the URL we test. -
π Fixed
ndt
so that it works on old Android devices whose CA bundle is now very outdated (e.g., Android 6) https://github.com/ooni/probe-cli/commit
/7aa0b5abedf658b6876ce265588ef25afd202217. -
π We bumped
psiphon
timeout to 300 seconds to better investigate issues in bootstrapping (the previous timeout, 60 s, was considered to be too short according to Psiphon developers). -
π We disable the
riseupvpn
experiment this release, following reports of false positives, and we're working to make it more robust. -
π Fixed DNS lookup on Android devices 2b48dcf.
-
π¨ We modified
stunreachability
to expect input to be an URL likestun://1.2.3.4:567
-
π§ We improved
web_connectivity
by making some heuristics dealing with the status code more robust. -
π§ We rewrote the
tor
experiment to use more modern networking abstractions and we've removed previous abstractions (this should be kept in mind; we tested and are satisfied, but still this change could cause some differences). -
π§ We moved the scripts to package for debian to https://github.com/ooni/probe-releases.
-
π§ We added support for experiments returning more than one measurement per input, which is required by
websteps
(the replacement forweb_connectivity
on which we're working). -
π§ We now have a new policy for experiments "or_static_default" that allows us to statically vendor a test list for experiments such as
stunreachability
ordnscheck
for which there is currently no backend support. -
π§ We wrote a new implementation of
websteps
, calledwebstepsx
, which is going to be the prototype that we'll keep updating (the previous implementation, namedwebsteps
, has now been deprecated). -
π§ We added the new
internal/measurex
package, which shall be the underlying library used bywebsteps
, and wrote a tutorial about it. -
π§ We refactored common data types into the
internal/model
package to better isolate packages from each other. -
π§ We updated dependencies and we're now using go1.17.6.