[Neubot] Released Neubot 0.4.2
bassosimone at gmail.com
Mon Sep 19 18:29:51 CEST 2011
Released Neubot 0.4.2
Version 0.4.2 is the latest generally-available stable release of
Neubot, distributed for Ubuntu >= 10.04, MacOSX >= 10.6 and
Windows >= XP SP3. Of course, Neubot 0.4.2 is also available in
source format (.tar.gz and .zip).
This release contains 143 patches. The diffstat says: 87 files
changed, with 3167 lines inserted and 1392 lines deleted.
Here are the most relevant changes:
o MacOS: automatic updates in the background.
This implementation of the automatic updates is very
generic, in the sense that is based on the standard
UNIX API and does not leverage MacOS specific facilities,
such as launchd(8). I have patches to do that but they
are not ready for this release and they will go into
the next one;
o Win32: disable autostart at the end of the install.
Because the installer runs with high privileges and
so starts Neubot with high privileges too.
(Of course Neubot will autostart each time you login
on the system and the _only_ difference is that it
is not started at the end of the installation.)
I have scheduled some work on the Windows installer
for the coming weeks. I hope I will be able to find
a viable solution for this privileges issue too;
o Ubuntu: new GUI, based on PyGtk+ and PyWebKit.
The basic idea is to embed WebKit into a Gtk+ window
and to point it to Neubot Web UI. So, now you use
Neubot's own application instead of opening its Web User
Interface into the browser. I think this is more usable
BTW I have plans to do something similar for MacOS and
o database: add OS name and Neubot version to results.
I've added them because they help data analysis. The
version is important because the behavior of the tests
may change over time, because of changes in the code
base. The operating system is important as well, because
every OS implements TCP/IP in a peculiar way;
o net: undo the 262144-receive buffer optimization.
Using a fixed-size buffer penalizes Linux, which has
very advanced buffer management strategies designed
for high bandwidth-delay product networks.
(Having the version number and the OS name in the database
allows to track the effect of this change quite well);
o www: if privacy settings are not set, the starting page
is privacy.html not index.html.
and ask for permission to collect and share/publish.
The installer will also refuse to install if you don't
give the permission to collect the results.
But the work is still in progress, and for now only
the MacOS installer is ready. Meanwhile, it will not
hurt to land users on privacy.html;
o privacy: do not allow nonsense transitions once you
have set the permissions.
There are two different changes here.
1. Once you have said that your are informed you cannot
step back and tell Neubot you're not informed. This is
pure common sense.
2. Also, once you've given the permission to collect your
results you cannot step back. This is to align with
installers, that are being modified to allow installation
only if you read the policy and give the permission to
collect the results;
o speedtest: use just one connection, like bittorrent does.
This is the first step to make the two tests more comparable:
of course comparing two connections with one _isn't_ fair,
especially with high bandwidth-delay products or when there
is more average congestion.
More work is needed before we can say that the two tests
stress the network in the same way. Namely, we need to
change speedtest to work on a request-response basis, like
bittorrent does. So, this is just the first step in the
(And this is another case where saving the version number
in the database would be very helpful to track the effects
of the change.)
o server: add support for a simple API to assess server state.
This API is needed to implement a simple Nagios plugin, which
can say whether the server state is OK or not;
o nagios-plugin: finalize it.
Now the plugin uses the abovementioned server API to assess
server status and return something in the (OK, WARNING, ERROR)
o more code rationalizations, bug and reliability fixes,
The release candidates have been tested on Ubuntu 10.04, Windows
XP SP3, Windows 7 and MacOSX 10.6. The main testing platform has
been my laptop with MacOS 10.6.8.
Packages and source archives available here:
Commit history here:
People that contributed to this release, with patches, testing
Alessio Palmero Aprosio
Juan Carlos De Martin
Thank you for you attention,
More information about the Neubot