Sigh. I guess this proves that I can't put off dealing with the 'redundant sensor code in sensor.*.jar and sensorshell.jar' issue any longer. Thanks, Aaron, for articulating the problem so cogently.

I see the following possible approaches:

(1) Change HackyInstaller so it defaults sensors to disabled, not enabled, when it doesn't find a setting for them in sensor.properties. This is a band-aid, of course, but at least stops data from being sent when the developer didn't even install the sensor explicitly. (HackyInstaller crew: please make this change ASAP.)

(2) Eliminate the redundancy.  There are two ways:

(a) Stop creating sensor.*.jar files entirely; use sensorshell.jar as container for all Java-based sensor code. Advantages: simplicity in build process; reliability; simplified client-side installation (download one sensorshell.jar, get many sensors installed). Disadvantages: no way to uninstall a subset of Java-based sensors on client side. Implications: local.build.xml files will no longer create the sensor.*.jar file; hackyInstaller must be changed so that it can understand that installing one sensor implicitly installs many others, and that uninstalling one sensor could potentially uninstall several others, documentation updates.

(b) Stop including sensor code in sensorshell.jar file. Advantages: supports individual uninstallation of sensors. Disadvantages: build process more complicated; possibility of missing classes on client side. Implications: build process must be changed to strip sensor classes from sensorshell before jarring.

What do people think about (a) vs. (b)? They seem to be about equally complicated to me, so it's more about which approach seems to result in a more usable system.

Cheers,
Philip

--On Friday, October 7, 2005 10:25 AM -1000 Aaron Akihisa Kagawa <[EMAIL PROTECTED]> wrote:

Not to mention that the HackyInstaller Uninstall functions does not
remove sensorshell.jar nor disable the sensors.

thanks, aaron

----- Original Message -----
From: Aaron Akihisa Kagawa <[EMAIL PROTECTED]>
Date: Friday, October 7, 2005 10:12 am
Subject: [HACKYSTAT-DEV-L] hackyInstaller and sensor.properties

Hey guys,

I found a bug.

I am hacking on some Ant code installing the Build Sensor in some
projects. I wrote the Ant code, ensured that sensor.build.jar wasn't
installed (i have sensorshell and sensor.locc.jar installed in
Ant/lib),and executed Ant to be sure that I wouldn't send Build
Data.  Well, the
bug is that I did send build data.

Here's why:
1) sensorshell.jar contains all the classes in Hackystat, so I don't
really need to have sensor.build.jar in my Ant/lib directory. thats
another bug.

2) hackyInstaller seems to enable all sensors in sensor.proerties even
though they are not installed.  So, when I opened
hackyInstaller.jar I
found that my build sensor was not installed. When I checked my
sensor.properties I saw that my build sensor was enabled.

So, you should be able to see the problem when 1) and 2) are combined.
hackyInstaller thinks a sensor isn't installed and so does the user.
But, still I send data.

thanks, aaron

Reply via email to