The generic idea is that what ends up in the netx folder is the more complex implementation and the simpler implementation will be instead inside of internal. The main objective of this effort is to understand whether we can use the decorator pattern based technique also for collecting measurements. I think so, but it's better to be sure about this by changing Psiphon and evaluating whether this is really an improvement.
[x] add to dialer, resolver, httptransport support for collecting raw data
[x] allow to export raw data using OONI format
[x] change psiphon to use this new style of measuring
[ ] move dialer, resolver, and httptransport to internal
[ ] move oonitemplate, oonidatamodel to netx
[x] evaluate whether we lose anything with this much simpler implementation
[ ] can we avoid using the context for counting bytes?
If all is good, we will have significantly simplified netx implementation and testability in a few sprints. If there are emerging issues, then it means we need to somehow change the plan again.
The generic idea is that what ends up in the
netx
folder is the more complex implementation and the simpler implementation will be instead inside ofinternal
. The main objective of this effort is to understand whether we can use the decorator pattern based technique also for collecting measurements. I think so, but it's better to be sure about this by changing Psiphon and evaluating whether this is really an improvement.move dialer, resolver, and httptransport to internalmove oonitemplate, oonidatamodel to netxcan we avoid using the context for counting bytes?If all is good, we will have significantly simplified netx implementation and testability in a few sprints. If there are emerging issues, then it means we need to somehow change the plan again.