ooni-probe-cli/internal
Simone Basso 60a3c372f5
cleanup: remove the original netx implementation (#653)
This commit completely removes the original netx implementation,
which was only used by `tor`, since this has changed in
https://github.com/ooni/probe-cli/pull/652.

The original netx implementation was my first attempt at performing
network measurements using Go. It started its life inside of the
https://github.com/ooni/netx repository. It was later merged into
the https://github.com/ooni/probe-engine repository. It finally
ended up into this repository when we merged probe-engine with it.

The main issue with the original implementation is that it was
a bit too complex and used channels where they were probably not
necessary. Because of that, later I introduced a second netx
implementation, which currently lives in ./internal/engine/netx.

The current netx implementation, the third one, lives in the
./internal/netxlite package. We are currently working to replace
the second implementation with the third one, but this is happening
at a slow pace. Also, the second implementation does not have big
maintenance concerns but it's just a bit too bureaucratic to use
since it involves creating lots of `Config` structures.

The reference issue is probably https://github.com/ooni/probe/issues/1688,
since this diff has been enabled by rewriting Tor to use `measurex`
(a library living on top of `netxlite`).
2022-01-05 19:00:50 +01:00
..
atomicx doc: cleanup and improve for recently moved pkgs (#354) 2021-06-04 11:39:00 +02:00
bytecounter refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
cmd refactor: move httpx into the internal package (#646) 2022-01-05 17:17:20 +01:00
engine cleanup: remove the original netx implementation (#653) 2022-01-05 19:00:50 +01:00
fakefill feat(httpx): improve testing using the fakefiller (#649) 2022-01-05 14:49:31 +01:00
fsx refactor: merge dnsx and errorsx into netxlite (#517) 2021-09-28 12:42:01 +02:00
httpx refactor: move httpx into the internal package (#646) 2022-01-05 17:17:20 +01:00
humanize fix(all): introduce and use iox.CopyContext (#380) 2021-06-15 13:44:28 +02:00
kvstore refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
measurex refactor(tor): rewrite using measurex (#652) 2022-01-05 18:41:11 +01:00
mlablocate cleanup: remove redundant HTTPClient definition (#643) 2022-01-03 16:47:54 +01:00
mlablocatev2 cleanup: remove redundant HTTPClient definition (#643) 2022-01-03 16:47:54 +01:00
model refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
multierror doc: cleanup and improve for recently moved pkgs (#354) 2021-06-04 11:39:00 +02:00
netxlite refactor: move httpx into the internal package (#646) 2022-01-05 17:17:20 +01:00
ooapi feat(httpx): improve testing using the fakefiller (#649) 2022-01-05 14:49:31 +01:00
platform fix(internal/platform): support freebsd (#445) 2021-08-20 14:00:06 +02:00
ptx refactor: move httpx into the internal package (#646) 2022-01-05 17:17:20 +01:00
randx doc: improve and reference existing bug in the code (#356) 2021-06-04 12:50:23 +02:00
runtimex refactor(tor): rewrite using measurex (#652) 2022-01-05 18:41:11 +01:00
scrubber refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
shellx refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
stuninput refactor: create common package for holding STUN input (#631) 2021-12-03 14:45:25 +01:00
tunnel refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
tutorial refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
version chore: set master's version to 3.14.0-alpha (#638) 2021-12-06 17:54:58 +01:00
README.md refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00

Directory github.com/ooni/probe-cli/internal

This directory contains private Go packages.

As a reminder, you can always check the Go documentation of a package by using

go doc -all ./internal/$package

where $package is the name of the package.

Some notable packages:

  • model contains the interfaces and data model shared by most packages inside this directory;

  • netxlite is the underlying networking library;

  • tutorial contains tutorials on writing new experiments, using measurements libraries, and networking code.